@ixon-cdk/simulator 1.21.0-next.1 → 1.21.0-next.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-DNYK3GTD.js → chunk-7VSCN3V5.js} +4 -4
- package/dist/{chunk-VUR556CH.js → chunk-BEG6QCS5.js} +1 -1
- package/dist/features.json +11 -0
- package/dist/i18n/local/de.json +1 -1
- package/dist/i18n/local/en.json +1 -1
- package/dist/i18n/local/es.json +1 -1
- package/dist/i18n/local/fr.json +1 -1
- package/dist/i18n/local/it.json +1 -1
- package/dist/i18n/local/nl.json +1 -1
- package/dist/i18n/local/pl.json +1 -1
- package/dist/index.html +2 -2
- package/dist/{main-PVFXMHEI.js → main-YZ33UFFV.js} +10 -11
- package/package.json +1 -1
|
@@ -7,8 +7,8 @@ import{clone_default,curry_default,flatten_default,get_default,has_default,isArr
|
|
|
7
7
|
depsCount: ${depsCount},
|
|
8
8
|
deps: ${deps}}`};var def={keyword:"dependencies",type:"object",schemaType:"object",error:exports.error,code(cxt){let[propDeps,schDeps]=splitDependencies(cxt);validatePropertyDeps(cxt,propDeps),validateSchemaDeps(cxt,schDeps)}};function splitDependencies({schema}){let propertyDeps={},schemaDeps={};for(let key in schema){if(key==="__proto__")continue;let deps=Array.isArray(schema[key])?propertyDeps:schemaDeps;deps[key]=schema[key]}return[propertyDeps,schemaDeps]}function validatePropertyDeps(cxt,propertyDeps=cxt.schema){let{gen,data,it}=cxt;if(Object.keys(propertyDeps).length===0)return;let missing=gen.let("missing");for(let prop in propertyDeps){let deps=propertyDeps[prop];if(deps.length===0)continue;let hasProperty2=(0,code_1.propertyInData)(gen,data,prop,it.opts.ownProperties);cxt.setParams({property:prop,depsCount:deps.length,deps:deps.join(", ")}),it.allErrors?gen.if(hasProperty2,()=>{for(let depProp of deps)(0,code_1.checkReportMissingProp)(cxt,depProp)}):(gen.if((0,codegen_1._)`${hasProperty2} && (${(0,code_1.checkMissingProp)(cxt,deps,missing)})`),(0,code_1.reportMissingProp)(cxt,missing),gen.else())}}exports.validatePropertyDeps=validatePropertyDeps;function validateSchemaDeps(cxt,schemaDeps=cxt.schema){let{gen,data,keyword,it}=cxt,valid=gen.name("valid");for(let prop in schemaDeps)(0,util_1.alwaysValidSchema)(it,schemaDeps[prop])||(gen.if((0,code_1.propertyInData)(gen,data,prop,it.opts.ownProperties),()=>{let schCxt=cxt.subschema({keyword,schemaProp:prop},valid);cxt.mergeValidEvaluated(schCxt,valid)},()=>gen.var(valid,!0)),cxt.ok(valid))}exports.validateSchemaDeps=validateSchemaDeps;exports.default=def}});var require_propertyNames=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/propertyNames.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var codegen_1=require_codegen(),util_1=require_util(),error={message:"property name must be valid",params:({params})=>(0,codegen_1._)`{propertyName: ${params.propertyName}}`},def={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error,code(cxt){let{gen,schema,data,it}=cxt;if((0,util_1.alwaysValidSchema)(it,schema))return;let valid=gen.name("valid");gen.forIn("key",data,key=>{cxt.setParams({propertyName:key}),cxt.subschema({keyword:"propertyNames",data:key,dataTypes:["string"],propertyName:key,compositeRule:!0},valid),gen.if((0,codegen_1.not)(valid),()=>{cxt.error(!0),it.allErrors||gen.break()})}),cxt.ok(valid)}};exports.default=def}});var require_additionalProperties=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var code_1=require_code2(),codegen_1=require_codegen(),names_1=require_names(),util_1=require_util(),error={message:"must NOT have additional properties",params:({params})=>(0,codegen_1._)`{additionalProperty: ${params.additionalProperty}}`},def={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error,code(cxt){let{gen,schema,parentSchema,data,errsCount,it}=cxt;if(!errsCount)throw new Error("ajv implementation error");let{allErrors,opts}=it;if(it.props=!0,opts.removeAdditional!=="all"&&(0,util_1.alwaysValidSchema)(it,schema))return;let props2=(0,code_1.allSchemaProperties)(parentSchema.properties),patProps=(0,code_1.allSchemaProperties)(parentSchema.patternProperties);checkAdditionalProperties(),cxt.ok((0,codegen_1._)`${errsCount} === ${names_1.default.errors}`);function checkAdditionalProperties(){gen.forIn("key",data,key=>{!props2.length&&!patProps.length?additionalPropertyCode(key):gen.if(isAdditional(key),()=>additionalPropertyCode(key))})}function isAdditional(key){let definedProp;if(props2.length>8){let propsSchema=(0,util_1.schemaRefOrVal)(it,parentSchema.properties,"properties");definedProp=(0,code_1.isOwnProperty)(gen,propsSchema,key)}else props2.length?definedProp=(0,codegen_1.or)(...props2.map(p=>(0,codegen_1._)`${key} === ${p}`)):definedProp=codegen_1.nil;return patProps.length&&(definedProp=(0,codegen_1.or)(definedProp,...patProps.map(p=>(0,codegen_1._)`${(0,code_1.usePattern)(cxt,p)}.test(${key})`))),(0,codegen_1.not)(definedProp)}function deleteAdditional(key){gen.code((0,codegen_1._)`delete ${data}[${key}]`)}function additionalPropertyCode(key){if(opts.removeAdditional==="all"||opts.removeAdditional&&schema===!1){deleteAdditional(key);return}if(schema===!1){cxt.setParams({additionalProperty:key}),cxt.error(),allErrors||gen.break();return}if(typeof schema=="object"&&!(0,util_1.alwaysValidSchema)(it,schema)){let valid=gen.name("valid");opts.removeAdditional==="failing"?(applyAdditionalSchema(key,valid,!1),gen.if((0,codegen_1.not)(valid),()=>{cxt.reset(),deleteAdditional(key)})):(applyAdditionalSchema(key,valid),allErrors||gen.if((0,codegen_1.not)(valid),()=>gen.break()))}}function applyAdditionalSchema(key,valid,errors){let subschema={keyword:"additionalProperties",dataProp:key,dataPropType:util_1.Type.Str};errors===!1&&Object.assign(subschema,{compositeRule:!0,createErrors:!1,allErrors:!1}),cxt.subschema(subschema,valid)}}};exports.default=def}});var require_properties=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/properties.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var validate_1=require_validate(),code_1=require_code2(),util_1=require_util(),additionalProperties_1=require_additionalProperties(),def={keyword:"properties",type:"object",schemaType:"object",code(cxt){let{gen,schema,parentSchema,data,it}=cxt;it.opts.removeAdditional==="all"&&parentSchema.additionalProperties===void 0&&additionalProperties_1.default.code(new validate_1.KeywordCxt(it,additionalProperties_1.default,"additionalProperties"));let allProps=(0,code_1.allSchemaProperties)(schema);for(let prop of allProps)it.definedProperties.add(prop);it.opts.unevaluated&&allProps.length&&it.props!==!0&&(it.props=util_1.mergeEvaluated.props(gen,(0,util_1.toHash)(allProps),it.props));let properties2=allProps.filter(p=>!(0,util_1.alwaysValidSchema)(it,schema[p]));if(properties2.length===0)return;let valid=gen.name("valid");for(let prop of properties2)hasDefault(prop)?applyPropertySchema(prop):(gen.if((0,code_1.propertyInData)(gen,data,prop,it.opts.ownProperties)),applyPropertySchema(prop),it.allErrors||gen.else().var(valid,!0),gen.endIf()),cxt.it.definedProperties.add(prop),cxt.ok(valid);function hasDefault(prop){return it.opts.useDefaults&&!it.compositeRule&&schema[prop].default!==void 0}function applyPropertySchema(prop){cxt.subschema({keyword:"properties",schemaProp:prop,dataProp:prop},valid)}}};exports.default=def}});var require_patternProperties=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/patternProperties.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var code_1=require_code2(),codegen_1=require_codegen(),util_1=require_util(),util_2=require_util(),def={keyword:"patternProperties",type:"object",schemaType:"object",code(cxt){let{gen,schema,data,parentSchema,it}=cxt,{opts}=it,patterns=(0,code_1.allSchemaProperties)(schema),alwaysValidPatterns=patterns.filter(p=>(0,util_1.alwaysValidSchema)(it,schema[p]));if(patterns.length===0||alwaysValidPatterns.length===patterns.length&&(!it.opts.unevaluated||it.props===!0))return;let checkProperties=opts.strictSchema&&!opts.allowMatchingProperties&&parentSchema.properties,valid=gen.name("valid");it.props!==!0&&!(it.props instanceof codegen_1.Name)&&(it.props=(0,util_2.evaluatedPropsToName)(gen,it.props));let{props:props2}=it;validatePatternProperties();function validatePatternProperties(){for(let pat of patterns)checkProperties&&checkMatchingProperties(pat),it.allErrors?validateProperties(pat):(gen.var(valid,!0),validateProperties(pat),gen.if(valid))}function checkMatchingProperties(pat){for(let prop in checkProperties)new RegExp(pat).test(prop)&&(0,util_1.checkStrictMode)(it,`property ${prop} matches pattern ${pat} (use allowMatchingProperties)`)}function validateProperties(pat){gen.forIn("key",data,key=>{gen.if((0,codegen_1._)`${(0,code_1.usePattern)(cxt,pat)}.test(${key})`,()=>{let alwaysValid=alwaysValidPatterns.includes(pat);alwaysValid||cxt.subschema({keyword:"patternProperties",schemaProp:pat,dataProp:key,dataPropType:util_2.Type.Str},valid),it.opts.unevaluated&&props2!==!0?gen.assign((0,codegen_1._)`${props2}[${key}]`,!0):!alwaysValid&&!it.allErrors&&gen.if((0,codegen_1.not)(valid),()=>gen.break())})})}}};exports.default=def}});var require_not=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/not.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var util_1=require_util(),def={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(cxt){let{gen,schema,it}=cxt;if((0,util_1.alwaysValidSchema)(it,schema)){cxt.fail();return}let valid=gen.name("valid");cxt.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},valid),cxt.failResult(valid,()=>cxt.reset(),()=>cxt.error())},error:{message:"must NOT be valid"}};exports.default=def}});var require_anyOf=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/anyOf.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var code_1=require_code2(),def={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:code_1.validateUnion,error:{message:"must match a schema in anyOf"}};exports.default=def}});var require_oneOf=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/oneOf.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var codegen_1=require_codegen(),util_1=require_util(),error={message:"must match exactly one schema in oneOf",params:({params})=>(0,codegen_1._)`{passingSchemas: ${params.passing}}`},def={keyword:"oneOf",schemaType:"array",trackErrors:!0,error,code(cxt){let{gen,schema,parentSchema,it}=cxt;if(!Array.isArray(schema))throw new Error("ajv implementation error");if(it.opts.discriminator&&parentSchema.discriminator)return;let schArr=schema,valid=gen.let("valid",!1),passing=gen.let("passing",null),schValid=gen.name("_valid");cxt.setParams({passing}),gen.block(validateOneOf),cxt.result(valid,()=>cxt.reset(),()=>cxt.error(!0));function validateOneOf(){schArr.forEach((sch,i)=>{let schCxt;(0,util_1.alwaysValidSchema)(it,sch)?gen.var(schValid,!0):schCxt=cxt.subschema({keyword:"oneOf",schemaProp:i,compositeRule:!0},schValid),i>0&&gen.if((0,codegen_1._)`${schValid} && ${valid}`).assign(valid,!1).assign(passing,(0,codegen_1._)`[${passing}, ${i}]`).else(),gen.if(schValid,()=>{gen.assign(valid,!0),gen.assign(passing,i),schCxt&&cxt.mergeEvaluated(schCxt,codegen_1.Name)})})}}};exports.default=def}});var require_allOf=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/allOf.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var util_1=require_util(),def={keyword:"allOf",schemaType:"array",code(cxt){let{gen,schema,it}=cxt;if(!Array.isArray(schema))throw new Error("ajv implementation error");let valid=gen.name("valid");schema.forEach((sch,i)=>{if((0,util_1.alwaysValidSchema)(it,sch))return;let schCxt=cxt.subschema({keyword:"allOf",schemaProp:i},valid);cxt.ok(valid),cxt.mergeEvaluated(schCxt)})}};exports.default=def}});var require_if=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/if.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var codegen_1=require_codegen(),util_1=require_util(),error={message:({params})=>(0,codegen_1.str)`must match "${params.ifClause}" schema`,params:({params})=>(0,codegen_1._)`{failingKeyword: ${params.ifClause}}`},def={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error,code(cxt){let{gen,parentSchema,it}=cxt;parentSchema.then===void 0&&parentSchema.else===void 0&&(0,util_1.checkStrictMode)(it,'"if" without "then" and "else" is ignored');let hasThen=hasSchema(it,"then"),hasElse=hasSchema(it,"else");if(!hasThen&&!hasElse)return;let valid=gen.let("valid",!0),schValid=gen.name("_valid");if(validateIf(),cxt.reset(),hasThen&&hasElse){let ifClause=gen.let("ifClause");cxt.setParams({ifClause}),gen.if(schValid,validateClause("then",ifClause),validateClause("else",ifClause))}else hasThen?gen.if(schValid,validateClause("then")):gen.if((0,codegen_1.not)(schValid),validateClause("else"));cxt.pass(valid,()=>cxt.error(!0));function validateIf(){let schCxt=cxt.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},schValid);cxt.mergeEvaluated(schCxt)}function validateClause(keyword,ifClause){return()=>{let schCxt=cxt.subschema({keyword},schValid);gen.assign(valid,schValid),cxt.mergeValidEvaluated(schCxt,valid),ifClause?gen.assign(ifClause,(0,codegen_1._)`${keyword}`):cxt.setParams({ifClause:keyword})}}}};function hasSchema(it,keyword){let schema=it.schema[keyword];return schema!==void 0&&!(0,util_1.alwaysValidSchema)(it,schema)}exports.default=def}});var require_thenElse=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/thenElse.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var util_1=require_util(),def={keyword:["then","else"],schemaType:["object","boolean"],code({keyword,parentSchema,it}){parentSchema.if===void 0&&(0,util_1.checkStrictMode)(it,`"${keyword}" without "if" is ignored`)}};exports.default=def}});var require_applicator=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/index.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var additionalItems_1=require_additionalItems(),prefixItems_1=require_prefixItems(),items_1=require_items(),items2020_1=require_items2020(),contains_1=require_contains(),dependencies_1=require_dependencies(),propertyNames_1=require_propertyNames(),additionalProperties_1=require_additionalProperties(),properties_1=require_properties(),patternProperties_1=require_patternProperties(),not_1=require_not(),anyOf_1=require_anyOf(),oneOf_1=require_oneOf(),allOf_1=require_allOf(),if_1=require_if(),thenElse_1=require_thenElse();function getApplicator(draft2020=!1){let applicator=[not_1.default,anyOf_1.default,oneOf_1.default,allOf_1.default,if_1.default,thenElse_1.default,propertyNames_1.default,additionalProperties_1.default,dependencies_1.default,properties_1.default,patternProperties_1.default];return draft2020?applicator.push(prefixItems_1.default,items2020_1.default):applicator.push(additionalItems_1.default,items_1.default),applicator.push(contains_1.default),applicator}exports.default=getApplicator}});var require_format=__commonJS({"node_modules/ajv/dist/vocabularies/format/format.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var codegen_1=require_codegen(),error={message:({schemaCode})=>(0,codegen_1.str)`must match format "${schemaCode}"`,params:({schemaCode})=>(0,codegen_1._)`{format: ${schemaCode}}`},def={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error,code(cxt,ruleType){let{gen,data,$data,schema,schemaCode,it}=cxt,{opts,errSchemaPath,schemaEnv,self:self2}=it;if(!opts.validateFormats)return;$data?validate$DataFormat():validateFormat();function validate$DataFormat(){let fmts=gen.scopeValue("formats",{ref:self2.formats,code:opts.code.formats}),fDef=gen.const("fDef",(0,codegen_1._)`${fmts}[${schemaCode}]`),fType=gen.let("fType"),format=gen.let("format");gen.if((0,codegen_1._)`typeof ${fDef} == "object" && !(${fDef} instanceof RegExp)`,()=>gen.assign(fType,(0,codegen_1._)`${fDef}.type || "string"`).assign(format,(0,codegen_1._)`${fDef}.validate`),()=>gen.assign(fType,(0,codegen_1._)`"string"`).assign(format,fDef)),cxt.fail$data((0,codegen_1.or)(unknownFmt(),invalidFmt()));function unknownFmt(){return opts.strictSchema===!1?codegen_1.nil:(0,codegen_1._)`${schemaCode} && !${format}`}function invalidFmt(){let callFormat=schemaEnv.$async?(0,codegen_1._)`(${fDef}.async ? await ${format}(${data}) : ${format}(${data}))`:(0,codegen_1._)`${format}(${data})`,validData=(0,codegen_1._)`(typeof ${format} == "function" ? ${callFormat} : ${format}.test(${data}))`;return(0,codegen_1._)`${format} && ${format} !== true && ${fType} === ${ruleType} && !${validData}`}}function validateFormat(){let formatDef=self2.formats[schema];if(!formatDef){unknownFormat();return}if(formatDef===!0)return;let[fmtType,format,fmtRef]=getFormat(formatDef);fmtType===ruleType&&cxt.pass(validCondition());function unknownFormat(){if(opts.strictSchema===!1){self2.logger.warn(unknownMsg());return}throw new Error(unknownMsg());function unknownMsg(){return`unknown format "${schema}" ignored in schema at path "${errSchemaPath}"`}}function getFormat(fmtDef){let code=fmtDef instanceof RegExp?(0,codegen_1.regexpCode)(fmtDef):opts.code.formats?(0,codegen_1._)`${opts.code.formats}${(0,codegen_1.getProperty)(schema)}`:void 0,fmt=gen.scopeValue("formats",{key:schema,ref:fmtDef,code});return typeof fmtDef=="object"&&!(fmtDef instanceof RegExp)?[fmtDef.type||"string",fmtDef.validate,(0,codegen_1._)`${fmt}.validate`]:["string",fmtDef,fmt]}function validCondition(){if(typeof formatDef=="object"&&!(formatDef instanceof RegExp)&&formatDef.async){if(!schemaEnv.$async)throw new Error("async format in sync schema");return(0,codegen_1._)`await ${fmtRef}(${data})`}return typeof format=="function"?(0,codegen_1._)`${fmtRef}(${data})`:(0,codegen_1._)`${fmtRef}.test(${data})`}}}};exports.default=def}});var require_format2=__commonJS({"node_modules/ajv/dist/vocabularies/format/index.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var format_1=require_format(),format=[format_1.default];exports.default=format}});var require_metadata=__commonJS({"node_modules/ajv/dist/vocabularies/metadata.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.contentVocabulary=exports.metadataVocabulary=void 0;exports.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];exports.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]}});var require_draft7=__commonJS({"node_modules/ajv/dist/vocabularies/draft7.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core_1=require_core3(),validation_1=require_validation(),applicator_1=require_applicator(),format_1=require_format2(),metadata_1=require_metadata(),draft7Vocabularies=[core_1.default,validation_1.default,(0,applicator_1.default)(),format_1.default,metadata_1.metadataVocabulary,metadata_1.contentVocabulary];exports.default=draft7Vocabularies}});var require_dynamicAnchor=__commonJS({"node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.dynamicAnchor=void 0;var codegen_1=require_codegen(),names_1=require_names(),compile_1=require_compile(),ref_1=require_ref(),def={keyword:"$dynamicAnchor",schemaType:"string",code:cxt=>dynamicAnchor(cxt,cxt.schema)};function dynamicAnchor(cxt,anchor){let{gen,it}=cxt;it.schemaEnv.root.dynamicAnchors[anchor]=!0;let v=(0,codegen_1._)`${names_1.default.dynamicAnchors}${(0,codegen_1.getProperty)(anchor)}`,validate=it.errSchemaPath==="#"?it.validateName:_getValidate(cxt);gen.if((0,codegen_1._)`!${v}`,()=>gen.assign(v,validate))}exports.dynamicAnchor=dynamicAnchor;function _getValidate(cxt){let{schemaEnv,schema,self:self2}=cxt.it,{root,baseId,localRefs,meta}=schemaEnv.root,{schemaId}=self2.opts,sch=new compile_1.SchemaEnv({schema,schemaId,root,baseId,localRefs,meta});return compile_1.compileSchema.call(self2,sch),(0,ref_1.getValidate)(cxt,sch)}exports.default=def}});var require_dynamicRef=__commonJS({"node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.dynamicRef=void 0;var codegen_1=require_codegen(),names_1=require_names(),ref_1=require_ref(),def={keyword:"$dynamicRef",schemaType:"string",code:cxt=>dynamicRef(cxt,cxt.schema)};function dynamicRef(cxt,ref){let{gen,keyword,it}=cxt;if(ref[0]!=="#")throw new Error(`"${keyword}" only supports hash fragment reference`);let anchor=ref.slice(1);if(it.allErrors)_dynamicRef();else{let valid=gen.let("valid",!1);_dynamicRef(valid),cxt.ok(valid)}function _dynamicRef(valid){if(it.schemaEnv.root.dynamicAnchors[anchor]){let v=gen.let("_v",(0,codegen_1._)`${names_1.default.dynamicAnchors}${(0,codegen_1.getProperty)(anchor)}`);gen.if(v,_callRef(v,valid),_callRef(it.validateName,valid))}else _callRef(it.validateName,valid)()}function _callRef(validate,valid){return valid?()=>gen.block(()=>{(0,ref_1.callRef)(cxt,validate),gen.let(valid,!0)}):()=>(0,ref_1.callRef)(cxt,validate)}}exports.dynamicRef=dynamicRef;exports.default=def}});var require_recursiveAnchor=__commonJS({"node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var dynamicAnchor_1=require_dynamicAnchor(),util_1=require_util(),def={keyword:"$recursiveAnchor",schemaType:"boolean",code(cxt){cxt.schema?(0,dynamicAnchor_1.dynamicAnchor)(cxt,""):(0,util_1.checkStrictMode)(cxt.it,"$recursiveAnchor: false is ignored")}};exports.default=def}});var require_recursiveRef=__commonJS({"node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var dynamicRef_1=require_dynamicRef(),def={keyword:"$recursiveRef",schemaType:"string",code:cxt=>(0,dynamicRef_1.dynamicRef)(cxt,cxt.schema)};exports.default=def}});var require_dynamic=__commonJS({"node_modules/ajv/dist/vocabularies/dynamic/index.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var dynamicAnchor_1=require_dynamicAnchor(),dynamicRef_1=require_dynamicRef(),recursiveAnchor_1=require_recursiveAnchor(),recursiveRef_1=require_recursiveRef(),dynamic=[dynamicAnchor_1.default,dynamicRef_1.default,recursiveAnchor_1.default,recursiveRef_1.default];exports.default=dynamic}});var require_dependentRequired=__commonJS({"node_modules/ajv/dist/vocabularies/validation/dependentRequired.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var dependencies_1=require_dependencies(),def={keyword:"dependentRequired",type:"object",schemaType:"object",error:dependencies_1.error,code:cxt=>(0,dependencies_1.validatePropertyDeps)(cxt)};exports.default=def}});var require_dependentSchemas=__commonJS({"node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var dependencies_1=require_dependencies(),def={keyword:"dependentSchemas",type:"object",schemaType:"object",code:cxt=>(0,dependencies_1.validateSchemaDeps)(cxt)};exports.default=def}});var require_limitContains=__commonJS({"node_modules/ajv/dist/vocabularies/validation/limitContains.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var util_1=require_util(),def={keyword:["maxContains","minContains"],type:"array",schemaType:"number",code({keyword,parentSchema,it}){parentSchema.contains===void 0&&(0,util_1.checkStrictMode)(it,`"${keyword}" without "contains" is ignored`)}};exports.default=def}});var require_next=__commonJS({"node_modules/ajv/dist/vocabularies/next.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var dependentRequired_1=require_dependentRequired(),dependentSchemas_1=require_dependentSchemas(),limitContains_1=require_limitContains(),next=[dependentRequired_1.default,dependentSchemas_1.default,limitContains_1.default];exports.default=next}});var require_unevaluatedProperties=__commonJS({"node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var codegen_1=require_codegen(),util_1=require_util(),names_1=require_names(),error={message:"must NOT have unevaluated properties",params:({params})=>(0,codegen_1._)`{unevaluatedProperty: ${params.unevaluatedProperty}}`},def={keyword:"unevaluatedProperties",type:"object",schemaType:["boolean","object"],trackErrors:!0,error,code(cxt){let{gen,schema,data,errsCount,it}=cxt;if(!errsCount)throw new Error("ajv implementation error");let{allErrors,props:props2}=it;props2 instanceof codegen_1.Name?gen.if((0,codegen_1._)`${props2} !== true`,()=>gen.forIn("key",data,key=>gen.if(unevaluatedDynamic(props2,key),()=>unevaluatedPropCode(key)))):props2!==!0&&gen.forIn("key",data,key=>props2===void 0?unevaluatedPropCode(key):gen.if(unevaluatedStatic(props2,key),()=>unevaluatedPropCode(key))),it.props=!0,cxt.ok((0,codegen_1._)`${errsCount} === ${names_1.default.errors}`);function unevaluatedPropCode(key){if(schema===!1){cxt.setParams({unevaluatedProperty:key}),cxt.error(),allErrors||gen.break();return}if(!(0,util_1.alwaysValidSchema)(it,schema)){let valid=gen.name("valid");cxt.subschema({keyword:"unevaluatedProperties",dataProp:key,dataPropType:util_1.Type.Str},valid),allErrors||gen.if((0,codegen_1.not)(valid),()=>gen.break())}}function unevaluatedDynamic(evaluatedProps,key){return(0,codegen_1._)`!${evaluatedProps} || !${evaluatedProps}[${key}]`}function unevaluatedStatic(evaluatedProps,key){let ps=[];for(let p in evaluatedProps)evaluatedProps[p]===!0&&ps.push((0,codegen_1._)`${key} !== ${p}`);return(0,codegen_1.and)(...ps)}}};exports.default=def}});var require_unevaluatedItems=__commonJS({"node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var codegen_1=require_codegen(),util_1=require_util(),error={message:({params:{len}})=>(0,codegen_1.str)`must NOT have more than ${len} items`,params:({params:{len}})=>(0,codegen_1._)`{limit: ${len}}`},def={keyword:"unevaluatedItems",type:"array",schemaType:["boolean","object"],error,code(cxt){let{gen,schema,data,it}=cxt,items=it.items||0;if(items===!0)return;let len=gen.const("len",(0,codegen_1._)`${data}.length`);if(schema===!1)cxt.setParams({len:items}),cxt.fail((0,codegen_1._)`${len} > ${items}`);else if(typeof schema=="object"&&!(0,util_1.alwaysValidSchema)(it,schema)){let valid=gen.var("valid",(0,codegen_1._)`${len} <= ${items}`);gen.if((0,codegen_1.not)(valid),()=>validateItems(valid,items)),cxt.ok(valid)}it.items=!0;function validateItems(valid,from3){gen.forRange("i",from3,len,i=>{cxt.subschema({keyword:"unevaluatedItems",dataProp:i,dataPropType:util_1.Type.Num},valid),it.allErrors||gen.if((0,codegen_1.not)(valid),()=>gen.break())})}}};exports.default=def}});var require_unevaluated=__commonJS({"node_modules/ajv/dist/vocabularies/unevaluated/index.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var unevaluatedProperties_1=require_unevaluatedProperties(),unevaluatedItems_1=require_unevaluatedItems(),unevaluated=[unevaluatedProperties_1.default,unevaluatedItems_1.default];exports.default=unevaluated}});var require_types=__commonJS({"node_modules/ajv/dist/vocabularies/discriminator/types.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.DiscrError=void 0;var DiscrError=(function(DiscrError2){return DiscrError2.Tag="tag",DiscrError2.Mapping="mapping",DiscrError2})(DiscrError||(exports.DiscrError=DiscrError={}))}});var require_discriminator=__commonJS({"node_modules/ajv/dist/vocabularies/discriminator/index.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var codegen_1=require_codegen(),types_1=require_types(),compile_1=require_compile(),ref_error_1=require_ref_error(),util_1=require_util(),error={message:({params:{discrError,tagName}})=>discrError===types_1.DiscrError.Tag?`tag "${tagName}" must be string`:`value of tag "${tagName}" must be in oneOf`,params:({params:{discrError,tag,tagName}})=>(0,codegen_1._)`{error: ${discrError}, tag: ${tagName}, tagValue: ${tag}}`},def={keyword:"discriminator",type:"object",schemaType:"object",error,code(cxt){let{gen,data,schema,parentSchema,it}=cxt,{oneOf}=parentSchema;if(!it.opts.discriminator)throw new Error("discriminator: requires discriminator option");let tagName=schema.propertyName;if(typeof tagName!="string")throw new Error("discriminator: requires propertyName");if(schema.mapping)throw new Error("discriminator: mapping is not supported");if(!oneOf)throw new Error("discriminator: requires oneOf keyword");let valid=gen.let("valid",!1),tag=gen.const("tag",(0,codegen_1._)`${data}${(0,codegen_1.getProperty)(tagName)}`);gen.if((0,codegen_1._)`typeof ${tag} == "string"`,()=>validateMapping(),()=>cxt.error(!1,{discrError:types_1.DiscrError.Tag,tag,tagName})),cxt.ok(valid);function validateMapping(){let mapping=getMapping();gen.if(!1);for(let tagValue in mapping)gen.elseIf((0,codegen_1._)`${tag} === ${tagValue}`),gen.assign(valid,applyTagSchema(mapping[tagValue]));gen.else(),cxt.error(!1,{discrError:types_1.DiscrError.Mapping,tag,tagName}),gen.endIf()}function applyTagSchema(schemaProp){let _valid=gen.name("valid"),schCxt=cxt.subschema({keyword:"oneOf",schemaProp},_valid);return cxt.mergeEvaluated(schCxt,codegen_1.Name),_valid}function getMapping(){var _a;let oneOfMapping={},topRequired=hasRequired(parentSchema),tagRequired=!0;for(let i=0;i<oneOf.length;i++){let sch=oneOf[i];if(sch?.$ref&&!(0,util_1.schemaHasRulesButRef)(sch,it.self.RULES)){let ref=sch.$ref;if(sch=compile_1.resolveRef.call(it.self,it.schemaEnv.root,it.baseId,ref),sch instanceof compile_1.SchemaEnv&&(sch=sch.schema),sch===void 0)throw new ref_error_1.default(it.opts.uriResolver,it.baseId,ref)}let propSch=(_a=sch?.properties)===null||_a===void 0?void 0:_a[tagName];if(typeof propSch!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${tagName}"`);tagRequired=tagRequired&&(topRequired||hasRequired(sch)),addMappings(propSch,i)}if(!tagRequired)throw new Error(`discriminator: "${tagName}" must be required`);return oneOfMapping;function hasRequired({required:required2}){return Array.isArray(required2)&&required2.includes(tagName)}function addMappings(sch,i){if(sch.const)addMapping(sch.const,i);else if(sch.enum)for(let tagValue of sch.enum)addMapping(tagValue,i);else throw new Error(`discriminator: "properties/${tagName}" must have "const" or "enum"`)}function addMapping(tagValue,i){if(typeof tagValue!="string"||tagValue in oneOfMapping)throw new Error(`discriminator: "${tagName}" values must be unique strings`);oneOfMapping[tagValue]=i}}}};exports.default=def}});var require_schema=__commonJS({"node_modules/ajv/dist/refs/json-schema-2019-09/schema.json"(exports,module){module.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/schema",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/core":!0,"https://json-schema.org/draft/2019-09/vocab/applicator":!0,"https://json-schema.org/draft/2019-09/vocab/validation":!0,"https://json-schema.org/draft/2019-09/vocab/meta-data":!0,"https://json-schema.org/draft/2019-09/vocab/format":!1,"https://json-schema.org/draft/2019-09/vocab/content":!0},$recursiveAnchor:!0,title:"Core and Validation specifications meta-schema",allOf:[{$ref:"meta/core"},{$ref:"meta/applicator"},{$ref:"meta/validation"},{$ref:"meta/meta-data"},{$ref:"meta/format"},{$ref:"meta/content"}],type:["object","boolean"],properties:{definitions:{$comment:"While no longer an official keyword as it is replaced by $defs, this keyword is retained in the meta-schema to prevent incompatible extensions as it remains in common use.",type:"object",additionalProperties:{$recursiveRef:"#"},default:{}},dependencies:{$comment:'"dependencies" is no longer a keyword, but schema authors should avoid redefining it to facilitate a smooth transition to "dependentSchemas" and "dependentRequired"',type:"object",additionalProperties:{anyOf:[{$recursiveRef:"#"},{$ref:"meta/validation#/$defs/stringArray"}]}}}}}});var require_applicator2=__commonJS({"node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json"(exports,module){module.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/applicator",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/applicator":!0},$recursiveAnchor:!0,title:"Applicator vocabulary meta-schema",type:["object","boolean"],properties:{additionalItems:{$recursiveRef:"#"},unevaluatedItems:{$recursiveRef:"#"},items:{anyOf:[{$recursiveRef:"#"},{$ref:"#/$defs/schemaArray"}]},contains:{$recursiveRef:"#"},additionalProperties:{$recursiveRef:"#"},unevaluatedProperties:{$recursiveRef:"#"},properties:{type:"object",additionalProperties:{$recursiveRef:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$recursiveRef:"#"},propertyNames:{format:"regex"},default:{}},dependentSchemas:{type:"object",additionalProperties:{$recursiveRef:"#"}},propertyNames:{$recursiveRef:"#"},if:{$recursiveRef:"#"},then:{$recursiveRef:"#"},else:{$recursiveRef:"#"},allOf:{$ref:"#/$defs/schemaArray"},anyOf:{$ref:"#/$defs/schemaArray"},oneOf:{$ref:"#/$defs/schemaArray"},not:{$recursiveRef:"#"}},$defs:{schemaArray:{type:"array",minItems:1,items:{$recursiveRef:"#"}}}}}});var require_content=__commonJS({"node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json"(exports,module){module.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/content",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/content":!0},$recursiveAnchor:!0,title:"Content vocabulary meta-schema",type:["object","boolean"],properties:{contentMediaType:{type:"string"},contentEncoding:{type:"string"},contentSchema:{$recursiveRef:"#"}}}}});var require_core4=__commonJS({"node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json"(exports,module){module.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/core",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/core":!0},$recursiveAnchor:!0,title:"Core vocabulary meta-schema",type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference",$comment:"Non-empty fragments not allowed.",pattern:"^[^#]*#?$"},$schema:{type:"string",format:"uri"},$anchor:{type:"string",pattern:"^[A-Za-z][-A-Za-z0-9.:_]*$"},$ref:{type:"string",format:"uri-reference"},$recursiveRef:{type:"string",format:"uri-reference"},$recursiveAnchor:{type:"boolean",default:!1},$vocabulary:{type:"object",propertyNames:{type:"string",format:"uri"},additionalProperties:{type:"boolean"}},$comment:{type:"string"},$defs:{type:"object",additionalProperties:{$recursiveRef:"#"},default:{}}}}}});var require_format3=__commonJS({"node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json"(exports,module){module.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/format",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/format":!0},$recursiveAnchor:!0,title:"Format vocabulary meta-schema",type:["object","boolean"],properties:{format:{type:"string"}}}}});var require_meta_data=__commonJS({"node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json"(exports,module){module.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/meta-data",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/meta-data":!0},$recursiveAnchor:!0,title:"Meta-data vocabulary meta-schema",type:["object","boolean"],properties:{title:{type:"string"},description:{type:"string"},default:!0,deprecated:{type:"boolean",default:!1},readOnly:{type:"boolean",default:!1},writeOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0}}}}});var require_validation2=__commonJS({"node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json"(exports,module){module.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/validation",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/validation":!0},$recursiveAnchor:!0,title:"Validation vocabulary meta-schema",type:["object","boolean"],properties:{multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/$defs/nonNegativeInteger"},minLength:{$ref:"#/$defs/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},maxItems:{$ref:"#/$defs/nonNegativeInteger"},minItems:{$ref:"#/$defs/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxContains:{$ref:"#/$defs/nonNegativeInteger"},minContains:{$ref:"#/$defs/nonNegativeInteger",default:1},maxProperties:{$ref:"#/$defs/nonNegativeInteger"},minProperties:{$ref:"#/$defs/nonNegativeIntegerDefault0"},required:{$ref:"#/$defs/stringArray"},dependentRequired:{type:"object",additionalProperties:{$ref:"#/$defs/stringArray"}},const:!0,enum:{type:"array",items:!0},type:{anyOf:[{$ref:"#/$defs/simpleTypes"},{type:"array",items:{$ref:"#/$defs/simpleTypes"},minItems:1,uniqueItems:!0}]}},$defs:{nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{$ref:"#/$defs/nonNegativeInteger",default:0},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}}}}});var require_json_schema_2019_09=__commonJS({"node_modules/ajv/dist/refs/json-schema-2019-09/index.js"(exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var metaSchema=require_schema(),applicator=require_applicator2(),content=require_content(),core=require_core4(),format=require_format3(),metadata=require_meta_data(),validation=require_validation2(),META_SUPPORT_DATA=["/properties"];function addMetaSchema2019($data){return[metaSchema,applicator,content,core,with$data(this,format),metadata,with$data(this,validation)].forEach(sch=>this.addMetaSchema(sch,void 0,!1)),this;function with$data(ajv,sch){return $data?ajv.$dataMetaSchema(sch,META_SUPPORT_DATA):sch}}exports.default=addMetaSchema2019}});var require__=__commonJS({"node_modules/ajv/dist/2019.js"(exports,module){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.MissingRefError=exports.ValidationError=exports.CodeGen=exports.Name=exports.nil=exports.stringify=exports.str=exports._=exports.KeywordCxt=exports.Ajv2019=void 0;var core_1=require_core2(),draft7_1=require_draft7(),dynamic_1=require_dynamic(),next_1=require_next(),unevaluated_1=require_unevaluated(),discriminator_1=require_discriminator(),json_schema_2019_09_1=require_json_schema_2019_09(),META_SCHEMA_ID="https://json-schema.org/draft/2019-09/schema",Ajv20192=class extends core_1.default{constructor(opts={}){super(__spreadProps(__spreadValues({},opts),{dynamicRef:!0,next:!0,unevaluated:!0}))}_addVocabularies(){super._addVocabularies(),this.addVocabulary(dynamic_1.default),draft7_1.default.forEach(v=>this.addVocabulary(v)),this.addVocabulary(next_1.default),this.addVocabulary(unevaluated_1.default),this.opts.discriminator&&this.addKeyword(discriminator_1.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema();let{$data,meta}=this.opts;meta&&(json_schema_2019_09_1.default.call(this,$data),this.refs["http://json-schema.org/schema"]=META_SCHEMA_ID)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(META_SCHEMA_ID)?META_SCHEMA_ID:void 0)}};exports.Ajv2019=Ajv20192;module.exports=exports=Ajv20192;module.exports.Ajv2019=Ajv20192;Object.defineProperty(exports,"__esModule",{value:!0});exports.default=Ajv20192;var validate_1=require_validate();Object.defineProperty(exports,"KeywordCxt",{enumerable:!0,get:function(){return validate_1.KeywordCxt}});var codegen_1=require_codegen();Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return codegen_1._}});Object.defineProperty(exports,"str",{enumerable:!0,get:function(){return codegen_1.str}});Object.defineProperty(exports,"stringify",{enumerable:!0,get:function(){return codegen_1.stringify}});Object.defineProperty(exports,"nil",{enumerable:!0,get:function(){return codegen_1.nil}});Object.defineProperty(exports,"Name",{enumerable:!0,get:function(){return codegen_1.Name}});Object.defineProperty(exports,"CodeGen",{enumerable:!0,get:function(){return codegen_1.CodeGen}});var validation_error_1=require_validation_error();Object.defineProperty(exports,"ValidationError",{enumerable:!0,get:function(){return validation_error_1.default}});var ref_error_1=require_ref_error();Object.defineProperty(exports,"MissingRefError",{enumerable:!0,get:function(){return ref_error_1.default}})}});var _currentInjector;function getCurrentInjector(){return _currentInjector}function setCurrentInjector(injector){let former=_currentInjector;return _currentInjector=injector,former}var NOT_FOUND=Symbol("NotFound");function isNotFound(e){return e===NOT_FOUND||e?.name==="\u0275NotFound"}function defaultEquals(a,b){return Object.is(a,b)}var activeConsumer=null,inNotificationPhase=!1,epoch=1,postProducerCreatedFn=null,SIGNAL=Symbol("SIGNAL");function setActiveConsumer(consumer){let prev=activeConsumer;return activeConsumer=consumer,prev}function getActiveConsumer(){return activeConsumer}var REACTIVE_NODE={version:0,lastCleanEpoch:0,dirty:!1,producers:void 0,producersTail:void 0,consumers:void 0,consumersTail:void 0,recomputing:!1,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,kind:"unknown",producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{}};function producerAccessed(node){if(inNotificationPhase)throw new Error("");if(activeConsumer===null)return;activeConsumer.consumerOnSignalRead(node);let prevProducerLink=activeConsumer.producersTail;if(prevProducerLink!==void 0&&prevProducerLink.producer===node)return;let nextProducerLink,isRecomputing=activeConsumer.recomputing;if(isRecomputing&&(nextProducerLink=prevProducerLink!==void 0?prevProducerLink.nextProducer:activeConsumer.producers,nextProducerLink!==void 0&&nextProducerLink.producer===node)){activeConsumer.producersTail=nextProducerLink,nextProducerLink.lastReadVersion=node.version;return}let prevConsumerLink=node.consumersTail;if(prevConsumerLink!==void 0&&prevConsumerLink.consumer===activeConsumer&&(!isRecomputing||isValidLink(prevConsumerLink,activeConsumer)))return;let isLive=consumerIsLive(activeConsumer),newLink={producer:node,consumer:activeConsumer,nextProducer:nextProducerLink,prevConsumer:prevConsumerLink,lastReadVersion:node.version,nextConsumer:void 0};activeConsumer.producersTail=newLink,prevProducerLink!==void 0?prevProducerLink.nextProducer=newLink:activeConsumer.producers=newLink,isLive&&producerAddLiveConsumer(node,newLink)}function producerIncrementEpoch(){epoch++}function producerUpdateValueVersion(node){if(!(consumerIsLive(node)&&!node.dirty)&&!(!node.dirty&&node.lastCleanEpoch===epoch)){if(!node.producerMustRecompute(node)&&!consumerPollProducersForChange(node)){producerMarkClean(node);return}node.producerRecomputeValue(node),producerMarkClean(node)}}function producerNotifyConsumers(node){if(node.consumers===void 0)return;let prev=inNotificationPhase;inNotificationPhase=!0;try{for(let link=node.consumers;link!==void 0;link=link.nextConsumer){let consumer=link.consumer;consumer.dirty||consumerMarkDirty(consumer)}}finally{inNotificationPhase=prev}}function producerUpdatesAllowed(){return activeConsumer?.consumerAllowSignalWrites!==!1}function consumerMarkDirty(node){node.dirty=!0,producerNotifyConsumers(node),node.consumerMarkedDirty?.(node)}function producerMarkClean(node){node.dirty=!1,node.lastCleanEpoch=epoch}function consumerBeforeComputation(node){return node&&(node.producersTail=void 0,node.recomputing=!0),setActiveConsumer(node)}function consumerAfterComputation(node,prevConsumer){if(setActiveConsumer(prevConsumer),!node)return;node.recomputing=!1;let producersTail=node.producersTail,toRemove=producersTail!==void 0?producersTail.nextProducer:node.producers;if(toRemove!==void 0){if(consumerIsLive(node))do toRemove=producerRemoveLiveConsumerLink(toRemove);while(toRemove!==void 0);producersTail!==void 0?producersTail.nextProducer=void 0:node.producers=void 0}}function consumerPollProducersForChange(node){for(let link=node.producers;link!==void 0;link=link.nextProducer){let producer=link.producer,seenVersion=link.lastReadVersion;if(seenVersion!==producer.version||(producerUpdateValueVersion(producer),seenVersion!==producer.version))return!0}return!1}function consumerDestroy(node){if(consumerIsLive(node)){let link=node.producers;for(;link!==void 0;)link=producerRemoveLiveConsumerLink(link)}node.producers=void 0,node.producersTail=void 0,node.consumers=void 0,node.consumersTail=void 0}function producerAddLiveConsumer(node,link){let consumersTail=node.consumersTail,wasLive=consumerIsLive(node);if(consumersTail!==void 0?(link.nextConsumer=consumersTail.nextConsumer,consumersTail.nextConsumer=link):(link.nextConsumer=void 0,node.consumers=link),link.prevConsumer=consumersTail,node.consumersTail=link,!wasLive)for(let link2=node.producers;link2!==void 0;link2=link2.nextProducer)producerAddLiveConsumer(link2.producer,link2)}function producerRemoveLiveConsumerLink(link){let producer=link.producer,nextProducer=link.nextProducer,nextConsumer=link.nextConsumer,prevConsumer=link.prevConsumer;if(link.nextConsumer=void 0,link.prevConsumer=void 0,nextConsumer!==void 0?nextConsumer.prevConsumer=prevConsumer:producer.consumersTail=prevConsumer,prevConsumer!==void 0)prevConsumer.nextConsumer=nextConsumer;else if(producer.consumers=nextConsumer,!consumerIsLive(producer)){let producerLink=producer.producers;for(;producerLink!==void 0;)producerLink=producerRemoveLiveConsumerLink(producerLink)}return nextProducer}function consumerIsLive(node){return node.consumerIsAlwaysLive||node.consumers!==void 0}function runPostProducerCreatedFn(node){postProducerCreatedFn?.(node)}function isValidLink(checkLink,consumer){let producersTail=consumer.producersTail;if(producersTail!==void 0){let link=consumer.producers;do{if(link===checkLink)return!0;if(link===producersTail)break;link=link.nextProducer}while(link!==void 0)}return!1}function createComputed(computation,equal){let node=Object.create(COMPUTED_NODE);node.computation=computation,equal!==void 0&&(node.equal=equal);let computed2=()=>{if(producerUpdateValueVersion(node),producerAccessed(node),node.value===ERRORED)throw node.error;return node.value};return computed2[SIGNAL]=node,runPostProducerCreatedFn(node),computed2}var UNSET=Symbol("UNSET"),COMPUTING=Symbol("COMPUTING"),ERRORED=Symbol("ERRORED"),COMPUTED_NODE=__spreadProps(__spreadValues({},REACTIVE_NODE),{value:UNSET,dirty:!0,error:null,equal:defaultEquals,kind:"computed",producerMustRecompute(node){return node.value===UNSET||node.value===COMPUTING},producerRecomputeValue(node){if(node.value===COMPUTING)throw new Error("");let oldValue=node.value;node.value=COMPUTING;let prevConsumer=consumerBeforeComputation(node),newValue,wasEqual=!1;try{newValue=node.computation(),setActiveConsumer(null),wasEqual=oldValue!==UNSET&&oldValue!==ERRORED&&newValue!==ERRORED&&node.equal(oldValue,newValue)}catch(err){newValue=ERRORED,node.error=err}finally{consumerAfterComputation(node,prevConsumer)}if(wasEqual){node.value=oldValue;return}node.value=newValue,node.version++}});function defaultThrowError(){throw new Error}var throwInvalidWriteToSignalErrorFn=defaultThrowError;function throwInvalidWriteToSignalError(node){throwInvalidWriteToSignalErrorFn(node)}function setThrowInvalidWriteToSignalError(fn){throwInvalidWriteToSignalErrorFn=fn}var postSignalSetFn=null;function createSignal(initialValue,equal){let node=Object.create(SIGNAL_NODE);node.value=initialValue,equal!==void 0&&(node.equal=equal);let getter=()=>signalGetFn(node);return getter[SIGNAL]=node,runPostProducerCreatedFn(node),[getter,newValue=>signalSetFn(node,newValue),updateFn=>signalUpdateFn(node,updateFn)]}function signalGetFn(node){return producerAccessed(node),node.value}function signalSetFn(node,newValue){producerUpdatesAllowed()||throwInvalidWriteToSignalError(node),node.equal(node.value,newValue)||(node.value=newValue,signalValueChanged(node))}function signalUpdateFn(node,updater){producerUpdatesAllowed()||throwInvalidWriteToSignalError(node),signalSetFn(node,updater(node.value))}var SIGNAL_NODE=__spreadProps(__spreadValues({},REACTIVE_NODE),{equal:defaultEquals,value:void 0,kind:"signal"});function signalValueChanged(node){node.version++,producerIncrementEpoch(),producerNotifyConsumers(node),postSignalSetFn?.(node)}function isFunction(value){return typeof value=="function"}function createErrorClass(createImpl){let ctorFunc=createImpl(instance=>{Error.call(instance),instance.stack=new Error().stack});return ctorFunc.prototype=Object.create(Error.prototype),ctorFunc.prototype.constructor=ctorFunc,ctorFunc}var UnsubscriptionError=createErrorClass(_super=>function(errors){_super(this),this.message=errors?`${errors.length} errors occurred during unsubscription:
|
|
9
9
|
${errors.map((err,i)=>`${i+1}) ${err.toString()}`).join(`
|
|
10
|
-
`)}`:"",this.name="UnsubscriptionError",this.errors=errors});function arrRemove(arr,item){if(arr){let index=arr.indexOf(item);0<=index&&arr.splice(index,1)}}var Subscription=class _Subscription{constructor(initialTeardown){this.initialTeardown=initialTeardown,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let errors;if(!this.closed){this.closed=!0;let{_parentage}=this;if(_parentage)if(this._parentage=null,Array.isArray(_parentage))for(let parent of _parentage)parent.remove(this);else _parentage.remove(this);let{initialTeardown:initialFinalizer}=this;if(isFunction(initialFinalizer))try{initialFinalizer()}catch(e){errors=e instanceof UnsubscriptionError?e.errors:[e]}let{_finalizers}=this;if(_finalizers){this._finalizers=null;for(let finalizer of _finalizers)try{execFinalizer(finalizer)}catch(err){errors=errors??[],err instanceof UnsubscriptionError?errors=[...errors,...err.errors]:errors.push(err)}}if(errors)throw new UnsubscriptionError(errors)}}add(teardown){var _a;if(teardown&&teardown!==this)if(this.closed)execFinalizer(teardown);else{if(teardown instanceof _Subscription){if(teardown.closed||teardown._hasParent(this))return;teardown._addParent(this)}(this._finalizers=(_a=this._finalizers)!==null&&_a!==void 0?_a:[]).push(teardown)}}_hasParent(parent){let{_parentage}=this;return _parentage===parent||Array.isArray(_parentage)&&_parentage.includes(parent)}_addParent(parent){let{_parentage}=this;this._parentage=Array.isArray(_parentage)?(_parentage.push(parent),_parentage):_parentage?[_parentage,parent]:parent}_removeParent(parent){let{_parentage}=this;_parentage===parent?this._parentage=null:Array.isArray(_parentage)&&arrRemove(_parentage,parent)}remove(teardown){let{_finalizers}=this;_finalizers&&arrRemove(_finalizers,teardown),teardown instanceof _Subscription&&teardown._removeParent(this)}};Subscription.EMPTY=(()=>{let empty=new Subscription;return empty.closed=!0,empty})();var EMPTY_SUBSCRIPTION=Subscription.EMPTY;function isSubscription(value){return value instanceof Subscription||value&&"closed"in value&&isFunction(value.remove)&&isFunction(value.add)&&isFunction(value.unsubscribe)}function execFinalizer(finalizer){isFunction(finalizer)?finalizer():finalizer.unsubscribe()}var config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var timeoutProvider={setTimeout(handler,timeout2,...args){let{delegate}=timeoutProvider;return delegate?.setTimeout?delegate.setTimeout(handler,timeout2,...args):setTimeout(handler,timeout2,...args)},clearTimeout(handle){let{delegate}=timeoutProvider;return(delegate?.clearTimeout||clearTimeout)(handle)},delegate:void 0};function reportUnhandledError(err){timeoutProvider.setTimeout(()=>{let{onUnhandledError}=config;if(onUnhandledError)onUnhandledError(err);else throw err})}function noop(){}var COMPLETE_NOTIFICATION=createNotification("C",void 0,void 0);function errorNotification(error){return createNotification("E",void 0,error)}function nextNotification(value){return createNotification("N",value,void 0)}function createNotification(kind,value,error){return{kind,value,error}}var context=null;function errorContext(cb){if(config.useDeprecatedSynchronousErrorHandling){let isRoot=!context;if(isRoot&&(context={errorThrown:!1,error:null}),cb(),isRoot){let{errorThrown,error}=context;if(context=null,errorThrown)throw error}}else cb()}function captureError(err){config.useDeprecatedSynchronousErrorHandling&&context&&(context.errorThrown=!0,context.error=err)}var Subscriber=class extends Subscription{constructor(destination){super(),this.isStopped=!1,destination?(this.destination=destination,isSubscription(destination)&&destination.add(this)):this.destination=EMPTY_OBSERVER}static create(next,error,complete){return new SafeSubscriber(next,error,complete)}next(value){this.isStopped?handleStoppedNotification(nextNotification(value),this):this._next(value)}error(err){this.isStopped?handleStoppedNotification(errorNotification(err),this):(this.isStopped=!0,this._error(err))}complete(){this.isStopped?handleStoppedNotification(COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(value){this.destination.next(value)}_error(err){try{this.destination.error(err)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}},_bind=Function.prototype.bind;function bind(fn,thisArg){return _bind.call(fn,thisArg)}var ConsumerObserver=class{constructor(partialObserver){this.partialObserver=partialObserver}next(value){let{partialObserver}=this;if(partialObserver.next)try{partialObserver.next(value)}catch(error){handleUnhandledError(error)}}error(err){let{partialObserver}=this;if(partialObserver.error)try{partialObserver.error(err)}catch(error){handleUnhandledError(error)}else handleUnhandledError(err)}complete(){let{partialObserver}=this;if(partialObserver.complete)try{partialObserver.complete()}catch(error){handleUnhandledError(error)}}},SafeSubscriber=class extends Subscriber{constructor(observerOrNext,error,complete){super();let partialObserver;if(isFunction(observerOrNext)||!observerOrNext)partialObserver={next:observerOrNext??void 0,error:error??void 0,complete:complete??void 0};else{let context2;this&&config.useDeprecatedNextContext?(context2=Object.create(observerOrNext),context2.unsubscribe=()=>this.unsubscribe(),partialObserver={next:observerOrNext.next&&bind(observerOrNext.next,context2),error:observerOrNext.error&&bind(observerOrNext.error,context2),complete:observerOrNext.complete&&bind(observerOrNext.complete,context2)}):partialObserver=observerOrNext}this.destination=new ConsumerObserver(partialObserver)}};function handleUnhandledError(error){config.useDeprecatedSynchronousErrorHandling?captureError(error):reportUnhandledError(error)}function defaultErrorHandler(err){throw err}function handleStoppedNotification(notification,subscriber){let{onStoppedNotification}=config;onStoppedNotification&&timeoutProvider.setTimeout(()=>onStoppedNotification(notification,subscriber))}var EMPTY_OBSERVER={closed:!0,next:noop,error:defaultErrorHandler,complete:noop};var observable=typeof Symbol=="function"&&Symbol.observable||"@@observable";function identity(x){return x}function pipe(...fns){return pipeFromArray(fns)}function pipeFromArray(fns){return fns.length===0?identity:fns.length===1?fns[0]:function(input2){return fns.reduce((prev,fn)=>fn(prev),input2)}}var Observable=(()=>{class Observable2{constructor(subscribe){subscribe&&(this._subscribe=subscribe)}lift(operator){let observable2=new Observable2;return observable2.source=this,observable2.operator=operator,observable2}subscribe(observerOrNext,error,complete){let subscriber=isSubscriber(observerOrNext)?observerOrNext:new SafeSubscriber(observerOrNext,error,complete);return errorContext(()=>{let{operator,source}=this;subscriber.add(operator?operator.call(subscriber,source):source?this._subscribe(subscriber):this._trySubscribe(subscriber))}),subscriber}_trySubscribe(sink){try{return this._subscribe(sink)}catch(err){sink.error(err)}}forEach(next,promiseCtor){return promiseCtor=getPromiseCtor(promiseCtor),new promiseCtor((resolve,reject)=>{let subscriber=new SafeSubscriber({next:value=>{try{next(value)}catch(err){reject(err),subscriber.unsubscribe()}},error:reject,complete:resolve});this.subscribe(subscriber)})}_subscribe(subscriber){var _a;return(_a=this.source)===null||_a===void 0?void 0:_a.subscribe(subscriber)}[observable](){return this}pipe(...operations){return pipeFromArray(operations)(this)}toPromise(promiseCtor){return promiseCtor=getPromiseCtor(promiseCtor),new promiseCtor((resolve,reject)=>{let value;this.subscribe(x=>value=x,err=>reject(err),()=>resolve(value))})}}return Observable2.create=subscribe=>new Observable2(subscribe),Observable2})();function getPromiseCtor(promiseCtor){var _a;return(_a=promiseCtor??config.Promise)!==null&&_a!==void 0?_a:Promise}function isObserver(value){return value&&isFunction(value.next)&&isFunction(value.error)&&isFunction(value.complete)}function isSubscriber(value){return value&&value instanceof Subscriber||isObserver(value)&&isSubscription(value)}function hasLift(source){return isFunction(source?.lift)}function operate(init){return source=>{if(hasLift(source))return source.lift(function(liftedSource){try{return init(liftedSource,this)}catch(err){this.error(err)}});throw new TypeError("Unable to lift unknown Observable type")}}function createOperatorSubscriber(destination,onNext,onComplete,onError,onFinalize){return new OperatorSubscriber(destination,onNext,onComplete,onError,onFinalize)}var OperatorSubscriber=class extends Subscriber{constructor(destination,onNext,onComplete,onError,onFinalize,shouldUnsubscribe){super(destination),this.onFinalize=onFinalize,this.shouldUnsubscribe=shouldUnsubscribe,this._next=onNext?function(value){try{onNext(value)}catch(err){destination.error(err)}}:super._next,this._error=onError?function(err){try{onError(err)}catch(err2){destination.error(err2)}finally{this.unsubscribe()}}:super._error,this._complete=onComplete?function(){try{onComplete()}catch(err){destination.error(err)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var _a;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){let{closed}=this;super.unsubscribe(),!closed&&((_a=this.onFinalize)===null||_a===void 0||_a.call(this))}}};function refCount(){return operate((source,subscriber)=>{let connection=null;source._refCount++;let refCounter=createOperatorSubscriber(subscriber,void 0,void 0,void 0,()=>{if(!source||source._refCount<=0||0<--source._refCount){connection=null;return}let sharedConnection=source._connection,conn=connection;connection=null,sharedConnection&&(!conn||sharedConnection===conn)&&sharedConnection.unsubscribe(),subscriber.unsubscribe()});source.subscribe(refCounter),refCounter.closed||(connection=source.connect())})}var ConnectableObservable=class extends Observable{constructor(source,subjectFactory){super(),this.source=source,this.subjectFactory=subjectFactory,this._subject=null,this._refCount=0,this._connection=null,hasLift(source)&&(this.lift=source.lift)}_subscribe(subscriber){return this.getSubject().subscribe(subscriber)}getSubject(){let subject=this._subject;return(!subject||subject.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;let{_connection}=this;this._subject=this._connection=null,_connection?.unsubscribe()}connect(){let connection=this._connection;if(!connection){connection=this._connection=new Subscription;let subject=this.getSubject();connection.add(this.source.subscribe(createOperatorSubscriber(subject,void 0,()=>{this._teardown(),subject.complete()},err=>{this._teardown(),subject.error(err)},()=>this._teardown()))),connection.closed&&(this._connection=null,connection=Subscription.EMPTY)}return connection}refCount(){return refCount()(this)}};var animationFrameProvider={schedule(callback){let request=requestAnimationFrame,cancel=cancelAnimationFrame,{delegate}=animationFrameProvider;delegate&&(request=delegate.requestAnimationFrame,cancel=delegate.cancelAnimationFrame);let handle=request(timestamp=>{cancel=void 0,callback(timestamp)});return new Subscription(()=>cancel?.(handle))},requestAnimationFrame(...args){let{delegate}=animationFrameProvider;return(delegate?.requestAnimationFrame||requestAnimationFrame)(...args)},cancelAnimationFrame(...args){let{delegate}=animationFrameProvider;return(delegate?.cancelAnimationFrame||cancelAnimationFrame)(...args)},delegate:void 0};var ObjectUnsubscribedError=createErrorClass(_super=>function(){_super(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var Subject=(()=>{class Subject2 extends Observable{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(operator){let subject=new AnonymousSubject(this,this);return subject.operator=operator,subject}_throwIfClosed(){if(this.closed)throw new ObjectUnsubscribedError}next(value){errorContext(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let observer of this.currentObservers)observer.next(value)}})}error(err){errorContext(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=err;let{observers}=this;for(;observers.length;)observers.shift().error(err)}})}complete(){errorContext(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;let{observers}=this;for(;observers.length;)observers.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var _a;return((_a=this.observers)===null||_a===void 0?void 0:_a.length)>0}_trySubscribe(subscriber){return this._throwIfClosed(),super._trySubscribe(subscriber)}_subscribe(subscriber){return this._throwIfClosed(),this._checkFinalizedStatuses(subscriber),this._innerSubscribe(subscriber)}_innerSubscribe(subscriber){let{hasError,isStopped,observers}=this;return hasError||isStopped?EMPTY_SUBSCRIPTION:(this.currentObservers=null,observers.push(subscriber),new Subscription(()=>{this.currentObservers=null,arrRemove(observers,subscriber)}))}_checkFinalizedStatuses(subscriber){let{hasError,thrownError,isStopped}=this;hasError?subscriber.error(thrownError):isStopped&&subscriber.complete()}asObservable(){let observable2=new Observable;return observable2.source=this,observable2}}return Subject2.create=(destination,source)=>new AnonymousSubject(destination,source),Subject2})(),AnonymousSubject=class extends Subject{constructor(destination,source){super(),this.destination=destination,this.source=source}next(value){var _a,_b;(_b=(_a=this.destination)===null||_a===void 0?void 0:_a.next)===null||_b===void 0||_b.call(_a,value)}error(err){var _a,_b;(_b=(_a=this.destination)===null||_a===void 0?void 0:_a.error)===null||_b===void 0||_b.call(_a,err)}complete(){var _a,_b;(_b=(_a=this.destination)===null||_a===void 0?void 0:_a.complete)===null||_b===void 0||_b.call(_a)}_subscribe(subscriber){var _a,_b;return(_b=(_a=this.source)===null||_a===void 0?void 0:_a.subscribe(subscriber))!==null&&_b!==void 0?_b:EMPTY_SUBSCRIPTION}};var BehaviorSubject=class extends Subject{constructor(_value){super(),this._value=_value}get value(){return this.getValue()}_subscribe(subscriber){let subscription=super._subscribe(subscriber);return!subscription.closed&&subscriber.next(this._value),subscription}getValue(){let{hasError,thrownError,_value}=this;if(hasError)throw thrownError;return this._throwIfClosed(),_value}next(value){super.next(this._value=value)}};var dateTimestampProvider={now(){return(dateTimestampProvider.delegate||Date).now()},delegate:void 0};var ReplaySubject=class extends Subject{constructor(_bufferSize=1/0,_windowTime=1/0,_timestampProvider=dateTimestampProvider){super(),this._bufferSize=_bufferSize,this._windowTime=_windowTime,this._timestampProvider=_timestampProvider,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=_windowTime===1/0,this._bufferSize=Math.max(1,_bufferSize),this._windowTime=Math.max(1,_windowTime)}next(value){let{isStopped,_buffer,_infiniteTimeWindow,_timestampProvider,_windowTime}=this;isStopped||(_buffer.push(value),!_infiniteTimeWindow&&_buffer.push(_timestampProvider.now()+_windowTime)),this._trimBuffer(),super.next(value)}_subscribe(subscriber){this._throwIfClosed(),this._trimBuffer();let subscription=this._innerSubscribe(subscriber),{_infiniteTimeWindow,_buffer}=this,copy=_buffer.slice();for(let i=0;i<copy.length&&!subscriber.closed;i+=_infiniteTimeWindow?1:2)subscriber.next(copy[i]);return this._checkFinalizedStatuses(subscriber),subscription}_trimBuffer(){let{_bufferSize,_timestampProvider,_buffer,_infiniteTimeWindow}=this,adjustedBufferSize=(_infiniteTimeWindow?1:2)*_bufferSize;if(_bufferSize<1/0&&adjustedBufferSize<_buffer.length&&_buffer.splice(0,_buffer.length-adjustedBufferSize),!_infiniteTimeWindow){let now=_timestampProvider.now(),last4=0;for(let i=1;i<_buffer.length&&_buffer[i]<=now;i+=2)last4=i;last4&&_buffer.splice(0,last4+1)}}};var Action=class extends Subscription{constructor(scheduler,work){super()}schedule(state2,delay2=0){return this}};var intervalProvider={setInterval(handler,timeout2,...args){let{delegate}=intervalProvider;return delegate?.setInterval?delegate.setInterval(handler,timeout2,...args):setInterval(handler,timeout2,...args)},clearInterval(handle){let{delegate}=intervalProvider;return(delegate?.clearInterval||clearInterval)(handle)},delegate:void 0};var AsyncAction=class extends Action{constructor(scheduler,work){super(scheduler,work),this.scheduler=scheduler,this.work=work,this.pending=!1}schedule(state2,delay2=0){var _a;if(this.closed)return this;this.state=state2;let id=this.id,scheduler=this.scheduler;return id!=null&&(this.id=this.recycleAsyncId(scheduler,id,delay2)),this.pending=!0,this.delay=delay2,this.id=(_a=this.id)!==null&&_a!==void 0?_a:this.requestAsyncId(scheduler,this.id,delay2),this}requestAsyncId(scheduler,_id,delay2=0){return intervalProvider.setInterval(scheduler.flush.bind(scheduler,this),delay2)}recycleAsyncId(_scheduler,id,delay2=0){if(delay2!=null&&this.delay===delay2&&this.pending===!1)return id;id!=null&&intervalProvider.clearInterval(id)}execute(state2,delay2){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;let error=this._execute(state2,delay2);if(error)return error;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(state2,_delay){let errored=!1,errorValue;try{this.work(state2)}catch(e){errored=!0,errorValue=e||new Error("Scheduled action threw falsy error")}if(errored)return this.unsubscribe(),errorValue}unsubscribe(){if(!this.closed){let{id,scheduler}=this,{actions}=scheduler;this.work=this.state=this.scheduler=null,this.pending=!1,arrRemove(actions,this),id!=null&&(this.id=this.recycleAsyncId(scheduler,id,null)),this.delay=null,super.unsubscribe()}}};var nextHandle=1,resolved,activeHandles={};function findAndClearHandle(handle){return handle in activeHandles?(delete activeHandles[handle],!0):!1}var Immediate={setImmediate(cb){let handle=nextHandle++;return activeHandles[handle]=!0,resolved||(resolved=Promise.resolve()),resolved.then(()=>findAndClearHandle(handle)&&cb()),handle},clearImmediate(handle){findAndClearHandle(handle)}};var{setImmediate,clearImmediate}=Immediate,immediateProvider={setImmediate(...args){let{delegate}=immediateProvider;return(delegate?.setImmediate||setImmediate)(...args)},clearImmediate(handle){let{delegate}=immediateProvider;return(delegate?.clearImmediate||clearImmediate)(handle)},delegate:void 0};var AsapAction=class extends AsyncAction{constructor(scheduler,work){super(scheduler,work),this.scheduler=scheduler,this.work=work}requestAsyncId(scheduler,id,delay2=0){return delay2!==null&&delay2>0?super.requestAsyncId(scheduler,id,delay2):(scheduler.actions.push(this),scheduler._scheduled||(scheduler._scheduled=immediateProvider.setImmediate(scheduler.flush.bind(scheduler,void 0))))}recycleAsyncId(scheduler,id,delay2=0){var _a;if(delay2!=null?delay2>0:this.delay>0)return super.recycleAsyncId(scheduler,id,delay2);let{actions}=scheduler;id!=null&&((_a=actions[actions.length-1])===null||_a===void 0?void 0:_a.id)!==id&&(immediateProvider.clearImmediate(id),scheduler._scheduled===id&&(scheduler._scheduled=void 0))}};var Scheduler=class _Scheduler{constructor(schedulerActionCtor,now=_Scheduler.now){this.schedulerActionCtor=schedulerActionCtor,this.now=now}schedule(work,delay2=0,state2){return new this.schedulerActionCtor(this,work).schedule(state2,delay2)}};Scheduler.now=dateTimestampProvider.now;var AsyncScheduler=class extends Scheduler{constructor(SchedulerAction,now=Scheduler.now){super(SchedulerAction,now),this.actions=[],this._active=!1}flush(action){let{actions}=this;if(this._active){actions.push(action);return}let error;this._active=!0;do if(error=action.execute(action.state,action.delay))break;while(action=actions.shift());if(this._active=!1,error){for(;action=actions.shift();)action.unsubscribe();throw error}}};var AsapScheduler=class extends AsyncScheduler{flush(action){this._active=!0;let flushId=this._scheduled;this._scheduled=void 0;let{actions}=this,error;action=action||actions.shift();do if(error=action.execute(action.state,action.delay))break;while((action=actions[0])&&action.id===flushId&&actions.shift());if(this._active=!1,error){for(;(action=actions[0])&&action.id===flushId&&actions.shift();)action.unsubscribe();throw error}}};var asapScheduler=new AsapScheduler(AsapAction);var asyncScheduler=new AsyncScheduler(AsyncAction),async=asyncScheduler;var QueueAction=class extends AsyncAction{constructor(scheduler,work){super(scheduler,work),this.scheduler=scheduler,this.work=work}schedule(state2,delay2=0){return delay2>0?super.schedule(state2,delay2):(this.delay=delay2,this.state=state2,this.scheduler.flush(this),this)}execute(state2,delay2){return delay2>0||this.closed?super.execute(state2,delay2):this._execute(state2,delay2)}requestAsyncId(scheduler,id,delay2=0){return delay2!=null&&delay2>0||delay2==null&&this.delay>0?super.requestAsyncId(scheduler,id,delay2):(scheduler.flush(this),0)}};var QueueScheduler=class extends AsyncScheduler{};var queueScheduler=new QueueScheduler(QueueAction);var AnimationFrameAction=class extends AsyncAction{constructor(scheduler,work){super(scheduler,work),this.scheduler=scheduler,this.work=work}requestAsyncId(scheduler,id,delay2=0){return delay2!==null&&delay2>0?super.requestAsyncId(scheduler,id,delay2):(scheduler.actions.push(this),scheduler._scheduled||(scheduler._scheduled=animationFrameProvider.requestAnimationFrame(()=>scheduler.flush(void 0))))}recycleAsyncId(scheduler,id,delay2=0){var _a;if(delay2!=null?delay2>0:this.delay>0)return super.recycleAsyncId(scheduler,id,delay2);let{actions}=scheduler;id!=null&&id===scheduler._scheduled&&((_a=actions[actions.length-1])===null||_a===void 0?void 0:_a.id)!==id&&(animationFrameProvider.cancelAnimationFrame(id),scheduler._scheduled=void 0)}};var AnimationFrameScheduler=class extends AsyncScheduler{flush(action){this._active=!0;let flushId;action?flushId=action.id:(flushId=this._scheduled,this._scheduled=void 0);let{actions}=this,error;action=action||actions.shift();do if(error=action.execute(action.state,action.delay))break;while((action=actions[0])&&action.id===flushId&&actions.shift());if(this._active=!1,error){for(;(action=actions[0])&&action.id===flushId&&actions.shift();)action.unsubscribe();throw error}}};var animationFrameScheduler=new AnimationFrameScheduler(AnimationFrameAction);var EMPTY=new Observable(subscriber=>subscriber.complete());function isScheduler(value){return value&&isFunction(value.schedule)}function last(arr){return arr[arr.length-1]}function popResultSelector(args){return isFunction(last(args))?args.pop():void 0}function popScheduler(args){return isScheduler(last(args))?args.pop():void 0}function popNumber(args,defaultValue){return typeof last(args)=="number"?args.pop():defaultValue}function __awaiter(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})}function __values(o){var s=typeof Symbol=="function"&&Symbol.iterator,m=s&&o[s],i=0;if(m)return m.call(o);if(o&&typeof o.length=="number")return{next:function(){return o&&i>=o.length&&(o=void 0),{value:o&&o[i++],done:!o}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")}function __await(v){return this instanceof __await?(this.v=v,this):new __await(v)}function __asyncGenerator(thisArg,_arguments,generator){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var g=generator.apply(thisArg,_arguments||[]),i,q=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),verb("next"),verb("throw"),verb("return",awaitReturn),i[Symbol.asyncIterator]=function(){return this},i;function awaitReturn(f){return function(v){return Promise.resolve(v).then(f,reject)}}function verb(n,f){g[n]&&(i[n]=function(v){return new Promise(function(a,b){q.push([n,v,a,b])>1||resume(n,v)})},f&&(i[n]=f(i[n])))}function resume(n,v){try{step(g[n](v))}catch(e){settle(q[0][3],e)}}function step(r){r.value instanceof __await?Promise.resolve(r.value.v).then(fulfill,reject):settle(q[0][2],r)}function fulfill(value){resume("next",value)}function reject(value){resume("throw",value)}function settle(f,v){f(v),q.shift(),q.length&&resume(q[0][0],q[0][1])}}function __asyncValues(o){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var m=o[Symbol.asyncIterator],i;return m?m.call(o):(o=typeof __values=="function"?__values(o):o[Symbol.iterator](),i={},verb("next"),verb("throw"),verb("return"),i[Symbol.asyncIterator]=function(){return this},i);function verb(n){i[n]=o[n]&&function(v){return new Promise(function(resolve,reject){v=o[n](v),settle(resolve,reject,v.done,v.value)})}}function settle(resolve,reject,d,v){Promise.resolve(v).then(function(v2){resolve({value:v2,done:d})},reject)}}var isArrayLike=x=>x&&typeof x.length=="number"&&typeof x!="function";function isPromise(value){return isFunction(value?.then)}function isInteropObservable(input2){return isFunction(input2[observable])}function isAsyncIterable(obj){return Symbol.asyncIterator&&isFunction(obj?.[Symbol.asyncIterator])}function createInvalidObservableTypeError(input2){return new TypeError(`You provided ${input2!==null&&typeof input2=="object"?"an invalid object":`'${input2}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}function getSymbolIterator(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var iterator=getSymbolIterator();function isIterable(input2){return isFunction(input2?.[iterator])}function readableStreamLikeToAsyncGenerator(readableStream){return __asyncGenerator(this,arguments,function*(){let reader=readableStream.getReader();try{for(;;){let{value,done}=yield __await(reader.read());if(done)return yield __await(void 0);yield yield __await(value)}}finally{reader.releaseLock()}})}function isReadableStreamLike(obj){return isFunction(obj?.getReader)}function innerFrom(input2){if(input2 instanceof Observable)return input2;if(input2!=null){if(isInteropObservable(input2))return fromInteropObservable(input2);if(isArrayLike(input2))return fromArrayLike(input2);if(isPromise(input2))return fromPromise(input2);if(isAsyncIterable(input2))return fromAsyncIterable(input2);if(isIterable(input2))return fromIterable(input2);if(isReadableStreamLike(input2))return fromReadableStreamLike(input2)}throw createInvalidObservableTypeError(input2)}function fromInteropObservable(obj){return new Observable(subscriber=>{let obs=obj[observable]();if(isFunction(obs.subscribe))return obs.subscribe(subscriber);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function fromArrayLike(array){return new Observable(subscriber=>{for(let i=0;i<array.length&&!subscriber.closed;i++)subscriber.next(array[i]);subscriber.complete()})}function fromPromise(promise){return new Observable(subscriber=>{promise.then(value=>{subscriber.closed||(subscriber.next(value),subscriber.complete())},err=>subscriber.error(err)).then(null,reportUnhandledError)})}function fromIterable(iterable){return new Observable(subscriber=>{for(let value of iterable)if(subscriber.next(value),subscriber.closed)return;subscriber.complete()})}function fromAsyncIterable(asyncIterable){return new Observable(subscriber=>{process(asyncIterable,subscriber).catch(err=>subscriber.error(err))})}function fromReadableStreamLike(readableStream){return fromAsyncIterable(readableStreamLikeToAsyncGenerator(readableStream))}function process(asyncIterable,subscriber){var asyncIterable_1,asyncIterable_1_1,e_1,_a;return __awaiter(this,void 0,void 0,function*(){try{for(asyncIterable_1=__asyncValues(asyncIterable);asyncIterable_1_1=yield asyncIterable_1.next(),!asyncIterable_1_1.done;){let value=asyncIterable_1_1.value;if(subscriber.next(value),subscriber.closed)return}}catch(e_1_1){e_1={error:e_1_1}}finally{try{asyncIterable_1_1&&!asyncIterable_1_1.done&&(_a=asyncIterable_1.return)&&(yield _a.call(asyncIterable_1))}finally{if(e_1)throw e_1.error}}subscriber.complete()})}function executeSchedule(parentSubscription,scheduler,work,delay2=0,repeat=!1){let scheduleSubscription=scheduler.schedule(function(){work(),repeat?parentSubscription.add(this.schedule(null,delay2)):this.unsubscribe()},delay2);if(parentSubscription.add(scheduleSubscription),!repeat)return scheduleSubscription}function observeOn(scheduler,delay2=0){return operate((source,subscriber)=>{source.subscribe(createOperatorSubscriber(subscriber,value=>executeSchedule(subscriber,scheduler,()=>subscriber.next(value),delay2),()=>executeSchedule(subscriber,scheduler,()=>subscriber.complete(),delay2),err=>executeSchedule(subscriber,scheduler,()=>subscriber.error(err),delay2)))})}function subscribeOn(scheduler,delay2=0){return operate((source,subscriber)=>{subscriber.add(scheduler.schedule(()=>source.subscribe(subscriber),delay2))})}function scheduleObservable(input2,scheduler){return innerFrom(input2).pipe(subscribeOn(scheduler),observeOn(scheduler))}function schedulePromise(input2,scheduler){return innerFrom(input2).pipe(subscribeOn(scheduler),observeOn(scheduler))}function scheduleArray(input2,scheduler){return new Observable(subscriber=>{let i=0;return scheduler.schedule(function(){i===input2.length?subscriber.complete():(subscriber.next(input2[i++]),subscriber.closed||this.schedule())})})}function scheduleIterable(input2,scheduler){return new Observable(subscriber=>{let iterator2;return executeSchedule(subscriber,scheduler,()=>{iterator2=input2[iterator](),executeSchedule(subscriber,scheduler,()=>{let value,done;try{({value,done}=iterator2.next())}catch(err){subscriber.error(err);return}done?subscriber.complete():subscriber.next(value)},0,!0)}),()=>isFunction(iterator2?.return)&&iterator2.return()})}function scheduleAsyncIterable(input2,scheduler){if(!input2)throw new Error("Iterable cannot be null");return new Observable(subscriber=>{executeSchedule(subscriber,scheduler,()=>{let iterator2=input2[Symbol.asyncIterator]();executeSchedule(subscriber,scheduler,()=>{iterator2.next().then(result=>{result.done?subscriber.complete():subscriber.next(result.value)})},0,!0)})})}function scheduleReadableStreamLike(input2,scheduler){return scheduleAsyncIterable(readableStreamLikeToAsyncGenerator(input2),scheduler)}function scheduled(input2,scheduler){if(input2!=null){if(isInteropObservable(input2))return scheduleObservable(input2,scheduler);if(isArrayLike(input2))return scheduleArray(input2,scheduler);if(isPromise(input2))return schedulePromise(input2,scheduler);if(isAsyncIterable(input2))return scheduleAsyncIterable(input2,scheduler);if(isIterable(input2))return scheduleIterable(input2,scheduler);if(isReadableStreamLike(input2))return scheduleReadableStreamLike(input2,scheduler)}throw createInvalidObservableTypeError(input2)}function from(input2,scheduler){return scheduler?scheduled(input2,scheduler):innerFrom(input2)}function of(...args){let scheduler=popScheduler(args);return from(args,scheduler)}function throwError(errorOrErrorFactory,scheduler){let errorFactory=isFunction(errorOrErrorFactory)?errorOrErrorFactory:()=>errorOrErrorFactory,init=subscriber=>subscriber.error(errorFactory());return new Observable(scheduler?subscriber=>scheduler.schedule(init,0,subscriber):init)}var Notification=class _Notification{constructor(kind,value,error){this.kind=kind,this.value=value,this.error=error,this.hasValue=kind==="N"}observe(observer){return observeNotification(this,observer)}do(nextHandler,errorHandler2,completeHandler){let{kind,value,error}=this;return kind==="N"?nextHandler?.(value):kind==="E"?errorHandler2?.(error):completeHandler?.()}accept(nextOrObserver,error,complete){var _a;return isFunction((_a=nextOrObserver)===null||_a===void 0?void 0:_a.next)?this.observe(nextOrObserver):this.do(nextOrObserver,error,complete)}toObservable(){let{kind,value,error}=this,result=kind==="N"?of(value):kind==="E"?throwError(()=>error):kind==="C"?EMPTY:0;if(!result)throw new TypeError(`Unexpected notification kind ${kind}`);return result}static createNext(value){return new _Notification("N",value)}static createError(err){return new _Notification("E",void 0,err)}static createComplete(){return _Notification.completeNotification}};Notification.completeNotification=new Notification("C");function observeNotification(notification,observer){var _a,_b,_c;let{kind,value,error}=notification;if(typeof kind!="string")throw new TypeError('Invalid notification, missing "kind"');kind==="N"?(_a=observer.next)===null||_a===void 0||_a.call(observer,value):kind==="E"?(_b=observer.error)===null||_b===void 0||_b.call(observer,error):(_c=observer.complete)===null||_c===void 0||_c.call(observer)}function isObservable(obj){return!!obj&&(obj instanceof Observable||isFunction(obj.lift)&&isFunction(obj.subscribe))}var EmptyError=createErrorClass(_super=>function(){_super(this),this.name="EmptyError",this.message="no elements in sequence"});function lastValueFrom(source,config2){let hasConfig=typeof config2=="object";return new Promise((resolve,reject)=>{let _hasValue=!1,_value;source.subscribe({next:value=>{_value=value,_hasValue=!0},error:reject,complete:()=>{_hasValue?resolve(_value):hasConfig?resolve(config2.defaultValue):reject(new EmptyError)}})})}function firstValueFrom(source,config2){let hasConfig=typeof config2=="object";return new Promise((resolve,reject)=>{let subscriber=new SafeSubscriber({next:value=>{resolve(value),subscriber.unsubscribe()},error:reject,complete:()=>{hasConfig?resolve(config2.defaultValue):reject(new EmptyError)}});source.subscribe(subscriber)})}function isValidDate(value){return value instanceof Date&&!isNaN(value)}var TimeoutError=createErrorClass(_super=>function(info=null){_super(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=info});function timeout(config2,schedulerArg){let{first:first2,each,with:_with=timeoutErrorFactory,scheduler=schedulerArg??asyncScheduler,meta=null}=isValidDate(config2)?{first:config2}:typeof config2=="number"?{each:config2}:config2;if(first2==null&&each==null)throw new TypeError("No timeout provided.");return operate((source,subscriber)=>{let originalSourceSubscription,timerSubscription,lastValue=null,seen=0,startTimer=delay2=>{timerSubscription=executeSchedule(subscriber,scheduler,()=>{try{originalSourceSubscription.unsubscribe(),innerFrom(_with({meta,lastValue,seen})).subscribe(subscriber)}catch(err){subscriber.error(err)}},delay2)};originalSourceSubscription=source.subscribe(createOperatorSubscriber(subscriber,value=>{timerSubscription?.unsubscribe(),seen++,subscriber.next(lastValue=value),each>0&&startTimer(each)},void 0,void 0,()=>{timerSubscription?.closed||timerSubscription?.unsubscribe(),lastValue=null})),!seen&&startTimer(first2!=null?typeof first2=="number"?first2:+first2-scheduler.now():each)})}function timeoutErrorFactory(info){throw new TimeoutError(info)}function map(project,thisArg){return operate((source,subscriber)=>{let index=0;source.subscribe(createOperatorSubscriber(subscriber,value=>{subscriber.next(project.call(thisArg,value,index++))}))})}var{isArray}=Array;function callOrApply(fn,args){return isArray(args)?fn(...args):fn(args)}function mapOneOrManyArgs(fn){return map(args=>callOrApply(fn,args))}var{isArray:isArray2}=Array,{getPrototypeOf,prototype:objectProto,keys:getKeys}=Object;function argsArgArrayOrObject(args){if(args.length===1){let first2=args[0];if(isArray2(first2))return{args:first2,keys:null};if(isPOJO(first2)){let keys=getKeys(first2);return{args:keys.map(key=>first2[key]),keys}}}return{args,keys:null}}function isPOJO(obj){return obj&&typeof obj=="object"&&getPrototypeOf(obj)===objectProto}function createObject(keys,values){return keys.reduce((result,key,i)=>(result[key]=values[i],result),{})}function combineLatest(...args){let scheduler=popScheduler(args),resultSelector=popResultSelector(args),{args:observables,keys}=argsArgArrayOrObject(args);if(observables.length===0)return from([],scheduler);let result=new Observable(combineLatestInit(observables,scheduler,keys?values=>createObject(keys,values):identity));return resultSelector?result.pipe(mapOneOrManyArgs(resultSelector)):result}function combineLatestInit(observables,scheduler,valueTransform=identity){return subscriber=>{maybeSchedule(scheduler,()=>{let{length}=observables,values=new Array(length),active=length,remainingFirstValues=length;for(let i=0;i<length;i++)maybeSchedule(scheduler,()=>{let source=from(observables[i],scheduler),hasFirstValue=!1;source.subscribe(createOperatorSubscriber(subscriber,value=>{values[i]=value,hasFirstValue||(hasFirstValue=!0,remainingFirstValues--),remainingFirstValues||subscriber.next(valueTransform(values.slice()))},()=>{--active||subscriber.complete()}))},subscriber)},subscriber)}}function maybeSchedule(scheduler,execute,subscription){scheduler?executeSchedule(subscription,scheduler,execute):execute()}function mergeInternals(source,subscriber,project,concurrent,onBeforeNext,expand,innerSubScheduler,additionalFinalizer){let buffer2=[],active=0,index=0,isComplete=!1,checkComplete=()=>{isComplete&&!buffer2.length&&!active&&subscriber.complete()},outerNext=value=>active<concurrent?doInnerSub(value):buffer2.push(value),doInnerSub=value=>{expand&&subscriber.next(value),active++;let innerComplete=!1;innerFrom(project(value,index++)).subscribe(createOperatorSubscriber(subscriber,innerValue=>{onBeforeNext?.(innerValue),expand?outerNext(innerValue):subscriber.next(innerValue)},()=>{innerComplete=!0},void 0,()=>{if(innerComplete)try{for(active--;buffer2.length&&active<concurrent;){let bufferedValue=buffer2.shift();innerSubScheduler?executeSchedule(subscriber,innerSubScheduler,()=>doInnerSub(bufferedValue)):doInnerSub(bufferedValue)}checkComplete()}catch(err){subscriber.error(err)}}))};return source.subscribe(createOperatorSubscriber(subscriber,outerNext,()=>{isComplete=!0,checkComplete()})),()=>{additionalFinalizer?.()}}function mergeMap(project,resultSelector,concurrent=1/0){return isFunction(resultSelector)?mergeMap((a,i)=>map((b,ii)=>resultSelector(a,b,i,ii))(innerFrom(project(a,i))),concurrent):(typeof resultSelector=="number"&&(concurrent=resultSelector),operate((source,subscriber)=>mergeInternals(source,subscriber,project,concurrent)))}function mergeAll(concurrent=1/0){return mergeMap(identity,concurrent)}function concatAll(){return mergeAll(1)}function concat(...args){return concatAll()(from(args,popScheduler(args)))}function defer(observableFactory){return new Observable(subscriber=>{innerFrom(observableFactory()).subscribe(subscriber)})}function forkJoin(...args){let resultSelector=popResultSelector(args),{args:sources,keys}=argsArgArrayOrObject(args),result=new Observable(subscriber=>{let{length}=sources;if(!length){subscriber.complete();return}let values=new Array(length),remainingCompletions=length,remainingEmissions=length;for(let sourceIndex=0;sourceIndex<length;sourceIndex++){let hasValue=!1;innerFrom(sources[sourceIndex]).subscribe(createOperatorSubscriber(subscriber,value=>{hasValue||(hasValue=!0,remainingEmissions--),values[sourceIndex]=value},()=>remainingCompletions--,void 0,()=>{(!remainingCompletions||!hasValue)&&(remainingEmissions||subscriber.next(keys?createObject(keys,values):values),subscriber.complete())}))}});return resultSelector?result.pipe(mapOneOrManyArgs(resultSelector)):result}var nodeEventEmitterMethods=["addListener","removeListener"],eventTargetMethods=["addEventListener","removeEventListener"],jqueryMethods=["on","off"];function fromEvent(target,eventName,options,resultSelector){if(isFunction(options)&&(resultSelector=options,options=void 0),resultSelector)return fromEvent(target,eventName,options).pipe(mapOneOrManyArgs(resultSelector));let[add3,remove3]=isEventTarget(target)?eventTargetMethods.map(methodName=>handler=>target[methodName](eventName,handler,options)):isNodeStyleEventEmitter(target)?nodeEventEmitterMethods.map(toCommonHandlerRegistry(target,eventName)):isJQueryStyleEventEmitter(target)?jqueryMethods.map(toCommonHandlerRegistry(target,eventName)):[];if(!add3&&isArrayLike(target))return mergeMap(subTarget=>fromEvent(subTarget,eventName,options))(innerFrom(target));if(!add3)throw new TypeError("Invalid event target");return new Observable(subscriber=>{let handler=(...args)=>subscriber.next(1<args.length?args:args[0]);return add3(handler),()=>remove3(handler)})}function toCommonHandlerRegistry(target,eventName){return methodName=>handler=>target[methodName](eventName,handler)}function isNodeStyleEventEmitter(target){return isFunction(target.addListener)&&isFunction(target.removeListener)}function isJQueryStyleEventEmitter(target){return isFunction(target.on)&&isFunction(target.off)}function isEventTarget(target){return isFunction(target.addEventListener)&&isFunction(target.removeEventListener)}function iif(condition,trueResult,falseResult){return defer(()=>condition()?trueResult:falseResult)}function timer(dueTime=0,intervalOrScheduler,scheduler=async){let intervalDuration=-1;return intervalOrScheduler!=null&&(isScheduler(intervalOrScheduler)?scheduler=intervalOrScheduler:intervalDuration=intervalOrScheduler),new Observable(subscriber=>{let due=isValidDate(dueTime)?+dueTime-scheduler.now():dueTime;due<0&&(due=0);let n=0;return scheduler.schedule(function(){subscriber.closed||(subscriber.next(n++),0<=intervalDuration?this.schedule(void 0,intervalDuration):subscriber.complete())},due)})}function interval(period=0,scheduler=asyncScheduler){return period<0&&(period=0),timer(period,period,scheduler)}function merge(...args){let scheduler=popScheduler(args),concurrent=popNumber(args,1/0),sources=args;return sources.length?sources.length===1?innerFrom(sources[0]):mergeAll(concurrent)(from(sources,scheduler)):EMPTY}function filter(predicate,thisArg){return operate((source,subscriber)=>{let index=0;source.subscribe(createOperatorSubscriber(subscriber,value=>predicate.call(thisArg,value,index++)&&subscriber.next(value)))})}function audit(durationSelector){return operate((source,subscriber)=>{let hasValue=!1,lastValue=null,durationSubscriber=null,isComplete=!1,endDuration=()=>{if(durationSubscriber?.unsubscribe(),durationSubscriber=null,hasValue){hasValue=!1;let value=lastValue;lastValue=null,subscriber.next(value)}isComplete&&subscriber.complete()},cleanupDuration=()=>{durationSubscriber=null,isComplete&&subscriber.complete()};source.subscribe(createOperatorSubscriber(subscriber,value=>{hasValue=!0,lastValue=value,durationSubscriber||innerFrom(durationSelector(value)).subscribe(durationSubscriber=createOperatorSubscriber(subscriber,endDuration,cleanupDuration))},()=>{isComplete=!0,(!hasValue||!durationSubscriber||durationSubscriber.closed)&&subscriber.complete()}))})}function auditTime(duration,scheduler=asyncScheduler){return audit(()=>timer(duration,scheduler))}function buffer(closingNotifier){return operate((source,subscriber)=>{let currentBuffer=[];return source.subscribe(createOperatorSubscriber(subscriber,value=>currentBuffer.push(value),()=>{subscriber.next(currentBuffer),subscriber.complete()})),innerFrom(closingNotifier).subscribe(createOperatorSubscriber(subscriber,()=>{let b=currentBuffer;currentBuffer=[],subscriber.next(b)},noop)),()=>{currentBuffer=null}})}function catchError(selector){return operate((source,subscriber)=>{let innerSub=null,syncUnsub=!1,handledResult;innerSub=source.subscribe(createOperatorSubscriber(subscriber,void 0,void 0,err=>{handledResult=innerFrom(selector(err,catchError(selector)(source))),innerSub?(innerSub.unsubscribe(),innerSub=null,handledResult.subscribe(subscriber)):syncUnsub=!0})),syncUnsub&&(innerSub.unsubscribe(),innerSub=null,handledResult.subscribe(subscriber))})}function scanInternals(accumulator,seed,hasSeed,emitOnNext,emitBeforeComplete){return(source,subscriber)=>{let hasState=hasSeed,state2=seed,index=0;source.subscribe(createOperatorSubscriber(subscriber,value=>{let i=index++;state2=hasState?accumulator(state2,value,i):(hasState=!0,value),emitOnNext&&subscriber.next(state2)},emitBeforeComplete&&(()=>{hasState&&subscriber.next(state2),subscriber.complete()})))}}function concatMap(project,resultSelector){return isFunction(resultSelector)?mergeMap(project,resultSelector,1):mergeMap(project,1)}function debounceTime(dueTime,scheduler=asyncScheduler){return operate((source,subscriber)=>{let activeTask=null,lastValue=null,lastTime=null,emit=()=>{if(activeTask){activeTask.unsubscribe(),activeTask=null;let value=lastValue;lastValue=null,subscriber.next(value)}};function emitWhenIdle(){let targetTime=lastTime+dueTime,now=scheduler.now();if(now<targetTime){activeTask=this.schedule(void 0,targetTime-now),subscriber.add(activeTask);return}emit()}source.subscribe(createOperatorSubscriber(subscriber,value=>{lastValue=value,lastTime=scheduler.now(),activeTask||(activeTask=scheduler.schedule(emitWhenIdle,dueTime),subscriber.add(activeTask))},()=>{emit(),subscriber.complete()},void 0,()=>{lastValue=activeTask=null}))})}function defaultIfEmpty(defaultValue){return operate((source,subscriber)=>{let hasValue=!1;source.subscribe(createOperatorSubscriber(subscriber,value=>{hasValue=!0,subscriber.next(value)},()=>{hasValue||subscriber.next(defaultValue),subscriber.complete()}))})}function take(count){return count<=0?()=>EMPTY:operate((source,subscriber)=>{let seen=0;source.subscribe(createOperatorSubscriber(subscriber,value=>{++seen<=count&&(subscriber.next(value),count<=seen&&subscriber.complete())}))})}function ignoreElements(){return operate((source,subscriber)=>{source.subscribe(createOperatorSubscriber(subscriber,noop))})}function mapTo(value){return map(()=>value)}function delayWhen(delayDurationSelector,subscriptionDelay){return subscriptionDelay?source=>concat(subscriptionDelay.pipe(take(1),ignoreElements()),source.pipe(delayWhen(delayDurationSelector))):mergeMap((value,index)=>innerFrom(delayDurationSelector(value,index)).pipe(take(1),mapTo(value)))}function delay(due,scheduler=asyncScheduler){let duration=timer(due,scheduler);return delayWhen(()=>duration)}function dematerialize(){return operate((source,subscriber)=>{source.subscribe(createOperatorSubscriber(subscriber,notification=>observeNotification(notification,subscriber)))})}function distinctUntilChanged(comparator,keySelector=identity){return comparator=comparator??defaultCompare,operate((source,subscriber)=>{let previousKey,first2=!0;source.subscribe(createOperatorSubscriber(subscriber,value=>{let currentKey=keySelector(value);(first2||!comparator(previousKey,currentKey))&&(first2=!1,previousKey=currentKey,subscriber.next(value))}))})}function defaultCompare(a,b){return a===b}function throwIfEmpty(errorFactory=defaultErrorFactory){return operate((source,subscriber)=>{let hasValue=!1;source.subscribe(createOperatorSubscriber(subscriber,value=>{hasValue=!0,subscriber.next(value)},()=>hasValue?subscriber.complete():subscriber.error(errorFactory())))})}function defaultErrorFactory(){return new EmptyError}function exhaustMap(project,resultSelector){return resultSelector?source=>source.pipe(exhaustMap((a,i)=>innerFrom(project(a,i)).pipe(map((b,ii)=>resultSelector(a,b,i,ii))))):operate((source,subscriber)=>{let index=0,innerSub=null,isComplete=!1;source.subscribe(createOperatorSubscriber(subscriber,outerValue=>{innerSub||(innerSub=createOperatorSubscriber(subscriber,void 0,()=>{innerSub=null,isComplete&&subscriber.complete()}),innerFrom(project(outerValue,index++)).subscribe(innerSub))},()=>{isComplete=!0,!innerSub&&subscriber.complete()}))})}function finalize(callback){return operate((source,subscriber)=>{try{source.subscribe(subscriber)}finally{subscriber.add(callback)}})}function first(predicate,defaultValue){let hasDefaultValue=arguments.length>=2;return source=>source.pipe(predicate?filter((v,i)=>predicate(v,i,source)):identity,take(1),hasDefaultValue?defaultIfEmpty(defaultValue):throwIfEmpty(()=>new EmptyError))}function groupBy(keySelector,elementOrOptions,duration,connector){return operate((source,subscriber)=>{let element;!elementOrOptions||typeof elementOrOptions=="function"?element=elementOrOptions:{duration,element,connector}=elementOrOptions;let groups=new Map,notify=cb=>{groups.forEach(cb),cb(subscriber)},handleError=err=>notify(consumer=>consumer.error(err)),activeGroups=0,teardownAttempted=!1,groupBySourceSubscriber=new OperatorSubscriber(subscriber,value=>{try{let key=keySelector(value),group2=groups.get(key);if(!group2){groups.set(key,group2=connector?connector():new Subject);let grouped=createGroupedObservable(key,group2);if(subscriber.next(grouped),duration){let durationSubscriber=createOperatorSubscriber(group2,()=>{group2.complete(),durationSubscriber?.unsubscribe()},void 0,void 0,()=>groups.delete(key));groupBySourceSubscriber.add(innerFrom(duration(grouped)).subscribe(durationSubscriber))}}group2.next(element?element(value):value)}catch(err){handleError(err)}},()=>notify(consumer=>consumer.complete()),handleError,()=>groups.clear(),()=>(teardownAttempted=!0,activeGroups===0));source.subscribe(groupBySourceSubscriber);function createGroupedObservable(key,groupSubject){let result=new Observable(groupSubscriber=>{activeGroups++;let innerSub=groupSubject.subscribe(groupSubscriber);return()=>{innerSub.unsubscribe(),--activeGroups===0&&teardownAttempted&&groupBySourceSubscriber.unsubscribe()}});return result.key=key,result}})}function takeLast(count){return count<=0?()=>EMPTY:operate((source,subscriber)=>{let buffer2=[];source.subscribe(createOperatorSubscriber(subscriber,value=>{buffer2.push(value),count<buffer2.length&&buffer2.shift()},()=>{for(let value of buffer2)subscriber.next(value);subscriber.complete()},void 0,()=>{buffer2=null}))})}function last2(predicate,defaultValue){let hasDefaultValue=arguments.length>=2;return source=>source.pipe(predicate?filter((v,i)=>predicate(v,i,source)):identity,takeLast(1),hasDefaultValue?defaultIfEmpty(defaultValue):throwIfEmpty(()=>new EmptyError))}function materialize(){return operate((source,subscriber)=>{source.subscribe(createOperatorSubscriber(subscriber,value=>{subscriber.next(Notification.createNext(value))},()=>{subscriber.next(Notification.createComplete()),subscriber.complete()},err=>{subscriber.next(Notification.createError(err)),subscriber.complete()}))})}function pairwise(){return operate((source,subscriber)=>{let prev,hasPrev=!1;source.subscribe(createOperatorSubscriber(subscriber,value=>{let p=prev;prev=value,hasPrev&&subscriber.next([p,value]),hasPrev=!0}))})}function pluck(...properties2){let length=properties2.length;if(length===0)throw new Error("list of properties cannot be empty.");return map(x=>{let currentProp=x;for(let i=0;i<length;i++){let p=currentProp?.[properties2[i]];if(typeof p<"u")currentProp=p;else return}return currentProp})}function retryWhen(notifier){return operate((source,subscriber)=>{let innerSub,syncResub=!1,errors$,subscribeForRetryWhen=()=>{innerSub=source.subscribe(createOperatorSubscriber(subscriber,void 0,void 0,err=>{errors$||(errors$=new Subject,innerFrom(notifier(errors$)).subscribe(createOperatorSubscriber(subscriber,()=>innerSub?subscribeForRetryWhen():syncResub=!0))),errors$&&errors$.next(err)})),syncResub&&(innerSub.unsubscribe(),innerSub=null,syncResub=!1,subscribeForRetryWhen())};subscribeForRetryWhen()})}function scan(accumulator,seed){return operate(scanInternals(accumulator,seed,arguments.length>=2,!0))}function share(options={}){let{connector=()=>new Subject,resetOnError=!0,resetOnComplete=!0,resetOnRefCountZero=!0}=options;return wrapperSource=>{let connection,resetConnection,subject,refCount2=0,hasCompleted=!1,hasErrored=!1,cancelReset=()=>{resetConnection?.unsubscribe(),resetConnection=void 0},reset4=()=>{cancelReset(),connection=subject=void 0,hasCompleted=hasErrored=!1},resetAndUnsubscribe=()=>{let conn=connection;reset4(),conn?.unsubscribe()};return operate((source,subscriber)=>{refCount2++,!hasErrored&&!hasCompleted&&cancelReset();let dest=subject=subject??connector();subscriber.add(()=>{refCount2--,refCount2===0&&!hasErrored&&!hasCompleted&&(resetConnection=handleReset(resetAndUnsubscribe,resetOnRefCountZero))}),dest.subscribe(subscriber),!connection&&refCount2>0&&(connection=new SafeSubscriber({next:value=>dest.next(value),error:err=>{hasErrored=!0,cancelReset(),resetConnection=handleReset(reset4,resetOnError,err),dest.error(err)},complete:()=>{hasCompleted=!0,cancelReset(),resetConnection=handleReset(reset4,resetOnComplete),dest.complete()}}),innerFrom(source).subscribe(connection))})(wrapperSource)}}function handleReset(reset4,on2,...args){if(on2===!0){reset4();return}if(on2===!1)return;let onSubscriber=new SafeSubscriber({next:()=>{onSubscriber.unsubscribe(),reset4()}});return innerFrom(on2(...args)).subscribe(onSubscriber)}function shareReplay(configOrBufferSize,windowTime,scheduler){let bufferSize,refCount2=!1;return configOrBufferSize&&typeof configOrBufferSize=="object"?{bufferSize=1/0,windowTime=1/0,refCount:refCount2=!1,scheduler}=configOrBufferSize:bufferSize=configOrBufferSize??1/0,share({connector:()=>new ReplaySubject(bufferSize,windowTime,scheduler),resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:refCount2})}function skip(count){return filter((_,index)=>count<=index)}function startWith(...values){let scheduler=popScheduler(values);return operate((source,subscriber)=>{(scheduler?concat(values,source,scheduler):concat(values,source)).subscribe(subscriber)})}function switchMap(project,resultSelector){return operate((source,subscriber)=>{let innerSubscriber=null,index=0,isComplete=!1,checkComplete=()=>isComplete&&!innerSubscriber&&subscriber.complete();source.subscribe(createOperatorSubscriber(subscriber,value=>{innerSubscriber?.unsubscribe();let innerIndex=0,outerIndex=index++;innerFrom(project(value,outerIndex)).subscribe(innerSubscriber=createOperatorSubscriber(subscriber,innerValue=>subscriber.next(resultSelector?resultSelector(value,innerValue,outerIndex,innerIndex++):innerValue),()=>{innerSubscriber=null,checkComplete()}))},()=>{isComplete=!0,checkComplete()}))})}function takeUntil(notifier){return operate((source,subscriber)=>{innerFrom(notifier).subscribe(createOperatorSubscriber(subscriber,()=>subscriber.complete(),noop)),!subscriber.closed&&source.subscribe(subscriber)})}function takeWhile(predicate,inclusive=!1){return operate((source,subscriber)=>{let index=0;source.subscribe(createOperatorSubscriber(subscriber,value=>{let result=predicate(value,index++);(result||inclusive)&&subscriber.next(value),!result&&subscriber.complete()}))})}function tap(observerOrNext,error,complete){let tapObserver=isFunction(observerOrNext)||error||complete?{next:observerOrNext,error,complete}:observerOrNext;return tapObserver?operate((source,subscriber)=>{var _a;(_a=tapObserver.subscribe)===null||_a===void 0||_a.call(tapObserver);let isUnsub=!0;source.subscribe(createOperatorSubscriber(subscriber,value=>{var _a2;(_a2=tapObserver.next)===null||_a2===void 0||_a2.call(tapObserver,value),subscriber.next(value)},()=>{var _a2;isUnsub=!1,(_a2=tapObserver.complete)===null||_a2===void 0||_a2.call(tapObserver),subscriber.complete()},err=>{var _a2;isUnsub=!1,(_a2=tapObserver.error)===null||_a2===void 0||_a2.call(tapObserver,err),subscriber.error(err)},()=>{var _a2,_b;isUnsub&&((_a2=tapObserver.unsubscribe)===null||_a2===void 0||_a2.call(tapObserver)),(_b=tapObserver.finalize)===null||_b===void 0||_b.call(tapObserver)}))}):identity}function withLatestFrom(...inputs2){let project=popResultSelector(inputs2);return operate((source,subscriber)=>{let len=inputs2.length,otherValues=new Array(len),hasValue=inputs2.map(()=>!1),ready=!1;for(let i=0;i<len;i++)innerFrom(inputs2[i]).subscribe(createOperatorSubscriber(subscriber,value=>{otherValues[i]=value,!ready&&!hasValue[i]&&(hasValue[i]=!0,(ready=hasValue.every(identity))&&(hasValue=null))},noop));source.subscribe(createOperatorSubscriber(subscriber,value=>{if(ready){let values=[value,...otherValues];subscriber.next(project?project(...values):values)}}))})}function untracked(nonReactiveReadsFn){let prevConsumer=setActiveConsumer(null);try{return nonReactiveReadsFn()}finally{setActiveConsumer(prevConsumer)}}var XSS_SECURITY_URL="https://angular.dev/best-practices/security#preventing-cross-site-scripting-xss",RuntimeError=class extends Error{code;constructor(code,message){super(formatRuntimeError(code,message)),this.code=code}};function formatRuntimeErrorCode(code){return`NG0${Math.abs(code)}`}function formatRuntimeError(code,message){return`${formatRuntimeErrorCode(code)}${message?": "+message:""}`}var _global=globalThis;function getClosureSafeProperty(objWithPropertyToExtract){for(let key in objWithPropertyToExtract)if(objWithPropertyToExtract[key]===getClosureSafeProperty)return key;throw Error("")}function fillProperties(target,source){for(let key in source)source.hasOwnProperty(key)&&!target.hasOwnProperty(key)&&(target[key]=source[key])}function stringify(token){if(typeof token=="string")return token;if(Array.isArray(token))return`[${token.map(stringify).join(", ")}]`;if(token==null)return""+token;let name=token.overriddenName||token.name;if(name)return`${name}`;let result=token.toString();if(result==null)return""+result;let newLineIndex=result.indexOf(`
|
|
11
|
-
`);return newLineIndex>=0?result.slice(0,newLineIndex):result}function concatStringsWithSpace(before,after){return before?after?`${before} ${after}`:before:after||""}var __forward_ref__=getClosureSafeProperty({__forward_ref__:getClosureSafeProperty});function forwardRef(forwardRefFn){return forwardRefFn.__forward_ref__=forwardRef,forwardRefFn.toString=function(){return stringify(this())},forwardRefFn}function resolveForwardRef(type2){return isForwardRef(type2)?type2():type2}function isForwardRef(fn){return typeof fn=="function"&&fn.hasOwnProperty(__forward_ref__)&&fn.__forward_ref__===forwardRef}function assertDefined(actual,msg){actual==null&&throwError2(msg,actual,null,"!=")}function throwError2(msg,actual,expected,comparison){throw new Error(`ASSERTION ERROR: ${msg}`+(comparison==null?"":` [Expected=> ${expected} ${comparison} ${actual} <=Actual]`))}function \u0275\u0275defineInjectable(opts){return{token:opts.token,providedIn:opts.providedIn||null,factory:opts.factory,value:void 0}}function \u0275\u0275defineInjector(options){return{providers:options.providers||[],imports:options.imports||[]}}function getInjectableDef(type2){return getOwnDefinition(type2,NG_PROV_DEF)}function isInjectable(type2){return getInjectableDef(type2)!==null}function getOwnDefinition(type2,field){return type2.hasOwnProperty(field)&&type2[field]||null}function getInheritedInjectableDef(type2){let def=type2?.[NG_PROV_DEF]??null;return def||null}function getInjectorDef(type2){return type2&&type2.hasOwnProperty(NG_INJ_DEF)?type2[NG_INJ_DEF]:null}var NG_PROV_DEF=getClosureSafeProperty({\u0275prov:getClosureSafeProperty}),NG_INJ_DEF=getClosureSafeProperty({\u0275inj:getClosureSafeProperty}),InjectionToken=class{_desc;ngMetadataName="InjectionToken";\u0275prov;constructor(_desc,options){this._desc=_desc,this.\u0275prov=void 0,typeof options=="number"?this.__NG_ELEMENT_ID__=options:options!==void 0&&(this.\u0275prov=\u0275\u0275defineInjectable({token:this,providedIn:options.providedIn||"root",factory:options.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}};function isEnvironmentProviders(value){return value&&!!value.\u0275providers}var NG_COMP_DEF=getClosureSafeProperty({\u0275cmp:getClosureSafeProperty}),NG_DIR_DEF=getClosureSafeProperty({\u0275dir:getClosureSafeProperty}),NG_PIPE_DEF=getClosureSafeProperty({\u0275pipe:getClosureSafeProperty}),NG_MOD_DEF=getClosureSafeProperty({\u0275mod:getClosureSafeProperty}),NG_FACTORY_DEF=getClosureSafeProperty({\u0275fac:getClosureSafeProperty}),NG_ELEMENT_ID=getClosureSafeProperty({__NG_ELEMENT_ID__:getClosureSafeProperty}),NG_ENV_ID=getClosureSafeProperty({__NG_ENV_ID__:getClosureSafeProperty});function renderStringify(value){return typeof value=="string"?value:value==null?"":String(value)}function stringifyForError(value){return typeof value=="function"?value.name||value.toString():typeof value=="object"&&value!=null&&typeof value.type=="function"?value.type.name||value.type.toString():renderStringify(value)}var NG_RUNTIME_ERROR_CODE=getClosureSafeProperty({ngErrorCode:getClosureSafeProperty}),NG_RUNTIME_ERROR_MESSAGE=getClosureSafeProperty({ngErrorMessage:getClosureSafeProperty}),NG_TOKEN_PATH=getClosureSafeProperty({ngTokenPath:getClosureSafeProperty});function cyclicDependencyError(token,path){return createRuntimeError("",-200,path)}function throwProviderNotFoundError(token,injectorName){throw new RuntimeError(-201,!1)}function prependTokenToDependencyPath(error,token){error[NG_TOKEN_PATH]??=[];let currentPath=error[NG_TOKEN_PATH],pathStr;typeof token=="object"&&"multi"in token&&token?.multi===!0?(assertDefined(token.provide,"Token with multi: true should have a provide property"),pathStr=stringifyForError(token.provide)):pathStr=stringifyForError(token),currentPath[0]!==pathStr&&error[NG_TOKEN_PATH].unshift(pathStr)}function augmentRuntimeError(error,source){let tokenPath=error[NG_TOKEN_PATH],errorCode=error[NG_RUNTIME_ERROR_CODE],message=error[NG_RUNTIME_ERROR_MESSAGE]||error.message;return error.message=formatErrorMessage(message,errorCode,tokenPath,source),error}function createRuntimeError(message,code,path){let error=new RuntimeError(code,message);return error[NG_RUNTIME_ERROR_CODE]=code,error[NG_RUNTIME_ERROR_MESSAGE]=message,path&&(error[NG_TOKEN_PATH]=path),error}function getRuntimeErrorCode(error){return error[NG_RUNTIME_ERROR_CODE]}function formatErrorMessage(text,code,path=[],source=null){let pathDetails="";path&&path.length>1&&(pathDetails=` Path: ${path.join(" -> ")}.`);let sourceDetails=source?` Source: ${source}.`:"";return formatRuntimeError(code,`${text}${sourceDetails}${pathDetails}`)}var _injectImplementation;function getInjectImplementation(){return _injectImplementation}function setInjectImplementation(impl){let previous=_injectImplementation;return _injectImplementation=impl,previous}function injectRootLimpMode(token,notFoundValue,flags){let injectableDef=getInjectableDef(token);if(injectableDef&&injectableDef.providedIn=="root")return injectableDef.value===void 0?injectableDef.value=injectableDef.factory():injectableDef.value;if(flags&8)return null;if(notFoundValue!==void 0)return notFoundValue;throwProviderNotFoundError(token,"Injector")}var _THROW_IF_NOT_FOUND={},THROW_IF_NOT_FOUND=_THROW_IF_NOT_FOUND,DI_DECORATOR_FLAG="__NG_DI_FLAG__",RetrievingInjector=class{injector;constructor(injector){this.injector=injector}retrieve(token,options){let flags=convertToBitFlags(options)||0;try{return this.injector.get(token,flags&8?null:THROW_IF_NOT_FOUND,flags)}catch(e){if(isNotFound(e))return e;throw e}}};function injectInjectorOnly(token,flags=0){let currentInjector=getCurrentInjector();if(currentInjector===void 0)throw new RuntimeError(-203,!1);if(currentInjector===null)return injectRootLimpMode(token,void 0,flags);{let options=convertToInjectOptions(flags),value=currentInjector.retrieve(token,options);if(isNotFound(value)){if(options.optional)return null;throw value}return value}}function \u0275\u0275inject(token,flags=0){return(getInjectImplementation()||injectInjectorOnly)(resolveForwardRef(token),flags)}function inject2(token,options){return \u0275\u0275inject(token,convertToBitFlags(options))}function convertToBitFlags(flags){return typeof flags>"u"||typeof flags=="number"?flags:0|(flags.optional&&8)|(flags.host&&1)|(flags.self&&2)|(flags.skipSelf&&4)}function convertToInjectOptions(flags){return{optional:!!(flags&8),host:!!(flags&1),self:!!(flags&2),skipSelf:!!(flags&4)}}function injectArgs(types){let args=[];for(let i=0;i<types.length;i++){let arg=resolveForwardRef(types[i]);if(Array.isArray(arg)){if(arg.length===0)throw new RuntimeError(900,!1);let type2,flags=0;for(let j=0;j<arg.length;j++){let meta=arg[j],flag=getInjectFlag(meta);typeof flag=="number"?flag===-1?type2=meta.token:flags|=flag:type2=meta}args.push(\u0275\u0275inject(type2,flags))}else args.push(\u0275\u0275inject(arg))}return args}function attachInjectFlag(decorator,flag){return decorator[DI_DECORATOR_FLAG]=flag,decorator.prototype[DI_DECORATOR_FLAG]=flag,decorator}function getInjectFlag(token){return token[DI_DECORATOR_FLAG]}function getFactoryDef(type2,throwNotFound){let hasFactoryDef=type2.hasOwnProperty(NG_FACTORY_DEF);return hasFactoryDef?type2[NG_FACTORY_DEF]:null}function arrayEquals(a,b,identityAccessor){if(a.length!==b.length)return!1;for(let i=0;i<a.length;i++){let valueA=a[i],valueB=b[i];if(identityAccessor&&(valueA=identityAccessor(valueA),valueB=identityAccessor(valueB)),valueB!==valueA)return!1}return!0}function flatten(list){return list.flat(Number.POSITIVE_INFINITY)}function deepForEach(input2,fn){input2.forEach(value=>Array.isArray(value)?deepForEach(value,fn):fn(value))}function addToArray(arr,index,value){index>=arr.length?arr.push(value):arr.splice(index,0,value)}function removeFromArray(arr,index){return index>=arr.length-1?arr.pop():arr.splice(index,1)[0]}function newArray(size,value){let list=[];for(let i=0;i<size;i++)list.push(value);return list}function arrayInsert2(array,index,value1,value2){let end=array.length;if(end==index)array.push(value1,value2);else if(end===1)array.push(value2,array[0]),array[0]=value1;else{for(end--,array.push(array[end-1],array[end]);end>index;){let previousEnd=end-2;array[end]=array[previousEnd],end--}array[index]=value1,array[index+1]=value2}}function keyValueArraySet(keyValueArray,key,value){let index=keyValueArrayIndexOf(keyValueArray,key);return index>=0?keyValueArray[index|1]=value:(index=~index,arrayInsert2(keyValueArray,index,key,value)),index}function keyValueArrayGet(keyValueArray,key){let index=keyValueArrayIndexOf(keyValueArray,key);if(index>=0)return keyValueArray[index|1]}function keyValueArrayIndexOf(keyValueArray,key){return _arrayIndexOfSorted(keyValueArray,key,1)}function _arrayIndexOfSorted(array,value,shift){let start=0,end=array.length>>shift;for(;end!==start;){let middle=start+(end-start>>1),current=array[middle<<shift];if(value===current)return middle<<shift;current>value?end=middle:start=middle+1}return~(end<<shift)}var EMPTY_OBJ={},EMPTY_ARRAY=[],ENVIRONMENT_INITIALIZER=new InjectionToken(""),INJECTOR$1=new InjectionToken("",-1),INJECTOR_DEF_TYPES=new InjectionToken(""),NullInjector=class{get(token,notFoundValue=THROW_IF_NOT_FOUND){if(notFoundValue===THROW_IF_NOT_FOUND){let error=createRuntimeError("",-201);throw error.name="\u0275NotFound",error}return notFoundValue}};function getNgModuleDef(type2){return type2[NG_MOD_DEF]||null}function getComponentDef(type2){return type2[NG_COMP_DEF]||null}function getDirectiveDef(type2){return type2[NG_DIR_DEF]||null}function getPipeDef(type2){return type2[NG_PIPE_DEF]||null}function makeEnvironmentProviders(providers){return{\u0275providers:providers}}function provideEnvironmentInitializer(initializerFn){return makeEnvironmentProviders([{provide:ENVIRONMENT_INITIALIZER,multi:!0,useValue:initializerFn}])}function importProvidersFrom(...sources){return{\u0275providers:internalImportProvidersFrom(!0,sources),\u0275fromNgModule:!0}}function internalImportProvidersFrom(checkForStandaloneCmp,...sources){let providersOut=[],dedup=new Set,injectorTypesWithProviders,collectProviders=provider=>{providersOut.push(provider)};return deepForEach(sources,source=>{let internalSource=source;walkProviderTree(internalSource,collectProviders,[],dedup)&&(injectorTypesWithProviders||=[],injectorTypesWithProviders.push(internalSource))}),injectorTypesWithProviders!==void 0&&processInjectorTypesWithProviders(injectorTypesWithProviders,collectProviders),providersOut}function processInjectorTypesWithProviders(typesWithProviders,visitor){for(let i=0;i<typesWithProviders.length;i++){let{ngModule,providers}=typesWithProviders[i];deepForEachProvider(providers,provider=>{visitor(provider,ngModule)})}}function walkProviderTree(container,visitor,parents,dedup){if(container=resolveForwardRef(container),!container)return!1;let defType=null,injDef=getInjectorDef(container),cmpDef=!injDef&&getComponentDef(container);if(!injDef&&!cmpDef){let ngModule=container.ngModule;if(injDef=getInjectorDef(ngModule),injDef)defType=ngModule;else return!1}else{if(cmpDef&&!cmpDef.standalone)return!1;defType=container}let isDuplicate=dedup.has(defType);if(cmpDef){if(isDuplicate)return!1;if(dedup.add(defType),cmpDef.dependencies){let deps=typeof cmpDef.dependencies=="function"?cmpDef.dependencies():cmpDef.dependencies;for(let dep of deps)walkProviderTree(dep,visitor,parents,dedup)}}else if(injDef){if(injDef.imports!=null&&!isDuplicate){dedup.add(defType);let importTypesWithProviders;try{deepForEach(injDef.imports,imported=>{walkProviderTree(imported,visitor,parents,dedup)&&(importTypesWithProviders||=[],importTypesWithProviders.push(imported))})}finally{}importTypesWithProviders!==void 0&&processInjectorTypesWithProviders(importTypesWithProviders,visitor)}if(!isDuplicate){let factory=getFactoryDef(defType)||(()=>new defType);visitor({provide:defType,useFactory:factory,deps:EMPTY_ARRAY},defType),visitor({provide:INJECTOR_DEF_TYPES,useValue:defType,multi:!0},defType),visitor({provide:ENVIRONMENT_INITIALIZER,useValue:()=>\u0275\u0275inject(defType),multi:!0},defType)}let defProviders=injDef.providers;if(defProviders!=null&&!isDuplicate){let injectorType=container;deepForEachProvider(defProviders,provider=>{visitor(provider,injectorType)})}}else return!1;return defType!==container&&container.providers!==void 0}function deepForEachProvider(providers,fn){for(let provider of providers)isEnvironmentProviders(provider)&&(provider=provider.\u0275providers),Array.isArray(provider)?deepForEachProvider(provider,fn):fn(provider)}var USE_VALUE=getClosureSafeProperty({provide:String,useValue:getClosureSafeProperty});function isValueProvider(value){return value!==null&&typeof value=="object"&&USE_VALUE in value}function isExistingProvider(value){return!!(value&&value.useExisting)}function isFactoryProvider(value){return!!(value&&value.useFactory)}function isTypeProvider(value){return typeof value=="function"}function isClassProvider(value){return!!value.useClass}var INJECTOR_SCOPE=new InjectionToken(""),NOT_YET={},CIRCULAR={},NULL_INJECTOR;function getNullInjector(){return NULL_INJECTOR===void 0&&(NULL_INJECTOR=new NullInjector),NULL_INJECTOR}var EnvironmentInjector=class{},R3Injector=class extends EnvironmentInjector{parent;source;scopes;records=new Map;_ngOnDestroyHooks=new Set;_onDestroyHooks=[];get destroyed(){return this._destroyed}_destroyed=!1;injectorDefTypes;constructor(providers,parent,source,scopes){super(),this.parent=parent,this.source=source,this.scopes=scopes,forEachSingleProvider(providers,provider=>this.processProvider(provider)),this.records.set(INJECTOR$1,makeRecord(void 0,this)),scopes.has("environment")&&this.records.set(EnvironmentInjector,makeRecord(void 0,this));let record=this.records.get(INJECTOR_SCOPE);record!=null&&typeof record.value=="string"&&this.scopes.add(record.value),this.injectorDefTypes=new Set(this.get(INJECTOR_DEF_TYPES,EMPTY_ARRAY,{self:!0}))}retrieve(token,options){let flags=convertToBitFlags(options)||0;try{return this.get(token,THROW_IF_NOT_FOUND,flags)}catch(e){if(isNotFound(e))return e;throw e}}destroy(){assertNotDestroyed(this),this._destroyed=!0;let prevConsumer=setActiveConsumer(null);try{for(let service of this._ngOnDestroyHooks)service.ngOnDestroy();let onDestroyHooks=this._onDestroyHooks;this._onDestroyHooks=[];for(let hook of onDestroyHooks)hook()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),setActiveConsumer(prevConsumer)}}onDestroy(callback){return assertNotDestroyed(this),this._onDestroyHooks.push(callback),()=>this.removeOnDestroy(callback)}runInContext(fn){assertNotDestroyed(this);let previousInjector=setCurrentInjector(this),previousInjectImplementation=setInjectImplementation(void 0),prevInjectContext;try{return fn()}finally{setCurrentInjector(previousInjector),setInjectImplementation(previousInjectImplementation)}}get(token,notFoundValue=THROW_IF_NOT_FOUND,options){if(assertNotDestroyed(this),token.hasOwnProperty(NG_ENV_ID))return token[NG_ENV_ID](this);let flags=convertToBitFlags(options),prevInjectContext,previousInjector=setCurrentInjector(this),previousInjectImplementation=setInjectImplementation(void 0);try{if(!(flags&4)){let record=this.records.get(token);if(record===void 0){let def=couldBeInjectableType(token)&&getInjectableDef(token);def&&this.injectableDefInScope(def)?record=makeRecord(injectableDefOrInjectorDefFactory(token),NOT_YET):record=null,this.records.set(token,record)}if(record!=null)return this.hydrate(token,record,flags)}let nextInjector=flags&2?getNullInjector():this.parent;return notFoundValue=flags&8&¬FoundValue===THROW_IF_NOT_FOUND?null:notFoundValue,nextInjector.get(token,notFoundValue)}catch(error){let errorCode=getRuntimeErrorCode(error);throw errorCode===-200||errorCode===-201?new RuntimeError(errorCode,null):error}finally{setInjectImplementation(previousInjectImplementation),setCurrentInjector(previousInjector)}}resolveInjectorInitializers(){let prevConsumer=setActiveConsumer(null),previousInjector=setCurrentInjector(this),previousInjectImplementation=setInjectImplementation(void 0),prevInjectContext;try{let initializers=this.get(ENVIRONMENT_INITIALIZER,EMPTY_ARRAY,{self:!0});for(let initializer of initializers)initializer()}finally{setCurrentInjector(previousInjector),setInjectImplementation(previousInjectImplementation),setActiveConsumer(prevConsumer)}}toString(){let tokens=[],records=this.records;for(let token of records.keys())tokens.push(stringify(token));return`R3Injector[${tokens.join(", ")}]`}processProvider(provider){provider=resolveForwardRef(provider);let token=isTypeProvider(provider)?provider:resolveForwardRef(provider&&provider.provide),record=providerToRecord(provider);if(!isTypeProvider(provider)&&provider.multi===!0){let multiRecord=this.records.get(token);multiRecord||(multiRecord=makeRecord(void 0,NOT_YET,!0),multiRecord.factory=()=>injectArgs(multiRecord.multi),this.records.set(token,multiRecord)),token=provider,multiRecord.multi.push(provider)}this.records.set(token,record)}hydrate(token,record,flags){let prevConsumer=setActiveConsumer(null);try{if(record.value===CIRCULAR)throw cyclicDependencyError(stringify(token));return record.value===NOT_YET&&(record.value=CIRCULAR,record.value=record.factory(void 0,flags)),typeof record.value=="object"&&record.value&&hasOnDestroy(record.value)&&this._ngOnDestroyHooks.add(record.value),record.value}finally{setActiveConsumer(prevConsumer)}}injectableDefInScope(def){if(!def.providedIn)return!1;let providedIn=resolveForwardRef(def.providedIn);return typeof providedIn=="string"?providedIn==="any"||this.scopes.has(providedIn):this.injectorDefTypes.has(providedIn)}removeOnDestroy(callback){let destroyCBIdx=this._onDestroyHooks.indexOf(callback);destroyCBIdx!==-1&&this._onDestroyHooks.splice(destroyCBIdx,1)}};function injectableDefOrInjectorDefFactory(token){let injectableDef=getInjectableDef(token),factory=injectableDef!==null?injectableDef.factory:getFactoryDef(token);if(factory!==null)return factory;if(token instanceof InjectionToken)throw new RuntimeError(204,!1);if(token instanceof Function)return getUndecoratedInjectableFactory(token);throw new RuntimeError(204,!1)}function getUndecoratedInjectableFactory(token){if(token.length>0)throw new RuntimeError(204,!1);let inheritedInjectableDef=getInheritedInjectableDef(token);return inheritedInjectableDef!==null?()=>inheritedInjectableDef.factory(token):()=>new token}function providerToRecord(provider){if(isValueProvider(provider))return makeRecord(void 0,provider.useValue);{let factory=providerToFactory(provider);return makeRecord(factory,NOT_YET)}}function providerToFactory(provider,ngModuleType,providers){let factory;if(isTypeProvider(provider)){let unwrappedProvider=resolveForwardRef(provider);return getFactoryDef(unwrappedProvider)||injectableDefOrInjectorDefFactory(unwrappedProvider)}else if(isValueProvider(provider))factory=()=>resolveForwardRef(provider.useValue);else if(isFactoryProvider(provider))factory=()=>provider.useFactory(...injectArgs(provider.deps||[]));else if(isExistingProvider(provider))factory=(_,flags)=>\u0275\u0275inject(resolveForwardRef(provider.useExisting),flags!==void 0&&flags&8?8:void 0);else{let classRef=resolveForwardRef(provider&&(provider.useClass||provider.provide));if(hasDeps(provider))factory=()=>new classRef(...injectArgs(provider.deps));else return getFactoryDef(classRef)||injectableDefOrInjectorDefFactory(classRef)}return factory}function assertNotDestroyed(injector){if(injector.destroyed)throw new RuntimeError(205,!1)}function makeRecord(factory,value,multi=!1){return{factory,value,multi:multi?[]:void 0}}function hasDeps(value){return!!value.deps}function hasOnDestroy(value){return value!==null&&typeof value=="object"&&typeof value.ngOnDestroy=="function"}function couldBeInjectableType(value){return typeof value=="function"||typeof value=="object"&&value.ngMetadataName==="InjectionToken"}function forEachSingleProvider(providers,fn){for(let provider of providers)Array.isArray(provider)?forEachSingleProvider(provider,fn):provider&&isEnvironmentProviders(provider)?forEachSingleProvider(provider.\u0275providers,fn):fn(provider)}function runInInjectionContext(injector,fn){let internalInjector;injector instanceof R3Injector?(assertNotDestroyed(injector),internalInjector=injector):internalInjector=new RetrievingInjector(injector);let prevInjectorProfilerContext,prevInjector=setCurrentInjector(internalInjector),previousInjectImplementation=setInjectImplementation(void 0);try{return fn()}finally{setCurrentInjector(prevInjector),setInjectImplementation(previousInjectImplementation)}}function isInInjectionContext(){return getInjectImplementation()!==void 0||getCurrentInjector()!=null}var HOST=0,TVIEW=1,FLAGS=2,PARENT=3,NEXT=4,T_HOST=5,HYDRATION=6,CLEANUP=7,CONTEXT=8,INJECTOR=9,ENVIRONMENT=10,RENDERER=11,CHILD_HEAD=12,CHILD_TAIL=13,DECLARATION_VIEW=14,DECLARATION_COMPONENT_VIEW=15,DECLARATION_LCONTAINER=16,PREORDER_HOOK_FLAGS=17,QUERIES=18,ID=19,EMBEDDED_VIEW_INJECTOR=20,ON_DESTROY_HOOKS=21,EFFECTS_TO_SCHEDULE=22,EFFECTS=23,REACTIVE_TEMPLATE_CONSUMER=24,AFTER_RENDER_SEQUENCES_TO_ADD=25,HEADER_OFFSET=26,TYPE=1,DEHYDRATED_VIEWS=6,NATIVE=7,VIEW_REFS=8,MOVED_VIEWS=9,CONTAINER_HEADER_OFFSET=10;function isLView(value){return Array.isArray(value)&&typeof value[TYPE]=="object"}function isLContainer(value){return Array.isArray(value)&&value[TYPE]===!0}function isContentQueryHost(tNode){return(tNode.flags&4)!==0}function isComponentHost(tNode){return tNode.componentOffset>-1}function isDirectiveHost(tNode){return(tNode.flags&1)===1}function isComponentDef(def){return!!def.template}function isRootView(target){return(target[FLAGS]&512)!==0}function isDestroyed(lView){return(lView[FLAGS]&256)===256}var SVG_NAMESPACE="svg",MATH_ML_NAMESPACE="math";function unwrapRNode(value){for(;Array.isArray(value);)value=value[HOST];return value}function getNativeByIndex(index,lView){return unwrapRNode(lView[index])}function getNativeByTNode(tNode,lView){return unwrapRNode(lView[tNode.index])}function getTNode(tView,index){return tView.data[index]}function load(view,index){return view[index]}function store(tView,lView,index,value){index>=tView.data.length&&(tView.data[index]=null,tView.blueprint[index]=null),lView[index]=value}function getComponentLViewByIndex(nodeIndex,hostView){let slotValue=hostView[nodeIndex];return isLView(slotValue)?slotValue:slotValue[HOST]}function isCreationMode(view){return(view[FLAGS]&4)===4}function viewAttachedToChangeDetector(view){return(view[FLAGS]&128)===128}function viewAttachedToContainer(view){return isLContainer(view[PARENT])}function getConstant(consts,index){return index==null?null:consts[index]}function resetPreOrderHookFlags(lView){lView[PREORDER_HOOK_FLAGS]=0}function markViewForRefresh(lView){lView[FLAGS]&1024||(lView[FLAGS]|=1024,viewAttachedToChangeDetector(lView)&&markAncestorsForTraversal(lView))}function walkUpViews(nestingLevel,currentView){for(;nestingLevel>0;)currentView=currentView[DECLARATION_VIEW],nestingLevel--;return currentView}function requiresRefreshOrTraversal(lView){return!!(lView[FLAGS]&9216||lView[REACTIVE_TEMPLATE_CONSUMER]?.dirty)}function updateAncestorTraversalFlagsOnAttach(lView){lView[ENVIRONMENT].changeDetectionScheduler?.notify(8),lView[FLAGS]&64&&(lView[FLAGS]|=1024),requiresRefreshOrTraversal(lView)&&markAncestorsForTraversal(lView)}function markAncestorsForTraversal(lView){lView[ENVIRONMENT].changeDetectionScheduler?.notify(0);let parent=getLViewParent(lView);for(;parent!==null&&!(parent[FLAGS]&8192||(parent[FLAGS]|=8192,!viewAttachedToChangeDetector(parent)));)parent=getLViewParent(parent)}function storeLViewOnDestroy(lView,onDestroyCallback){if(isDestroyed(lView))throw new RuntimeError(911,!1);lView[ON_DESTROY_HOOKS]===null&&(lView[ON_DESTROY_HOOKS]=[]),lView[ON_DESTROY_HOOKS].push(onDestroyCallback)}function removeLViewOnDestroy(lView,onDestroyCallback){if(lView[ON_DESTROY_HOOKS]===null)return;let destroyCBIdx=lView[ON_DESTROY_HOOKS].indexOf(onDestroyCallback);destroyCBIdx!==-1&&lView[ON_DESTROY_HOOKS].splice(destroyCBIdx,1)}function getLViewParent(lView){let parent=lView[PARENT];return isLContainer(parent)?parent[PARENT]:parent}function getOrCreateLViewCleanup(view){return view[CLEANUP]??=[]}function getOrCreateTViewCleanup(tView){return tView.cleanup??=[]}function storeCleanupWithContext(tView,lView,context2,cleanupFn){let lCleanup=getOrCreateLViewCleanup(lView);lCleanup.push(context2),tView.firstCreatePass&&getOrCreateTViewCleanup(tView).push(cleanupFn,lCleanup.length-1)}var instructionState={lFrame:createLFrame(null),bindingsEnabled:!0,skipHydrationRootTNode:null},CheckNoChangesMode=(function(CheckNoChangesMode2){return CheckNoChangesMode2[CheckNoChangesMode2.Off=0]="Off",CheckNoChangesMode2[CheckNoChangesMode2.Exhaustive=1]="Exhaustive",CheckNoChangesMode2[CheckNoChangesMode2.OnlyDirtyViews=2]="OnlyDirtyViews",CheckNoChangesMode2})(CheckNoChangesMode||{}),_checkNoChangesMode=0,_isRefreshingViews=!1;function getElementDepthCount(){return instructionState.lFrame.elementDepthCount}function increaseElementDepthCount(){instructionState.lFrame.elementDepthCount++}function decreaseElementDepthCount(){instructionState.lFrame.elementDepthCount--}function getBindingsEnabled(){return instructionState.bindingsEnabled}function isInSkipHydrationBlock(){return instructionState.skipHydrationRootTNode!==null}function isSkipHydrationRootTNode(tNode){return instructionState.skipHydrationRootTNode===tNode}function leaveSkipHydrationBlock(){instructionState.skipHydrationRootTNode=null}function getLView(){return instructionState.lFrame.lView}function getTView(){return instructionState.lFrame.tView}function \u0275\u0275restoreView(viewToRestore){return instructionState.lFrame.contextLView=viewToRestore,viewToRestore[CONTEXT]}function \u0275\u0275resetView(value){return instructionState.lFrame.contextLView=null,value}function getCurrentTNode(){let currentTNode=getCurrentTNodePlaceholderOk();for(;currentTNode!==null&¤tTNode.type===64;)currentTNode=currentTNode.parent;return currentTNode}function getCurrentTNodePlaceholderOk(){return instructionState.lFrame.currentTNode}function getCurrentParentTNode(){let lFrame=instructionState.lFrame,currentTNode=lFrame.currentTNode;return lFrame.isParent?currentTNode:currentTNode.parent}function setCurrentTNode(tNode,isParent){let lFrame=instructionState.lFrame;lFrame.currentTNode=tNode,lFrame.isParent=isParent}function isCurrentTNodeParent(){return instructionState.lFrame.isParent}function setCurrentTNodeAsNotParent(){instructionState.lFrame.isParent=!1}function getContextLView(){return instructionState.lFrame.contextLView}function setIsInCheckNoChangesMode(mode){throwError2("Must never be called in production mode"),_checkNoChangesMode=mode}function isRefreshingViews(){return _isRefreshingViews}function setIsRefreshingViews(mode){let prev=_isRefreshingViews;return _isRefreshingViews=mode,prev}function getBindingRoot(){let lFrame=instructionState.lFrame,index=lFrame.bindingRootIndex;return index===-1&&(index=lFrame.bindingRootIndex=lFrame.tView.bindingStartIndex),index}function getBindingIndex(){return instructionState.lFrame.bindingIndex}function setBindingIndex(value){return instructionState.lFrame.bindingIndex=value}function nextBindingIndex(){return instructionState.lFrame.bindingIndex++}function incrementBindingIndex(count){let lFrame=instructionState.lFrame,index=lFrame.bindingIndex;return lFrame.bindingIndex=lFrame.bindingIndex+count,index}function isInI18nBlock(){return instructionState.lFrame.inI18n}function setBindingRootForHostBindings(bindingRootIndex,currentDirectiveIndex){let lFrame=instructionState.lFrame;lFrame.bindingIndex=lFrame.bindingRootIndex=bindingRootIndex,setCurrentDirectiveIndex(currentDirectiveIndex)}function getCurrentDirectiveIndex(){return instructionState.lFrame.currentDirectiveIndex}function setCurrentDirectiveIndex(currentDirectiveIndex){instructionState.lFrame.currentDirectiveIndex=currentDirectiveIndex}function getCurrentDirectiveDef(tData){let currentDirectiveIndex=instructionState.lFrame.currentDirectiveIndex;return currentDirectiveIndex===-1?null:tData[currentDirectiveIndex]}function getCurrentQueryIndex(){return instructionState.lFrame.currentQueryIndex}function setCurrentQueryIndex(value){instructionState.lFrame.currentQueryIndex=value}function getDeclarationTNode(lView){let tView=lView[TVIEW];return tView.type===2?tView.declTNode:tView.type===1?lView[T_HOST]:null}function enterDI(lView,tNode,flags){if(flags&4){let parentTNode=tNode,parentLView=lView;for(;parentTNode=parentTNode.parent,parentTNode===null&&!(flags&1);)if(parentTNode=getDeclarationTNode(parentLView),parentTNode===null||(parentLView=parentLView[DECLARATION_VIEW],parentTNode.type&10))break;if(parentTNode===null)return!1;tNode=parentTNode,lView=parentLView}let lFrame=instructionState.lFrame=allocLFrame();return lFrame.currentTNode=tNode,lFrame.lView=lView,!0}function enterView(newView){let newLFrame=allocLFrame(),tView=newView[TVIEW];instructionState.lFrame=newLFrame,newLFrame.currentTNode=tView.firstChild,newLFrame.lView=newView,newLFrame.tView=tView,newLFrame.contextLView=newView,newLFrame.bindingIndex=tView.bindingStartIndex,newLFrame.inI18n=!1}function allocLFrame(){let currentLFrame=instructionState.lFrame,childLFrame=currentLFrame===null?null:currentLFrame.child;return childLFrame===null?createLFrame(currentLFrame):childLFrame}function createLFrame(parent){let lFrame={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,child:null,inI18n:!1};return parent!==null&&(parent.child=lFrame),lFrame}function leaveViewLight(){let oldLFrame=instructionState.lFrame;return instructionState.lFrame=oldLFrame.parent,oldLFrame.currentTNode=null,oldLFrame.lView=null,oldLFrame}var leaveDI=leaveViewLight;function leaveView(){let oldLFrame=leaveViewLight();oldLFrame.isParent=!0,oldLFrame.tView=null,oldLFrame.selectedIndex=-1,oldLFrame.contextLView=null,oldLFrame.elementDepthCount=0,oldLFrame.currentDirectiveIndex=-1,oldLFrame.currentNamespace=null,oldLFrame.bindingRootIndex=-1,oldLFrame.bindingIndex=-1,oldLFrame.currentQueryIndex=0}function nextContextImpl(level){return(instructionState.lFrame.contextLView=walkUpViews(level,instructionState.lFrame.contextLView))[CONTEXT]}function getSelectedIndex(){return instructionState.lFrame.selectedIndex}function setSelectedIndex(index){instructionState.lFrame.selectedIndex=index}function getSelectedTNode(){let lFrame=instructionState.lFrame;return getTNode(lFrame.tView,lFrame.selectedIndex)}function \u0275\u0275namespaceSVG(){instructionState.lFrame.currentNamespace=SVG_NAMESPACE}function \u0275\u0275namespaceHTML(){namespaceHTMLInternal()}function namespaceHTMLInternal(){instructionState.lFrame.currentNamespace=null}function getNamespace(){return instructionState.lFrame.currentNamespace}var _wasLastNodeCreated=!0;function wasLastNodeCreated(){return _wasLastNodeCreated}function lastNodeWasCreated(flag){_wasLastNodeCreated=flag}var registry={elements:void 0};function getAnimationElementRemovalRegistry(){return registry}function createInjector(defType,parent=null,additionalProviders=null,name){let injector=createInjectorWithoutInjectorInstances(defType,parent,additionalProviders,name);return injector.resolveInjectorInitializers(),injector}function createInjectorWithoutInjectorInstances(defType,parent=null,additionalProviders=null,name,scopes=new Set){let providers=[additionalProviders||EMPTY_ARRAY,importProvidersFrom(defType)];return name=name||(typeof defType=="object"?void 0:stringify(defType)),new R3Injector(providers,parent||getNullInjector(),name||null,scopes)}var Injector=class _Injector{static THROW_IF_NOT_FOUND=THROW_IF_NOT_FOUND;static NULL=new NullInjector;static create(options,parent){if(Array.isArray(options))return createInjector({name:""},parent,options,"");{let name=options.name??"";return createInjector({name},options.parent,options.providers,name)}}static \u0275prov=\u0275\u0275defineInjectable({token:_Injector,providedIn:"any",factory:()=>\u0275\u0275inject(INJECTOR$1)});static __NG_ELEMENT_ID__=-1},DOCUMENT=new InjectionToken(""),DestroyRef=(()=>{class DestroyRef3{static __NG_ELEMENT_ID__=injectDestroyRef;static __NG_ENV_ID__=injector=>injector}return DestroyRef3})(),NodeInjectorDestroyRef=class extends DestroyRef{_lView;constructor(_lView){super(),this._lView=_lView}get destroyed(){return isDestroyed(this._lView)}onDestroy(callback){let lView=this._lView;return storeLViewOnDestroy(lView,callback),()=>removeLViewOnDestroy(lView,callback)}};function injectDestroyRef(){return new NodeInjectorDestroyRef(getLView())}var ErrorHandler=class{_console=console;handleError(error){this._console.error("ERROR",error)}},INTERNAL_APPLICATION_ERROR_HANDLER=new InjectionToken("",{providedIn:"root",factory:()=>{let injector=inject2(EnvironmentInjector),userErrorHandler;return e=>{injector.destroyed&&!userErrorHandler?setTimeout(()=>{throw e}):(userErrorHandler??=injector.get(ErrorHandler),userErrorHandler.handleError(e))}}}),errorHandlerEnvironmentInitializer={provide:ENVIRONMENT_INITIALIZER,useValue:()=>void inject2(ErrorHandler),multi:!0};function isSignal(value){return typeof value=="function"&&value[SIGNAL]!==void 0}function signal(initialValue,options){let[get,set,update3]=createSignal(initialValue,options?.equal),signalFn=get,node=signalFn[SIGNAL];return signalFn.set=set,signalFn.update=update3,signalFn.asReadonly=signalAsReadonlyFn.bind(signalFn),signalFn}function signalAsReadonlyFn(){let node=this[SIGNAL];if(node.readonlyFn===void 0){let readonlyFn=()=>this();readonlyFn[SIGNAL]=node,node.readonlyFn=readonlyFn}return node.readonlyFn}function isWritableSignal(value){return isSignal(value)&&typeof value.set=="function"}var ChangeDetectionScheduler=class{},ZONELESS_ENABLED=new InjectionToken("",{providedIn:"root",factory:()=>!1});var ZONELESS_SCHEDULER_DISABLED=new InjectionToken(""),SCHEDULE_IN_ROOT_ZONE=new InjectionToken("");var ViewContext=(()=>{class ViewContext2{view;node;constructor(view,node){this.view=view,this.node=node}static __NG_ELEMENT_ID__=injectViewContext}return ViewContext2})();function injectViewContext(){return new ViewContext(getLView(),getCurrentTNode())}var PendingTasksInternal=(()=>{class PendingTasksInternal2{taskId=0;pendingTasks=new Set;destroyed=!1;pendingTask=new BehaviorSubject(!1);get hasPendingTasks(){return this.destroyed?!1:this.pendingTask.value}get hasPendingTasksObservable(){return this.destroyed?new Observable(subscriber=>{subscriber.next(!1),subscriber.complete()}):this.pendingTask}add(){!this.hasPendingTasks&&!this.destroyed&&this.pendingTask.next(!0);let taskId=this.taskId++;return this.pendingTasks.add(taskId),taskId}has(taskId){return this.pendingTasks.has(taskId)}remove(taskId){this.pendingTasks.delete(taskId),this.pendingTasks.size===0&&this.hasPendingTasks&&this.pendingTask.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks&&this.pendingTask.next(!1),this.destroyed=!0,this.pendingTask.unsubscribe()}static \u0275prov=\u0275\u0275defineInjectable({token:PendingTasksInternal2,providedIn:"root",factory:()=>new PendingTasksInternal2})}return PendingTasksInternal2})(),PendingTasks=(()=>{class PendingTasks2{internalPendingTasks=inject2(PendingTasksInternal);scheduler=inject2(ChangeDetectionScheduler);errorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);add(){let taskId=this.internalPendingTasks.add();return()=>{this.internalPendingTasks.has(taskId)&&(this.scheduler.notify(11),this.internalPendingTasks.remove(taskId))}}run(fn){let removeTask=this.add();fn().catch(this.errorHandler).finally(removeTask)}static \u0275prov=\u0275\u0275defineInjectable({token:PendingTasks2,providedIn:"root",factory:()=>new PendingTasks2})}return PendingTasks2})();function noop2(...args){}var EffectScheduler=(()=>{class EffectScheduler2{static \u0275prov=\u0275\u0275defineInjectable({token:EffectScheduler2,providedIn:"root",factory:()=>new ZoneAwareEffectScheduler})}return EffectScheduler2})(),ZoneAwareEffectScheduler=class{dirtyEffectCount=0;queues=new Map;add(handle){this.enqueue(handle),this.schedule(handle)}schedule(handle){handle.dirty&&this.dirtyEffectCount++}remove(handle){let zone=handle.zone,queue2=this.queues.get(zone);queue2.has(handle)&&(queue2.delete(handle),handle.dirty&&this.dirtyEffectCount--)}enqueue(handle){let zone=handle.zone;this.queues.has(zone)||this.queues.set(zone,new Set);let queue2=this.queues.get(zone);queue2.has(handle)||queue2.add(handle)}flush(){for(;this.dirtyEffectCount>0;){let ranOneEffect=!1;for(let[zone,queue2]of this.queues)zone===null?ranOneEffect||=this.flushQueue(queue2):ranOneEffect||=zone.run(()=>this.flushQueue(queue2));ranOneEffect||(this.dirtyEffectCount=0)}}flushQueue(queue2){let ranOneEffect=!1;for(let handle of queue2)handle.dirty&&(this.dirtyEffectCount--,ranOneEffect=!0,handle.run());return ranOneEffect}};function noSideEffects(fn){return{toString:fn}.toString()}var PARAMETERS="__parameters__";function makeMetadataCtor(props2){return function(...args){if(props2){let values=props2(...args);for(let propName in values)this[propName]=values[propName]}}}function makeParamDecorator(name,props2,parentClass){return noSideEffects(()=>{let metaCtor=makeMetadataCtor(props2);function ParamDecoratorFactory(...args){if(this instanceof ParamDecoratorFactory)return metaCtor.apply(this,args),this;let annotationInstance=new ParamDecoratorFactory(...args);return ParamDecorator.annotation=annotationInstance,ParamDecorator;function ParamDecorator(cls,unusedKey,index){let parameters=cls.hasOwnProperty(PARAMETERS)?cls[PARAMETERS]:Object.defineProperty(cls,PARAMETERS,{value:[]})[PARAMETERS];for(;parameters.length<=index;)parameters.push(null);return(parameters[index]=parameters[index]||[]).push(annotationInstance),cls}}return ParamDecoratorFactory.prototype.ngMetadataName=name,ParamDecoratorFactory.annotationCls=ParamDecoratorFactory,ParamDecoratorFactory})}var Inject=attachInjectFlag(makeParamDecorator("Inject",token=>({token})),-1),Optional=attachInjectFlag(makeParamDecorator("Optional"),8);var SkipSelf=attachInjectFlag(makeParamDecorator("SkipSelf"),4);function getCompilerFacade(request){let globalNg=_global.ng;if(globalNg&&globalNg.\u0275compilerFacade)return globalNg.\u0275compilerFacade;throw new Error("JIT compiler unavailable")}function isType(v){return typeof v=="function"}var SimpleChange=class{previousValue;currentValue;firstChange;constructor(previousValue,currentValue,firstChange){this.previousValue=previousValue,this.currentValue=currentValue,this.firstChange=firstChange}isFirstChange(){return this.firstChange}};function applyValueToInputField(instance,inputSignalNode,privateName,value){inputSignalNode!==null?inputSignalNode.applyValueToInputSignal(inputSignalNode,value):instance[privateName]=value}var \u0275\u0275NgOnChangesFeature=(()=>{let \u0275\u0275NgOnChangesFeatureImpl=()=>NgOnChangesFeatureImpl;return \u0275\u0275NgOnChangesFeatureImpl.ngInherit=!0,\u0275\u0275NgOnChangesFeatureImpl})();function NgOnChangesFeatureImpl(definition){return definition.type.prototype.ngOnChanges&&(definition.setInput=ngOnChangesSetInput),rememberChangeHistoryAndInvokeOnChangesHook}function rememberChangeHistoryAndInvokeOnChangesHook(){let simpleChangesStore=getSimpleChangesStore(this),current=simpleChangesStore?.current;if(current){let previous=simpleChangesStore.previous;if(previous===EMPTY_OBJ)simpleChangesStore.previous=current;else for(let key in current)previous[key]=current[key];simpleChangesStore.current=null,this.ngOnChanges(current)}}function ngOnChangesSetInput(instance,inputSignalNode,value,publicName,privateName){let declaredName=this.declaredInputs[publicName],simpleChangesStore=getSimpleChangesStore(instance)||setSimpleChangesStore(instance,{previous:EMPTY_OBJ,current:null}),current=simpleChangesStore.current||(simpleChangesStore.current={}),previous=simpleChangesStore.previous,previousChange=previous[declaredName];current[declaredName]=new SimpleChange(previousChange&&previousChange.currentValue,value,previous===EMPTY_OBJ),applyValueToInputField(instance,inputSignalNode,privateName,value)}var SIMPLE_CHANGES_STORE="__ngSimpleChanges__";function getSimpleChangesStore(instance){return instance[SIMPLE_CHANGES_STORE]||null}function setSimpleChangesStore(instance,store2){return instance[SIMPLE_CHANGES_STORE]=store2}var profilerCallbacks=[];var profiler=function(event,instance=null,eventFn){for(let i=0;i<profilerCallbacks.length;i++){let profilerCallback=profilerCallbacks[i];profilerCallback(event,instance,eventFn)}};function registerPreOrderHooks(directiveIndex,directiveDef,tView){let{ngOnChanges,ngOnInit,ngDoCheck}=directiveDef.type.prototype;if(ngOnChanges){let wrappedOnChanges=NgOnChangesFeatureImpl(directiveDef);(tView.preOrderHooks??=[]).push(directiveIndex,wrappedOnChanges),(tView.preOrderCheckHooks??=[]).push(directiveIndex,wrappedOnChanges)}ngOnInit&&(tView.preOrderHooks??=[]).push(0-directiveIndex,ngOnInit),ngDoCheck&&((tView.preOrderHooks??=[]).push(directiveIndex,ngDoCheck),(tView.preOrderCheckHooks??=[]).push(directiveIndex,ngDoCheck))}function registerPostOrderHooks(tView,tNode){for(let i=tNode.directiveStart,end=tNode.directiveEnd;i<end;i++){let lifecycleHooks=tView.data[i].type.prototype,{ngAfterContentInit,ngAfterContentChecked,ngAfterViewInit,ngAfterViewChecked,ngOnDestroy}=lifecycleHooks;ngAfterContentInit&&(tView.contentHooks??=[]).push(-i,ngAfterContentInit),ngAfterContentChecked&&((tView.contentHooks??=[]).push(i,ngAfterContentChecked),(tView.contentCheckHooks??=[]).push(i,ngAfterContentChecked)),ngAfterViewInit&&(tView.viewHooks??=[]).push(-i,ngAfterViewInit),ngAfterViewChecked&&((tView.viewHooks??=[]).push(i,ngAfterViewChecked),(tView.viewCheckHooks??=[]).push(i,ngAfterViewChecked)),ngOnDestroy!=null&&(tView.destroyHooks??=[]).push(i,ngOnDestroy)}}function executeCheckHooks(lView,hooks,nodeIndex){callHooks(lView,hooks,3,nodeIndex)}function executeInitAndCheckHooks(lView,hooks,initPhase,nodeIndex){(lView[FLAGS]&3)===initPhase&&callHooks(lView,hooks,initPhase,nodeIndex)}function incrementInitPhaseFlags(lView,initPhase){let flags=lView[FLAGS];(flags&3)===initPhase&&(flags&=16383,flags+=1,lView[FLAGS]=flags)}function callHooks(currentView,arr,initPhase,currentNodeIndex){let startIndex=currentNodeIndex!==void 0?currentView[PREORDER_HOOK_FLAGS]&65535:0,nodeIndexLimit=currentNodeIndex??-1,max=arr.length-1,lastNodeIndexFound=0;for(let i=startIndex;i<max;i++)if(typeof arr[i+1]=="number"){if(lastNodeIndexFound=arr[i],currentNodeIndex!=null&&lastNodeIndexFound>=currentNodeIndex)break}else arr[i]<0&&(currentView[PREORDER_HOOK_FLAGS]+=65536),(lastNodeIndexFound<nodeIndexLimit||nodeIndexLimit==-1)&&(callHook(currentView,initPhase,arr,i),currentView[PREORDER_HOOK_FLAGS]=(currentView[PREORDER_HOOK_FLAGS]&4294901760)+i+2),i++}function callHookInternal(directive,hook){profiler(4,directive,hook);let prevConsumer=setActiveConsumer(null);try{hook.call(directive)}finally{setActiveConsumer(prevConsumer),profiler(5,directive,hook)}}function callHook(currentView,initPhase,arr,i){let isInitHook=arr[i]<0,hook=arr[i+1],directiveIndex=isInitHook?-arr[i]:arr[i],directive=currentView[directiveIndex];isInitHook?currentView[FLAGS]>>14<currentView[PREORDER_HOOK_FLAGS]>>16&&(currentView[FLAGS]&3)===initPhase&&(currentView[FLAGS]+=16384,callHookInternal(directive,hook)):callHookInternal(directive,hook)}var NO_PARENT_INJECTOR=-1,NodeInjectorFactory=class{factory;name;injectImpl;resolving=!1;canSeeViewProviders;multi;componentProviders;index;providerFactory;constructor(factory,isViewProvider,injectImplementation,name){this.factory=factory,this.name=name,this.canSeeViewProviders=isViewProvider,this.injectImpl=injectImplementation}};function hasClassInput(tNode){return(tNode.flags&8)!==0}function hasStyleInput(tNode){return(tNode.flags&16)!==0}function setUpAttributes(renderer,native,attrs){let i=0;for(;i<attrs.length;){let value=attrs[i];if(typeof value=="number"){if(value!==0)break;i++;let namespaceURI=attrs[i++],attrName=attrs[i++],attrVal=attrs[i++];renderer.setAttribute(native,attrName,attrVal,namespaceURI)}else{let attrName=value,attrVal=attrs[++i];isAnimationProp(attrName)?renderer.setProperty(native,attrName,attrVal):renderer.setAttribute(native,attrName,attrVal),i++}}return i}function isNameOnlyAttributeMarker(marker){return marker===3||marker===4||marker===6}function isAnimationProp(name){return name.charCodeAt(0)===64}function mergeHostAttrs(dst,src){if(!(src===null||src.length===0))if(dst===null||dst.length===0)dst=src.slice();else{let srcMarker=-1;for(let i=0;i<src.length;i++){let item=src[i];typeof item=="number"?srcMarker=item:srcMarker===0||(srcMarker===-1||srcMarker===2?mergeHostAttribute(dst,srcMarker,item,null,src[++i]):mergeHostAttribute(dst,srcMarker,item,null,null))}}return dst}function mergeHostAttribute(dst,marker,key1,key2,value){let i=0,markerInsertPosition=dst.length;if(marker===-1)markerInsertPosition=-1;else for(;i<dst.length;){let dstValue=dst[i++];if(typeof dstValue=="number"){if(dstValue===marker){markerInsertPosition=-1;break}else if(dstValue>marker){markerInsertPosition=i-1;break}}}for(;i<dst.length;){let item=dst[i];if(typeof item=="number")break;if(item===key1){value!==null&&(dst[i+1]=value);return}i++,value!==null&&i++}markerInsertPosition!==-1&&(dst.splice(markerInsertPosition,0,marker),i=markerInsertPosition+1),dst.splice(i++,0,key1),value!==null&&dst.splice(i++,0,value)}function hasParentInjector(parentLocation){return parentLocation!==NO_PARENT_INJECTOR}function getParentInjectorIndex(parentLocation){return parentLocation&32767}function getParentInjectorViewOffset(parentLocation){return parentLocation>>16}function getParentInjectorView(location2,startView){let viewOffset=getParentInjectorViewOffset(location2),parentView=startView;for(;viewOffset>0;)parentView=parentView[DECLARATION_VIEW],viewOffset--;return parentView}var includeViewProviders=!0;function setIncludeViewProviders(v){let oldValue=includeViewProviders;return includeViewProviders=v,oldValue}var BLOOM_SIZE=256,BLOOM_MASK=BLOOM_SIZE-1,BLOOM_BUCKET_BITS=5,nextNgElementId=0,NOT_FOUND2={};function bloomAdd(injectorIndex,tView,type2){let id;typeof type2=="string"?id=type2.charCodeAt(0)||0:type2.hasOwnProperty(NG_ELEMENT_ID)&&(id=type2[NG_ELEMENT_ID]),id==null&&(id=type2[NG_ELEMENT_ID]=nextNgElementId++);let bloomHash=id&BLOOM_MASK,mask=1<<bloomHash;tView.data[injectorIndex+(bloomHash>>BLOOM_BUCKET_BITS)]|=mask}function getOrCreateNodeInjectorForNode(tNode,lView){let existingInjectorIndex=getInjectorIndex(tNode,lView);if(existingInjectorIndex!==-1)return existingInjectorIndex;let tView=lView[TVIEW];tView.firstCreatePass&&(tNode.injectorIndex=lView.length,insertBloom(tView.data,tNode),insertBloom(lView,null),insertBloom(tView.blueprint,null));let parentLoc=getParentInjectorLocation(tNode,lView),injectorIndex=tNode.injectorIndex;if(hasParentInjector(parentLoc)){let parentIndex=getParentInjectorIndex(parentLoc),parentLView=getParentInjectorView(parentLoc,lView),parentData=parentLView[TVIEW].data;for(let i=0;i<8;i++)lView[injectorIndex+i]=parentLView[parentIndex+i]|parentData[parentIndex+i]}return lView[injectorIndex+8]=parentLoc,injectorIndex}function insertBloom(arr,footer){arr.push(0,0,0,0,0,0,0,0,footer)}function getInjectorIndex(tNode,lView){return tNode.injectorIndex===-1||tNode.parent&&tNode.parent.injectorIndex===tNode.injectorIndex||lView[tNode.injectorIndex+8]===null?-1:tNode.injectorIndex}function getParentInjectorLocation(tNode,lView){if(tNode.parent&&tNode.parent.injectorIndex!==-1)return tNode.parent.injectorIndex;let declarationViewOffset=0,parentTNode=null,lViewCursor=lView;for(;lViewCursor!==null;){if(parentTNode=getTNodeFromLView(lViewCursor),parentTNode===null)return NO_PARENT_INJECTOR;if(declarationViewOffset++,lViewCursor=lViewCursor[DECLARATION_VIEW],parentTNode.injectorIndex!==-1)return parentTNode.injectorIndex|declarationViewOffset<<16}return NO_PARENT_INJECTOR}function diPublicInInjector(injectorIndex,tView,token){bloomAdd(injectorIndex,tView,token)}function injectAttributeImpl(tNode,attrNameToInject){if(attrNameToInject==="class")return tNode.classes;if(attrNameToInject==="style")return tNode.styles;let attrs=tNode.attrs;if(attrs){let attrsLength=attrs.length,i=0;for(;i<attrsLength;){let value=attrs[i];if(isNameOnlyAttributeMarker(value))break;if(value===0)i=i+2;else if(typeof value=="number")for(i++;i<attrsLength&&typeof attrs[i]=="string";)i++;else{if(value===attrNameToInject)return attrs[i+1];i=i+2}}}return null}function notFoundValueOrThrow(notFoundValue,token,flags){if(flags&8||notFoundValue!==void 0)return notFoundValue;throwProviderNotFoundError(token,"NodeInjector")}function lookupTokenUsingModuleInjector(lView,token,flags,notFoundValue){if(flags&8&¬FoundValue===void 0&&(notFoundValue=null),(flags&3)===0){let moduleInjector=lView[INJECTOR],previousInjectImplementation=setInjectImplementation(void 0);try{return moduleInjector?moduleInjector.get(token,notFoundValue,flags&8):injectRootLimpMode(token,notFoundValue,flags&8)}finally{setInjectImplementation(previousInjectImplementation)}}return notFoundValueOrThrow(notFoundValue,token,flags)}function getOrCreateInjectable(tNode,lView,token,flags=0,notFoundValue){if(tNode!==null){if(lView[FLAGS]&2048&&!(flags&2)){let embeddedInjectorValue=lookupTokenUsingEmbeddedInjector(tNode,lView,token,flags,NOT_FOUND2);if(embeddedInjectorValue!==NOT_FOUND2)return embeddedInjectorValue}let value=lookupTokenUsingNodeInjector(tNode,lView,token,flags,NOT_FOUND2);if(value!==NOT_FOUND2)return value}return lookupTokenUsingModuleInjector(lView,token,flags,notFoundValue)}function lookupTokenUsingNodeInjector(tNode,lView,token,flags,notFoundValue){let bloomHash=bloomHashBitOrFactory(token);if(typeof bloomHash=="function"){if(!enterDI(lView,tNode,flags))return flags&1?notFoundValueOrThrow(notFoundValue,token,flags):lookupTokenUsingModuleInjector(lView,token,flags,notFoundValue);try{let value;if(value=bloomHash(flags),value==null&&!(flags&8))throwProviderNotFoundError(token);else return value}finally{leaveDI()}}else if(typeof bloomHash=="number"){let previousTView=null,injectorIndex=getInjectorIndex(tNode,lView),parentLocation=NO_PARENT_INJECTOR,hostTElementNode=flags&1?lView[DECLARATION_COMPONENT_VIEW][T_HOST]:null;for((injectorIndex===-1||flags&4)&&(parentLocation=injectorIndex===-1?getParentInjectorLocation(tNode,lView):lView[injectorIndex+8],parentLocation===NO_PARENT_INJECTOR||!shouldSearchParent(flags,!1)?injectorIndex=-1:(previousTView=lView[TVIEW],injectorIndex=getParentInjectorIndex(parentLocation),lView=getParentInjectorView(parentLocation,lView)));injectorIndex!==-1;){let tView=lView[TVIEW];if(bloomHasToken(bloomHash,injectorIndex,tView.data)){let instance=searchTokensOnInjector(injectorIndex,lView,token,previousTView,flags,hostTElementNode);if(instance!==NOT_FOUND2)return instance}parentLocation=lView[injectorIndex+8],parentLocation!==NO_PARENT_INJECTOR&&shouldSearchParent(flags,lView[TVIEW].data[injectorIndex+8]===hostTElementNode)&&bloomHasToken(bloomHash,injectorIndex,lView)?(previousTView=tView,injectorIndex=getParentInjectorIndex(parentLocation),lView=getParentInjectorView(parentLocation,lView)):injectorIndex=-1}}return notFoundValue}function searchTokensOnInjector(injectorIndex,lView,token,previousTView,flags,hostTElementNode){let currentTView=lView[TVIEW],tNode=currentTView.data[injectorIndex+8],canAccessViewProviders=previousTView==null?isComponentHost(tNode)&&includeViewProviders:previousTView!=currentTView&&(tNode.type&3)!==0,isHostSpecialCase=flags&1&&hostTElementNode===tNode,injectableIdx=locateDirectiveOrProvider(tNode,currentTView,token,canAccessViewProviders,isHostSpecialCase);return injectableIdx!==null?getNodeInjectable(lView,currentTView,injectableIdx,tNode,flags):NOT_FOUND2}function locateDirectiveOrProvider(tNode,tView,token,canAccessViewProviders,isHostSpecialCase){let nodeProviderIndexes=tNode.providerIndexes,tInjectables=tView.data,injectablesStart=nodeProviderIndexes&1048575,directivesStart=tNode.directiveStart,directiveEnd=tNode.directiveEnd,cptViewProvidersCount=nodeProviderIndexes>>20,startingIndex=canAccessViewProviders?injectablesStart:injectablesStart+cptViewProvidersCount,endIndex=isHostSpecialCase?injectablesStart+cptViewProvidersCount:directiveEnd;for(let i=startingIndex;i<endIndex;i++){let providerTokenOrDef=tInjectables[i];if(i<directivesStart&&token===providerTokenOrDef||i>=directivesStart&&providerTokenOrDef.type===token)return i}if(isHostSpecialCase){let dirDef=tInjectables[directivesStart];if(dirDef&&isComponentDef(dirDef)&&dirDef.type===token)return directivesStart}return null}function getNodeInjectable(lView,tView,index,tNode,flags){let value=lView[index],tData=tView.data;if(value instanceof NodeInjectorFactory){let factory=value;if(factory.resolving){let token2=stringifyForError(tData[index]);throw cyclicDependencyError(token2)}let previousIncludeViewProviders=setIncludeViewProviders(factory.canSeeViewProviders);factory.resolving=!0;let token=tData[index].type||tData[index],prevInjectContext,previousInjectImplementation=factory.injectImpl?setInjectImplementation(factory.injectImpl):null,success=enterDI(lView,tNode,0);try{value=lView[index]=factory.factory(void 0,flags,tData,lView,tNode),tView.firstCreatePass&&index>=tNode.directiveStart&®isterPreOrderHooks(index,tData[index],tView)}finally{previousInjectImplementation!==null&&setInjectImplementation(previousInjectImplementation),setIncludeViewProviders(previousIncludeViewProviders),factory.resolving=!1,leaveDI()}}return value}function bloomHashBitOrFactory(token){if(typeof token=="string")return token.charCodeAt(0)||0;let tokenId=token.hasOwnProperty(NG_ELEMENT_ID)?token[NG_ELEMENT_ID]:void 0;return typeof tokenId=="number"?tokenId>=0?tokenId&BLOOM_MASK:createNodeInjector:tokenId}function bloomHasToken(bloomHash,injectorIndex,injectorView){let mask=1<<bloomHash;return!!(injectorView[injectorIndex+(bloomHash>>BLOOM_BUCKET_BITS)]&mask)}function shouldSearchParent(flags,isFirstHostTNode){return!(flags&2)&&!(flags&1&&isFirstHostTNode)}var NodeInjector=class{_tNode;_lView;constructor(_tNode,_lView){this._tNode=_tNode,this._lView=_lView}get(token,notFoundValue,flags){return getOrCreateInjectable(this._tNode,this._lView,token,convertToBitFlags(flags),notFoundValue)}};function createNodeInjector(){return new NodeInjector(getCurrentTNode(),getLView())}function \u0275\u0275getInheritedFactory(type2){return noSideEffects(()=>{let ownConstructor=type2.prototype.constructor,ownFactory=ownConstructor[NG_FACTORY_DEF]||getFactoryOf(ownConstructor),objectPrototype=Object.prototype,parent=Object.getPrototypeOf(type2.prototype).constructor;for(;parent&&parent!==objectPrototype;){let factory=parent[NG_FACTORY_DEF]||getFactoryOf(parent);if(factory&&factory!==ownFactory)return factory;parent=Object.getPrototypeOf(parent)}return t=>new t})}function getFactoryOf(type2){return isForwardRef(type2)?()=>{let factory=getFactoryOf(resolveForwardRef(type2));return factory&&factory()}:getFactoryDef(type2)}function lookupTokenUsingEmbeddedInjector(tNode,lView,token,flags,notFoundValue){let currentTNode=tNode,currentLView=lView;for(;currentTNode!==null&¤tLView!==null&¤tLView[FLAGS]&2048&&!isRootView(currentLView);){let nodeInjectorValue=lookupTokenUsingNodeInjector(currentTNode,currentLView,token,flags|2,NOT_FOUND2);if(nodeInjectorValue!==NOT_FOUND2)return nodeInjectorValue;let parentTNode=currentTNode.parent;if(!parentTNode){let embeddedViewInjector=currentLView[EMBEDDED_VIEW_INJECTOR];if(embeddedViewInjector){let embeddedViewInjectorValue=embeddedViewInjector.get(token,NOT_FOUND2,flags);if(embeddedViewInjectorValue!==NOT_FOUND2)return embeddedViewInjectorValue}parentTNode=getTNodeFromLView(currentLView),currentLView=currentLView[DECLARATION_VIEW]}currentTNode=parentTNode}return notFoundValue}function getTNodeFromLView(lView){let tView=lView[TVIEW],tViewType=tView.type;return tViewType===2?tView.declTNode:tViewType===1?lView[T_HOST]:null}function \u0275\u0275injectAttribute(attrNameToInject){return injectAttributeImpl(getCurrentTNode(),attrNameToInject)}function injectElementRef(){return createElementRef(getCurrentTNode(),getLView())}function createElementRef(tNode,lView){return new ElementRef(getNativeByTNode(tNode,lView))}var ElementRef=(()=>{class ElementRef2{nativeElement;constructor(nativeElement){this.nativeElement=nativeElement}static __NG_ELEMENT_ID__=injectElementRef}return ElementRef2})();function unwrapElementRef(value){return value instanceof ElementRef?value.nativeElement:value}function symbolIterator(){return this._results[Symbol.iterator]()}var QueryList=class{_emitDistinctChangesOnly;dirty=!0;_onDirty=void 0;_results=[];_changesDetected=!1;_changes=void 0;length=0;first=void 0;last=void 0;get changes(){return this._changes??=new Subject}constructor(_emitDistinctChangesOnly=!1){this._emitDistinctChangesOnly=_emitDistinctChangesOnly}get(index){return this._results[index]}map(fn){return this._results.map(fn)}filter(fn){return this._results.filter(fn)}find(fn){return this._results.find(fn)}reduce(fn,init){return this._results.reduce(fn,init)}forEach(fn){this._results.forEach(fn)}some(fn){return this._results.some(fn)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(resultsTree,identityAccessor){this.dirty=!1;let newResultFlat=flatten(resultsTree);(this._changesDetected=!arrayEquals(this._results,newResultFlat,identityAccessor))&&(this._results=newResultFlat,this.length=newResultFlat.length,this.last=newResultFlat[this.length-1],this.first=newResultFlat[0])}notifyOnChanges(){this._changes!==void 0&&(this._changesDetected||!this._emitDistinctChangesOnly)&&this._changes.next(this)}onDirty(cb){this._onDirty=cb}setDirty(){this.dirty=!0,this._onDirty?.()}destroy(){this._changes!==void 0&&(this._changes.complete(),this._changes.unsubscribe())}[Symbol.iterator]=symbolIterator};function hasInSkipHydrationBlockFlag(tNode){return(tNode.flags&128)===128}var ChangeDetectionStrategy=(function(ChangeDetectionStrategy39){return ChangeDetectionStrategy39[ChangeDetectionStrategy39.OnPush=0]="OnPush",ChangeDetectionStrategy39[ChangeDetectionStrategy39.Default=1]="Default",ChangeDetectionStrategy39})(ChangeDetectionStrategy||{}),TRACKED_LVIEWS=new Map,uniqueIdCounter=0;function getUniqueLViewId(){return uniqueIdCounter++}function registerLView(lView){TRACKED_LVIEWS.set(lView[ID],lView)}function unregisterLView(lView){TRACKED_LVIEWS.delete(lView[ID])}var MONKEY_PATCH_KEY_NAME="__ngContext__";function attachPatchData(target,data){isLView(data)?(target[MONKEY_PATCH_KEY_NAME]=data[ID],registerLView(data)):target[MONKEY_PATCH_KEY_NAME]=data}function getFirstLContainer(lView){return getNearestLContainer(lView[CHILD_HEAD])}function getNextLContainer(container){return getNearestLContainer(container[NEXT])}function getNearestLContainer(viewOrContainer){for(;viewOrContainer!==null&&!isLContainer(viewOrContainer);)viewOrContainer=viewOrContainer[NEXT];return viewOrContainer}var DOCUMENT2;function setDocument(document2){DOCUMENT2=document2}function getDocument(){if(DOCUMENT2!==void 0)return DOCUMENT2;if(typeof document<"u")return document;throw new RuntimeError(210,!1)}var APP_ID=new InjectionToken("",{providedIn:"root",factory:()=>DEFAULT_APP_ID}),DEFAULT_APP_ID="ng",PLATFORM_INITIALIZER=new InjectionToken(""),PLATFORM_ID=new InjectionToken("",{providedIn:"platform",factory:()=>"unknown"});var ANIMATION_MODULE_TYPE=new InjectionToken(""),CSP_NONCE=new InjectionToken("",{providedIn:"root",factory:()=>getDocument().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});var REFERENCE_NODE_HOST="h",REFERENCE_NODE_BODY="b";var NUM_ROOT_NODES="r";var DEFER_BLOCK_ID="di";var PRESERVE_HOST_CONTENT_DEFAULT=!1,PRESERVE_HOST_CONTENT=new InjectionToken("",{providedIn:"root",factory:()=>PRESERVE_HOST_CONTENT_DEFAULT});var IS_ENABLED_BLOCKING_INITIAL_NAVIGATION=new InjectionToken("");var _stashEventListenerImpl=(lView,target,eventName,wrappedListener)=>{};function stashEventListenerImpl(lView,target,eventName,wrappedListener){_stashEventListenerImpl(lView,target,eventName,wrappedListener)}function isDetachedByI18n(tNode){return(tNode.flags&32)===32}var _retrieveHydrationInfoImpl=()=>null;function retrieveHydrationInfo(rNode,injector,isRootView2=!1){return _retrieveHydrationInfoImpl(rNode,injector,isRootView2)}function refreshContentQueries(tView,lView){let contentQueries=tView.contentQueries;if(contentQueries!==null){let prevConsumer=setActiveConsumer(null);try{for(let i=0;i<contentQueries.length;i+=2){let queryStartIdx=contentQueries[i],directiveDefIdx=contentQueries[i+1];if(directiveDefIdx!==-1){let directiveDef=tView.data[directiveDefIdx];setCurrentQueryIndex(queryStartIdx),directiveDef.contentQueries(2,lView[directiveDefIdx],directiveDefIdx)}}}finally{setActiveConsumer(prevConsumer)}}}function executeViewQueryFn(flags,viewQueryFn,component){setCurrentQueryIndex(0);let prevConsumer=setActiveConsumer(null);try{viewQueryFn(flags,component)}finally{setActiveConsumer(prevConsumer)}}function executeContentQueries(tView,tNode,lView){if(isContentQueryHost(tNode)){let prevConsumer=setActiveConsumer(null);try{let start=tNode.directiveStart,end=tNode.directiveEnd;for(let directiveIndex=start;directiveIndex<end;directiveIndex++){let def=tView.data[directiveIndex];if(def.contentQueries){let directiveInstance=lView[directiveIndex];def.contentQueries(1,directiveInstance,directiveIndex)}}}finally{setActiveConsumer(prevConsumer)}}}var ViewEncapsulation=(function(ViewEncapsulation39){return ViewEncapsulation39[ViewEncapsulation39.Emulated=0]="Emulated",ViewEncapsulation39[ViewEncapsulation39.None=2]="None",ViewEncapsulation39[ViewEncapsulation39.ShadowDom=3]="ShadowDom",ViewEncapsulation39})(ViewEncapsulation||{}),policy$1;function getPolicy$1(){if(policy$1===void 0&&(policy$1=null,_global.trustedTypes))try{policy$1=_global.trustedTypes.createPolicy("angular",{createHTML:s=>s,createScript:s=>s,createScriptURL:s=>s})}catch{}return policy$1}function trustedHTMLFromString(html){return getPolicy$1()?.createHTML(html)||html}var policy;function getPolicy(){if(policy===void 0&&(policy=null,_global.trustedTypes))try{policy=_global.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:s=>s,createScript:s=>s,createScriptURL:s=>s})}catch{}return policy}function trustedHTMLFromStringBypass(html){return getPolicy()?.createHTML(html)||html}function trustedScriptURLFromStringBypass(url){return getPolicy()?.createScriptURL(url)||url}var SafeValueImpl=class{changingThisBreaksApplicationSecurity;constructor(changingThisBreaksApplicationSecurity){this.changingThisBreaksApplicationSecurity=changingThisBreaksApplicationSecurity}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${XSS_SECURITY_URL})`}},SafeHtmlImpl=class extends SafeValueImpl{getTypeName(){return"HTML"}},SafeStyleImpl=class extends SafeValueImpl{getTypeName(){return"Style"}},SafeScriptImpl=class extends SafeValueImpl{getTypeName(){return"Script"}},SafeUrlImpl=class extends SafeValueImpl{getTypeName(){return"URL"}},SafeResourceUrlImpl=class extends SafeValueImpl{getTypeName(){return"ResourceURL"}};function unwrapSafeValue(value){return value instanceof SafeValueImpl?value.changingThisBreaksApplicationSecurity:value}function allowSanitizationBypassAndThrow(value,type2){let actualType=getSanitizationBypassType(value);if(actualType!=null&&actualType!==type2){if(actualType==="ResourceURL"&&type2==="URL")return!0;throw new Error(`Required a safe ${type2}, got a ${actualType} (see ${XSS_SECURITY_URL})`)}return actualType===type2}function getSanitizationBypassType(value){return value instanceof SafeValueImpl&&value.getTypeName()||null}function bypassSanitizationTrustHtml(trustedHtml){return new SafeHtmlImpl(trustedHtml)}function bypassSanitizationTrustStyle(trustedStyle){return new SafeStyleImpl(trustedStyle)}function bypassSanitizationTrustScript(trustedScript){return new SafeScriptImpl(trustedScript)}function bypassSanitizationTrustUrl(trustedUrl){return new SafeUrlImpl(trustedUrl)}function bypassSanitizationTrustResourceUrl(trustedResourceUrl){return new SafeResourceUrlImpl(trustedResourceUrl)}function getInertBodyHelper(defaultDoc){let inertDocumentHelper=new InertDocumentHelper(defaultDoc);return isDOMParserAvailable()?new DOMParserHelper(inertDocumentHelper):inertDocumentHelper}var DOMParserHelper=class{inertDocumentHelper;constructor(inertDocumentHelper){this.inertDocumentHelper=inertDocumentHelper}getInertBodyElement(html){html="<body><remove></remove>"+html;try{let body=new window.DOMParser().parseFromString(trustedHTMLFromString(html),"text/html").body;return body===null?this.inertDocumentHelper.getInertBodyElement(html):(body.firstChild?.remove(),body)}catch{return null}}},InertDocumentHelper=class{defaultDoc;inertDocument;constructor(defaultDoc){this.defaultDoc=defaultDoc,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(html){let templateEl=this.inertDocument.createElement("template");return templateEl.innerHTML=trustedHTMLFromString(html),templateEl}};function isDOMParserAvailable(){try{return!!new window.DOMParser().parseFromString(trustedHTMLFromString(""),"text/html")}catch{return!1}}var SAFE_URL_PATTERN=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function _sanitizeUrl(url){return url=String(url),url.match(SAFE_URL_PATTERN)?url:"unsafe:"+url}function tagSet(tags){let res={};for(let t of tags.split(","))res[t]=!0;return res}function merge2(...sets){let res={};for(let s of sets)for(let v in s)s.hasOwnProperty(v)&&(res[v]=!0);return res}var VOID_ELEMENTS=tagSet("area,br,col,hr,img,wbr"),OPTIONAL_END_TAG_BLOCK_ELEMENTS=tagSet("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),OPTIONAL_END_TAG_INLINE_ELEMENTS=tagSet("rp,rt"),OPTIONAL_END_TAG_ELEMENTS=merge2(OPTIONAL_END_TAG_INLINE_ELEMENTS,OPTIONAL_END_TAG_BLOCK_ELEMENTS),BLOCK_ELEMENTS=merge2(OPTIONAL_END_TAG_BLOCK_ELEMENTS,tagSet("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")),INLINE_ELEMENTS=merge2(OPTIONAL_END_TAG_INLINE_ELEMENTS,tagSet("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")),VALID_ELEMENTS=merge2(VOID_ELEMENTS,BLOCK_ELEMENTS,INLINE_ELEMENTS,OPTIONAL_END_TAG_ELEMENTS),URI_ATTRS=tagSet("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),HTML_ATTRS=tagSet("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,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),ARIA_ATTRS=tagSet("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"),VALID_ATTRS=merge2(URI_ATTRS,HTML_ATTRS,ARIA_ATTRS),SKIP_TRAVERSING_CONTENT_IF_INVALID_ELEMENTS=tagSet("script,style,template"),SanitizingHtmlSerializer=class{sanitizedSomething=!1;buf=[];sanitizeChildren(el){let current=el.firstChild,traverseContent=!0,parentNodes=[];for(;current;){if(current.nodeType===Node.ELEMENT_NODE?traverseContent=this.startElement(current):current.nodeType===Node.TEXT_NODE?this.chars(current.nodeValue):this.sanitizedSomething=!0,traverseContent&¤t.firstChild){parentNodes.push(current),current=getFirstChild(current);continue}for(;current;){current.nodeType===Node.ELEMENT_NODE&&this.endElement(current);let next=getNextSibling(current);if(next){current=next;break}current=parentNodes.pop()}}return this.buf.join("")}startElement(element){let tagName=getNodeName(element).toLowerCase();if(!VALID_ELEMENTS.hasOwnProperty(tagName))return this.sanitizedSomething=!0,!SKIP_TRAVERSING_CONTENT_IF_INVALID_ELEMENTS.hasOwnProperty(tagName);this.buf.push("<"),this.buf.push(tagName);let elAttrs=element.attributes;for(let i=0;i<elAttrs.length;i++){let elAttr=elAttrs.item(i),attrName=elAttr.name,lower=attrName.toLowerCase();if(!VALID_ATTRS.hasOwnProperty(lower)){this.sanitizedSomething=!0;continue}let value=elAttr.value;URI_ATTRS[lower]&&(value=_sanitizeUrl(value)),this.buf.push(" ",attrName,'="',encodeEntities(value),'"')}return this.buf.push(">"),!0}endElement(current){let tagName=getNodeName(current).toLowerCase();VALID_ELEMENTS.hasOwnProperty(tagName)&&!VOID_ELEMENTS.hasOwnProperty(tagName)&&(this.buf.push("</"),this.buf.push(tagName),this.buf.push(">"))}chars(chars){this.buf.push(encodeEntities(chars))}};function isClobberedElement(parentNode,childNode){return(parentNode.compareDocumentPosition(childNode)&Node.DOCUMENT_POSITION_CONTAINED_BY)!==Node.DOCUMENT_POSITION_CONTAINED_BY}function getNextSibling(node){let nextSibling=node.nextSibling;if(nextSibling&&node!==nextSibling.previousSibling)throw clobberedElementError(nextSibling);return nextSibling}function getFirstChild(node){let firstChild=node.firstChild;if(firstChild&&isClobberedElement(node,firstChild))throw clobberedElementError(firstChild);return firstChild}function getNodeName(node){let nodeName=node.nodeName;return typeof nodeName=="string"?nodeName:"FORM"}function clobberedElementError(node){return new Error(`Failed to sanitize html because the element is clobbered: ${node.outerHTML}`)}var SURROGATE_PAIR_REGEXP=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,NON_ALPHANUMERIC_REGEXP=/([^\#-~ |!])/g;function encodeEntities(value){return value.replace(/&/g,"&").replace(SURROGATE_PAIR_REGEXP,function(match2){let hi=match2.charCodeAt(0),low=match2.charCodeAt(1);return"&#"+((hi-55296)*1024+(low-56320)+65536)+";"}).replace(NON_ALPHANUMERIC_REGEXP,function(match2){return"&#"+match2.charCodeAt(0)+";"}).replace(/</g,"<").replace(/>/g,">")}var inertBodyHelper;function _sanitizeHtml(defaultDoc,unsafeHtmlInput){let inertBodyElement=null;try{inertBodyHelper=inertBodyHelper||getInertBodyHelper(defaultDoc);let unsafeHtml=unsafeHtmlInput?String(unsafeHtmlInput):"";inertBodyElement=inertBodyHelper.getInertBodyElement(unsafeHtml);let mXSSAttempts=5,parsedHtml=unsafeHtml;do{if(mXSSAttempts===0)throw new Error("Failed to sanitize html because the input is unstable");mXSSAttempts--,unsafeHtml=parsedHtml,parsedHtml=inertBodyElement.innerHTML,inertBodyElement=inertBodyHelper.getInertBodyElement(unsafeHtml)}while(unsafeHtml!==parsedHtml);let safeHtml=new SanitizingHtmlSerializer().sanitizeChildren(getTemplateContent(inertBodyElement)||inertBodyElement);return trustedHTMLFromString(safeHtml)}finally{if(inertBodyElement){let parent=getTemplateContent(inertBodyElement)||inertBodyElement;for(;parent.firstChild;)parent.firstChild.remove()}}}function getTemplateContent(el){return"content"in el&&isTemplateElement(el)?el.content:null}function isTemplateElement(el){return el.nodeType===Node.ELEMENT_NODE&&el.nodeName==="TEMPLATE"}var SecurityContext=(function(SecurityContext2){return SecurityContext2[SecurityContext2.NONE=0]="NONE",SecurityContext2[SecurityContext2.HTML=1]="HTML",SecurityContext2[SecurityContext2.STYLE=2]="STYLE",SecurityContext2[SecurityContext2.SCRIPT=3]="SCRIPT",SecurityContext2[SecurityContext2.URL=4]="URL",SecurityContext2[SecurityContext2.RESOURCE_URL=5]="RESOURCE_URL",SecurityContext2})(SecurityContext||{});function \u0275\u0275sanitizeHtml(unsafeHtml){let sanitizer=getSanitizer();return sanitizer?trustedHTMLFromStringBypass(sanitizer.sanitize(SecurityContext.HTML,unsafeHtml)||""):allowSanitizationBypassAndThrow(unsafeHtml,"HTML")?trustedHTMLFromStringBypass(unwrapSafeValue(unsafeHtml)):_sanitizeHtml(getDocument(),renderStringify(unsafeHtml))}function \u0275\u0275sanitizeUrl(unsafeUrl){let sanitizer=getSanitizer();return sanitizer?sanitizer.sanitize(SecurityContext.URL,unsafeUrl)||"":allowSanitizationBypassAndThrow(unsafeUrl,"URL")?unwrapSafeValue(unsafeUrl):_sanitizeUrl(renderStringify(unsafeUrl))}function \u0275\u0275sanitizeResourceUrl(unsafeResourceUrl){let sanitizer=getSanitizer();if(sanitizer)return trustedScriptURLFromStringBypass(sanitizer.sanitize(SecurityContext.RESOURCE_URL,unsafeResourceUrl)||"");if(allowSanitizationBypassAndThrow(unsafeResourceUrl,"ResourceURL"))return trustedScriptURLFromStringBypass(unwrapSafeValue(unsafeResourceUrl));throw new RuntimeError(904,!1)}function getUrlSanitizer(tag,prop){return prop==="src"&&(tag==="embed"||tag==="frame"||tag==="iframe"||tag==="media"||tag==="script")||prop==="href"&&(tag==="base"||tag==="link")?\u0275\u0275sanitizeResourceUrl:\u0275\u0275sanitizeUrl}function \u0275\u0275sanitizeUrlOrResourceUrl(unsafeUrl,tag,prop){return getUrlSanitizer(tag,prop)(unsafeUrl)}function getSanitizer(){let lView=getLView();return lView&&lView[ENVIRONMENT].sanitizer}var COMMENT_DISALLOWED=/^>|^->|<!--|-->|--!>|<!-$/g,COMMENT_DELIMITER=/(<|>)/g,COMMENT_DELIMITER_ESCAPED="\u200B$1\u200B";function escapeCommentText(value){return value.replace(COMMENT_DISALLOWED,text=>text.replace(COMMENT_DELIMITER,COMMENT_DELIMITER_ESCAPED))}function \u0275\u0275resolveDocument(element){return element.ownerDocument}function maybeUnwrapFn(value){return value instanceof Function?value():value}function classIndexOf(className,classToSearch,startingIndex){let end=className.length;for(;;){let foundIndex=className.indexOf(classToSearch,startingIndex);if(foundIndex===-1)return foundIndex;if(foundIndex===0||className.charCodeAt(foundIndex-1)<=32){let length=classToSearch.length;if(foundIndex+length===end||className.charCodeAt(foundIndex+length)<=32)return foundIndex}startingIndex=foundIndex+1}}var NG_TEMPLATE_SELECTOR="ng-template";function isCssClassMatching(tNode,attrs,cssClassToMatch,isProjectionMode){let i=0;if(isProjectionMode){for(;i<attrs.length&&typeof attrs[i]=="string";i+=2)if(attrs[i]==="class"&&classIndexOf(attrs[i+1].toLowerCase(),cssClassToMatch,0)!==-1)return!0}else if(isInlineTemplate(tNode))return!1;if(i=attrs.indexOf(1,i),i>-1){let item;for(;++i<attrs.length&&typeof(item=attrs[i])=="string";)if(item.toLowerCase()===cssClassToMatch)return!0}return!1}function isInlineTemplate(tNode){return tNode.type===4&&tNode.value!==NG_TEMPLATE_SELECTOR}function hasTagAndTypeMatch(tNode,currentSelector,isProjectionMode){let tagNameToCompare=tNode.type===4&&!isProjectionMode?NG_TEMPLATE_SELECTOR:tNode.value;return currentSelector===tagNameToCompare}function isNodeMatchingSelector(tNode,selector,isProjectionMode){let mode=4,nodeAttrs=tNode.attrs,nameOnlyMarkerIdx=nodeAttrs!==null?getNameOnlyMarkerIndex(nodeAttrs):0,skipToNextSelector=!1;for(let i=0;i<selector.length;i++){let current=selector[i];if(typeof current=="number"){if(!skipToNextSelector&&!isPositive(mode)&&!isPositive(current))return!1;if(skipToNextSelector&&isPositive(current))continue;skipToNextSelector=!1,mode=current|mode&1;continue}if(!skipToNextSelector)if(mode&4){if(mode=2|mode&1,current!==""&&!hasTagAndTypeMatch(tNode,current,isProjectionMode)||current===""&&selector.length===1){if(isPositive(mode))return!1;skipToNextSelector=!0}}else if(mode&8){if(nodeAttrs===null||!isCssClassMatching(tNode,nodeAttrs,current,isProjectionMode)){if(isPositive(mode))return!1;skipToNextSelector=!0}}else{let selectorAttrValue=selector[++i],attrIndexInNode=findAttrIndexInNode(current,nodeAttrs,isInlineTemplate(tNode),isProjectionMode);if(attrIndexInNode===-1){if(isPositive(mode))return!1;skipToNextSelector=!0;continue}if(selectorAttrValue!==""){let nodeAttrValue;if(attrIndexInNode>nameOnlyMarkerIdx?nodeAttrValue="":nodeAttrValue=nodeAttrs[attrIndexInNode+1].toLowerCase(),mode&2&&selectorAttrValue!==nodeAttrValue){if(isPositive(mode))return!1;skipToNextSelector=!0}}}}return isPositive(mode)||skipToNextSelector}function isPositive(mode){return(mode&1)===0}function findAttrIndexInNode(name,attrs,isInlineTemplate2,isProjectionMode){if(attrs===null)return-1;let i=0;if(isProjectionMode||!isInlineTemplate2){let bindingsMode=!1;for(;i<attrs.length;){let maybeAttrName=attrs[i];if(maybeAttrName===name)return i;if(maybeAttrName===3||maybeAttrName===6)bindingsMode=!0;else if(maybeAttrName===1||maybeAttrName===2){let value=attrs[++i];for(;typeof value=="string";)value=attrs[++i];continue}else{if(maybeAttrName===4)break;if(maybeAttrName===0){i+=4;continue}}i+=bindingsMode?1:2}return-1}else return matchTemplateAttribute(attrs,name)}function isNodeMatchingSelectorList(tNode,selector,isProjectionMode=!1){for(let i=0;i<selector.length;i++)if(isNodeMatchingSelector(tNode,selector[i],isProjectionMode))return!0;return!1}function getProjectAsAttrValue(tNode){let nodeAttrs=tNode.attrs;if(nodeAttrs!=null){let ngProjectAsAttrIdx=nodeAttrs.indexOf(5);if((ngProjectAsAttrIdx&1)===0)return nodeAttrs[ngProjectAsAttrIdx+1]}return null}function getNameOnlyMarkerIndex(nodeAttrs){for(let i=0;i<nodeAttrs.length;i++){let nodeAttr=nodeAttrs[i];if(isNameOnlyAttributeMarker(nodeAttr))return i}return nodeAttrs.length}function matchTemplateAttribute(attrs,name){let i=attrs.indexOf(4);if(i>-1)for(i++;i<attrs.length;){let attr=attrs[i];if(typeof attr=="number")return-1;if(attr===name)return i;i++}return-1}function isSelectorInSelectorList(selector,list){selectorListLoop:for(let i=0;i<list.length;i++){let currentSelectorInList=list[i];if(selector.length===currentSelectorInList.length){for(let j=0;j<selector.length;j++)if(selector[j]!==currentSelectorInList[j])continue selectorListLoop;return!0}}return!1}function maybeWrapInNotSelector(isNegativeMode,chunk){return isNegativeMode?":not("+chunk.trim()+")":chunk}function stringifyCSSSelector(selector){let result=selector[0],i=1,mode=2,currentChunk="",isNegativeMode=!1;for(;i<selector.length;){let valueOrMarker=selector[i];if(typeof valueOrMarker=="string")if(mode&2){let attrValue=selector[++i];currentChunk+="["+valueOrMarker+(attrValue.length>0?'="'+attrValue+'"':"")+"]"}else mode&8?currentChunk+="."+valueOrMarker:mode&4&&(currentChunk+=" "+valueOrMarker);else currentChunk!==""&&!isPositive(valueOrMarker)&&(result+=maybeWrapInNotSelector(isNegativeMode,currentChunk),currentChunk=""),mode=valueOrMarker,isNegativeMode=isNegativeMode||!isPositive(mode);i++}return currentChunk!==""&&(result+=maybeWrapInNotSelector(isNegativeMode,currentChunk)),result}function stringifyCSSSelectorList(selectorList){return selectorList.map(stringifyCSSSelector).join(",")}function extractAttrsAndClassesFromSelector(selector){let attrs=[],classes=[],i=1,mode=2;for(;i<selector.length;){let valueOrMarker=selector[i];if(typeof valueOrMarker=="string")mode===2?valueOrMarker!==""&&attrs.push(valueOrMarker,selector[++i]):mode===8&&classes.push(valueOrMarker);else{if(!isPositive(mode))break;mode=valueOrMarker}i++}return classes.length&&attrs.push(1,...classes),attrs}var NO_CHANGE={};function createTextNode(renderer,value){return renderer.createText(value)}function updateTextNode(renderer,rNode,value){renderer.setValue(rNode,value)}function createCommentNode(renderer,value){return renderer.createComment(escapeCommentText(value))}function createElementNode(renderer,name,namespace){return renderer.createElement(name,namespace)}function nativeInsertBefore(renderer,parent,child,beforeNode,isMove){renderer.insertBefore(parent,child,beforeNode,isMove)}function nativeAppendChild(renderer,parent,child){renderer.appendChild(parent,child)}function nativeAppendOrInsertBefore(renderer,parent,child,beforeNode,isMove){beforeNode!==null?nativeInsertBefore(renderer,parent,child,beforeNode,isMove):nativeAppendChild(renderer,parent,child)}function nativeRemoveNode(renderer,rNode,isHostElement){renderer.removeChild(null,rNode,isHostElement)}function writeDirectStyle(renderer,element,newValue){renderer.setAttribute(element,"style",newValue)}function writeDirectClass(renderer,element,newValue){newValue===""?renderer.removeAttribute(element,"class"):renderer.setAttribute(element,"class",newValue)}function setupStaticAttributes(renderer,element,tNode){let{mergedAttrs,classes,styles}=tNode;mergedAttrs!==null&&setUpAttributes(renderer,element,mergedAttrs),classes!==null&&writeDirectClass(renderer,element,classes),styles!==null&&writeDirectStyle(renderer,element,styles)}function createTView(type2,declTNode,templateFn,decls,vars,directives,pipes,viewQuery,schemas,constsOrFactory,ssrId){let bindingStartIndex=HEADER_OFFSET+decls,initialViewLength=bindingStartIndex+vars,blueprint=createViewBlueprint(bindingStartIndex,initialViewLength),consts=typeof constsOrFactory=="function"?constsOrFactory():constsOrFactory;return blueprint[TVIEW]={type:type2,blueprint,template:templateFn,queries:null,viewQuery,declTNode,data:blueprint.slice().fill(null,bindingStartIndex),bindingStartIndex,expandoStartIndex:initialViewLength,hostBindingOpCodes:null,firstCreatePass:!0,firstUpdatePass:!0,staticViewQueries:!1,staticContentQueries:!1,preOrderHooks:null,preOrderCheckHooks:null,contentHooks:null,contentCheckHooks:null,viewHooks:null,viewCheckHooks:null,destroyHooks:null,cleanup:null,contentQueries:null,components:null,directiveRegistry:typeof directives=="function"?directives():directives,pipeRegistry:typeof pipes=="function"?pipes():pipes,firstChild:null,schemas,consts,incompleteFirstPass:!1,ssrId}}function createViewBlueprint(bindingStartIndex,initialViewLength){let blueprint=[];for(let i=0;i<initialViewLength;i++)blueprint.push(i<bindingStartIndex?null:NO_CHANGE);return blueprint}function getOrCreateComponentTView(def){let tView=def.tView;return tView===null||tView.incompleteFirstPass?def.tView=createTView(1,null,def.template,def.decls,def.vars,def.directiveDefs,def.pipeDefs,def.viewQuery,def.schemas,def.consts,def.id):tView}function createLView(parentLView,tView,context2,flags,host,tHostNode,environment2,renderer,injector,embeddedViewInjector,hydrationInfo){let lView=tView.blueprint.slice();return lView[HOST]=host,lView[FLAGS]=flags|4|128|8|64|1024,(embeddedViewInjector!==null||parentLView&&parentLView[FLAGS]&2048)&&(lView[FLAGS]|=2048),resetPreOrderHookFlags(lView),lView[PARENT]=lView[DECLARATION_VIEW]=parentLView,lView[CONTEXT]=context2,lView[ENVIRONMENT]=environment2||parentLView&&parentLView[ENVIRONMENT],lView[RENDERER]=renderer||parentLView&&parentLView[RENDERER],lView[INJECTOR]=injector||parentLView&&parentLView[INJECTOR]||null,lView[T_HOST]=tHostNode,lView[ID]=getUniqueLViewId(),lView[HYDRATION]=hydrationInfo,lView[EMBEDDED_VIEW_INJECTOR]=embeddedViewInjector,lView[DECLARATION_COMPONENT_VIEW]=tView.type==2?parentLView[DECLARATION_COMPONENT_VIEW]:lView,lView}function createComponentLView(lView,hostTNode,def){let native=getNativeByTNode(hostTNode,lView),tView=getOrCreateComponentTView(def),rendererFactory=lView[ENVIRONMENT].rendererFactory,componentView=addToEndOfViewTree(lView,createLView(lView,tView,null,getInitialLViewFlagsFromDef(def),native,hostTNode,null,rendererFactory.createRenderer(native,def),null,null,null));return lView[hostTNode.index]=componentView}function getInitialLViewFlagsFromDef(def){let flags=16;return def.signals?flags=4096:def.onPush&&(flags=64),flags}function allocExpando(tView,lView,numSlotsToAlloc,initialValue){if(numSlotsToAlloc===0)return-1;let allocIdx=lView.length;for(let i=0;i<numSlotsToAlloc;i++)lView.push(initialValue),tView.blueprint.push(initialValue),tView.data.push(null);return allocIdx}function addToEndOfViewTree(lView,lViewOrLContainer){return lView[CHILD_HEAD]?lView[CHILD_TAIL][NEXT]=lViewOrLContainer:lView[CHILD_HEAD]=lViewOrLContainer,lView[CHILD_TAIL]=lViewOrLContainer,lViewOrLContainer}function \u0275\u0275advance(delta=1){selectIndexInternal(getTView(),getLView(),getSelectedIndex()+delta,!1)}function selectIndexInternal(tView,lView,index,checkNoChangesMode){if(!checkNoChangesMode)if((lView[FLAGS]&3)===3){let preOrderCheckHooks=tView.preOrderCheckHooks;preOrderCheckHooks!==null&&executeCheckHooks(lView,preOrderCheckHooks,index)}else{let preOrderHooks=tView.preOrderHooks;preOrderHooks!==null&&executeInitAndCheckHooks(lView,preOrderHooks,0,index)}setSelectedIndex(index)}var InputFlags=(function(InputFlags2){return InputFlags2[InputFlags2.None=0]="None",InputFlags2[InputFlags2.SignalBased=1]="SignalBased",InputFlags2[InputFlags2.HasDecoratorInputTransform=2]="HasDecoratorInputTransform",InputFlags2})(InputFlags||{});function writeToDirectiveInput(def,instance,publicName,value){let prevConsumer=setActiveConsumer(null);try{let[privateName,flags,transform]=def.inputs[publicName],inputSignalNode=null;(flags&InputFlags.SignalBased)!==0&&(inputSignalNode=instance[privateName][SIGNAL]),inputSignalNode!==null&&inputSignalNode.transformFn!==void 0?value=inputSignalNode.transformFn(value):transform!==null&&(value=transform.call(instance,value)),def.setInput!==null?def.setInput(instance,inputSignalNode,value,publicName,privateName):applyValueToInputField(instance,inputSignalNode,privateName,value)}finally{setActiveConsumer(prevConsumer)}}var RendererStyleFlags2=(function(RendererStyleFlags22){return RendererStyleFlags22[RendererStyleFlags22.Important=1]="Important",RendererStyleFlags22[RendererStyleFlags22.DashCase=2]="DashCase",RendererStyleFlags22})(RendererStyleFlags2||{}),_icuContainerIterate;function icuContainerIterate(tIcuContainerNode,lView){return _icuContainerIterate(tIcuContainerNode,lView)}function applyToElementOrContainer(action,renderer,parent,lNodeToHandle,beforeNode){if(lNodeToHandle!=null){let lContainer,isComponent2=!1;isLContainer(lNodeToHandle)?lContainer=lNodeToHandle:isLView(lNodeToHandle)&&(isComponent2=!0,lNodeToHandle=lNodeToHandle[HOST]);let rNode=unwrapRNode(lNodeToHandle);action===0&&parent!==null?beforeNode==null?nativeAppendChild(renderer,parent,rNode):nativeInsertBefore(renderer,parent,rNode,beforeNode||null,!0):action===1&&parent!==null?nativeInsertBefore(renderer,parent,rNode,beforeNode||null,!0):action===2?nativeRemoveNode(renderer,rNode,isComponent2):action===3&&renderer.destroyNode(rNode),lContainer!=null&&applyContainer(renderer,action,lContainer,parent,beforeNode)}}function removeViewFromDOM(tView,lView){detachViewFromDOM(tView,lView),lView[HOST]=null,lView[T_HOST]=null}function addViewToDOM(tView,parentTNode,renderer,lView,parentNativeNode,beforeNode){lView[HOST]=parentNativeNode,lView[T_HOST]=parentTNode,applyView(tView,lView,renderer,1,parentNativeNode,beforeNode)}function detachViewFromDOM(tView,lView){lView[ENVIRONMENT].changeDetectionScheduler?.notify(9),applyView(tView,lView,lView[RENDERER],2,null,null)}function destroyViewTree(rootView){let lViewOrLContainer=rootView[CHILD_HEAD];if(!lViewOrLContainer)return cleanUpView(rootView[TVIEW],rootView);for(;lViewOrLContainer;){let next=null;if(isLView(lViewOrLContainer))next=lViewOrLContainer[CHILD_HEAD];else{let firstView=lViewOrLContainer[CONTAINER_HEADER_OFFSET];firstView&&(next=firstView)}if(!next){for(;lViewOrLContainer&&!lViewOrLContainer[NEXT]&&lViewOrLContainer!==rootView;)isLView(lViewOrLContainer)&&cleanUpView(lViewOrLContainer[TVIEW],lViewOrLContainer),lViewOrLContainer=lViewOrLContainer[PARENT];lViewOrLContainer===null&&(lViewOrLContainer=rootView),isLView(lViewOrLContainer)&&cleanUpView(lViewOrLContainer[TVIEW],lViewOrLContainer),next=lViewOrLContainer&&lViewOrLContainer[NEXT]}lViewOrLContainer=next}}function detachMovedView(declarationContainer,lView){let movedViews=declarationContainer[MOVED_VIEWS],declarationViewIndex=movedViews.indexOf(lView);movedViews.splice(declarationViewIndex,1)}function destroyLView(tView,lView){if(isDestroyed(lView))return;let renderer=lView[RENDERER];renderer.destroyNode&&applyView(tView,lView,renderer,3,null,null),destroyViewTree(lView)}function cleanUpView(tView,lView){if(isDestroyed(lView))return;let prevConsumer=setActiveConsumer(null);try{lView[FLAGS]&=-129,lView[FLAGS]|=256,lView[REACTIVE_TEMPLATE_CONSUMER]&&consumerDestroy(lView[REACTIVE_TEMPLATE_CONSUMER]),executeOnDestroys(tView,lView),processCleanups(tView,lView),lView[TVIEW].type===1&&lView[RENDERER].destroy();let declarationContainer=lView[DECLARATION_LCONTAINER];if(declarationContainer!==null&&isLContainer(lView[PARENT])){declarationContainer!==lView[PARENT]&&detachMovedView(declarationContainer,lView);let lQueries=lView[QUERIES];lQueries!==null&&lQueries.detachView(tView)}unregisterLView(lView)}finally{setActiveConsumer(prevConsumer)}}function processCleanups(tView,lView){let tCleanup=tView.cleanup,lCleanup=lView[CLEANUP];if(tCleanup!==null)for(let i=0;i<tCleanup.length-1;i+=2)if(typeof tCleanup[i]=="string"){let targetIdx=tCleanup[i+3];targetIdx>=0?lCleanup[targetIdx]():lCleanup[-targetIdx].unsubscribe(),i+=2}else{let context2=lCleanup[tCleanup[i+1]];tCleanup[i].call(context2)}lCleanup!==null&&(lView[CLEANUP]=null);let destroyHooks=lView[ON_DESTROY_HOOKS];if(destroyHooks!==null){lView[ON_DESTROY_HOOKS]=null;for(let i=0;i<destroyHooks.length;i++){let destroyHooksFn=destroyHooks[i];destroyHooksFn()}}let effects=lView[EFFECTS];if(effects!==null){lView[EFFECTS]=null;for(let effect2 of effects)effect2.destroy()}}function executeOnDestroys(tView,lView){let destroyHooks;if(tView!=null&&(destroyHooks=tView.destroyHooks)!=null)for(let i=0;i<destroyHooks.length;i+=2){let context2=lView[destroyHooks[i]];if(!(context2 instanceof NodeInjectorFactory)){let toCall=destroyHooks[i+1];if(Array.isArray(toCall))for(let j=0;j<toCall.length;j+=2){let callContext=context2[toCall[j]],hook=toCall[j+1];profiler(4,callContext,hook);try{hook.call(callContext)}finally{profiler(5,callContext,hook)}}else{profiler(4,context2,toCall);try{toCall.call(context2)}finally{profiler(5,context2,toCall)}}}}}function getParentRElement(tView,tNode,lView){return getClosestRElement(tView,tNode.parent,lView)}function getClosestRElement(tView,tNode,lView){let parentTNode=tNode;for(;parentTNode!==null&&parentTNode.type&168;)tNode=parentTNode,parentTNode=tNode.parent;if(parentTNode===null)return lView[HOST];if(isComponentHost(parentTNode)){let{encapsulation}=tView.data[parentTNode.directiveStart+parentTNode.componentOffset];if(encapsulation===ViewEncapsulation.None||encapsulation===ViewEncapsulation.Emulated)return null}return getNativeByTNode(parentTNode,lView)}function getInsertInFrontOfRNode(parentTNode,currentTNode,lView){return _getInsertInFrontOfRNodeWithI18n(parentTNode,currentTNode,lView)}function getInsertInFrontOfRNodeWithNoI18n(parentTNode,currentTNode,lView){return parentTNode.type&40?getNativeByTNode(parentTNode,lView):null}var _getInsertInFrontOfRNodeWithI18n=getInsertInFrontOfRNodeWithNoI18n,_processI18nInsertBefore;function appendChild(tView,lView,childRNode,childTNode){let parentRNode=getParentRElement(tView,childTNode,lView),renderer=lView[RENDERER],parentTNode=childTNode.parent||lView[T_HOST],anchorNode=getInsertInFrontOfRNode(parentTNode,childTNode,lView);if(parentRNode!=null)if(Array.isArray(childRNode))for(let i=0;i<childRNode.length;i++)nativeAppendOrInsertBefore(renderer,parentRNode,childRNode[i],anchorNode,!1);else nativeAppendOrInsertBefore(renderer,parentRNode,childRNode,anchorNode,!1);_processI18nInsertBefore!==void 0&&_processI18nInsertBefore(renderer,childTNode,lView,childRNode,parentRNode)}function getFirstNativeNode(lView,tNode){if(tNode!==null){let tNodeType=tNode.type;if(tNodeType&3)return getNativeByTNode(tNode,lView);if(tNodeType&4)return getBeforeNodeForView(-1,lView[tNode.index]);if(tNodeType&8){let elIcuContainerChild=tNode.child;if(elIcuContainerChild!==null)return getFirstNativeNode(lView,elIcuContainerChild);{let rNodeOrLContainer=lView[tNode.index];return isLContainer(rNodeOrLContainer)?getBeforeNodeForView(-1,rNodeOrLContainer):unwrapRNode(rNodeOrLContainer)}}else{if(tNodeType&128)return getFirstNativeNode(lView,tNode.next);if(tNodeType&32)return icuContainerIterate(tNode,lView)()||unwrapRNode(lView[tNode.index]);{let projectionNodes=getProjectionNodes(lView,tNode);if(projectionNodes!==null){if(Array.isArray(projectionNodes))return projectionNodes[0];let parentView=getLViewParent(lView[DECLARATION_COMPONENT_VIEW]);return getFirstNativeNode(parentView,projectionNodes)}else return getFirstNativeNode(lView,tNode.next)}}}return null}function getProjectionNodes(lView,tNode){if(tNode!==null){let componentHost=lView[DECLARATION_COMPONENT_VIEW][T_HOST],slotIdx=tNode.projection;return componentHost.projection[slotIdx]}return null}function getBeforeNodeForView(viewIndexInContainer,lContainer){let nextViewIndex=CONTAINER_HEADER_OFFSET+viewIndexInContainer+1;if(nextViewIndex<lContainer.length){let lView=lContainer[nextViewIndex],firstTNodeOfView=lView[TVIEW].firstChild;if(firstTNodeOfView!==null)return getFirstNativeNode(lView,firstTNodeOfView)}return lContainer[NATIVE]}function applyNodes(renderer,action,tNode,lView,parentRElement,beforeNode,isProjection){for(;tNode!=null;){if(tNode.type===128){tNode=tNode.next;continue}let rawSlotValue=lView[tNode.index],tNodeType=tNode.type;if(isProjection&&action===0&&(rawSlotValue&&attachPatchData(unwrapRNode(rawSlotValue),lView),tNode.flags|=2),!isDetachedByI18n(tNode))if(tNodeType&8)applyNodes(renderer,action,tNode.child,lView,parentRElement,beforeNode,!1),applyToElementOrContainer(action,renderer,parentRElement,rawSlotValue,beforeNode);else if(tNodeType&32){let nextRNode=icuContainerIterate(tNode,lView),rNode;for(;rNode=nextRNode();)applyToElementOrContainer(action,renderer,parentRElement,rNode,beforeNode);applyToElementOrContainer(action,renderer,parentRElement,rawSlotValue,beforeNode)}else tNodeType&16?applyProjectionRecursive(renderer,action,lView,tNode,parentRElement,beforeNode):applyToElementOrContainer(action,renderer,parentRElement,rawSlotValue,beforeNode);tNode=isProjection?tNode.projectionNext:tNode.next}}function applyView(tView,lView,renderer,action,parentRElement,beforeNode){applyNodes(renderer,action,tView.firstChild,lView,parentRElement,beforeNode,!1)}function applyProjection(tView,lView,tProjectionNode){let renderer=lView[RENDERER],parentRNode=getParentRElement(tView,tProjectionNode,lView),parentTNode=tProjectionNode.parent||lView[T_HOST],beforeNode=getInsertInFrontOfRNode(parentTNode,tProjectionNode,lView);applyProjectionRecursive(renderer,0,lView,tProjectionNode,parentRNode,beforeNode)}function applyProjectionRecursive(renderer,action,lView,tProjectionNode,parentRElement,beforeNode){let componentLView=lView[DECLARATION_COMPONENT_VIEW],nodeToProjectOrRNodes=componentLView[T_HOST].projection[tProjectionNode.projection];if(Array.isArray(nodeToProjectOrRNodes))for(let i=0;i<nodeToProjectOrRNodes.length;i++){let rNode=nodeToProjectOrRNodes[i];applyToElementOrContainer(action,renderer,parentRElement,rNode,beforeNode)}else{let nodeToProject=nodeToProjectOrRNodes,projectedComponentLView=componentLView[PARENT];hasInSkipHydrationBlockFlag(tProjectionNode)&&(nodeToProject.flags|=128),applyNodes(renderer,action,nodeToProject,projectedComponentLView,parentRElement,beforeNode,!0)}}function applyContainer(renderer,action,lContainer,parentRElement,beforeNode){let anchor=lContainer[NATIVE],native=unwrapRNode(lContainer);anchor!==native&&applyToElementOrContainer(action,renderer,parentRElement,anchor,beforeNode);for(let i=CONTAINER_HEADER_OFFSET;i<lContainer.length;i++){let lView=lContainer[i];applyView(lView[TVIEW],lView,renderer,action,parentRElement,anchor)}}function applyStyling(renderer,isClassBased,rNode,prop,value){if(isClassBased)value?renderer.addClass(rNode,prop):renderer.removeClass(rNode,prop);else{let flags=prop.indexOf("-")===-1?void 0:RendererStyleFlags2.DashCase;value==null?renderer.removeStyle(rNode,prop,flags):(typeof value=="string"&&value.endsWith("!important")&&(value=value.slice(0,-10),flags|=RendererStyleFlags2.Important),renderer.setStyle(rNode,prop,value,flags))}}function executeTemplate(tView,lView,templateFn,rf,context2){let prevSelectedIndex=getSelectedIndex(),isUpdatePhase=rf&2;try{setSelectedIndex(-1),isUpdatePhase&&lView.length>HEADER_OFFSET&&selectIndexInternal(tView,lView,HEADER_OFFSET,!1),profiler(isUpdatePhase?2:0,context2,templateFn),templateFn(rf,context2)}finally{setSelectedIndex(prevSelectedIndex),profiler(isUpdatePhase?3:1,context2,templateFn)}}function createDirectivesInstances(tView,lView,tNode){instantiateAllDirectives(tView,lView,tNode),(tNode.flags&64)===64&&invokeDirectivesHostBindings(tView,lView,tNode)}function saveResolvedLocalsInData(viewData,tNode,localRefExtractor=getNativeByTNode){let localNames=tNode.localNames;if(localNames!==null){let localIndex=tNode.index+1;for(let i=0;i<localNames.length;i+=2){let index=localNames[i+1],value=index===-1?localRefExtractor(tNode,viewData):viewData[index];viewData[localIndex++]=value}}}function locateHostElement(renderer,elementOrSelector,encapsulation,injector){let preserveContent=injector.get(PRESERVE_HOST_CONTENT,PRESERVE_HOST_CONTENT_DEFAULT)||encapsulation===ViewEncapsulation.ShadowDom,rootElement=renderer.selectRootElement(elementOrSelector,preserveContent);return applyRootElementTransform(rootElement),rootElement}function applyRootElementTransform(rootElement){_applyRootElementTransformImpl(rootElement)}var _applyRootElementTransformImpl=()=>null;function mapPropName(name){return name==="class"?"className":name==="for"?"htmlFor":name==="formaction"?"formAction":name==="innerHtml"?"innerHTML":name==="readonly"?"readOnly":name==="tabindex"?"tabIndex":name}function setPropertyAndInputs(tNode,lView,propName,value,renderer,sanitizer){let tView=lView[TVIEW];if(setAllInputsForProperty(tNode,tView,lView,propName,value)){isComponentHost(tNode)&&markDirtyIfOnPush(lView,tNode.index);return}tNode.type&3&&(propName=mapPropName(propName)),setDomProperty(tNode,lView,propName,value,renderer,sanitizer)}function setDomProperty(tNode,lView,propName,value,renderer,sanitizer){if(tNode.type&3){let element=getNativeByTNode(tNode,lView);value=sanitizer!=null?sanitizer(value,tNode.value||"",propName):value,renderer.setProperty(element,propName,value)}else tNode.type&12}function markDirtyIfOnPush(lView,viewIndex){let childComponentLView=getComponentLViewByIndex(viewIndex,lView);childComponentLView[FLAGS]&16||(childComponentLView[FLAGS]|=64)}function instantiateAllDirectives(tView,lView,tNode){let start=tNode.directiveStart,end=tNode.directiveEnd;isComponentHost(tNode)&&createComponentLView(lView,tNode,tView.data[start+tNode.componentOffset]),tView.firstCreatePass||getOrCreateNodeInjectorForNode(tNode,lView);let initialInputs=tNode.initialInputs;for(let i=start;i<end;i++){let def=tView.data[i],directive=getNodeInjectable(lView,tView,i,tNode);if(attachPatchData(directive,lView),initialInputs!==null&&setInputsFromAttrs(lView,i-start,directive,def,tNode,initialInputs),isComponentDef(def)){let componentView=getComponentLViewByIndex(tNode.index,lView);componentView[CONTEXT]=getNodeInjectable(lView,tView,i,tNode)}}}function invokeDirectivesHostBindings(tView,lView,tNode){let start=tNode.directiveStart,end=tNode.directiveEnd,elementIndex=tNode.index,currentDirectiveIndex=getCurrentDirectiveIndex();try{setSelectedIndex(elementIndex);for(let dirIndex=start;dirIndex<end;dirIndex++){let def=tView.data[dirIndex],directive=lView[dirIndex];setCurrentDirectiveIndex(dirIndex),(def.hostBindings!==null||def.hostVars!==0||def.hostAttrs!==null)&&invokeHostBindingsInCreationMode(def,directive)}}finally{setSelectedIndex(-1),setCurrentDirectiveIndex(currentDirectiveIndex)}}function invokeHostBindingsInCreationMode(def,directive){def.hostBindings!==null&&def.hostBindings(1,directive)}function findDirectiveDefMatches(tView,tNode){let registry2=tView.directiveRegistry,matches=null;if(registry2)for(let i=0;i<registry2.length;i++){let def=registry2[i];isNodeMatchingSelectorList(tNode,def.selectors,!1)&&(matches??=[],isComponentDef(def)?matches.unshift(def):matches.push(def))}return matches}function elementAttributeInternal(tNode,lView,name,value,sanitizer,namespace){let element=getNativeByTNode(tNode,lView);setElementAttribute(lView[RENDERER],element,namespace,tNode.value,name,value,sanitizer)}function setElementAttribute(renderer,element,namespace,tagName,name,value,sanitizer){if(value==null)renderer.removeAttribute(element,name,namespace);else{let strValue=sanitizer==null?renderStringify(value):sanitizer(value,tagName||"",name);renderer.setAttribute(element,name,strValue,namespace)}}function setInputsFromAttrs(lView,directiveIndex,instance,def,tNode,initialInputData){let initialInputs=initialInputData[directiveIndex];if(initialInputs!==null)for(let i=0;i<initialInputs.length;i+=2){let lookupName=initialInputs[i],value=initialInputs[i+1];writeToDirectiveInput(def,instance,lookupName,value)}}function elementLikeStartShared(tNode,lView,index,name,locateOrCreateNativeNode){let adjustedIndex=HEADER_OFFSET+index,tView=lView[TVIEW],native=locateOrCreateNativeNode(tView,lView,tNode,name,index);lView[adjustedIndex]=native,setCurrentTNode(tNode,!0);let isElement=tNode.type===2;return isElement?(setupStaticAttributes(lView[RENDERER],native,tNode),(getElementDepthCount()===0||isDirectiveHost(tNode))&&attachPatchData(native,lView),increaseElementDepthCount()):attachPatchData(native,lView),wasLastNodeCreated()&&(!isElement||!isDetachedByI18n(tNode))&&appendChild(tView,lView,native,tNode),tNode}function elementLikeEndShared(tNode){let currentTNode=tNode;return isCurrentTNodeParent()?setCurrentTNodeAsNotParent():(currentTNode=currentTNode.parent,setCurrentTNode(currentTNode,!1)),currentTNode}function handleUncaughtError(lView,error){let injector=lView[INJECTOR];if(!injector)return;injector.get(INTERNAL_APPLICATION_ERROR_HANDLER,null)?.(error)}function setAllInputsForProperty(tNode,tView,lView,publicName,value){let inputs2=tNode.inputs?.[publicName],hostDirectiveInputs=tNode.hostDirectiveInputs?.[publicName],hasMatch=!1;if(hostDirectiveInputs)for(let i=0;i<hostDirectiveInputs.length;i+=2){let index=hostDirectiveInputs[i],publicName2=hostDirectiveInputs[i+1],def=tView.data[index];writeToDirectiveInput(def,lView[index],publicName2,value),hasMatch=!0}if(inputs2)for(let index of inputs2){let instance=lView[index],def=tView.data[index];writeToDirectiveInput(def,instance,publicName,value),hasMatch=!0}return hasMatch}function renderComponent(hostLView,componentHostIdx){let componentView=getComponentLViewByIndex(componentHostIdx,hostLView),componentTView=componentView[TVIEW];syncViewWithBlueprint(componentTView,componentView);let hostRNode=componentView[HOST];hostRNode!==null&&componentView[HYDRATION]===null&&(componentView[HYDRATION]=retrieveHydrationInfo(hostRNode,componentView[INJECTOR])),profiler(18),renderView(componentTView,componentView,componentView[CONTEXT]),profiler(19,componentView[CONTEXT])}function syncViewWithBlueprint(tView,lView){for(let i=lView.length;i<tView.blueprint.length;i++)lView.push(tView.blueprint[i])}function renderView(tView,lView,context2){enterView(lView);try{let viewQuery=tView.viewQuery;viewQuery!==null&&executeViewQueryFn(1,viewQuery,context2);let templateFn=tView.template;templateFn!==null&&executeTemplate(tView,lView,templateFn,1,context2),tView.firstCreatePass&&(tView.firstCreatePass=!1),lView[QUERIES]?.finishViewCreation(tView),tView.staticContentQueries&&refreshContentQueries(tView,lView),tView.staticViewQueries&&executeViewQueryFn(2,tView.viewQuery,context2);let components=tView.components;components!==null&&renderChildComponents(lView,components)}catch(error){throw tView.firstCreatePass&&(tView.incompleteFirstPass=!0,tView.firstCreatePass=!1),error}finally{lView[FLAGS]&=-5,leaveView()}}function renderChildComponents(hostLView,components){for(let i=0;i<components.length;i++)renderComponent(hostLView,components[i])}function createAndRenderEmbeddedLView(declarationLView,templateTNode,context2,options){let prevConsumer=setActiveConsumer(null);try{let embeddedTView=templateTNode.tView,viewFlags=declarationLView[FLAGS]&4096?4096:16,embeddedLView=createLView(declarationLView,embeddedTView,context2,viewFlags,null,templateTNode,null,null,options?.injector??null,options?.embeddedViewInjector??null,options?.dehydratedView??null),declarationLContainer=declarationLView[templateTNode.index];embeddedLView[DECLARATION_LCONTAINER]=declarationLContainer;let declarationViewLQueries=declarationLView[QUERIES];return declarationViewLQueries!==null&&(embeddedLView[QUERIES]=declarationViewLQueries.createEmbeddedView(embeddedTView)),renderView(embeddedTView,embeddedLView,context2),embeddedLView}finally{setActiveConsumer(prevConsumer)}}function shouldAddViewToDom(tNode,dehydratedView){return!dehydratedView||dehydratedView.firstChild===null||hasInSkipHydrationBlockFlag(tNode)}var USE_EXHAUSTIVE_CHECK_NO_CHANGES_DEFAULT=!1,UseExhaustiveCheckNoChanges=new InjectionToken("");function collectNativeNodes(tView,lView,tNode,result,isProjection=!1){for(;tNode!==null;){if(tNode.type===128){tNode=isProjection?tNode.projectionNext:tNode.next;continue}let lNode=lView[tNode.index];lNode!==null&&result.push(unwrapRNode(lNode)),isLContainer(lNode)&&collectNativeNodesInLContainer(lNode,result);let tNodeType=tNode.type;if(tNodeType&8)collectNativeNodes(tView,lView,tNode.child,result);else if(tNodeType&32){let nextRNode=icuContainerIterate(tNode,lView),rNode;for(;rNode=nextRNode();)result.push(rNode)}else if(tNodeType&16){let nodesInSlot=getProjectionNodes(lView,tNode);if(Array.isArray(nodesInSlot))result.push(...nodesInSlot);else{let parentView=getLViewParent(lView[DECLARATION_COMPONENT_VIEW]);collectNativeNodes(parentView[TVIEW],parentView,nodesInSlot,result,!0)}}tNode=isProjection?tNode.projectionNext:tNode.next}return result}function collectNativeNodesInLContainer(lContainer,result){for(let i=CONTAINER_HEADER_OFFSET;i<lContainer.length;i++){let lViewInAContainer=lContainer[i],lViewFirstChildTNode=lViewInAContainer[TVIEW].firstChild;lViewFirstChildTNode!==null&&collectNativeNodes(lViewInAContainer[TVIEW],lViewInAContainer,lViewFirstChildTNode,result)}lContainer[NATIVE]!==lContainer[HOST]&&result.push(lContainer[NATIVE])}function addAfterRenderSequencesForView(lView){if(lView[AFTER_RENDER_SEQUENCES_TO_ADD]!==null){for(let sequence2 of lView[AFTER_RENDER_SEQUENCES_TO_ADD])sequence2.impl.addSequence(sequence2);lView[AFTER_RENDER_SEQUENCES_TO_ADD].length=0}}var freeConsumers=[];function getOrBorrowReactiveLViewConsumer(lView){return lView[REACTIVE_TEMPLATE_CONSUMER]??borrowReactiveLViewConsumer(lView)}function borrowReactiveLViewConsumer(lView){let consumer=freeConsumers.pop()??Object.create(REACTIVE_LVIEW_CONSUMER_NODE);return consumer.lView=lView,consumer}function maybeReturnReactiveLViewConsumer(consumer){consumer.lView[REACTIVE_TEMPLATE_CONSUMER]!==consumer&&(consumer.lView=null,freeConsumers.push(consumer))}var REACTIVE_LVIEW_CONSUMER_NODE=__spreadProps(__spreadValues({},REACTIVE_NODE),{consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:node=>{markAncestorsForTraversal(node.lView)},consumerOnSignalRead(){this.lView[REACTIVE_TEMPLATE_CONSUMER]=this}});function getOrCreateTemporaryConsumer(lView){let consumer=lView[REACTIVE_TEMPLATE_CONSUMER]??Object.create(TEMPORARY_CONSUMER_NODE);return consumer.lView=lView,consumer}var TEMPORARY_CONSUMER_NODE=__spreadProps(__spreadValues({},REACTIVE_NODE),{consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:node=>{let parent=getLViewParent(node.lView);for(;parent&&!viewShouldHaveReactiveConsumer(parent[TVIEW]);)parent=getLViewParent(parent);parent&&markViewForRefresh(parent)},consumerOnSignalRead(){this.lView[REACTIVE_TEMPLATE_CONSUMER]=this}});function viewShouldHaveReactiveConsumer(tView){return tView.type!==2}function runEffectsInView(view){if(view[EFFECTS]===null)return;let tryFlushEffects=!0;for(;tryFlushEffects;){let foundDirtyEffect=!1;for(let effect2 of view[EFFECTS])effect2.dirty&&(foundDirtyEffect=!0,effect2.zone===null||Zone.current===effect2.zone?effect2.run():effect2.zone.run(()=>effect2.run()));tryFlushEffects=foundDirtyEffect&&!!(view[FLAGS]&8192)}}var MAXIMUM_REFRESH_RERUNS$1=100;function detectChangesInternal(lView,mode=0){let rendererFactory=lView[ENVIRONMENT].rendererFactory,checkNoChangesMode=!1;checkNoChangesMode||rendererFactory.begin?.();try{detectChangesInViewWhileDirty(lView,mode)}finally{checkNoChangesMode||rendererFactory.end?.()}}function detectChangesInViewWhileDirty(lView,mode){let lastIsRefreshingViewsValue=isRefreshingViews();try{setIsRefreshingViews(!0),detectChangesInView(lView,mode);let retries=0;for(;requiresRefreshOrTraversal(lView);){if(retries===MAXIMUM_REFRESH_RERUNS$1)throw new RuntimeError(103,!1);retries++,detectChangesInView(lView,1)}}finally{setIsRefreshingViews(lastIsRefreshingViewsValue)}}function checkNoChangesInternal(lView,exhaustive){setIsInCheckNoChangesMode(exhaustive?CheckNoChangesMode.Exhaustive:CheckNoChangesMode.OnlyDirtyViews);try{detectChangesInternal(lView)}finally{setIsInCheckNoChangesMode(CheckNoChangesMode.Off)}}function refreshView(tView,lView,templateFn,context2){if(isDestroyed(lView))return;let flags=lView[FLAGS],isInCheckNoChangesPass=!1,isInExhaustiveCheckNoChangesPass=!1;enterView(lView);let returnConsumerToPool=!0,prevConsumer=null,currentConsumer=null;isInCheckNoChangesPass||(viewShouldHaveReactiveConsumer(tView)?(currentConsumer=getOrBorrowReactiveLViewConsumer(lView),prevConsumer=consumerBeforeComputation(currentConsumer)):getActiveConsumer()===null?(returnConsumerToPool=!1,currentConsumer=getOrCreateTemporaryConsumer(lView),prevConsumer=consumerBeforeComputation(currentConsumer)):lView[REACTIVE_TEMPLATE_CONSUMER]&&(consumerDestroy(lView[REACTIVE_TEMPLATE_CONSUMER]),lView[REACTIVE_TEMPLATE_CONSUMER]=null));try{resetPreOrderHookFlags(lView),setBindingIndex(tView.bindingStartIndex),templateFn!==null&&executeTemplate(tView,lView,templateFn,2,context2);let hooksInitPhaseCompleted=(flags&3)===3;if(!isInCheckNoChangesPass)if(hooksInitPhaseCompleted){let preOrderCheckHooks=tView.preOrderCheckHooks;preOrderCheckHooks!==null&&executeCheckHooks(lView,preOrderCheckHooks,null)}else{let preOrderHooks=tView.preOrderHooks;preOrderHooks!==null&&executeInitAndCheckHooks(lView,preOrderHooks,0,null),incrementInitPhaseFlags(lView,0)}if(isInExhaustiveCheckNoChangesPass||markTransplantedViewsForRefresh(lView),runEffectsInView(lView),detectChangesInEmbeddedViews(lView,0),tView.contentQueries!==null&&refreshContentQueries(tView,lView),!isInCheckNoChangesPass)if(hooksInitPhaseCompleted){let contentCheckHooks=tView.contentCheckHooks;contentCheckHooks!==null&&executeCheckHooks(lView,contentCheckHooks)}else{let contentHooks=tView.contentHooks;contentHooks!==null&&executeInitAndCheckHooks(lView,contentHooks,1),incrementInitPhaseFlags(lView,1)}processHostBindingOpCodes(tView,lView);let components=tView.components;components!==null&&detectChangesInChildComponents(lView,components,0);let viewQuery=tView.viewQuery;if(viewQuery!==null&&executeViewQueryFn(2,viewQuery,context2),!isInCheckNoChangesPass)if(hooksInitPhaseCompleted){let viewCheckHooks=tView.viewCheckHooks;viewCheckHooks!==null&&executeCheckHooks(lView,viewCheckHooks)}else{let viewHooks=tView.viewHooks;viewHooks!==null&&executeInitAndCheckHooks(lView,viewHooks,2),incrementInitPhaseFlags(lView,2)}if(tView.firstUpdatePass===!0&&(tView.firstUpdatePass=!1),lView[EFFECTS_TO_SCHEDULE]){for(let notifyEffect of lView[EFFECTS_TO_SCHEDULE])notifyEffect();lView[EFFECTS_TO_SCHEDULE]=null}isInCheckNoChangesPass||(addAfterRenderSequencesForView(lView),lView[FLAGS]&=-73)}catch(e){throw isInCheckNoChangesPass||markAncestorsForTraversal(lView),e}finally{currentConsumer!==null&&(consumerAfterComputation(currentConsumer,prevConsumer),returnConsumerToPool&&maybeReturnReactiveLViewConsumer(currentConsumer)),leaveView()}}function detectChangesInEmbeddedViews(lView,mode){for(let lContainer=getFirstLContainer(lView);lContainer!==null;lContainer=getNextLContainer(lContainer))for(let i=CONTAINER_HEADER_OFFSET;i<lContainer.length;i++){let embeddedLView=lContainer[i];detectChangesInViewIfAttached(embeddedLView,mode)}}function markTransplantedViewsForRefresh(lView){for(let lContainer=getFirstLContainer(lView);lContainer!==null;lContainer=getNextLContainer(lContainer)){if(!(lContainer[FLAGS]&2))continue;let movedViews=lContainer[MOVED_VIEWS];for(let i=0;i<movedViews.length;i++){let movedLView=movedViews[i];markViewForRefresh(movedLView)}}}function detectChangesInComponent(hostLView,componentHostIdx,mode){profiler(18);let componentView=getComponentLViewByIndex(componentHostIdx,hostLView);detectChangesInViewIfAttached(componentView,mode),profiler(19,componentView[CONTEXT])}function detectChangesInViewIfAttached(lView,mode){viewAttachedToChangeDetector(lView)&&detectChangesInView(lView,mode)}function detectChangesInView(lView,mode){let tView=lView[TVIEW],flags=lView[FLAGS],consumer=lView[REACTIVE_TEMPLATE_CONSUMER],shouldRefreshView=!!(mode===0&&flags&16);if(shouldRefreshView||=!!(flags&64&&mode===0),shouldRefreshView||=!!(flags&1024),shouldRefreshView||=!!(consumer?.dirty&&consumerPollProducersForChange(consumer)),shouldRefreshView||=!1,consumer&&(consumer.dirty=!1),lView[FLAGS]&=-9217,shouldRefreshView)refreshView(tView,lView,tView.template,lView[CONTEXT]);else if(flags&8192){let prevConsumer=setActiveConsumer(null);try{runEffectsInView(lView),detectChangesInEmbeddedViews(lView,1);let components=tView.components;components!==null&&detectChangesInChildComponents(lView,components,1),addAfterRenderSequencesForView(lView)}finally{setActiveConsumer(prevConsumer)}}}function detectChangesInChildComponents(hostLView,components,mode){for(let i=0;i<components.length;i++)detectChangesInComponent(hostLView,components[i],mode)}function processHostBindingOpCodes(tView,lView){let hostBindingOpCodes=tView.hostBindingOpCodes;if(hostBindingOpCodes!==null)try{for(let i=0;i<hostBindingOpCodes.length;i++){let opCode=hostBindingOpCodes[i];if(opCode<0)setSelectedIndex(~opCode);else{let directiveIdx=opCode,bindingRootIndx=hostBindingOpCodes[++i],hostBindingFn=hostBindingOpCodes[++i];setBindingRootForHostBindings(bindingRootIndx,directiveIdx);let context2=lView[directiveIdx];profiler(24,context2),hostBindingFn(2,context2),profiler(25,context2)}}}finally{setSelectedIndex(-1)}}function markViewDirty(lView,source){let dirtyBitsToUse=isRefreshingViews()?64:1088;for(lView[ENVIRONMENT].changeDetectionScheduler?.notify(source);lView;){lView[FLAGS]|=dirtyBitsToUse;let parent=getLViewParent(lView);if(isRootView(lView)&&!parent)return lView;lView=parent}return null}function createLContainer(hostNative,currentView,native,tNode){return[hostNative,!0,0,currentView,null,tNode,null,native,null,null]}function getLViewFromLContainer(lContainer,index){let adjustedIndex=CONTAINER_HEADER_OFFSET+index;if(adjustedIndex<lContainer.length)return lContainer[adjustedIndex]}function addLViewToLContainer(lContainer,lView,index,addToDOM=!0){let tView=lView[TVIEW];if(insertView(tView,lView,lContainer,index),addToDOM){let beforeNode=getBeforeNodeForView(index,lContainer),renderer=lView[RENDERER],parentRNode=renderer.parentNode(lContainer[NATIVE]);parentRNode!==null&&addViewToDOM(tView,lContainer[T_HOST],renderer,lView,parentRNode,beforeNode)}let hydrationInfo=lView[HYDRATION];hydrationInfo!==null&&hydrationInfo.firstChild!==null&&(hydrationInfo.firstChild=null)}function removeLViewFromLContainer(lContainer,index){let lView=detachView(lContainer,index);return lView!==void 0&&destroyLView(lView[TVIEW],lView),lView}function detachView(lContainer,removeIndex){if(lContainer.length<=CONTAINER_HEADER_OFFSET)return;let indexInContainer=CONTAINER_HEADER_OFFSET+removeIndex,viewToDetach=lContainer[indexInContainer];if(viewToDetach){let declarationLContainer=viewToDetach[DECLARATION_LCONTAINER];declarationLContainer!==null&&declarationLContainer!==lContainer&&detachMovedView(declarationLContainer,viewToDetach),removeIndex>0&&(lContainer[indexInContainer-1][NEXT]=viewToDetach[NEXT]);let removedLView=removeFromArray(lContainer,CONTAINER_HEADER_OFFSET+removeIndex);removeViewFromDOM(viewToDetach[TVIEW],viewToDetach);let lQueries=removedLView[QUERIES];lQueries!==null&&lQueries.detachView(removedLView[TVIEW]),viewToDetach[PARENT]=null,viewToDetach[NEXT]=null,viewToDetach[FLAGS]&=-129}return viewToDetach}function insertView(tView,lView,lContainer,index){let indexInContainer=CONTAINER_HEADER_OFFSET+index,containerLength=lContainer.length;index>0&&(lContainer[indexInContainer-1][NEXT]=lView),index<containerLength-CONTAINER_HEADER_OFFSET?(lView[NEXT]=lContainer[indexInContainer],addToArray(lContainer,CONTAINER_HEADER_OFFSET+index,lView)):(lContainer.push(lView),lView[NEXT]=null),lView[PARENT]=lContainer;let declarationLContainer=lView[DECLARATION_LCONTAINER];declarationLContainer!==null&&lContainer!==declarationLContainer&&trackMovedView(declarationLContainer,lView);let lQueries=lView[QUERIES];lQueries!==null&&lQueries.insertView(tView),updateAncestorTraversalFlagsOnAttach(lView),lView[FLAGS]|=128}function trackMovedView(declarationContainer,lView){let movedViews=declarationContainer[MOVED_VIEWS],parent=lView[PARENT];if(isLView(parent))declarationContainer[FLAGS]|=2;else{let insertedComponentLView=parent[PARENT][DECLARATION_COMPONENT_VIEW];lView[DECLARATION_COMPONENT_VIEW]!==insertedComponentLView&&(declarationContainer[FLAGS]|=2)}movedViews===null?declarationContainer[MOVED_VIEWS]=[lView]:movedViews.push(lView)}var ViewRef=class{_lView;_cdRefInjectingView;_appRef=null;_attachedToViewContainer=!1;exhaustive;get rootNodes(){let lView=this._lView,tView=lView[TVIEW];return collectNativeNodes(tView,lView,tView.firstChild,[])}constructor(_lView,_cdRefInjectingView){this._lView=_lView,this._cdRefInjectingView=_cdRefInjectingView}get context(){return this._lView[CONTEXT]}set context(value){this._lView[CONTEXT]=value}get destroyed(){return isDestroyed(this._lView)}destroy(){if(this._appRef)this._appRef.detachView(this);else if(this._attachedToViewContainer){let parent=this._lView[PARENT];if(isLContainer(parent)){let viewRefs=parent[VIEW_REFS],index=viewRefs?viewRefs.indexOf(this):-1;index>-1&&(detachView(parent,index),removeFromArray(viewRefs,index))}this._attachedToViewContainer=!1}destroyLView(this._lView[TVIEW],this._lView)}onDestroy(callback){storeLViewOnDestroy(this._lView,callback)}markForCheck(){markViewDirty(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[FLAGS]&=-129}reattach(){updateAncestorTraversalFlagsOnAttach(this._lView),this._lView[FLAGS]|=128}detectChanges(){this._lView[FLAGS]|=1024,detectChangesInternal(this._lView)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new RuntimeError(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;let isRoot=isRootView(this._lView),declarationContainer=this._lView[DECLARATION_LCONTAINER];declarationContainer!==null&&!isRoot&&detachMovedView(declarationContainer,this._lView),detachViewFromDOM(this._lView[TVIEW],this._lView)}attachToAppRef(appRef){if(this._attachedToViewContainer)throw new RuntimeError(902,!1);this._appRef=appRef;let isRoot=isRootView(this._lView),declarationContainer=this._lView[DECLARATION_LCONTAINER];declarationContainer!==null&&!isRoot&&trackMovedView(declarationContainer,this._lView),updateAncestorTraversalFlagsOnAttach(this._lView)}};var TemplateRef=(()=>{class TemplateRef2{_declarationLView;_declarationTContainer;elementRef;static __NG_ELEMENT_ID__=injectTemplateRef;constructor(_declarationLView,_declarationTContainer,elementRef){this._declarationLView=_declarationLView,this._declarationTContainer=_declarationTContainer,this.elementRef=elementRef}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(context2,injector){return this.createEmbeddedViewImpl(context2,injector)}createEmbeddedViewImpl(context2,injector,dehydratedView){let embeddedLView=createAndRenderEmbeddedLView(this._declarationLView,this._declarationTContainer,context2,{embeddedViewInjector:injector,dehydratedView});return new ViewRef(embeddedLView)}}return TemplateRef2})();function injectTemplateRef(){return createTemplateRef(getCurrentTNode(),getLView())}function createTemplateRef(hostTNode,hostLView){return hostTNode.type&4?new TemplateRef(hostLView,hostTNode,createElementRef(hostTNode,hostLView)):null}function getOrCreateTNode(tView,index,type2,name,attrs){let tNode=tView.data[index];if(tNode===null)tNode=createTNodeAtIndex(tView,index,type2,name,attrs),isInI18nBlock()&&(tNode.flags|=32);else if(tNode.type&64){tNode.type=type2,tNode.value=name,tNode.attrs=attrs;let parent=getCurrentParentTNode();tNode.injectorIndex=parent===null?-1:parent.injectorIndex}return setCurrentTNode(tNode,!0),tNode}function createTNodeAtIndex(tView,index,type2,name,attrs){let currentTNode=getCurrentTNodePlaceholderOk(),isParent=isCurrentTNodeParent(),parent=isParent?currentTNode:currentTNode&¤tTNode.parent,tNode=tView.data[index]=createTNode(tView,parent,type2,index,name,attrs);return linkTNodeInTView(tView,tNode,currentTNode,isParent),tNode}function linkTNodeInTView(tView,tNode,currentTNode,isParent){tView.firstChild===null&&(tView.firstChild=tNode),currentTNode!==null&&(isParent?currentTNode.child==null&&tNode.parent!==null&&(currentTNode.child=tNode):currentTNode.next===null&&(currentTNode.next=tNode,tNode.prev=currentTNode))}function createTNode(tView,tParent,type2,index,value,attrs){let injectorIndex=tParent?tParent.injectorIndex:-1,flags=0;return isInSkipHydrationBlock()&&(flags|=128),{type:type2,index,insertBeforeIndex:null,injectorIndex,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags,providerIndexes:0,value,attrs,mergedAttrs:null,localNames:null,initialInputs:null,inputs:null,hostDirectiveInputs:null,outputs:null,hostDirectiveOutputs:null,directiveToIndex:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:tParent,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}var REF_EXTRACTOR_REGEXP=new RegExp(`^(\\d+)*(${REFERENCE_NODE_BODY}|${REFERENCE_NODE_HOST})*(.*)`);function removeDehydratedViews(lContainer){let views=lContainer[DEHYDRATED_VIEWS]??[],renderer=lContainer[PARENT][RENDERER],retainedViews=[];for(let view of views)view.data[DEFER_BLOCK_ID]!==void 0?retainedViews.push(view):removeDehydratedView(view,renderer);lContainer[DEHYDRATED_VIEWS]=retainedViews}function removeDehydratedView(dehydratedView,renderer){let nodesRemoved=0,currentRNode=dehydratedView.firstChild;if(currentRNode){let numNodes=dehydratedView.data[NUM_ROOT_NODES];for(;nodesRemoved<numNodes;){let nextSibling=currentRNode.nextSibling;nativeRemoveNode(renderer,currentRNode,!1),currentRNode=nextSibling,nodesRemoved++}}}var _findMatchingDehydratedViewImpl=()=>null,_findAndReconcileMatchingDehydratedViewsImpl=()=>null;function findMatchingDehydratedView(lContainer,template){return _findMatchingDehydratedViewImpl(lContainer,template)}function findAndReconcileMatchingDehydratedViews(lContainer,templateTNode,hostLView){return _findAndReconcileMatchingDehydratedViewsImpl(lContainer,templateTNode,hostLView)}var ComponentRef$1=class{},ComponentFactory$1=class{},_NullComponentFactoryResolver=class{resolveComponentFactory(component){throw new RuntimeError(917,!1)}},ComponentFactoryResolver$1=class{static NULL=new _NullComponentFactoryResolver},RendererFactory2=class{},Renderer2=(()=>{class Renderer22{destroyNode=null;static __NG_ELEMENT_ID__=()=>injectRenderer2()}return Renderer22})();function injectRenderer2(){let lView=getLView(),tNode=getCurrentTNode(),nodeAtIndex=getComponentLViewByIndex(tNode.index,lView);return(isLView(nodeAtIndex)?nodeAtIndex:lView)[RENDERER]}var Sanitizer=(()=>{class Sanitizer2{static \u0275prov=\u0275\u0275defineInjectable({token:Sanitizer2,providedIn:"root",factory:()=>null})}return Sanitizer2})();var NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR={},ChainedInjector=class{injector;parentInjector;constructor(injector,parentInjector){this.injector=injector,this.parentInjector=parentInjector}get(token,notFoundValue,options){let value=this.injector.get(token,NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR,options);return value!==NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR||notFoundValue===NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR?value:this.parentInjector.get(token,notFoundValue,options)}};function computeStaticStyling(tNode,attrs,writeToHost){let styles=writeToHost?tNode.styles:null,classes=writeToHost?tNode.classes:null,mode=0;if(attrs!==null)for(let i=0;i<attrs.length;i++){let value=attrs[i];if(typeof value=="number")mode=value;else if(mode==1)classes=concatStringsWithSpace(classes,value);else if(mode==2){let style2=value,styleValue=attrs[++i];styles=concatStringsWithSpace(styles,style2+": "+styleValue+";")}}writeToHost?tNode.styles=styles:tNode.stylesWithoutHost=styles,writeToHost?tNode.classes=classes:tNode.classesWithoutHost=classes}function \u0275\u0275directiveInject(token,flags=0){let lView=getLView();if(lView===null)return \u0275\u0275inject(token,flags);let tNode=getCurrentTNode();return getOrCreateInjectable(tNode,lView,resolveForwardRef(token),flags)}function \u0275\u0275invalidFactory(){let msg="invalid";throw new Error(msg)}function resolveDirectives(tView,lView,tNode,localRefs,directiveMatcher){let exportsMap=localRefs===null?null:{"":-1},matchedDirectiveDefs=directiveMatcher(tView,tNode);if(matchedDirectiveDefs!==null){let directiveDefs=matchedDirectiveDefs,hostDirectiveDefs=null,hostDirectiveRanges=null;for(let def of matchedDirectiveDefs)if(def.resolveHostDirectives!==null){[directiveDefs,hostDirectiveDefs,hostDirectiveRanges]=def.resolveHostDirectives(matchedDirectiveDefs);break}initializeDirectives(tView,lView,tNode,directiveDefs,exportsMap,hostDirectiveDefs,hostDirectiveRanges)}exportsMap!==null&&localRefs!==null&&cacheMatchingLocalNames(tNode,localRefs,exportsMap)}function cacheMatchingLocalNames(tNode,localRefs,exportsMap){let localNames=tNode.localNames=[];for(let i=0;i<localRefs.length;i+=2){let index=exportsMap[localRefs[i+1]];if(index==null)throw new RuntimeError(-301,!1);localNames.push(localRefs[i],index)}}function markAsComponentHost(tView,hostTNode,componentOffset){hostTNode.componentOffset=componentOffset,(tView.components??=[]).push(hostTNode.index)}function initializeDirectives(tView,lView,tNode,directives,exportsMap,hostDirectiveDefs,hostDirectiveRanges){let directivesLength=directives.length,hasSeenComponent=!1;for(let i=0;i<directivesLength;i++){let def=directives[i];!hasSeenComponent&&isComponentDef(def)&&(hasSeenComponent=!0,markAsComponentHost(tView,tNode,i)),diPublicInInjector(getOrCreateNodeInjectorForNode(tNode,lView),tView,def.type)}initTNodeFlags(tNode,tView.data.length,directivesLength);for(let i=0;i<directivesLength;i++){let def=directives[i];def.providersResolver&&def.providersResolver(def)}let preOrderHooksFound=!1,preOrderCheckHooksFound=!1,directiveIdx=allocExpando(tView,lView,directivesLength,null);directivesLength>0&&(tNode.directiveToIndex=new Map);for(let i=0;i<directivesLength;i++){let def=directives[i];if(tNode.mergedAttrs=mergeHostAttrs(tNode.mergedAttrs,def.hostAttrs),configureViewWithDirective(tView,tNode,lView,directiveIdx,def),saveNameToExportMap(directiveIdx,def,exportsMap),hostDirectiveRanges!==null&&hostDirectiveRanges.has(def)){let[start,end]=hostDirectiveRanges.get(def);tNode.directiveToIndex.set(def.type,[directiveIdx,start+tNode.directiveStart,end+tNode.directiveStart])}else(hostDirectiveDefs===null||!hostDirectiveDefs.has(def))&&tNode.directiveToIndex.set(def.type,directiveIdx);def.contentQueries!==null&&(tNode.flags|=4),(def.hostBindings!==null||def.hostAttrs!==null||def.hostVars!==0)&&(tNode.flags|=64);let lifeCycleHooks=def.type.prototype;!preOrderHooksFound&&(lifeCycleHooks.ngOnChanges||lifeCycleHooks.ngOnInit||lifeCycleHooks.ngDoCheck)&&((tView.preOrderHooks??=[]).push(tNode.index),preOrderHooksFound=!0),!preOrderCheckHooksFound&&(lifeCycleHooks.ngOnChanges||lifeCycleHooks.ngDoCheck)&&((tView.preOrderCheckHooks??=[]).push(tNode.index),preOrderCheckHooksFound=!0),directiveIdx++}initializeInputAndOutputAliases(tView,tNode,hostDirectiveDefs)}function initializeInputAndOutputAliases(tView,tNode,hostDirectiveDefs){for(let index=tNode.directiveStart;index<tNode.directiveEnd;index++){let directiveDef=tView.data[index];if(hostDirectiveDefs===null||!hostDirectiveDefs.has(directiveDef))setupSelectorMatchedInputsOrOutputs(0,tNode,directiveDef,index),setupSelectorMatchedInputsOrOutputs(1,tNode,directiveDef,index),setupInitialInputs(tNode,index,!1);else{let hostDirectiveDef=hostDirectiveDefs.get(directiveDef);setupHostDirectiveInputsOrOutputs(0,tNode,hostDirectiveDef,index),setupHostDirectiveInputsOrOutputs(1,tNode,hostDirectiveDef,index),setupInitialInputs(tNode,index,!0)}}}function setupSelectorMatchedInputsOrOutputs(mode,tNode,def,directiveIndex){let aliasMap=mode===0?def.inputs:def.outputs;for(let publicName in aliasMap)if(aliasMap.hasOwnProperty(publicName)){let bindings;mode===0?bindings=tNode.inputs??={}:bindings=tNode.outputs??={},bindings[publicName]??=[],bindings[publicName].push(directiveIndex),setShadowStylingInputFlags(tNode,publicName)}}function setupHostDirectiveInputsOrOutputs(mode,tNode,config2,directiveIndex){let aliasMap=mode===0?config2.inputs:config2.outputs;for(let initialName in aliasMap)if(aliasMap.hasOwnProperty(initialName)){let publicName=aliasMap[initialName],bindings;mode===0?bindings=tNode.hostDirectiveInputs??={}:bindings=tNode.hostDirectiveOutputs??={},bindings[publicName]??=[],bindings[publicName].push(directiveIndex,initialName),setShadowStylingInputFlags(tNode,publicName)}}function setShadowStylingInputFlags(tNode,publicName){publicName==="class"?tNode.flags|=8:publicName==="style"&&(tNode.flags|=16)}function setupInitialInputs(tNode,directiveIndex,isHostDirective){let{attrs,inputs:inputs2,hostDirectiveInputs}=tNode;if(attrs===null||!isHostDirective&&inputs2===null||isHostDirective&&hostDirectiveInputs===null||isInlineTemplate(tNode)){tNode.initialInputs??=[],tNode.initialInputs.push(null);return}let inputsToStore=null,i=0;for(;i<attrs.length;){let attrName=attrs[i];if(attrName===0){i+=4;continue}else if(attrName===5){i+=2;continue}else if(typeof attrName=="number")break;if(!isHostDirective&&inputs2.hasOwnProperty(attrName)){let inputConfig=inputs2[attrName];for(let index of inputConfig)if(index===directiveIndex){inputsToStore??=[],inputsToStore.push(attrName,attrs[i+1]);break}}else if(isHostDirective&&hostDirectiveInputs.hasOwnProperty(attrName)){let config2=hostDirectiveInputs[attrName];for(let j=0;j<config2.length;j+=2)if(config2[j]===directiveIndex){inputsToStore??=[],inputsToStore.push(config2[j+1],attrs[i+1]);break}}i+=2}tNode.initialInputs??=[],tNode.initialInputs.push(inputsToStore)}function configureViewWithDirective(tView,tNode,lView,directiveIndex,def){tView.data[directiveIndex]=def;let directiveFactory=def.factory||(def.factory=getFactoryDef(def.type,!0)),nodeInjectorFactory=new NodeInjectorFactory(directiveFactory,isComponentDef(def),\u0275\u0275directiveInject,null);tView.blueprint[directiveIndex]=nodeInjectorFactory,lView[directiveIndex]=nodeInjectorFactory,registerHostBindingOpCodes(tView,tNode,directiveIndex,allocExpando(tView,lView,def.hostVars,NO_CHANGE),def)}function registerHostBindingOpCodes(tView,tNode,directiveIdx,directiveVarsIdx,def){let hostBindings=def.hostBindings;if(hostBindings){let hostBindingOpCodes=tView.hostBindingOpCodes;hostBindingOpCodes===null&&(hostBindingOpCodes=tView.hostBindingOpCodes=[]);let elementIndx=~tNode.index;lastSelectedElementIdx(hostBindingOpCodes)!=elementIndx&&hostBindingOpCodes.push(elementIndx),hostBindingOpCodes.push(directiveIdx,directiveVarsIdx,hostBindings)}}function lastSelectedElementIdx(hostBindingOpCodes){let i=hostBindingOpCodes.length;for(;i>0;){let value=hostBindingOpCodes[--i];if(typeof value=="number"&&value<0)return value}return 0}function saveNameToExportMap(directiveIdx,def,exportsMap){if(exportsMap){if(def.exportAs)for(let i=0;i<def.exportAs.length;i++)exportsMap[def.exportAs[i]]=directiveIdx;isComponentDef(def)&&(exportsMap[""]=directiveIdx)}}function initTNodeFlags(tNode,index,numberOfDirectives){tNode.flags|=1,tNode.directiveStart=index,tNode.directiveEnd=index+numberOfDirectives,tNode.providerIndexes=index}function directiveHostFirstCreatePass(index,lView,type2,name,directiveMatcher,bindingsEnabled,attrsIndex,localRefsIndex){let tView=lView[TVIEW],tViewConsts=tView.consts,attrs=getConstant(tViewConsts,attrsIndex),tNode=getOrCreateTNode(tView,index,type2,name,attrs);return bindingsEnabled&&resolveDirectives(tView,lView,tNode,getConstant(tViewConsts,localRefsIndex),directiveMatcher),tNode.mergedAttrs=mergeHostAttrs(tNode.mergedAttrs,tNode.attrs),tNode.attrs!==null&&computeStaticStyling(tNode,tNode.attrs,!1),tNode.mergedAttrs!==null&&computeStaticStyling(tNode,tNode.mergedAttrs,!0),tView.queries!==null&&tView.queries.elementStart(tView,tNode),tNode}function directiveHostEndFirstCreatePass(tView,tNode){registerPostOrderHooks(tView,tNode),isContentQueryHost(tNode)&&tView.queries.elementEnd(tNode)}function domOnlyFirstCreatePass(index,tView,type2,name,attrsIndex,localRefsIndex){let tViewConsts=tView.consts,attrs=getConstant(tViewConsts,attrsIndex),tNode=getOrCreateTNode(tView,index,type2,name,attrs);if(tNode.mergedAttrs=mergeHostAttrs(tNode.mergedAttrs,tNode.attrs),localRefsIndex!=null){let refs=getConstant(tViewConsts,localRefsIndex);tNode.localNames=[];for(let i=0;i<refs.length;i+=2)tNode.localNames.push(refs[i],-1)}return tNode.attrs!==null&&computeStaticStyling(tNode,tNode.attrs,!1),tNode.mergedAttrs!==null&&computeStaticStyling(tNode,tNode.mergedAttrs,!0),tView.queries!==null&&tView.queries.elementStart(tView,tNode),tNode}function isListLikeIterable(obj){return isJsObject(obj)?Array.isArray(obj)||!(obj instanceof Map)&&Symbol.iterator in obj:!1}function iterateListLike(obj,fn){if(Array.isArray(obj))for(let i=0;i<obj.length;i++)fn(obj[i]);else{let iterator2=obj[Symbol.iterator](),item;for(;!(item=iterator2.next()).done;)fn(item.value)}}function isJsObject(o){return o!==null&&(typeof o=="function"||typeof o=="object")}function updateBinding(lView,bindingIndex,value){return lView[bindingIndex]=value}function getBinding(lView,bindingIndex){return lView[bindingIndex]}function bindingUpdated(lView,bindingIndex,value){if(value===NO_CHANGE)return!1;let oldValue=lView[bindingIndex];return Object.is(oldValue,value)?!1:(lView[bindingIndex]=value,!0)}function bindingUpdated2(lView,bindingIndex,exp1,exp2){let different=bindingUpdated(lView,bindingIndex,exp1);return bindingUpdated(lView,bindingIndex+1,exp2)||different}function bindingUpdated3(lView,bindingIndex,exp1,exp2,exp3){let different=bindingUpdated2(lView,bindingIndex,exp1,exp2);return bindingUpdated(lView,bindingIndex+2,exp3)||different}function wrapListener(tNode,lView,listenerFn){return function wrapListenerIn_markDirtyAndPreventDefault(event){let startView=isComponentHost(tNode)?getComponentLViewByIndex(tNode.index,lView):lView;markViewDirty(startView,5);let context2=lView[CONTEXT],result=executeListenerWithErrorHandling(lView,context2,listenerFn,event),nextListenerFn=wrapListenerIn_markDirtyAndPreventDefault.__ngNextListenerFn__;for(;nextListenerFn;)result=executeListenerWithErrorHandling(lView,context2,nextListenerFn,event)&&result,nextListenerFn=nextListenerFn.__ngNextListenerFn__;return result}}function executeListenerWithErrorHandling(lView,context2,listenerFn,e){let prevConsumer=setActiveConsumer(null);try{return profiler(6,context2,listenerFn),listenerFn(e)!==!1}catch(error){return handleUncaughtError(lView,error),!1}finally{profiler(7,context2,listenerFn),setActiveConsumer(prevConsumer)}}function listenToDomEvent(tNode,tView,lView,eventTargetResolver,renderer,eventName,originalListener,wrappedListener){let isTNodeDirectiveHost=isDirectiveHost(tNode),hasCoalesced=!1,existingListener=null;if(!eventTargetResolver&&isTNodeDirectiveHost&&(existingListener=findExistingListener(tView,lView,eventName,tNode.index)),existingListener!==null){let lastListenerFn=existingListener.__ngLastListenerFn__||existingListener;lastListenerFn.__ngNextListenerFn__=originalListener,existingListener.__ngLastListenerFn__=originalListener,hasCoalesced=!0}else{let native=getNativeByTNode(tNode,lView),target=eventTargetResolver?eventTargetResolver(native):native;stashEventListenerImpl(lView,target,eventName,wrappedListener);let cleanupFn=renderer.listen(target,eventName,wrappedListener),idxOrTargetGetter=eventTargetResolver?_lView=>eventTargetResolver(unwrapRNode(_lView[tNode.index])):tNode.index;storeListenerCleanup(idxOrTargetGetter,tView,lView,eventName,wrappedListener,cleanupFn,!1)}return hasCoalesced}function findExistingListener(tView,lView,eventName,tNodeIndex){let tCleanup=tView.cleanup;if(tCleanup!=null)for(let i=0;i<tCleanup.length-1;i+=2){let cleanupEventName=tCleanup[i];if(cleanupEventName===eventName&&tCleanup[i+1]===tNodeIndex){let lCleanup=lView[CLEANUP],listenerIdxInLCleanup=tCleanup[i+2];return lCleanup&&lCleanup.length>listenerIdxInLCleanup?lCleanup[listenerIdxInLCleanup]:null}typeof cleanupEventName=="string"&&(i+=2)}return null}function storeListenerCleanup(indexOrTargetGetter,tView,lView,eventName,listenerFn,cleanup,isOutput){let tCleanup=tView.firstCreatePass?getOrCreateTViewCleanup(tView):null,lCleanup=getOrCreateLViewCleanup(lView),index=lCleanup.length;lCleanup.push(listenerFn,cleanup),tCleanup&&tCleanup.push(eventName,indexOrTargetGetter,index,(index+1)*(isOutput?-1:1))}function listenToOutput(tNode,lView,directiveIndex,lookupName,eventName,listenerFn){let instance=lView[directiveIndex],tView=lView[TVIEW],propertyName=tView.data[directiveIndex].outputs[lookupName],subscription=instance[propertyName].subscribe(listenerFn);storeListenerCleanup(tNode.index,tView,lView,eventName,listenerFn,subscription,!0)}var BINDING=Symbol("BINDING");var ComponentFactoryResolver2=class extends ComponentFactoryResolver$1{ngModule;constructor(ngModule){super(),this.ngModule=ngModule}resolveComponentFactory(component){let componentDef=getComponentDef(component);return new ComponentFactory2(componentDef,this.ngModule)}};function toInputRefArray(map2){return Object.keys(map2).map(name=>{let[propName,flags,transform]=map2[name],inputData={propName,templateName:name,isSignal:(flags&InputFlags.SignalBased)!==0};return transform&&(inputData.transform=transform),inputData})}function toOutputRefArray(map2){return Object.keys(map2).map(name=>({propName:map2[name],templateName:name}))}function createRootViewInjector(componentDef,environmentInjector,injector){let realEnvironmentInjector=environmentInjector instanceof EnvironmentInjector?environmentInjector:environmentInjector?.injector;return realEnvironmentInjector&&componentDef.getStandaloneInjector!==null&&(realEnvironmentInjector=componentDef.getStandaloneInjector(realEnvironmentInjector)||realEnvironmentInjector),realEnvironmentInjector?new ChainedInjector(injector,realEnvironmentInjector):injector}function createRootLViewEnvironment(rootLViewInjector){let rendererFactory=rootLViewInjector.get(RendererFactory2,null);if(rendererFactory===null)throw new RuntimeError(407,!1);let sanitizer=rootLViewInjector.get(Sanitizer,null),changeDetectionScheduler=rootLViewInjector.get(ChangeDetectionScheduler,null);return{rendererFactory,sanitizer,changeDetectionScheduler,ngReflect:!1}}function createHostElement(componentDef,renderer){let tagName=inferTagNameFromDefinition(componentDef);return createElementNode(renderer,tagName,tagName==="svg"?SVG_NAMESPACE:tagName==="math"?MATH_ML_NAMESPACE:null)}function inferTagNameFromDefinition(componentDef){return(componentDef.selectors[0][0]||"div").toLowerCase()}var ComponentFactory2=class extends ComponentFactory$1{componentDef;ngModule;selector;componentType;ngContentSelectors;isBoundToModule;cachedInputs=null;cachedOutputs=null;get inputs(){return this.cachedInputs??=toInputRefArray(this.componentDef.inputs),this.cachedInputs}get outputs(){return this.cachedOutputs??=toOutputRefArray(this.componentDef.outputs),this.cachedOutputs}constructor(componentDef,ngModule){super(),this.componentDef=componentDef,this.ngModule=ngModule,this.componentType=componentDef.type,this.selector=stringifyCSSSelectorList(componentDef.selectors),this.ngContentSelectors=componentDef.ngContentSelectors??[],this.isBoundToModule=!!ngModule}create(injector,projectableNodes,rootSelectorOrNode,environmentInjector,directives,componentBindings){profiler(22);let prevConsumer=setActiveConsumer(null);try{let cmpDef=this.componentDef,rootTView=createRootTView(rootSelectorOrNode,cmpDef,componentBindings,directives),rootViewInjector=createRootViewInjector(cmpDef,environmentInjector||this.ngModule,injector),environment2=createRootLViewEnvironment(rootViewInjector),hostRenderer=environment2.rendererFactory.createRenderer(null,cmpDef),hostElement=rootSelectorOrNode?locateHostElement(hostRenderer,rootSelectorOrNode,cmpDef.encapsulation,rootViewInjector):createHostElement(cmpDef,hostRenderer),hasInputBindings=componentBindings?.some(isInputBinding)||directives?.some(d=>typeof d!="function"&&d.bindings.some(isInputBinding)),rootLView=createLView(null,rootTView,null,512|getInitialLViewFlagsFromDef(cmpDef),null,null,environment2,hostRenderer,rootViewInjector,null,retrieveHydrationInfo(hostElement,rootViewInjector,!0));rootLView[HEADER_OFFSET]=hostElement,enterView(rootLView);let componentView=null;try{let hostTNode=directiveHostFirstCreatePass(HEADER_OFFSET,rootLView,2,"#host",()=>rootTView.directiveRegistry,!0,0);hostElement&&(setupStaticAttributes(hostRenderer,hostElement,hostTNode),attachPatchData(hostElement,rootLView)),createDirectivesInstances(rootTView,rootLView,hostTNode),executeContentQueries(rootTView,hostTNode,rootLView),directiveHostEndFirstCreatePass(rootTView,hostTNode),projectableNodes!==void 0&&projectNodes(hostTNode,this.ngContentSelectors,projectableNodes),componentView=getComponentLViewByIndex(hostTNode.index,rootLView),rootLView[CONTEXT]=componentView[CONTEXT],renderView(rootTView,rootLView,null)}catch(e){throw componentView!==null&&unregisterLView(componentView),unregisterLView(rootLView),e}finally{profiler(23),leaveView()}return new ComponentRef2(this.componentType,rootLView,!!hasInputBindings)}finally{setActiveConsumer(prevConsumer)}}};function createRootTView(rootSelectorOrNode,componentDef,componentBindings,directives){let tAttributes=rootSelectorOrNode?["ng-version","20.2.0"]:extractAttrsAndClassesFromSelector(componentDef.selectors[0]),creationBindings=null,updateBindings=null,varsToAllocate=0;if(componentBindings)for(let binding of componentBindings)varsToAllocate+=binding[BINDING].requiredVars,binding.create&&(binding.targetIdx=0,(creationBindings??=[]).push(binding)),binding.update&&(binding.targetIdx=0,(updateBindings??=[]).push(binding));if(directives)for(let i=0;i<directives.length;i++){let directive=directives[i];if(typeof directive!="function")for(let binding of directive.bindings){varsToAllocate+=binding[BINDING].requiredVars;let targetDirectiveIdx=i+1;binding.create&&(binding.targetIdx=targetDirectiveIdx,(creationBindings??=[]).push(binding)),binding.update&&(binding.targetIdx=targetDirectiveIdx,(updateBindings??=[]).push(binding))}}let directivesToApply=[componentDef];if(directives)for(let directive of directives){let directiveType=typeof directive=="function"?directive:directive.type,directiveDef=getDirectiveDef(directiveType);directivesToApply.push(directiveDef)}return createTView(0,null,getRootTViewTemplate(creationBindings,updateBindings),1,varsToAllocate,directivesToApply,null,null,null,[tAttributes],null)}function getRootTViewTemplate(creationBindings,updateBindings){return!creationBindings&&!updateBindings?null:flags=>{if(flags&1&&creationBindings)for(let binding of creationBindings)binding.create();if(flags&2&&updateBindings)for(let binding of updateBindings)binding.update()}}function isInputBinding(binding){let kind=binding[BINDING].kind;return kind==="input"||kind==="twoWay"}var ComponentRef2=class extends ComponentRef$1{_rootLView;_hasInputBindings;instance;hostView;changeDetectorRef;componentType;location;previousInputValues=null;_tNode;constructor(componentType,_rootLView,_hasInputBindings){super(),this._rootLView=_rootLView,this._hasInputBindings=_hasInputBindings,this._tNode=getTNode(_rootLView[TVIEW],HEADER_OFFSET),this.location=createElementRef(this._tNode,_rootLView),this.instance=getComponentLViewByIndex(this._tNode.index,_rootLView)[CONTEXT],this.hostView=this.changeDetectorRef=new ViewRef(_rootLView,void 0),this.componentType=componentType}setInput(name,value){this._hasInputBindings;let tNode=this._tNode;if(this.previousInputValues??=new Map,this.previousInputValues.has(name)&&Object.is(this.previousInputValues.get(name),value))return;let lView=this._rootLView,hasSetInput=setAllInputsForProperty(tNode,lView[TVIEW],lView,name,value);this.previousInputValues.set(name,value);let childComponentLView=getComponentLViewByIndex(tNode.index,lView);markViewDirty(childComponentLView,1)}get injector(){return new NodeInjector(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(callback){this.hostView.onDestroy(callback)}};function projectNodes(tNode,ngContentSelectors,projectableNodes){let projection=tNode.projection=[];for(let i=0;i<ngContentSelectors.length;i++){let nodesforSlot=projectableNodes[i];projection.push(nodesforSlot!=null&&nodesforSlot.length?Array.from(nodesforSlot):null)}}var ViewContainerRef=(()=>{class ViewContainerRef3{static __NG_ELEMENT_ID__=injectViewContainerRef}return ViewContainerRef3})();function injectViewContainerRef(){let previousTNode=getCurrentTNode();return createContainerRef(previousTNode,getLView())}var VE_ViewContainerRef=ViewContainerRef,R3ViewContainerRef=class extends VE_ViewContainerRef{_lContainer;_hostTNode;_hostLView;constructor(_lContainer,_hostTNode,_hostLView){super(),this._lContainer=_lContainer,this._hostTNode=_hostTNode,this._hostLView=_hostLView}get element(){return createElementRef(this._hostTNode,this._hostLView)}get injector(){return new NodeInjector(this._hostTNode,this._hostLView)}get parentInjector(){let parentLocation=getParentInjectorLocation(this._hostTNode,this._hostLView);if(hasParentInjector(parentLocation)){let parentView=getParentInjectorView(parentLocation,this._hostLView),injectorIndex=getParentInjectorIndex(parentLocation),parentTNode=parentView[TVIEW].data[injectorIndex+8];return new NodeInjector(parentTNode,parentView)}else return new NodeInjector(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(index){let viewRefs=getViewRefs(this._lContainer);return viewRefs!==null&&viewRefs[index]||null}get length(){return this._lContainer.length-CONTAINER_HEADER_OFFSET}createEmbeddedView(templateRef,context2,indexOrOptions){let index,injector;typeof indexOrOptions=="number"?index=indexOrOptions:indexOrOptions!=null&&(index=indexOrOptions.index,injector=indexOrOptions.injector);let dehydratedView=findMatchingDehydratedView(this._lContainer,templateRef.ssrId),viewRef=templateRef.createEmbeddedViewImpl(context2||{},injector,dehydratedView);return this.insertImpl(viewRef,index,shouldAddViewToDom(this._hostTNode,dehydratedView)),viewRef}createComponent(componentFactoryOrType,indexOrOptions,injector,projectableNodes,environmentInjector,directives,bindings){let isComponentFactory=componentFactoryOrType&&!isType(componentFactoryOrType),index;if(isComponentFactory)index=indexOrOptions;else{let options=indexOrOptions||{};index=options.index,injector=options.injector,projectableNodes=options.projectableNodes,environmentInjector=options.environmentInjector||options.ngModuleRef,directives=options.directives,bindings=options.bindings}let componentFactory=isComponentFactory?componentFactoryOrType:new ComponentFactory2(getComponentDef(componentFactoryOrType)),contextInjector=injector||this.parentInjector;if(!environmentInjector&&componentFactory.ngModule==null){let result=(isComponentFactory?contextInjector:this.parentInjector).get(EnvironmentInjector,null);result&&(environmentInjector=result)}let componentDef=getComponentDef(componentFactory.componentType??{}),dehydratedView=findMatchingDehydratedView(this._lContainer,componentDef?.id??null),rNode=dehydratedView?.firstChild??null,componentRef=componentFactory.create(contextInjector,projectableNodes,rNode,environmentInjector,directives,bindings);return this.insertImpl(componentRef.hostView,index,shouldAddViewToDom(this._hostTNode,dehydratedView)),componentRef}insert(viewRef,index){return this.insertImpl(viewRef,index,!0)}insertImpl(viewRef,index,addToDOM){let lView=viewRef._lView;if(viewAttachedToContainer(lView)){let prevIdx=this.indexOf(viewRef);if(prevIdx!==-1)this.detach(prevIdx);else{let prevLContainer=lView[PARENT],prevVCRef=new R3ViewContainerRef(prevLContainer,prevLContainer[T_HOST],prevLContainer[PARENT]);prevVCRef.detach(prevVCRef.indexOf(viewRef))}}let adjustedIdx=this._adjustIndex(index),lContainer=this._lContainer;return addLViewToLContainer(lContainer,lView,adjustedIdx,addToDOM),viewRef.attachToViewContainerRef(),addToArray(getOrCreateViewRefs(lContainer),adjustedIdx,viewRef),viewRef}move(viewRef,newIndex){return this.insert(viewRef,newIndex)}indexOf(viewRef){let viewRefsArr=getViewRefs(this._lContainer);return viewRefsArr!==null?viewRefsArr.indexOf(viewRef):-1}remove(index){let adjustedIdx=this._adjustIndex(index,-1),detachedView=detachView(this._lContainer,adjustedIdx);detachedView&&(removeFromArray(getOrCreateViewRefs(this._lContainer),adjustedIdx),destroyLView(detachedView[TVIEW],detachedView))}detach(index){let adjustedIdx=this._adjustIndex(index,-1),view=detachView(this._lContainer,adjustedIdx);return view&&removeFromArray(getOrCreateViewRefs(this._lContainer),adjustedIdx)!=null?new ViewRef(view):null}_adjustIndex(index,shift=0){return index??this.length+shift}};function getViewRefs(lContainer){return lContainer[VIEW_REFS]}function getOrCreateViewRefs(lContainer){return lContainer[VIEW_REFS]||(lContainer[VIEW_REFS]=[])}function createContainerRef(hostTNode,hostLView){let lContainer,slotValue=hostLView[hostTNode.index];return isLContainer(slotValue)?lContainer=slotValue:(lContainer=createLContainer(slotValue,hostLView,null,hostTNode),hostLView[hostTNode.index]=lContainer,addToEndOfViewTree(hostLView,lContainer)),_locateOrCreateAnchorNode(lContainer,hostLView,hostTNode,slotValue),new R3ViewContainerRef(lContainer,hostTNode,hostLView)}function insertAnchorNode(hostLView,hostTNode){let renderer=hostLView[RENDERER],commentNode=renderer.createComment(""),hostNative=getNativeByTNode(hostTNode,hostLView),parentOfHostNative=renderer.parentNode(hostNative);return nativeInsertBefore(renderer,parentOfHostNative,commentNode,renderer.nextSibling(hostNative),!1),commentNode}var _locateOrCreateAnchorNode=createAnchorNode,_populateDehydratedViewsInLContainer=()=>!1;function populateDehydratedViewsInLContainer(lContainer,tNode,hostLView){return _populateDehydratedViewsInLContainer(lContainer,tNode,hostLView)}function createAnchorNode(lContainer,hostLView,hostTNode,slotValue){if(lContainer[NATIVE])return;let commentNode;hostTNode.type&8?commentNode=unwrapRNode(slotValue):commentNode=insertAnchorNode(hostLView,hostTNode),lContainer[NATIVE]=commentNode}var LQuery_=class _LQuery_{queryList;matches=null;constructor(queryList){this.queryList=queryList}clone(){return new _LQuery_(this.queryList)}setDirty(){this.queryList.setDirty()}},LQueries_=class _LQueries_{queries;constructor(queries=[]){this.queries=queries}createEmbeddedView(tView){let tQueries=tView.queries;if(tQueries!==null){let noOfInheritedQueries=tView.contentQueries!==null?tView.contentQueries[0]:tQueries.length,viewLQueries=[];for(let i=0;i<noOfInheritedQueries;i++){let tQuery=tQueries.getByIndex(i),parentLQuery=this.queries[tQuery.indexInDeclarationView];viewLQueries.push(parentLQuery.clone())}return new _LQueries_(viewLQueries)}return null}insertView(tView){this.dirtyQueriesWithMatches(tView)}detachView(tView){this.dirtyQueriesWithMatches(tView)}finishViewCreation(tView){this.dirtyQueriesWithMatches(tView)}dirtyQueriesWithMatches(tView){for(let i=0;i<this.queries.length;i++)getTQuery(tView,i).matches!==null&&this.queries[i].setDirty()}},TQueryMetadata_=class{flags;read;predicate;constructor(predicate,flags,read=null){this.flags=flags,this.read=read,typeof predicate=="string"?this.predicate=splitQueryMultiSelectors(predicate):this.predicate=predicate}},TQueries_=class _TQueries_{queries;constructor(queries=[]){this.queries=queries}elementStart(tView,tNode){for(let i=0;i<this.queries.length;i++)this.queries[i].elementStart(tView,tNode)}elementEnd(tNode){for(let i=0;i<this.queries.length;i++)this.queries[i].elementEnd(tNode)}embeddedTView(tNode){let queriesForTemplateRef=null;for(let i=0;i<this.length;i++){let childQueryIndex=queriesForTemplateRef!==null?queriesForTemplateRef.length:0,tqueryClone=this.getByIndex(i).embeddedTView(tNode,childQueryIndex);tqueryClone&&(tqueryClone.indexInDeclarationView=i,queriesForTemplateRef!==null?queriesForTemplateRef.push(tqueryClone):queriesForTemplateRef=[tqueryClone])}return queriesForTemplateRef!==null?new _TQueries_(queriesForTemplateRef):null}template(tView,tNode){for(let i=0;i<this.queries.length;i++)this.queries[i].template(tView,tNode)}getByIndex(index){return this.queries[index]}get length(){return this.queries.length}track(tquery){this.queries.push(tquery)}},TQuery_=class _TQuery_{metadata;matches=null;indexInDeclarationView=-1;crossesNgTemplate=!1;_declarationNodeIndex;_appliesToNextNode=!0;constructor(metadata,nodeIndex=-1){this.metadata=metadata,this._declarationNodeIndex=nodeIndex}elementStart(tView,tNode){this.isApplyingToNode(tNode)&&this.matchTNode(tView,tNode)}elementEnd(tNode){this._declarationNodeIndex===tNode.index&&(this._appliesToNextNode=!1)}template(tView,tNode){this.elementStart(tView,tNode)}embeddedTView(tNode,childQueryIndex){return this.isApplyingToNode(tNode)?(this.crossesNgTemplate=!0,this.addMatch(-tNode.index,childQueryIndex),new _TQuery_(this.metadata)):null}isApplyingToNode(tNode){if(this._appliesToNextNode&&(this.metadata.flags&1)!==1){let declarationNodeIdx=this._declarationNodeIndex,parent=tNode.parent;for(;parent!==null&&parent.type&8&&parent.index!==declarationNodeIdx;)parent=parent.parent;return declarationNodeIdx===(parent!==null?parent.index:-1)}return this._appliesToNextNode}matchTNode(tView,tNode){let predicate=this.metadata.predicate;if(Array.isArray(predicate))for(let i=0;i<predicate.length;i++){let name=predicate[i];this.matchTNodeWithReadOption(tView,tNode,getIdxOfMatchingSelector(tNode,name)),this.matchTNodeWithReadOption(tView,tNode,locateDirectiveOrProvider(tNode,tView,name,!1,!1))}else predicate===TemplateRef?tNode.type&4&&this.matchTNodeWithReadOption(tView,tNode,-1):this.matchTNodeWithReadOption(tView,tNode,locateDirectiveOrProvider(tNode,tView,predicate,!1,!1))}matchTNodeWithReadOption(tView,tNode,nodeMatchIdx){if(nodeMatchIdx!==null){let read=this.metadata.read;if(read!==null)if(read===ElementRef||read===ViewContainerRef||read===TemplateRef&&tNode.type&4)this.addMatch(tNode.index,-2);else{let directiveOrProviderIdx=locateDirectiveOrProvider(tNode,tView,read,!1,!1);directiveOrProviderIdx!==null&&this.addMatch(tNode.index,directiveOrProviderIdx)}else this.addMatch(tNode.index,nodeMatchIdx)}}addMatch(tNodeIdx,matchIdx){this.matches===null?this.matches=[tNodeIdx,matchIdx]:this.matches.push(tNodeIdx,matchIdx)}};function getIdxOfMatchingSelector(tNode,selector){let localNames=tNode.localNames;if(localNames!==null){for(let i=0;i<localNames.length;i+=2)if(localNames[i]===selector)return localNames[i+1]}return null}function createResultByTNodeType(tNode,currentView){return tNode.type&11?createElementRef(tNode,currentView):tNode.type&4?createTemplateRef(tNode,currentView):null}function createResultForNode(lView,tNode,matchingIdx,read){return matchingIdx===-1?createResultByTNodeType(tNode,lView):matchingIdx===-2?createSpecialToken(lView,tNode,read):getNodeInjectable(lView,lView[TVIEW],matchingIdx,tNode)}function createSpecialToken(lView,tNode,read){if(read===ElementRef)return createElementRef(tNode,lView);if(read===TemplateRef)return createTemplateRef(tNode,lView);if(read===ViewContainerRef)return createContainerRef(tNode,lView)}function materializeViewResults(tView,lView,tQuery,queryIndex){let lQuery=lView[QUERIES].queries[queryIndex];if(lQuery.matches===null){let tViewData=tView.data,tQueryMatches=tQuery.matches,result=[];for(let i=0;tQueryMatches!==null&&i<tQueryMatches.length;i+=2){let matchedNodeIdx=tQueryMatches[i];if(matchedNodeIdx<0)result.push(null);else{let tNode=tViewData[matchedNodeIdx];result.push(createResultForNode(lView,tNode,tQueryMatches[i+1],tQuery.metadata.read))}}lQuery.matches=result}return lQuery.matches}function collectQueryResults(tView,lView,queryIndex,result){let tQuery=tView.queries.getByIndex(queryIndex),tQueryMatches=tQuery.matches;if(tQueryMatches!==null){let lViewResults=materializeViewResults(tView,lView,tQuery,queryIndex);for(let i=0;i<tQueryMatches.length;i+=2){let tNodeIdx=tQueryMatches[i];if(tNodeIdx>0)result.push(lViewResults[i/2]);else{let childQueryIndex=tQueryMatches[i+1],declarationLContainer=lView[-tNodeIdx];for(let i2=CONTAINER_HEADER_OFFSET;i2<declarationLContainer.length;i2++){let embeddedLView=declarationLContainer[i2];embeddedLView[DECLARATION_LCONTAINER]===embeddedLView[PARENT]&&collectQueryResults(embeddedLView[TVIEW],embeddedLView,childQueryIndex,result)}if(declarationLContainer[MOVED_VIEWS]!==null){let embeddedLViews=declarationLContainer[MOVED_VIEWS];for(let i2=0;i2<embeddedLViews.length;i2++){let embeddedLView=embeddedLViews[i2];collectQueryResults(embeddedLView[TVIEW],embeddedLView,childQueryIndex,result)}}}}}return result}function loadQueryInternal(lView,queryIndex){return lView[QUERIES].queries[queryIndex].queryList}function createLQuery(tView,lView,flags){let queryList=new QueryList((flags&4)===4);return storeCleanupWithContext(tView,lView,queryList,queryList.destroy),(lView[QUERIES]??=new LQueries_).queries.push(new LQuery_(queryList))-1}function createViewQuery(predicate,flags,read){let tView=getTView();return tView.firstCreatePass&&(createTQuery(tView,new TQueryMetadata_(predicate,flags,read),-1),(flags&2)===2&&(tView.staticViewQueries=!0)),createLQuery(tView,getLView(),flags)}function createContentQuery(directiveIndex,predicate,flags,read){let tView=getTView();if(tView.firstCreatePass){let tNode=getCurrentTNode();createTQuery(tView,new TQueryMetadata_(predicate,flags,read),tNode.index),saveContentQueryAndDirectiveIndex(tView,directiveIndex),(flags&2)===2&&(tView.staticContentQueries=!0)}return createLQuery(tView,getLView(),flags)}function splitQueryMultiSelectors(locator){return locator.split(",").map(s=>s.trim())}function createTQuery(tView,metadata,nodeIndex){tView.queries===null&&(tView.queries=new TQueries_),tView.queries.track(new TQuery_(metadata,nodeIndex))}function saveContentQueryAndDirectiveIndex(tView,directiveIndex){let tViewContentQueries=tView.contentQueries||(tView.contentQueries=[]),lastSavedDirectiveIndex=tViewContentQueries.length?tViewContentQueries[tViewContentQueries.length-1]:-1;directiveIndex!==lastSavedDirectiveIndex&&tViewContentQueries.push(tView.queries.length-1,directiveIndex)}function getTQuery(tView,index){return tView.queries.getByIndex(index)}function getQueryResults(lView,queryIndex){let tView=lView[TVIEW],tQuery=getTQuery(tView,queryIndex);return tQuery.crossesNgTemplate?collectQueryResults(tView,lView,queryIndex,[]):materializeViewResults(tView,lView,tQuery,queryIndex)}function createQuerySignalFn(firstOnly,required2,opts){let node,signalFn=createComputed(()=>{node._dirtyCounter();let value=refreshSignalQuery(node,firstOnly);if(required2&&value===void 0)throw new RuntimeError(-951,!1);return value});return node=signalFn[SIGNAL],node._dirtyCounter=signal(0),node._flatValue=void 0,signalFn}function createSingleResultOptionalQuerySignalFn(opts){return createQuerySignalFn(!0,!1,opts)}function createSingleResultRequiredQuerySignalFn(opts){return createQuerySignalFn(!0,!0,opts)}function bindQueryToSignal(target,queryIndex){let node=target[SIGNAL];node._lView=getLView(),node._queryIndex=queryIndex,node._queryList=loadQueryInternal(node._lView,queryIndex),node._queryList.onDirty(()=>node._dirtyCounter.update(v=>v+1))}function refreshSignalQuery(node,firstOnly){let lView=node._lView,queryIndex=node._queryIndex;if(lView===void 0||queryIndex===void 0||lView[FLAGS]&4)return firstOnly?void 0:EMPTY_ARRAY;let queryList=loadQueryInternal(lView,queryIndex),results=getQueryResults(lView,queryIndex);return queryList.reset(results,unwrapElementRef),firstOnly?queryList.first:queryList._changesDetected||node._flatValue===void 0?node._flatValue=queryList.toArray():node._flatValue}function resolveComponentResources(resourceResolver){let componentResolved=[],urlMap=new Map;function cachedResourceResolve(url){let promise=urlMap.get(url);if(!promise){let resp=resourceResolver(url);urlMap.set(url,promise=resp.then(res=>unwrapResponse(url,res)))}return promise}return componentResourceResolutionQueue.forEach((component,type2)=>{let promises=[];component.templateUrl&&promises.push(cachedResourceResolve(component.templateUrl).then(template=>{component.template=template}));let styles=typeof component.styles=="string"?[component.styles]:component.styles||[];if(component.styles=styles,component.styleUrl&&component.styleUrls?.length)throw new Error("@Component cannot define both `styleUrl` and `styleUrls`. Use `styleUrl` if the component has one stylesheet, or `styleUrls` if it has multiple");if(component.styleUrls?.length){let styleOffset=component.styles.length,styleUrls=component.styleUrls;component.styleUrls.forEach((styleUrl,index)=>{styles.push(""),promises.push(cachedResourceResolve(styleUrl).then(style2=>{styles[styleOffset+index]=style2,styleUrls.splice(styleUrls.indexOf(styleUrl),1),styleUrls.length==0&&(component.styleUrls=void 0)}))})}else component.styleUrl&&promises.push(cachedResourceResolve(component.styleUrl).then(style2=>{styles.push(style2),component.styleUrl=void 0}));let fullyResolved=Promise.all(promises).then(()=>componentDefResolved(type2));componentResolved.push(fullyResolved)}),clearResolutionOfComponentResourcesQueue(),Promise.all(componentResolved).then(()=>{})}var componentResourceResolutionQueue=new Map,componentDefPendingResolution=new Set;function clearResolutionOfComponentResourcesQueue(){let old=componentResourceResolutionQueue;return componentResourceResolutionQueue=new Map,old}function isComponentResourceResolutionQueueEmpty(){return componentResourceResolutionQueue.size===0}function unwrapResponse(url,response){return typeof response=="string"?response:response.status!==void 0&&response.status!==200?Promise.reject(new RuntimeError(918,!1)):response.text()}function componentDefResolved(type2){componentDefPendingResolution.delete(type2)}var markedFeatures=new Set;function performanceMarkFeature(feature3){markedFeatures.has(feature3)||(markedFeatures.add(feature3),performance?.mark?.("mark_feature_usage",{detail:{feature:feature3}}))}var NgModuleRef$1=class{},NgModuleFactory$1=class{};var NgModuleRef2=class extends NgModuleRef$1{ngModuleType;_parent;_bootstrapComponents=[];_r3Injector;instance;destroyCbs=[];componentFactoryResolver=new ComponentFactoryResolver2(this);constructor(ngModuleType,_parent,additionalProviders,runInjectorInitializers=!0){super(),this.ngModuleType=ngModuleType,this._parent=_parent;let ngModuleDef=getNgModuleDef(ngModuleType);this._bootstrapComponents=maybeUnwrapFn(ngModuleDef.bootstrap),this._r3Injector=createInjectorWithoutInjectorInstances(ngModuleType,_parent,[{provide:NgModuleRef$1,useValue:this},{provide:ComponentFactoryResolver$1,useValue:this.componentFactoryResolver},...additionalProviders],stringify(ngModuleType),new Set(["environment"])),runInjectorInitializers&&this.resolveInjectorInitializers()}resolveInjectorInitializers(){this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(this.ngModuleType)}get injector(){return this._r3Injector}destroy(){let injector=this._r3Injector;!injector.destroyed&&injector.destroy(),this.destroyCbs.forEach(fn=>fn()),this.destroyCbs=null}onDestroy(callback){this.destroyCbs.push(callback)}},NgModuleFactory2=class extends NgModuleFactory$1{moduleType;constructor(moduleType){super(),this.moduleType=moduleType}create(parentInjector){return new NgModuleRef2(this.moduleType,parentInjector,[])}};function createNgModuleRefWithProviders(moduleType,parentInjector,additionalProviders){return new NgModuleRef2(moduleType,parentInjector,additionalProviders,!1)}var EnvironmentNgModuleRefAdapter=class extends NgModuleRef$1{injector;componentFactoryResolver=new ComponentFactoryResolver2(this);instance=null;constructor(config2){super();let injector=new R3Injector([...config2.providers,{provide:NgModuleRef$1,useValue:this},{provide:ComponentFactoryResolver$1,useValue:this.componentFactoryResolver}],config2.parent||getNullInjector(),config2.debugName,new Set(["environment"]));this.injector=injector,config2.runEnvironmentInitializers&&injector.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(callback){this.injector.onDestroy(callback)}};function createEnvironmentInjector(providers,parent,debugName=null){return new EnvironmentNgModuleRefAdapter({providers,parent,debugName,runEnvironmentInitializers:!0}).injector}var StandaloneService=(()=>{class StandaloneService2{_injector;cachedInjectors=new Map;constructor(_injector){this._injector=_injector}getOrCreateStandaloneInjector(componentDef){if(!componentDef.standalone)return null;if(!this.cachedInjectors.has(componentDef)){let providers=internalImportProvidersFrom(!1,componentDef.type),standaloneInjector=providers.length>0?createEnvironmentInjector([providers],this._injector,`Standalone[${componentDef.type.name}]`):null;this.cachedInjectors.set(componentDef,standaloneInjector)}return this.cachedInjectors.get(componentDef)}ngOnDestroy(){try{for(let injector of this.cachedInjectors.values())injector!==null&&injector.destroy()}finally{this.cachedInjectors.clear()}}static \u0275prov=\u0275\u0275defineInjectable({token:StandaloneService2,providedIn:"environment",factory:()=>new StandaloneService2(\u0275\u0275inject(EnvironmentInjector))})}return StandaloneService2})();function \u0275\u0275defineComponent(componentDefinition){return noSideEffects(()=>{let baseDef=getNgDirectiveDef(componentDefinition),def=__spreadProps(__spreadValues({},baseDef),{decls:componentDefinition.decls,vars:componentDefinition.vars,template:componentDefinition.template,consts:componentDefinition.consts||null,ngContentSelectors:componentDefinition.ngContentSelectors,onPush:componentDefinition.changeDetection===ChangeDetectionStrategy.OnPush,directiveDefs:null,pipeDefs:null,dependencies:baseDef.standalone&&componentDefinition.dependencies||null,getStandaloneInjector:baseDef.standalone?parentInjector=>parentInjector.get(StandaloneService).getOrCreateStandaloneInjector(def):null,getExternalStyles:null,signals:componentDefinition.signals??!1,data:componentDefinition.data||{},encapsulation:componentDefinition.encapsulation||ViewEncapsulation.Emulated,styles:componentDefinition.styles||EMPTY_ARRAY,_:null,schemas:componentDefinition.schemas||null,tView:null,id:""});baseDef.standalone&&performanceMarkFeature("NgStandalone"),initFeatures(def);let dependencies=componentDefinition.dependencies;return def.directiveDefs=extractDefListOrFactory(dependencies,extractDirectiveDef),def.pipeDefs=extractDefListOrFactory(dependencies,getPipeDef),def.id=getComponentId(def),def})}function extractDirectiveDef(type2){return getComponentDef(type2)||getDirectiveDef(type2)}function \u0275\u0275defineNgModule(def){return noSideEffects(()=>({type:def.type,bootstrap:def.bootstrap||EMPTY_ARRAY,declarations:def.declarations||EMPTY_ARRAY,imports:def.imports||EMPTY_ARRAY,exports:def.exports||EMPTY_ARRAY,transitiveCompileScopes:null,schemas:def.schemas||null,id:def.id||null}))}function parseAndConvertInputsForDefinition(obj,declaredInputs){if(obj==null)return EMPTY_OBJ;let newLookup={};for(let minifiedKey in obj)if(obj.hasOwnProperty(minifiedKey)){let value=obj[minifiedKey],publicName,declaredName,inputFlags,transform;Array.isArray(value)?(inputFlags=value[0],publicName=value[1],declaredName=value[2]??publicName,transform=value[3]||null):(publicName=value,declaredName=value,inputFlags=InputFlags.None,transform=null),newLookup[publicName]=[minifiedKey,inputFlags,transform],declaredInputs[publicName]=declaredName}return newLookup}function parseAndConvertOutputsForDefinition(obj){if(obj==null)return EMPTY_OBJ;let newLookup={};for(let minifiedKey in obj)obj.hasOwnProperty(minifiedKey)&&(newLookup[obj[minifiedKey]]=minifiedKey);return newLookup}function \u0275\u0275defineDirective(directiveDefinition){return noSideEffects(()=>{let def=getNgDirectiveDef(directiveDefinition);return initFeatures(def),def})}function \u0275\u0275definePipe(pipeDef){return{type:pipeDef.type,name:pipeDef.name,factory:null,pure:pipeDef.pure!==!1,standalone:pipeDef.standalone??!0,onDestroy:pipeDef.type.prototype.ngOnDestroy||null}}function getNgDirectiveDef(directiveDefinition){let declaredInputs={};return{type:directiveDefinition.type,providersResolver:null,factory:null,hostBindings:directiveDefinition.hostBindings||null,hostVars:directiveDefinition.hostVars||0,hostAttrs:directiveDefinition.hostAttrs||null,contentQueries:directiveDefinition.contentQueries||null,declaredInputs,inputConfig:directiveDefinition.inputs||EMPTY_OBJ,exportAs:directiveDefinition.exportAs||null,standalone:directiveDefinition.standalone??!0,signals:directiveDefinition.signals===!0,selectors:directiveDefinition.selectors||EMPTY_ARRAY,viewQuery:directiveDefinition.viewQuery||null,features:directiveDefinition.features||null,setInput:null,resolveHostDirectives:null,hostDirectives:null,inputs:parseAndConvertInputsForDefinition(directiveDefinition.inputs,declaredInputs),outputs:parseAndConvertOutputsForDefinition(directiveDefinition.outputs),debugInfo:null}}function initFeatures(definition){definition.features?.forEach(fn=>fn(definition))}function extractDefListOrFactory(dependencies,defExtractor){return dependencies?()=>{let resolvedDependencies=typeof dependencies=="function"?dependencies():dependencies,result=[];for(let dep of resolvedDependencies){let definition=defExtractor(dep);definition!==null&&result.push(definition)}return result}:null}function getComponentId(componentDef){let hash=0,componentDefConsts=typeof componentDef.consts=="function"?"":componentDef.consts,hashSelectors=[componentDef.selectors,componentDef.ngContentSelectors,componentDef.hostVars,componentDef.hostAttrs,componentDefConsts,componentDef.vars,componentDef.decls,componentDef.encapsulation,componentDef.standalone,componentDef.signals,componentDef.exportAs,JSON.stringify(componentDef.inputs),JSON.stringify(componentDef.outputs),Object.getOwnPropertyNames(componentDef.type.prototype),!!componentDef.contentQueries,!!componentDef.viewQuery];for(let char of hashSelectors.join("|"))hash=Math.imul(31,hash)+char.charCodeAt(0)<<0;return hash+=2147483648,"c"+hash}function getSuperType(type2){return Object.getPrototypeOf(type2.prototype).constructor}function \u0275\u0275InheritDefinitionFeature(definition){let superType=getSuperType(definition.type),shouldInheritFields=!0,inheritanceChain=[definition];for(;superType;){let superDef;if(isComponentDef(definition))superDef=superType.\u0275cmp||superType.\u0275dir;else{if(superType.\u0275cmp)throw new RuntimeError(903,!1);superDef=superType.\u0275dir}if(superDef){if(shouldInheritFields){inheritanceChain.push(superDef);let writeableDef=definition;writeableDef.inputs=maybeUnwrapEmpty(definition.inputs),writeableDef.declaredInputs=maybeUnwrapEmpty(definition.declaredInputs),writeableDef.outputs=maybeUnwrapEmpty(definition.outputs);let superHostBindings=superDef.hostBindings;superHostBindings&&inheritHostBindings(definition,superHostBindings);let superViewQuery=superDef.viewQuery,superContentQueries=superDef.contentQueries;if(superViewQuery&&inheritViewQuery(definition,superViewQuery),superContentQueries&&inheritContentQueries(definition,superContentQueries),mergeInputsWithTransforms(definition,superDef),fillProperties(definition.outputs,superDef.outputs),isComponentDef(superDef)&&superDef.data.animation){let defData=definition.data;defData.animation=(defData.animation||[]).concat(superDef.data.animation)}}let features=superDef.features;if(features)for(let i=0;i<features.length;i++){let feature3=features[i];feature3&&feature3.ngInherit&&feature3(definition),feature3===\u0275\u0275InheritDefinitionFeature&&(shouldInheritFields=!1)}}superType=Object.getPrototypeOf(superType)}mergeHostAttrsAcrossInheritance(inheritanceChain)}function mergeInputsWithTransforms(target,source){for(let key in source.inputs){if(!source.inputs.hasOwnProperty(key)||target.inputs.hasOwnProperty(key))continue;let value=source.inputs[key];value!==void 0&&(target.inputs[key]=value,target.declaredInputs[key]=source.declaredInputs[key])}}function mergeHostAttrsAcrossInheritance(inheritanceChain){let hostVars=0,hostAttrs=null;for(let i=inheritanceChain.length-1;i>=0;i--){let def=inheritanceChain[i];def.hostVars=hostVars+=def.hostVars,def.hostAttrs=mergeHostAttrs(def.hostAttrs,hostAttrs=mergeHostAttrs(hostAttrs,def.hostAttrs))}}function maybeUnwrapEmpty(value){return value===EMPTY_OBJ?{}:value===EMPTY_ARRAY?[]:value}function inheritViewQuery(definition,superViewQuery){let prevViewQuery=definition.viewQuery;prevViewQuery?definition.viewQuery=(rf,ctx)=>{superViewQuery(rf,ctx),prevViewQuery(rf,ctx)}:definition.viewQuery=superViewQuery}function inheritContentQueries(definition,superContentQueries){let prevContentQueries=definition.contentQueries;prevContentQueries?definition.contentQueries=(rf,ctx,directiveIndex)=>{superContentQueries(rf,ctx,directiveIndex),prevContentQueries(rf,ctx,directiveIndex)}:definition.contentQueries=superContentQueries}function inheritHostBindings(definition,superHostBindings){let prevHostBindings=definition.hostBindings;prevHostBindings?definition.hostBindings=(rf,ctx)=>{superHostBindings(rf,ctx),prevHostBindings(rf,ctx)}:definition.hostBindings=superHostBindings}function \u0275\u0275HostDirectivesFeature(rawHostDirectives){let feature3=definition=>{let isEager=Array.isArray(rawHostDirectives);definition.hostDirectives===null?(definition.resolveHostDirectives=resolveHostDirectives,definition.hostDirectives=isEager?rawHostDirectives.map(createHostDirectiveDef):[rawHostDirectives]):isEager?definition.hostDirectives.unshift(...rawHostDirectives.map(createHostDirectiveDef)):definition.hostDirectives.unshift(rawHostDirectives)};return feature3.ngInherit=!0,feature3}function resolveHostDirectives(matches){let allDirectiveDefs=[],hasComponent=!1,hostDirectiveDefs=null,hostDirectiveRanges=null;for(let i=0;i<matches.length;i++){let def=matches[i];if(def.hostDirectives!==null){let start=allDirectiveDefs.length;hostDirectiveDefs??=new Map,hostDirectiveRanges??=new Map,findHostDirectiveDefs(def,allDirectiveDefs,hostDirectiveDefs),hostDirectiveRanges.set(def,[start,allDirectiveDefs.length-1])}i===0&&isComponentDef(def)&&(hasComponent=!0,allDirectiveDefs.push(def))}for(let i=hasComponent?1:0;i<matches.length;i++)allDirectiveDefs.push(matches[i]);return[allDirectiveDefs,hostDirectiveDefs,hostDirectiveRanges]}function findHostDirectiveDefs(currentDef,matchedDefs,hostDirectiveDefs){if(currentDef.hostDirectives!==null)for(let configOrFn of currentDef.hostDirectives)if(typeof configOrFn=="function"){let resolved2=configOrFn();for(let config2 of resolved2)trackHostDirectiveDef(createHostDirectiveDef(config2),matchedDefs,hostDirectiveDefs)}else trackHostDirectiveDef(configOrFn,matchedDefs,hostDirectiveDefs)}function trackHostDirectiveDef(def,matchedDefs,hostDirectiveDefs){let hostDirectiveDef=getDirectiveDef(def.directive);patchDeclaredInputs(hostDirectiveDef.declaredInputs,def.inputs),findHostDirectiveDefs(hostDirectiveDef,matchedDefs,hostDirectiveDefs),hostDirectiveDefs.set(hostDirectiveDef,def),matchedDefs.push(hostDirectiveDef)}function createHostDirectiveDef(config2){return typeof config2=="function"?{directive:resolveForwardRef(config2),inputs:EMPTY_OBJ,outputs:EMPTY_OBJ}:{directive:resolveForwardRef(config2.directive),inputs:bindingArrayToMap(config2.inputs),outputs:bindingArrayToMap(config2.outputs)}}function bindingArrayToMap(bindings){if(bindings===void 0||bindings.length===0)return EMPTY_OBJ;let result={};for(let i=0;i<bindings.length;i+=2)result[bindings[i]]=bindings[i+1];return result}function patchDeclaredInputs(declaredInputs,exposedInputs){for(let publicName in exposedInputs)if(exposedInputs.hasOwnProperty(publicName)){let remappedPublicName=exposedInputs[publicName],privateName=declaredInputs[publicName];declaredInputs[remappedPublicName]=privateName}}function templateCreate(tNode,declarationLView,declarationTView,index,templateFn,decls,vars,flags){if(declarationTView.firstCreatePass){tNode.mergedAttrs=mergeHostAttrs(tNode.mergedAttrs,tNode.attrs);let embeddedTView=tNode.tView=createTView(2,tNode,templateFn,decls,vars,declarationTView.directiveRegistry,declarationTView.pipeRegistry,null,declarationTView.schemas,declarationTView.consts,null);declarationTView.queries!==null&&(declarationTView.queries.template(declarationTView,tNode),embeddedTView.queries=declarationTView.queries.embeddedTView(tNode))}flags&&(tNode.flags|=flags),setCurrentTNode(tNode,!1);let comment=_locateOrCreateContainerAnchor(declarationTView,declarationLView,tNode,index);wasLastNodeCreated()&&appendChild(declarationTView,declarationLView,comment,tNode),attachPatchData(comment,declarationLView);let lContainer=createLContainer(comment,declarationLView,comment,tNode);declarationLView[index+HEADER_OFFSET]=lContainer,addToEndOfViewTree(declarationLView,lContainer),populateDehydratedViewsInLContainer(lContainer,tNode,declarationLView)}function declareDirectiveHostTemplate(declarationLView,declarationTView,index,templateFn,decls,vars,tagName,attrs,flags,localRefsIndex,localRefExtractor){let adjustedIndex=index+HEADER_OFFSET,tNode;return declarationTView.firstCreatePass?(tNode=getOrCreateTNode(declarationTView,adjustedIndex,4,tagName||null,attrs||null),getBindingsEnabled()&&resolveDirectives(declarationTView,declarationLView,tNode,getConstant(declarationTView.consts,localRefsIndex),findDirectiveDefMatches),registerPostOrderHooks(declarationTView,tNode)):tNode=declarationTView.data[adjustedIndex],templateCreate(tNode,declarationLView,declarationTView,index,templateFn,decls,vars,flags),isDirectiveHost(tNode)&&createDirectivesInstances(declarationTView,declarationLView,tNode),localRefsIndex!=null&&saveResolvedLocalsInData(declarationLView,tNode,localRefExtractor),tNode}function declareNoDirectiveHostTemplate(declarationLView,declarationTView,index,templateFn,decls,vars,tagName,attrs,flags,localRefsIndex,localRefExtractor){let adjustedIndex=index+HEADER_OFFSET,tNode;if(declarationTView.firstCreatePass){if(tNode=getOrCreateTNode(declarationTView,adjustedIndex,4,tagName||null,attrs||null),localRefsIndex!=null){let refs=getConstant(declarationTView.consts,localRefsIndex);tNode.localNames=[];for(let i=0;i<refs.length;i+=2)tNode.localNames.push(refs[i],-1)}}else tNode=declarationTView.data[adjustedIndex];return templateCreate(tNode,declarationLView,declarationTView,index,templateFn,decls,vars,flags),localRefsIndex!=null&&saveResolvedLocalsInData(declarationLView,tNode,localRefExtractor),tNode}function \u0275\u0275template(index,templateFn,decls,vars,tagName,attrsIndex,localRefsIndex,localRefExtractor){let lView=getLView(),tView=getTView(),attrs=getConstant(tView.consts,attrsIndex);return declareDirectiveHostTemplate(lView,tView,index,templateFn,decls,vars,tagName,attrs,void 0,localRefsIndex,localRefExtractor),\u0275\u0275template}function \u0275\u0275domTemplate(index,templateFn,decls,vars,tagName,attrsIndex,localRefsIndex,localRefExtractor){let lView=getLView(),tView=getTView(),attrs=getConstant(tView.consts,attrsIndex);return declareNoDirectiveHostTemplate(lView,tView,index,templateFn,decls,vars,tagName,attrs,void 0,localRefsIndex,localRefExtractor),\u0275\u0275domTemplate}var _locateOrCreateContainerAnchor=createContainerAnchorImpl;function createContainerAnchorImpl(tView,lView,tNode,index){return lastNodeWasCreated(!0),lView[RENDERER].createComment("")}var TracingAction=(function(TracingAction2){return TracingAction2[TracingAction2.CHANGE_DETECTION=0]="CHANGE_DETECTION",TracingAction2[TracingAction2.AFTER_NEXT_RENDER=1]="AFTER_NEXT_RENDER",TracingAction2})(TracingAction||{}),TracingService=new InjectionToken(""),SCHEDULE_IN_ROOT_ZONE_DEFAULT=!1,EventEmitter_=class extends Subject{__isAsync;destroyRef=void 0;pendingTasks=void 0;constructor(isAsync=!1){super(),this.__isAsync=isAsync,isInInjectionContext()&&(this.destroyRef=inject2(DestroyRef,{optional:!0})??void 0,this.pendingTasks=inject2(PendingTasksInternal,{optional:!0})??void 0)}emit(value){let prevConsumer=setActiveConsumer(null);try{super.next(value)}finally{setActiveConsumer(prevConsumer)}}subscribe(observerOrNext,error,complete){let nextFn=observerOrNext,errorFn=error||(()=>null),completeFn=complete;if(observerOrNext&&typeof observerOrNext=="object"){let observer=observerOrNext;nextFn=observer.next?.bind(observer),errorFn=observer.error?.bind(observer),completeFn=observer.complete?.bind(observer)}this.__isAsync&&(errorFn=this.wrapInTimeout(errorFn),nextFn&&(nextFn=this.wrapInTimeout(nextFn)),completeFn&&(completeFn=this.wrapInTimeout(completeFn)));let sink=super.subscribe({next:nextFn,error:errorFn,complete:completeFn});return observerOrNext instanceof Subscription&&observerOrNext.add(sink),sink}wrapInTimeout(fn){return value=>{let taskId=this.pendingTasks?.add();setTimeout(()=>{try{fn(value)}finally{taskId!==void 0&&this.pendingTasks?.remove(taskId)}})}}},EventEmitter=EventEmitter_;function scheduleCallbackWithRafRace(callback){let timeoutId,animationFrameId;function cleanup(){callback=noop2;try{animationFrameId!==void 0&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(animationFrameId),timeoutId!==void 0&&clearTimeout(timeoutId)}catch{}}return timeoutId=setTimeout(()=>{callback(),cleanup()}),typeof requestAnimationFrame=="function"&&(animationFrameId=requestAnimationFrame(()=>{callback(),cleanup()})),()=>cleanup()}function scheduleCallbackWithMicrotask(callback){return queueMicrotask(()=>callback()),()=>{callback=noop2}}var isAngularZoneProperty="isAngularZone",angularZoneInstanceIdProperty=isAngularZoneProperty+"_ID",ngZoneInstanceId=0,NgZone=class _NgZone{hasPendingMacrotasks=!1;hasPendingMicrotasks=!1;isStable=!0;onUnstable=new EventEmitter(!1);onMicrotaskEmpty=new EventEmitter(!1);onStable=new EventEmitter(!1);onError=new EventEmitter(!1);constructor(options){let{enableLongStackTrace=!1,shouldCoalesceEventChangeDetection=!1,shouldCoalesceRunChangeDetection=!1,scheduleInRootZone=SCHEDULE_IN_ROOT_ZONE_DEFAULT}=options;if(typeof Zone>"u")throw new RuntimeError(908,!1);Zone.assertZonePatched();let self2=this;self2._nesting=0,self2._outer=self2._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(self2._inner=self2._inner.fork(new Zone.TaskTrackingZoneSpec)),enableLongStackTrace&&Zone.longStackTraceZoneSpec&&(self2._inner=self2._inner.fork(Zone.longStackTraceZoneSpec)),self2.shouldCoalesceEventChangeDetection=!shouldCoalesceRunChangeDetection&&shouldCoalesceEventChangeDetection,self2.shouldCoalesceRunChangeDetection=shouldCoalesceRunChangeDetection,self2.callbackScheduled=!1,self2.scheduleInRootZone=scheduleInRootZone,forkInnerZoneWithAngularBehavior(self2)}static isInAngularZone(){return typeof Zone<"u"&&Zone.current.get(isAngularZoneProperty)===!0}static assertInAngularZone(){if(!_NgZone.isInAngularZone())throw new RuntimeError(909,!1)}static assertNotInAngularZone(){if(_NgZone.isInAngularZone())throw new RuntimeError(909,!1)}run(fn,applyThis,applyArgs){return this._inner.run(fn,applyThis,applyArgs)}runTask(fn,applyThis,applyArgs,name){let zone=this._inner,task=zone.scheduleEventTask("NgZoneEvent: "+name,fn,EMPTY_PAYLOAD,noop2,noop2);try{return zone.runTask(task,applyThis,applyArgs)}finally{zone.cancelTask(task)}}runGuarded(fn,applyThis,applyArgs){return this._inner.runGuarded(fn,applyThis,applyArgs)}runOutsideAngular(fn){return this._outer.run(fn)}},EMPTY_PAYLOAD={};function checkStable(zone){if(zone._nesting==0&&!zone.hasPendingMicrotasks&&!zone.isStable)try{zone._nesting++,zone.onMicrotaskEmpty.emit(null)}finally{if(zone._nesting--,!zone.hasPendingMicrotasks)try{zone.runOutsideAngular(()=>zone.onStable.emit(null))}finally{zone.isStable=!0}}}function delayChangeDetectionForEvents(zone){if(zone.isCheckStableRunning||zone.callbackScheduled)return;zone.callbackScheduled=!0;function scheduleCheckStable(){scheduleCallbackWithRafRace(()=>{zone.callbackScheduled=!1,updateMicroTaskStatus(zone),zone.isCheckStableRunning=!0,checkStable(zone),zone.isCheckStableRunning=!1})}zone.scheduleInRootZone?Zone.root.run(()=>{scheduleCheckStable()}):zone._outer.run(()=>{scheduleCheckStable()}),updateMicroTaskStatus(zone)}function forkInnerZoneWithAngularBehavior(zone){let delayChangeDetectionForEventsDelegate=()=>{delayChangeDetectionForEvents(zone)},instanceId=ngZoneInstanceId++;zone._inner=zone._inner.fork({name:"angular",properties:{[isAngularZoneProperty]:!0,[angularZoneInstanceIdProperty]:instanceId,[angularZoneInstanceIdProperty+instanceId]:!0},onInvokeTask:(delegate,current,target,task,applyThis,applyArgs)=>{if(shouldBeIgnoredByZone(applyArgs))return delegate.invokeTask(target,task,applyThis,applyArgs);try{return onEnter(zone),delegate.invokeTask(target,task,applyThis,applyArgs)}finally{(zone.shouldCoalesceEventChangeDetection&&task.type==="eventTask"||zone.shouldCoalesceRunChangeDetection)&&delayChangeDetectionForEventsDelegate(),onLeave(zone)}},onInvoke:(delegate,current,target,callback,applyThis,applyArgs,source)=>{try{return onEnter(zone),delegate.invoke(target,callback,applyThis,applyArgs,source)}finally{zone.shouldCoalesceRunChangeDetection&&!zone.callbackScheduled&&!isSchedulerTick(applyArgs)&&delayChangeDetectionForEventsDelegate(),onLeave(zone)}},onHasTask:(delegate,current,target,hasTaskState)=>{delegate.hasTask(target,hasTaskState),current===target&&(hasTaskState.change=="microTask"?(zone._hasPendingMicrotasks=hasTaskState.microTask,updateMicroTaskStatus(zone),checkStable(zone)):hasTaskState.change=="macroTask"&&(zone.hasPendingMacrotasks=hasTaskState.macroTask))},onHandleError:(delegate,current,target,error)=>(delegate.handleError(target,error),zone.runOutsideAngular(()=>zone.onError.emit(error)),!1)})}function updateMicroTaskStatus(zone){zone._hasPendingMicrotasks||(zone.shouldCoalesceEventChangeDetection||zone.shouldCoalesceRunChangeDetection)&&zone.callbackScheduled===!0?zone.hasPendingMicrotasks=!0:zone.hasPendingMicrotasks=!1}function onEnter(zone){zone._nesting++,zone.isStable&&(zone.isStable=!1,zone.onUnstable.emit(null))}function onLeave(zone){zone._nesting--,checkStable(zone)}var NoopNgZone=class{hasPendingMicrotasks=!1;hasPendingMacrotasks=!1;isStable=!0;onUnstable=new EventEmitter;onMicrotaskEmpty=new EventEmitter;onStable=new EventEmitter;onError=new EventEmitter;run(fn,applyThis,applyArgs){return fn.apply(applyThis,applyArgs)}runGuarded(fn,applyThis,applyArgs){return fn.apply(applyThis,applyArgs)}runOutsideAngular(fn){return fn()}runTask(fn,applyThis,applyArgs,name){return fn.apply(applyThis,applyArgs)}};function shouldBeIgnoredByZone(applyArgs){return hasApplyArgsData(applyArgs,"__ignore_ng_zone__")}function isSchedulerTick(applyArgs){return hasApplyArgsData(applyArgs,"__scheduler_tick__")}function hasApplyArgsData(applyArgs,key){return!Array.isArray(applyArgs)||applyArgs.length!==1?!1:applyArgs[0]?.data?.[key]===!0}function getNgZone(ngZoneToUse="zone.js",options){return ngZoneToUse==="noop"?new NoopNgZone:ngZoneToUse==="zone.js"?new NgZone(options):ngZoneToUse}var AfterRenderManager=(()=>{class AfterRenderManager2{impl=null;execute(){this.impl?.execute()}static \u0275prov=\u0275\u0275defineInjectable({token:AfterRenderManager2,providedIn:"root",factory:()=>new AfterRenderManager2})}return AfterRenderManager2})(),AFTER_RENDER_PHASES=[0,1,2,3],AfterRenderImpl=(()=>{class AfterRenderImpl2{ngZone=inject2(NgZone);scheduler=inject2(ChangeDetectionScheduler);errorHandler=inject2(ErrorHandler,{optional:!0});sequences=new Set;deferredRegistrations=new Set;executing=!1;constructor(){inject2(TracingService,{optional:!0})}execute(){let hasSequencesToExecute=this.sequences.size>0;hasSequencesToExecute&&profiler(16),this.executing=!0;for(let phase of AFTER_RENDER_PHASES)for(let sequence2 of this.sequences)if(!(sequence2.erroredOrDestroyed||!sequence2.hooks[phase]))try{sequence2.pipelinedValue=this.ngZone.runOutsideAngular(()=>this.maybeTrace(()=>{let hookFn=sequence2.hooks[phase];return hookFn(sequence2.pipelinedValue)},sequence2.snapshot))}catch(err){sequence2.erroredOrDestroyed=!0,this.errorHandler?.handleError(err)}this.executing=!1;for(let sequence2 of this.sequences)sequence2.afterRun(),sequence2.once&&(this.sequences.delete(sequence2),sequence2.destroy());for(let sequence2 of this.deferredRegistrations)this.sequences.add(sequence2);this.deferredRegistrations.size>0&&this.scheduler.notify(7),this.deferredRegistrations.clear(),hasSequencesToExecute&&profiler(17)}register(sequence2){let{view}=sequence2;view!==void 0?((view[AFTER_RENDER_SEQUENCES_TO_ADD]??=[]).push(sequence2),markAncestorsForTraversal(view),view[FLAGS]|=8192):this.executing?this.deferredRegistrations.add(sequence2):this.addSequence(sequence2)}addSequence(sequence2){this.sequences.add(sequence2),this.scheduler.notify(7)}unregister(sequence2){this.executing&&this.sequences.has(sequence2)?(sequence2.erroredOrDestroyed=!0,sequence2.pipelinedValue=void 0,sequence2.once=!0):(this.sequences.delete(sequence2),this.deferredRegistrations.delete(sequence2))}maybeTrace(fn,snapshot){return snapshot?snapshot.run(TracingAction.AFTER_NEXT_RENDER,fn):fn()}static \u0275prov=\u0275\u0275defineInjectable({token:AfterRenderImpl2,providedIn:"root",factory:()=>new AfterRenderImpl2})}return AfterRenderImpl2})(),AfterRenderSequence=class{impl;hooks;view;once;snapshot;erroredOrDestroyed=!1;pipelinedValue=void 0;unregisterOnDestroy;constructor(impl,hooks,view,once,destroyRef,snapshot=null){this.impl=impl,this.hooks=hooks,this.view=view,this.once=once,this.snapshot=snapshot,this.unregisterOnDestroy=destroyRef?.onDestroy(()=>this.destroy())}afterRun(){this.erroredOrDestroyed=!1,this.pipelinedValue=void 0,this.snapshot?.dispose(),this.snapshot=null}destroy(){this.impl.unregister(this),this.unregisterOnDestroy?.();let scheduled2=this.view?.[AFTER_RENDER_SEQUENCES_TO_ADD];scheduled2&&(this.view[AFTER_RENDER_SEQUENCES_TO_ADD]=scheduled2.filter(s=>s!==this))}};function afterNextRender(callbackOrSpec,options){let injector=options?.injector??inject2(Injector);return performanceMarkFeature("NgAfterNextRender"),afterEveryRenderImpl(callbackOrSpec,injector,options,!0)}function getHooks(callbackOrSpec){return callbackOrSpec instanceof Function?[void 0,void 0,callbackOrSpec,void 0]:[callbackOrSpec.earlyRead,callbackOrSpec.write,callbackOrSpec.mixedReadWrite,callbackOrSpec.read]}function afterEveryRenderImpl(callbackOrSpec,injector,options,once){let manager=injector.get(AfterRenderManager);manager.impl??=injector.get(AfterRenderImpl);let tracing=injector.get(TracingService,null,{optional:!0}),destroyRef=options?.manualCleanup!==!0?injector.get(DestroyRef):null,viewContext=injector.get(ViewContext,null,{optional:!0}),sequence2=new AfterRenderSequence(manager.impl,getHooks(callbackOrSpec),viewContext?.view,once,destroyRef,tracing?.snapshot(null));return manager.impl.register(sequence2),sequence2}var Console=(()=>{class Console2{log(message){console.log(message)}warn(message){console.warn(message)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Console2)};static \u0275prov=\u0275\u0275defineInjectable({token:Console2,factory:Console2.\u0275fac,providedIn:"platform"})}return Console2})();var TESTABILITY=new InjectionToken(""),TESTABILITY_GETTER=new InjectionToken(""),Testability=(()=>{class Testability2{_ngZone;registry;_isZoneStable=!0;_callbacks=[];_taskTrackingZone=null;_destroyRef;constructor(_ngZone,registry2,testabilityGetter){this._ngZone=_ngZone,this.registry=registry2,isInInjectionContext()&&(this._destroyRef=inject2(DestroyRef,{optional:!0})??void 0),_testabilityGetter||(setTestabilityGetter(testabilityGetter),testabilityGetter.addToWindow(registry2)),this._watchAngularEvents(),_ngZone.run(()=>{this._taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){let onUnstableSubscription=this._ngZone.onUnstable.subscribe({next:()=>{this._isZoneStable=!1}}),onStableSubscription=this._ngZone.runOutsideAngular(()=>this._ngZone.onStable.subscribe({next:()=>{NgZone.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}}));this._destroyRef?.onDestroy(()=>{onUnstableSubscription.unsubscribe(),onStableSubscription.unsubscribe()})}isStable(){return this._isZoneStable&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;this._callbacks.length!==0;){let cb=this._callbacks.pop();clearTimeout(cb.timeoutId),cb.doneCb()}});else{let pending=this.getPendingTasks();this._callbacks=this._callbacks.filter(cb=>cb.updateCb&&cb.updateCb(pending)?(clearTimeout(cb.timeoutId),!1):!0)}}getPendingTasks(){return this._taskTrackingZone?this._taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(cb,timeout2,updateCb){let timeoutId=-1;timeout2&&timeout2>0&&(timeoutId=setTimeout(()=>{this._callbacks=this._callbacks.filter(cb2=>cb2.timeoutId!==timeoutId),cb()},timeout2)),this._callbacks.push({doneCb:cb,timeoutId,updateCb})}whenStable(doneCb,timeout2,updateCb){if(updateCb&&!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(doneCb,timeout2,updateCb),this._runCallbacksIfReady()}registerApplication(token){this.registry.registerApplication(token,this)}unregisterApplication(token){this.registry.unregisterApplication(token)}findProviders(using,provider,exactMatch){return[]}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Testability2)(\u0275\u0275inject(NgZone),\u0275\u0275inject(TestabilityRegistry),\u0275\u0275inject(TESTABILITY_GETTER))};static \u0275prov=\u0275\u0275defineInjectable({token:Testability2,factory:Testability2.\u0275fac})}return Testability2})(),TestabilityRegistry=(()=>{class TestabilityRegistry2{_applications=new Map;registerApplication(token,testability){this._applications.set(token,testability)}unregisterApplication(token){this._applications.delete(token)}unregisterAllApplications(){this._applications.clear()}getTestability(elem){return this._applications.get(elem)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(elem,findInAncestors=!0){return _testabilityGetter?.findTestabilityInTree(this,elem,findInAncestors)??null}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||TestabilityRegistry2)};static \u0275prov=\u0275\u0275defineInjectable({token:TestabilityRegistry2,factory:TestabilityRegistry2.\u0275fac,providedIn:"platform"})}return TestabilityRegistry2})();function setTestabilityGetter(getter){_testabilityGetter=getter}var _testabilityGetter;function isPromise2(obj){return!!obj&&typeof obj.then=="function"}function isSubscribable(obj){return!!obj&&typeof obj.subscribe=="function"}var APP_INITIALIZER=new InjectionToken("");function provideAppInitializer(initializerFn){return makeEnvironmentProviders([{provide:APP_INITIALIZER,multi:!0,useValue:initializerFn}])}var ApplicationInitStatus=(()=>{class ApplicationInitStatus2{resolve;reject;initialized=!1;done=!1;donePromise=new Promise((res,rej)=>{this.resolve=res,this.reject=rej});appInits=inject2(APP_INITIALIZER,{optional:!0})??[];injector=inject2(Injector);constructor(){}runInitializers(){if(this.initialized)return;let asyncInitPromises=[];for(let appInits of this.appInits){let initResult=runInInjectionContext(this.injector,appInits);if(isPromise2(initResult))asyncInitPromises.push(initResult);else if(isSubscribable(initResult)){let observableAsPromise=new Promise((resolve,reject)=>{initResult.subscribe({complete:resolve,error:reject})});asyncInitPromises.push(observableAsPromise)}}let complete=()=>{this.done=!0,this.resolve()};Promise.all(asyncInitPromises).then(()=>{complete()}).catch(e=>{this.reject(e)}),asyncInitPromises.length===0&&complete(),this.initialized=!0}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ApplicationInitStatus2)};static \u0275prov=\u0275\u0275defineInjectable({token:ApplicationInitStatus2,factory:ApplicationInitStatus2.\u0275fac,providedIn:"root"})}return ApplicationInitStatus2})(),APP_BOOTSTRAP_LISTENER=new InjectionToken("");function publishSignalConfiguration(){setThrowInvalidWriteToSignalError(()=>{let errorMessage="";throw new RuntimeError(600,errorMessage)})}function isBoundToModule(cf){return cf.isBoundToModule}var MAXIMUM_REFRESH_RERUNS=10;function optionsReducer(dst,objs){return Array.isArray(objs)?objs.reduce(optionsReducer,dst):__spreadValues(__spreadValues({},dst),objs)}var ApplicationRef=(()=>{class ApplicationRef3{_runningTick=!1;_destroyed=!1;_destroyListeners=[];_views=[];internalErrorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);afterRenderManager=inject2(AfterRenderManager);zonelessEnabled=inject2(ZONELESS_ENABLED);rootEffectScheduler=inject2(EffectScheduler);dirtyFlags=0;tracingSnapshot=null;allTestViews=new Set;autoDetectTestViews=new Set;includeAllTestViews=!1;afterTick=new Subject;get allViews(){return[...(this.includeAllTestViews?this.allTestViews:this.autoDetectTestViews).keys(),...this._views]}get destroyed(){return this._destroyed}componentTypes=[];components=[];internalPendingTask=inject2(PendingTasksInternal);get isStable(){return this.internalPendingTask.hasPendingTasksObservable.pipe(map(pending=>!pending))}constructor(){inject2(TracingService,{optional:!0})}whenStable(){let subscription;return new Promise(resolve=>{subscription=this.isStable.subscribe({next:stable=>{stable&&resolve()}})}).finally(()=>{subscription.unsubscribe()})}_injector=inject2(EnvironmentInjector);_rendererFactory=null;get injector(){return this._injector}bootstrap(componentOrFactory,rootSelectorOrNode){return this.bootstrapImpl(componentOrFactory,rootSelectorOrNode)}bootstrapImpl(componentOrFactory,rootSelectorOrNode,injector=Injector.NULL){return this._injector.get(NgZone).run(()=>{profiler(10);let isComponentFactory=componentOrFactory instanceof ComponentFactory$1;if(!this._injector.get(ApplicationInitStatus).done){let errorMessage="";throw new RuntimeError(405,errorMessage)}let componentFactory;isComponentFactory?componentFactory=componentOrFactory:componentFactory=this._injector.get(ComponentFactoryResolver$1).resolveComponentFactory(componentOrFactory),this.componentTypes.push(componentFactory.componentType);let ngModule=isBoundToModule(componentFactory)?void 0:this._injector.get(NgModuleRef$1),selectorOrNode=rootSelectorOrNode||componentFactory.selector,compRef=componentFactory.create(injector,[],selectorOrNode,ngModule),nativeElement=compRef.location.nativeElement,testability=compRef.injector.get(TESTABILITY,null);return testability?.registerApplication(nativeElement),compRef.onDestroy(()=>{this.detachView(compRef.hostView),remove(this.components,compRef),testability?.unregisterApplication(nativeElement)}),this._loadComponent(compRef),profiler(11,compRef),compRef})}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){profiler(12),this.tracingSnapshot!==null?this.tracingSnapshot.run(TracingAction.CHANGE_DETECTION,this.tickImpl):this.tickImpl()}tickImpl=()=>{if(this._runningTick)throw new RuntimeError(101,!1);let prevConsumer=setActiveConsumer(null);try{this._runningTick=!0,this.synchronize()}finally{this._runningTick=!1,this.tracingSnapshot?.dispose(),this.tracingSnapshot=null,setActiveConsumer(prevConsumer),this.afterTick.next(),profiler(13)}};synchronize(){this._rendererFactory===null&&!this._injector.destroyed&&(this._rendererFactory=this._injector.get(RendererFactory2,null,{optional:!0}));let runs=0;for(;this.dirtyFlags!==0&&runs++<MAXIMUM_REFRESH_RERUNS;)profiler(14),this.synchronizeOnce(),profiler(15)}synchronizeOnce(){this.dirtyFlags&16&&(this.dirtyFlags&=-17,this.rootEffectScheduler.flush());let ranDetectChanges=!1;if(this.dirtyFlags&7){let useGlobalCheck=!!(this.dirtyFlags&1);this.dirtyFlags&=-8,this.dirtyFlags|=8;for(let{_lView}of this.allViews){if(!useGlobalCheck&&!requiresRefreshOrTraversal(_lView))continue;let mode=useGlobalCheck&&!this.zonelessEnabled?0:1;detectChangesInternal(_lView,mode),ranDetectChanges=!0}if(this.dirtyFlags&=-5,this.syncDirtyFlagsWithViews(),this.dirtyFlags&23)return}ranDetectChanges||(this._rendererFactory?.begin?.(),this._rendererFactory?.end?.()),this.dirtyFlags&8&&(this.dirtyFlags&=-9,this.afterRenderManager.execute()),this.syncDirtyFlagsWithViews()}syncDirtyFlagsWithViews(){if(this.allViews.some(({_lView})=>requiresRefreshOrTraversal(_lView))){this.dirtyFlags|=2;return}else this.dirtyFlags&=-8}attachView(viewRef){let view=viewRef;this._views.push(view),view.attachToAppRef(this)}detachView(viewRef){let view=viewRef;remove(this._views,view),view.detachFromAppRef()}_loadComponent(componentRef){this.attachView(componentRef.hostView);try{this.tick()}catch(e){this.internalErrorHandler(e)}this.components.push(componentRef),this._injector.get(APP_BOOTSTRAP_LISTENER,[]).forEach(listener=>listener(componentRef))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(listener=>listener()),this._views.slice().forEach(view=>view.destroy())}finally{this._destroyed=!0,this._views=[],this._destroyListeners=[]}}onDestroy(callback){return this._destroyListeners.push(callback),()=>remove(this._destroyListeners,callback)}destroy(){if(this._destroyed)throw new RuntimeError(406,!1);let injector=this._injector;injector.destroy&&!injector.destroyed&&injector.destroy()}get viewCount(){return this._views.length}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ApplicationRef3)};static \u0275prov=\u0275\u0275defineInjectable({token:ApplicationRef3,factory:ApplicationRef3.\u0275fac,providedIn:"root"})}return ApplicationRef3})();function remove(list,el){let index=list.indexOf(el);index>-1&&list.splice(index,1)}var ARIA_PREFIX="aria";function \u0275\u0275ariaProperty(name,value){let lView=getLView(),bindingIndex=nextBindingIndex();if(bindingUpdated(lView,bindingIndex,value)){let tView=getTView(),tNode=getSelectedTNode();if(setAllInputsForProperty(tNode,tView,lView,name,value))isComponentHost(tNode)&&markDirtyIfOnPush(lView,tNode.index);else{let element=getNativeByTNode(tNode,lView),attributeName=ariaAttrName(name);setElementAttribute(lView[RENDERER],element,null,tNode.value,attributeName,value,null)}}return \u0275\u0275ariaProperty}function ariaAttrName(name){return name.charAt(ARIA_PREFIX.length)!=="-"?ARIA_PREFIX+"-"+name.slice(ARIA_PREFIX.length).toLowerCase():name}function \u0275\u0275attribute(name,value,sanitizer,namespace){let lView=getLView(),bindingIndex=nextBindingIndex();if(bindingUpdated(lView,bindingIndex,value)){let tView=getTView(),tNode=getSelectedTNode();elementAttributeInternal(tNode,lView,name,value,sanitizer,namespace)}return \u0275\u0275attribute}var ANIMATIONS_DISABLED=new InjectionToken("",{providedIn:"root",factory:()=>!1}),MAX_ANIMATION_TIMEOUT=new InjectionToken("",{providedIn:"root",factory:()=>MAX_ANIMATION_TIMEOUT_DEFAULT}),MAX_ANIMATION_TIMEOUT_DEFAULT=4e3;var areAnimationSupported=typeof document<"u"&&typeof document?.documentElement?.getAnimations=="function";var LiveCollection=class{destroy(item){}updateValue(index,value){}swap(index1,index2){let startIdx=Math.min(index1,index2),endIdx=Math.max(index1,index2),endItem=this.detach(endIdx);if(endIdx-startIdx>1){let startItem=this.detach(startIdx);this.attach(startIdx,endItem),this.attach(endIdx,startItem)}else this.attach(startIdx,endItem)}move(prevIndex,newIdx){this.attach(newIdx,this.detach(prevIndex))}};function valuesMatching(liveIdx,liveValue,newIdx,newValue,trackBy){return liveIdx===newIdx&&Object.is(liveValue,newValue)?1:Object.is(trackBy(liveIdx,liveValue),trackBy(newIdx,newValue))?-1:0}function reconcile(liveCollection,newCollection,trackByFn){let detachedItems,liveKeysInTheFuture,liveStartIdx=0,liveEndIdx=liveCollection.length-1,duplicateKeys=void 0;if(Array.isArray(newCollection)){let newEndIdx=newCollection.length-1;for(;liveStartIdx<=liveEndIdx&&liveStartIdx<=newEndIdx;){let liveStartValue=liveCollection.at(liveStartIdx),newStartValue=newCollection[liveStartIdx],isStartMatching=valuesMatching(liveStartIdx,liveStartValue,liveStartIdx,newStartValue,trackByFn);if(isStartMatching!==0){isStartMatching<0&&liveCollection.updateValue(liveStartIdx,newStartValue),liveStartIdx++;continue}let liveEndValue=liveCollection.at(liveEndIdx),newEndValue=newCollection[newEndIdx],isEndMatching=valuesMatching(liveEndIdx,liveEndValue,newEndIdx,newEndValue,trackByFn);if(isEndMatching!==0){isEndMatching<0&&liveCollection.updateValue(liveEndIdx,newEndValue),liveEndIdx--,newEndIdx--;continue}let liveStartKey=trackByFn(liveStartIdx,liveStartValue),liveEndKey=trackByFn(liveEndIdx,liveEndValue),newStartKey=trackByFn(liveStartIdx,newStartValue);if(Object.is(newStartKey,liveEndKey)){let newEndKey=trackByFn(newEndIdx,newEndValue);Object.is(newEndKey,liveStartKey)?(liveCollection.swap(liveStartIdx,liveEndIdx),liveCollection.updateValue(liveEndIdx,newEndValue),newEndIdx--,liveEndIdx--):liveCollection.move(liveEndIdx,liveStartIdx),liveCollection.updateValue(liveStartIdx,newStartValue),liveStartIdx++;continue}if(detachedItems??=new UniqueValueMultiKeyMap,liveKeysInTheFuture??=initLiveItemsInTheFuture(liveCollection,liveStartIdx,liveEndIdx,trackByFn),attachPreviouslyDetached(liveCollection,detachedItems,liveStartIdx,newStartKey))liveCollection.updateValue(liveStartIdx,newStartValue),liveStartIdx++,liveEndIdx++;else if(liveKeysInTheFuture.has(newStartKey))detachedItems.set(liveStartKey,liveCollection.detach(liveStartIdx)),liveEndIdx--;else{let newItem=liveCollection.create(liveStartIdx,newCollection[liveStartIdx]);liveCollection.attach(liveStartIdx,newItem),liveStartIdx++,liveEndIdx++}}for(;liveStartIdx<=newEndIdx;)createOrAttach(liveCollection,detachedItems,trackByFn,liveStartIdx,newCollection[liveStartIdx]),liveStartIdx++}else if(newCollection!=null){let newCollectionIterator=newCollection[Symbol.iterator](),newIterationResult=newCollectionIterator.next();for(;!newIterationResult.done&&liveStartIdx<=liveEndIdx;){let liveValue=liveCollection.at(liveStartIdx),newValue=newIterationResult.value,isStartMatching=valuesMatching(liveStartIdx,liveValue,liveStartIdx,newValue,trackByFn);if(isStartMatching!==0)isStartMatching<0&&liveCollection.updateValue(liveStartIdx,newValue),liveStartIdx++,newIterationResult=newCollectionIterator.next();else{detachedItems??=new UniqueValueMultiKeyMap,liveKeysInTheFuture??=initLiveItemsInTheFuture(liveCollection,liveStartIdx,liveEndIdx,trackByFn);let newKey=trackByFn(liveStartIdx,newValue);if(attachPreviouslyDetached(liveCollection,detachedItems,liveStartIdx,newKey))liveCollection.updateValue(liveStartIdx,newValue),liveStartIdx++,liveEndIdx++,newIterationResult=newCollectionIterator.next();else if(!liveKeysInTheFuture.has(newKey))liveCollection.attach(liveStartIdx,liveCollection.create(liveStartIdx,newValue)),liveStartIdx++,liveEndIdx++,newIterationResult=newCollectionIterator.next();else{let liveKey=trackByFn(liveStartIdx,liveValue);detachedItems.set(liveKey,liveCollection.detach(liveStartIdx)),liveEndIdx--}}}for(;!newIterationResult.done;)createOrAttach(liveCollection,detachedItems,trackByFn,liveCollection.length,newIterationResult.value),newIterationResult=newCollectionIterator.next()}for(;liveStartIdx<=liveEndIdx;)liveCollection.destroy(liveCollection.detach(liveEndIdx--));detachedItems?.forEach(item=>{liveCollection.destroy(item)})}function attachPreviouslyDetached(prevCollection,detachedItems,index,key){return detachedItems!==void 0&&detachedItems.has(key)?(prevCollection.attach(index,detachedItems.get(key)),detachedItems.delete(key),!0):!1}function createOrAttach(liveCollection,detachedItems,trackByFn,index,value){if(attachPreviouslyDetached(liveCollection,detachedItems,index,trackByFn(index,value)))liveCollection.updateValue(index,value);else{let newItem=liveCollection.create(index,value);liveCollection.attach(index,newItem)}}function initLiveItemsInTheFuture(liveCollection,start,end,trackByFn){let keys=new Set;for(let i=start;i<=end;i++)keys.add(trackByFn(i,liveCollection.at(i)));return keys}var UniqueValueMultiKeyMap=class{kvMap=new Map;_vMap=void 0;has(key){return this.kvMap.has(key)}delete(key){if(!this.has(key))return!1;let value=this.kvMap.get(key);return this._vMap!==void 0&&this._vMap.has(value)?(this.kvMap.set(key,this._vMap.get(value)),this._vMap.delete(value)):this.kvMap.delete(key),!0}get(key){return this.kvMap.get(key)}set(key,value){if(this.kvMap.has(key)){let prevValue=this.kvMap.get(key);this._vMap===void 0&&(this._vMap=new Map);let vMap=this._vMap;for(;vMap.has(prevValue);)prevValue=vMap.get(prevValue);vMap.set(prevValue,value)}else this.kvMap.set(key,value)}forEach(cb){for(let[key,value]of this.kvMap)if(cb(value,key),this._vMap!==void 0){let vMap=this._vMap;for(;vMap.has(value);)value=vMap.get(value),cb(value,key)}}};function \u0275\u0275conditionalCreate(index,templateFn,decls,vars,tagName,attrsIndex,localRefsIndex,localRefExtractor){performanceMarkFeature("NgControlFlow");let lView=getLView(),tView=getTView(),attrs=getConstant(tView.consts,attrsIndex);return declareNoDirectiveHostTemplate(lView,tView,index,templateFn,decls,vars,tagName,attrs,256,localRefsIndex,localRefExtractor),\u0275\u0275conditionalBranchCreate}function \u0275\u0275conditionalBranchCreate(index,templateFn,decls,vars,tagName,attrsIndex,localRefsIndex,localRefExtractor){performanceMarkFeature("NgControlFlow");let lView=getLView(),tView=getTView(),attrs=getConstant(tView.consts,attrsIndex);return declareNoDirectiveHostTemplate(lView,tView,index,templateFn,decls,vars,tagName,attrs,512,localRefsIndex,localRefExtractor),\u0275\u0275conditionalBranchCreate}function \u0275\u0275conditional(matchingTemplateIndex,contextValue){performanceMarkFeature("NgControlFlow");let hostLView=getLView(),bindingIndex=nextBindingIndex(),prevMatchingTemplateIndex=hostLView[bindingIndex]!==NO_CHANGE?hostLView[bindingIndex]:-1,prevContainer=prevMatchingTemplateIndex!==-1?getLContainer(hostLView,HEADER_OFFSET+prevMatchingTemplateIndex):void 0,viewInContainerIdx=0;if(bindingUpdated(hostLView,bindingIndex,matchingTemplateIndex)){let prevConsumer=setActiveConsumer(null);try{if(prevContainer!==void 0&&removeLViewFromLContainer(prevContainer,viewInContainerIdx),matchingTemplateIndex!==-1){let nextLContainerIndex=HEADER_OFFSET+matchingTemplateIndex,nextContainer=getLContainer(hostLView,nextLContainerIndex),templateTNode=getExistingTNode(hostLView[TVIEW],nextLContainerIndex),dehydratedView=findAndReconcileMatchingDehydratedViews(nextContainer,templateTNode,hostLView),embeddedLView=createAndRenderEmbeddedLView(hostLView,templateTNode,contextValue,{dehydratedView});addLViewToLContainer(nextContainer,embeddedLView,viewInContainerIdx,shouldAddViewToDom(templateTNode,dehydratedView))}}finally{setActiveConsumer(prevConsumer)}}else if(prevContainer!==void 0){let lView=getLViewFromLContainer(prevContainer,viewInContainerIdx);lView!==void 0&&(lView[CONTEXT]=contextValue)}}var RepeaterContext=class{lContainer;$implicit;$index;constructor(lContainer,$implicit,$index){this.lContainer=lContainer,this.$implicit=$implicit,this.$index=$index}get $count(){return this.lContainer.length-CONTAINER_HEADER_OFFSET}};function \u0275\u0275repeaterTrackByIndex(index){return index}function \u0275\u0275repeaterTrackByIdentity(_,value){return value}var RepeaterMetadata=class{hasEmptyBlock;trackByFn;liveCollection;constructor(hasEmptyBlock,trackByFn,liveCollection){this.hasEmptyBlock=hasEmptyBlock,this.trackByFn=trackByFn,this.liveCollection=liveCollection}};function \u0275\u0275repeaterCreate(index,templateFn,decls,vars,tagName,attrsIndex,trackByFn,trackByUsesComponentInstance,emptyTemplateFn,emptyDecls,emptyVars,emptyTagName,emptyAttrsIndex){performanceMarkFeature("NgControlFlow");let lView=getLView(),tView=getTView(),hasEmptyBlock=emptyTemplateFn!==void 0,hostLView=getLView(),boundTrackBy=trackByUsesComponentInstance?trackByFn.bind(hostLView[DECLARATION_COMPONENT_VIEW][CONTEXT]):trackByFn,metadata=new RepeaterMetadata(hasEmptyBlock,boundTrackBy);hostLView[HEADER_OFFSET+index]=metadata,declareNoDirectiveHostTemplate(lView,tView,index+1,templateFn,decls,vars,tagName,getConstant(tView.consts,attrsIndex),256),hasEmptyBlock&&declareNoDirectiveHostTemplate(lView,tView,index+2,emptyTemplateFn,emptyDecls,emptyVars,emptyTagName,getConstant(tView.consts,emptyAttrsIndex),512)}var LiveCollectionLContainerImpl=class extends LiveCollection{lContainer;hostLView;templateTNode;operationsCounter=void 0;needsIndexUpdate=!1;constructor(lContainer,hostLView,templateTNode){super(),this.lContainer=lContainer,this.hostLView=hostLView,this.templateTNode=templateTNode}get length(){return this.lContainer.length-CONTAINER_HEADER_OFFSET}at(index){return this.getLView(index)[CONTEXT].$implicit}attach(index,lView){let dehydratedView=lView[HYDRATION];this.needsIndexUpdate||=index!==this.length,addLViewToLContainer(this.lContainer,lView,index,shouldAddViewToDom(this.templateTNode,dehydratedView))}detach(index){return this.needsIndexUpdate||=index!==this.length-1,detachExistingView(this.lContainer,index)}create(index,value){let dehydratedView=findMatchingDehydratedView(this.lContainer,this.templateTNode.tView.ssrId),embeddedLView=createAndRenderEmbeddedLView(this.hostLView,this.templateTNode,new RepeaterContext(this.lContainer,value,index),{dehydratedView});return this.operationsCounter?.recordCreate(),embeddedLView}destroy(lView){destroyLView(lView[TVIEW],lView),this.operationsCounter?.recordDestroy()}updateValue(index,value){this.getLView(index)[CONTEXT].$implicit=value}reset(){this.needsIndexUpdate=!1,this.operationsCounter?.reset()}updateIndexes(){if(this.needsIndexUpdate)for(let i=0;i<this.length;i++)this.getLView(i)[CONTEXT].$index=i}getLView(index){return getExistingLViewFromLContainer(this.lContainer,index)}};function \u0275\u0275repeater(collection){let prevConsumer=setActiveConsumer(null),metadataSlotIdx=getSelectedIndex();try{let hostLView=getLView(),hostTView=hostLView[TVIEW],metadata=hostLView[metadataSlotIdx],containerIndex=metadataSlotIdx+1,lContainer=getLContainer(hostLView,containerIndex);if(metadata.liveCollection===void 0){let itemTemplateTNode=getExistingTNode(hostTView,containerIndex);metadata.liveCollection=new LiveCollectionLContainerImpl(lContainer,hostLView,itemTemplateTNode)}else metadata.liveCollection.reset();let liveCollection=metadata.liveCollection;if(reconcile(liveCollection,collection,metadata.trackByFn),liveCollection.updateIndexes(),metadata.hasEmptyBlock){let bindingIndex=nextBindingIndex(),isCollectionEmpty=liveCollection.length===0;if(bindingUpdated(hostLView,bindingIndex,isCollectionEmpty)){let emptyTemplateIndex=metadataSlotIdx+2,lContainerForEmpty=getLContainer(hostLView,emptyTemplateIndex);if(isCollectionEmpty){let emptyTemplateTNode=getExistingTNode(hostTView,emptyTemplateIndex),dehydratedView=findAndReconcileMatchingDehydratedViews(lContainerForEmpty,emptyTemplateTNode,hostLView),embeddedLView=createAndRenderEmbeddedLView(hostLView,emptyTemplateTNode,void 0,{dehydratedView});addLViewToLContainer(lContainerForEmpty,embeddedLView,0,shouldAddViewToDom(emptyTemplateTNode,dehydratedView))}else hostTView.firstUpdatePass&&removeDehydratedViews(lContainerForEmpty),removeLViewFromLContainer(lContainerForEmpty,0)}}}finally{setActiveConsumer(prevConsumer)}}function getLContainer(lView,index){return lView[index]}function detachExistingView(lContainer,index){return detachView(lContainer,index)}function getExistingLViewFromLContainer(lContainer,index){return getLViewFromLContainer(lContainer,index)}function getExistingTNode(tView,index){return getTNode(tView,index)}function \u0275\u0275property(propName,value,sanitizer){let lView=getLView(),bindingIndex=nextBindingIndex();if(bindingUpdated(lView,bindingIndex,value)){let tView=getTView(),tNode=getSelectedTNode();setPropertyAndInputs(tNode,lView,propName,value,lView[RENDERER],sanitizer)}return \u0275\u0275property}function setDirectiveInputsWhichShadowsStyling(tView,tNode,lView,value,isClassBased){setAllInputsForProperty(tNode,tView,lView,isClassBased?"class":"style",value)}function \u0275\u0275elementStart(index,name,attrsIndex,localRefsIndex){let lView=getLView(),tView=lView[TVIEW],adjustedIndex=index+HEADER_OFFSET,tNode=tView.firstCreatePass?directiveHostFirstCreatePass(adjustedIndex,lView,2,name,findDirectiveDefMatches,getBindingsEnabled(),attrsIndex,localRefsIndex):tView.data[adjustedIndex];if(elementLikeStartShared(tNode,lView,index,name,_locateOrCreateElementNode),isDirectiveHost(tNode)){let tView2=lView[TVIEW];createDirectivesInstances(tView2,lView,tNode),executeContentQueries(tView2,tNode,lView)}return localRefsIndex!=null&&saveResolvedLocalsInData(lView,tNode),\u0275\u0275elementStart}function \u0275\u0275elementEnd(){let tView=getTView(),initialTNode=getCurrentTNode(),currentTNode=elementLikeEndShared(initialTNode);return tView.firstCreatePass&&directiveHostEndFirstCreatePass(tView,currentTNode),isSkipHydrationRootTNode(currentTNode)&&leaveSkipHydrationBlock(),decreaseElementDepthCount(),currentTNode.classesWithoutHost!=null&&hasClassInput(currentTNode)&&setDirectiveInputsWhichShadowsStyling(tView,currentTNode,getLView(),currentTNode.classesWithoutHost,!0),currentTNode.stylesWithoutHost!=null&&hasStyleInput(currentTNode)&&setDirectiveInputsWhichShadowsStyling(tView,currentTNode,getLView(),currentTNode.stylesWithoutHost,!1),\u0275\u0275elementEnd}function \u0275\u0275element(index,name,attrsIndex,localRefsIndex){return \u0275\u0275elementStart(index,name,attrsIndex,localRefsIndex),\u0275\u0275elementEnd(),\u0275\u0275element}function \u0275\u0275domElementStart(index,name,attrsIndex,localRefsIndex){let lView=getLView(),tView=lView[TVIEW],adjustedIndex=index+HEADER_OFFSET,tNode=tView.firstCreatePass?domOnlyFirstCreatePass(adjustedIndex,tView,2,name,attrsIndex,localRefsIndex):tView.data[adjustedIndex];return elementLikeStartShared(tNode,lView,index,name,_locateOrCreateElementNode),localRefsIndex!=null&&saveResolvedLocalsInData(lView,tNode),\u0275\u0275domElementStart}function \u0275\u0275domElementEnd(){let initialTNode=getCurrentTNode(),currentTNode=elementLikeEndShared(initialTNode);return isSkipHydrationRootTNode(currentTNode)&&leaveSkipHydrationBlock(),decreaseElementDepthCount(),\u0275\u0275domElementEnd}function \u0275\u0275domElement(index,name,attrsIndex,localRefsIndex){return \u0275\u0275domElementStart(index,name,attrsIndex,localRefsIndex),\u0275\u0275domElementEnd(),\u0275\u0275domElement}var _locateOrCreateElementNode=(tView,lView,tNode,name,index)=>(lastNodeWasCreated(!0),createElementNode(lView[RENDERER],name,getNamespace()));function \u0275\u0275elementContainerStart(index,attrsIndex,localRefsIndex){let lView=getLView(),tView=lView[TVIEW],adjustedIndex=index+HEADER_OFFSET,tNode=tView.firstCreatePass?directiveHostFirstCreatePass(adjustedIndex,lView,8,"ng-container",findDirectiveDefMatches,getBindingsEnabled(),attrsIndex,localRefsIndex):tView.data[adjustedIndex];if(elementLikeStartShared(tNode,lView,index,"ng-container",_locateOrCreateElementContainerNode),isDirectiveHost(tNode)){let tView2=lView[TVIEW];createDirectivesInstances(tView2,lView,tNode),executeContentQueries(tView2,tNode,lView)}return localRefsIndex!=null&&saveResolvedLocalsInData(lView,tNode),\u0275\u0275elementContainerStart}function \u0275\u0275elementContainerEnd(){let tView=getTView(),initialTNode=getCurrentTNode(),currentTNode=elementLikeEndShared(initialTNode);return tView.firstCreatePass&&directiveHostEndFirstCreatePass(tView,currentTNode),\u0275\u0275elementContainerEnd}function \u0275\u0275elementContainer(index,attrsIndex,localRefsIndex){return \u0275\u0275elementContainerStart(index,attrsIndex,localRefsIndex),\u0275\u0275elementContainerEnd(),\u0275\u0275elementContainer}var _locateOrCreateElementContainerNode=(tView,lView,tNode,commentText,index)=>(lastNodeWasCreated(!0),createCommentNode(lView[RENDERER],""));function \u0275\u0275getCurrentView(){return getLView()}function \u0275\u0275domProperty(propName,value,sanitizer){let lView=getLView(),bindingIndex=nextBindingIndex();if(bindingUpdated(lView,bindingIndex,value)){let tView=getTView(),tNode=getSelectedTNode();setDomProperty(tNode,lView,propName,value,lView[RENDERER],sanitizer)}return \u0275\u0275domProperty}var DEFAULT_LOCALE_ID="en-US";var LOCALE_ID$1=DEFAULT_LOCALE_ID;function setLocaleId(localeId){typeof localeId=="string"&&(LOCALE_ID$1=localeId.toLowerCase().replace(/_/g,"-"))}function \u0275\u0275listener(eventName,listenerFn,eventTargetResolver){let lView=getLView(),tView=getTView(),tNode=getCurrentTNode();return listenerInternal(tView,lView,lView[RENDERER],tNode,eventName,listenerFn,eventTargetResolver),\u0275\u0275listener}function \u0275\u0275domListener(eventName,listenerFn,eventTargetResolver){let lView=getLView(),tView=getTView(),tNode=getCurrentTNode();return(tNode.type&3||eventTargetResolver)&&listenToDomEvent(tNode,tView,lView,eventTargetResolver,lView[RENDERER],eventName,listenerFn,wrapListener(tNode,lView,listenerFn)),\u0275\u0275domListener}function listenerInternal(tView,lView,renderer,tNode,eventName,listenerFn,eventTargetResolver){let processOutputs=!0,wrappedListener=null;if((tNode.type&3||eventTargetResolver)&&(wrappedListener??=wrapListener(tNode,lView,listenerFn),listenToDomEvent(tNode,tView,lView,eventTargetResolver,renderer,eventName,listenerFn,wrappedListener)&&(processOutputs=!1)),processOutputs){let outputConfig=tNode.outputs?.[eventName],hostDirectiveOutputConfig=tNode.hostDirectiveOutputs?.[eventName];if(hostDirectiveOutputConfig&&hostDirectiveOutputConfig.length)for(let i=0;i<hostDirectiveOutputConfig.length;i+=2){let index=hostDirectiveOutputConfig[i],lookupName=hostDirectiveOutputConfig[i+1];wrappedListener??=wrapListener(tNode,lView,listenerFn),listenToOutput(tNode,lView,index,lookupName,eventName,wrappedListener)}if(outputConfig&&outputConfig.length)for(let index of outputConfig)wrappedListener??=wrapListener(tNode,lView,listenerFn),listenToOutput(tNode,lView,index,eventName,eventName,wrappedListener)}}function \u0275\u0275nextContext(level=1){return nextContextImpl(level)}function matchingProjectionSlotIndex(tNode,projectionSlots){let wildcardNgContentIndex=null,ngProjectAsAttrVal=getProjectAsAttrValue(tNode);for(let i=0;i<projectionSlots.length;i++){let slotValue=projectionSlots[i];if(slotValue==="*"){wildcardNgContentIndex=i;continue}if(ngProjectAsAttrVal===null?isNodeMatchingSelectorList(tNode,slotValue,!0):isSelectorInSelectorList(ngProjectAsAttrVal,slotValue))return i}return wildcardNgContentIndex}function \u0275\u0275projectionDef(projectionSlots){let componentNode=getLView()[DECLARATION_COMPONENT_VIEW][T_HOST];if(!componentNode.projection){let numProjectionSlots=projectionSlots?projectionSlots.length:1,projectionHeads=componentNode.projection=newArray(numProjectionSlots,null),tails=projectionHeads.slice(),componentChild=componentNode.child;for(;componentChild!==null;){if(componentChild.type!==128){let slotIndex=projectionSlots?matchingProjectionSlotIndex(componentChild,projectionSlots):0;slotIndex!==null&&(tails[slotIndex]?tails[slotIndex].projectionNext=componentChild:projectionHeads[slotIndex]=componentChild,tails[slotIndex]=componentChild)}componentChild=componentChild.next}}}function \u0275\u0275projection(nodeIndex,selectorIndex=0,attrs,fallbackTemplateFn,fallbackDecls,fallbackVars){let lView=getLView(),tView=getTView(),fallbackIndex=fallbackTemplateFn?nodeIndex+1:null;fallbackIndex!==null&&declareNoDirectiveHostTemplate(lView,tView,fallbackIndex,fallbackTemplateFn,fallbackDecls,fallbackVars,null,attrs);let tProjectionNode=getOrCreateTNode(tView,HEADER_OFFSET+nodeIndex,16,null,attrs||null);tProjectionNode.projection===null&&(tProjectionNode.projection=selectorIndex),setCurrentTNodeAsNotParent();let isNodeCreationMode=!lView[HYDRATION]||isInSkipHydrationBlock();lView[DECLARATION_COMPONENT_VIEW][T_HOST].projection[tProjectionNode.projection]===null&&fallbackIndex!==null?insertFallbackContent(lView,tView,fallbackIndex):isNodeCreationMode&&!isDetachedByI18n(tProjectionNode)&&applyProjection(tView,lView,tProjectionNode)}function insertFallbackContent(lView,tView,fallbackIndex){let adjustedIndex=HEADER_OFFSET+fallbackIndex,fallbackTNode=tView.data[adjustedIndex],fallbackLContainer=lView[adjustedIndex],dehydratedView=findMatchingDehydratedView(fallbackLContainer,fallbackTNode.tView.ssrId),fallbackLView=createAndRenderEmbeddedLView(lView,fallbackTNode,void 0,{dehydratedView});addLViewToLContainer(fallbackLContainer,fallbackLView,0,shouldAddViewToDom(fallbackTNode,dehydratedView))}function \u0275\u0275contentQuery(directiveIndex,predicate,flags,read){createContentQuery(directiveIndex,predicate,flags,read)}function \u0275\u0275viewQuery(predicate,flags,read){createViewQuery(predicate,flags,read)}function \u0275\u0275queryRefresh(queryList){let lView=getLView(),tView=getTView(),queryIndex=getCurrentQueryIndex();setCurrentQueryIndex(queryIndex+1);let tQuery=getTQuery(tView,queryIndex);if(queryList.dirty&&isCreationMode(lView)===((tQuery.metadata.flags&2)===2)){if(tQuery.matches===null)queryList.reset([]);else{let result=getQueryResults(lView,queryIndex);queryList.reset(result,unwrapElementRef),queryList.notifyOnChanges()}return!0}return!1}function \u0275\u0275loadQuery(){return loadQueryInternal(getLView(),getCurrentQueryIndex())}function \u0275\u0275contentQuerySignal(directiveIndex,target,predicate,flags,read){bindQueryToSignal(target,createContentQuery(directiveIndex,predicate,flags,read))}function \u0275\u0275viewQuerySignal(target,predicate,flags,read){bindQueryToSignal(target,createViewQuery(predicate,flags,read))}function \u0275\u0275queryAdvance(indexOffset=1){setCurrentQueryIndex(getCurrentQueryIndex()+indexOffset)}function \u0275\u0275reference(index){let contextLView=getContextLView();return load(contextLView,HEADER_OFFSET+index)}function toTStylingRange(prev,next){return prev<<17|next<<2}function getTStylingRangePrev(tStylingRange){return tStylingRange>>17&32767}function getTStylingRangePrevDuplicate(tStylingRange){return(tStylingRange&2)==2}function setTStylingRangePrev(tStylingRange,previous){return tStylingRange&131071|previous<<17}function setTStylingRangePrevDuplicate(tStylingRange){return tStylingRange|2}function getTStylingRangeNext(tStylingRange){return(tStylingRange&131068)>>2}function setTStylingRangeNext(tStylingRange,next){return tStylingRange&-131069|next<<2}function getTStylingRangeNextDuplicate(tStylingRange){return(tStylingRange&1)===1}function setTStylingRangeNextDuplicate(tStylingRange){return tStylingRange|1}function insertTStylingBinding(tData,tNode,tStylingKeyWithStatic,index,isHostBinding,isClassBinding){let tBindings=isClassBinding?tNode.classBindings:tNode.styleBindings,tmplHead=getTStylingRangePrev(tBindings),tmplTail=getTStylingRangeNext(tBindings);tData[index]=tStylingKeyWithStatic;let isKeyDuplicateOfStatic=!1,tStylingKey;if(Array.isArray(tStylingKeyWithStatic)){let staticKeyValueArray=tStylingKeyWithStatic;tStylingKey=staticKeyValueArray[1],(tStylingKey===null||keyValueArrayIndexOf(staticKeyValueArray,tStylingKey)>0)&&(isKeyDuplicateOfStatic=!0)}else tStylingKey=tStylingKeyWithStatic;if(isHostBinding)if(tmplTail!==0){let previousNode=getTStylingRangePrev(tData[tmplHead+1]);tData[index+1]=toTStylingRange(previousNode,tmplHead),previousNode!==0&&(tData[previousNode+1]=setTStylingRangeNext(tData[previousNode+1],index)),tData[tmplHead+1]=setTStylingRangePrev(tData[tmplHead+1],index)}else tData[index+1]=toTStylingRange(tmplHead,0),tmplHead!==0&&(tData[tmplHead+1]=setTStylingRangeNext(tData[tmplHead+1],index)),tmplHead=index;else tData[index+1]=toTStylingRange(tmplTail,0),tmplHead===0?tmplHead=index:tData[tmplTail+1]=setTStylingRangeNext(tData[tmplTail+1],index),tmplTail=index;isKeyDuplicateOfStatic&&(tData[index+1]=setTStylingRangePrevDuplicate(tData[index+1])),markDuplicates(tData,tStylingKey,index,!0),markDuplicates(tData,tStylingKey,index,!1),markDuplicateOfResidualStyling(tNode,tStylingKey,tData,index,isClassBinding),tBindings=toTStylingRange(tmplHead,tmplTail),isClassBinding?tNode.classBindings=tBindings:tNode.styleBindings=tBindings}function markDuplicateOfResidualStyling(tNode,tStylingKey,tData,index,isClassBinding){let residual=isClassBinding?tNode.residualClasses:tNode.residualStyles;residual!=null&&typeof tStylingKey=="string"&&keyValueArrayIndexOf(residual,tStylingKey)>=0&&(tData[index+1]=setTStylingRangeNextDuplicate(tData[index+1]))}function markDuplicates(tData,tStylingKey,index,isPrevDir){let tStylingAtIndex=tData[index+1],isMap=tStylingKey===null,cursor=isPrevDir?getTStylingRangePrev(tStylingAtIndex):getTStylingRangeNext(tStylingAtIndex),foundDuplicate=!1;for(;cursor!==0&&(foundDuplicate===!1||isMap);){let tStylingValueAtCursor=tData[cursor],tStyleRangeAtCursor=tData[cursor+1];isStylingMatch(tStylingValueAtCursor,tStylingKey)&&(foundDuplicate=!0,tData[cursor+1]=isPrevDir?setTStylingRangeNextDuplicate(tStyleRangeAtCursor):setTStylingRangePrevDuplicate(tStyleRangeAtCursor)),cursor=isPrevDir?getTStylingRangePrev(tStyleRangeAtCursor):getTStylingRangeNext(tStyleRangeAtCursor)}foundDuplicate&&(tData[index+1]=isPrevDir?setTStylingRangePrevDuplicate(tStylingAtIndex):setTStylingRangeNextDuplicate(tStylingAtIndex))}function isStylingMatch(tStylingKeyCursor,tStylingKey){return tStylingKeyCursor===null||tStylingKey==null||(Array.isArray(tStylingKeyCursor)?tStylingKeyCursor[1]:tStylingKeyCursor)===tStylingKey?!0:Array.isArray(tStylingKeyCursor)&&typeof tStylingKey=="string"?keyValueArrayIndexOf(tStylingKeyCursor,tStylingKey)>=0:!1}var parserState={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function getLastParsedKey(text){return text.substring(parserState.key,parserState.keyEnd)}function getLastParsedValue(text){return text.substring(parserState.value,parserState.valueEnd)}function parseClassName(text){return resetParserState(text),parseClassNameNext(text,consumeWhitespace(text,0,parserState.textEnd))}function parseClassNameNext(text,index){let end=parserState.textEnd;return end===index?-1:(index=parserState.keyEnd=consumeClassToken(text,parserState.key=index,end),consumeWhitespace(text,index,end))}function parseStyle(text){return resetParserState(text),parseStyleNext(text,consumeWhitespace(text,0,parserState.textEnd))}function parseStyleNext(text,startIndex){let end=parserState.textEnd,index=parserState.key=consumeWhitespace(text,startIndex,end);return end===index?-1:(index=parserState.keyEnd=consumeStyleKey(text,index,end),index=consumeSeparator(text,index,end,58),index=parserState.value=consumeWhitespace(text,index,end),index=parserState.valueEnd=consumeStyleValue(text,index,end),consumeSeparator(text,index,end,59))}function resetParserState(text){parserState.key=0,parserState.keyEnd=0,parserState.value=0,parserState.valueEnd=0,parserState.textEnd=text.length}function consumeWhitespace(text,startIndex,endIndex){for(;startIndex<endIndex&&text.charCodeAt(startIndex)<=32;)startIndex++;return startIndex}function consumeClassToken(text,startIndex,endIndex){for(;startIndex<endIndex&&text.charCodeAt(startIndex)>32;)startIndex++;return startIndex}function consumeStyleKey(text,startIndex,endIndex){let ch;for(;startIndex<endIndex&&((ch=text.charCodeAt(startIndex))===45||ch===95||(ch&-33)>=65&&(ch&-33)<=90||ch>=48&&ch<=57);)startIndex++;return startIndex}function consumeSeparator(text,startIndex,endIndex,separator){return startIndex=consumeWhitespace(text,startIndex,endIndex),startIndex<endIndex&&startIndex++,startIndex}function consumeStyleValue(text,startIndex,endIndex){let ch1=-1,ch2=-1,ch3=-1,i=startIndex,lastChIndex=i;for(;i<endIndex;){let ch=text.charCodeAt(i++);if(ch===59)return lastChIndex;ch===34||ch===39?lastChIndex=i=consumeQuotedText(text,ch,i,endIndex):startIndex===i-4&&ch3===85&&ch2===82&&ch1===76&&ch===40?lastChIndex=i=consumeQuotedText(text,41,i,endIndex):ch>32&&(lastChIndex=i),ch3=ch2,ch2=ch1,ch1=ch&-33}return lastChIndex}function consumeQuotedText(text,quoteCharCode,startIndex,endIndex){let ch1=-1,index=startIndex;for(;index<endIndex;){let ch=text.charCodeAt(index++);if(ch==quoteCharCode&&ch1!==92)return index;ch==92&&ch1===92?ch1=0:ch1=ch}throw new Error}function \u0275\u0275styleProp(prop,value,suffix){return checkStylingProperty(prop,value,suffix,!1),\u0275\u0275styleProp}function \u0275\u0275classProp(className,value){return checkStylingProperty(className,value,null,!0),\u0275\u0275classProp}function \u0275\u0275styleMap(styles){checkStylingMap(styleKeyValueArraySet,styleStringParser,styles,!1)}function styleStringParser(keyValueArray,text){for(let i=parseStyle(text);i>=0;i=parseStyleNext(text,i))styleKeyValueArraySet(keyValueArray,getLastParsedKey(text),getLastParsedValue(text))}function \u0275\u0275classMap(classes){checkStylingMap(classKeyValueArraySet,classStringParser,classes,!0)}function classStringParser(keyValueArray,text){for(let i=parseClassName(text);i>=0;i=parseClassNameNext(text,i))keyValueArraySet(keyValueArray,getLastParsedKey(text),!0)}function checkStylingProperty(prop,value,suffix,isClassBased){let lView=getLView(),tView=getTView(),bindingIndex=incrementBindingIndex(2);if(tView.firstUpdatePass&&stylingFirstUpdatePass(tView,prop,bindingIndex,isClassBased),value!==NO_CHANGE&&bindingUpdated(lView,bindingIndex,value)){let tNode=tView.data[getSelectedIndex()];updateStyling(tView,tNode,lView,lView[RENDERER],prop,lView[bindingIndex+1]=normalizeSuffix(value,suffix),isClassBased,bindingIndex)}}function checkStylingMap(keyValueArraySet2,stringParser,value,isClassBased){let tView=getTView(),bindingIndex=incrementBindingIndex(2);tView.firstUpdatePass&&stylingFirstUpdatePass(tView,null,bindingIndex,isClassBased);let lView=getLView();if(value!==NO_CHANGE&&bindingUpdated(lView,bindingIndex,value)){let tNode=tView.data[getSelectedIndex()];if(hasStylingInputShadow(tNode,isClassBased)&&!isInHostBindings(tView,bindingIndex)){let staticPrefix=isClassBased?tNode.classesWithoutHost:tNode.stylesWithoutHost;staticPrefix!==null&&(value=concatStringsWithSpace(staticPrefix,value||"")),setDirectiveInputsWhichShadowsStyling(tView,tNode,lView,value,isClassBased)}else updateStylingMap(tView,tNode,lView,lView[RENDERER],lView[bindingIndex+1],lView[bindingIndex+1]=toStylingKeyValueArray(keyValueArraySet2,stringParser,value),isClassBased,bindingIndex)}}function isInHostBindings(tView,bindingIndex){return bindingIndex>=tView.expandoStartIndex}function stylingFirstUpdatePass(tView,tStylingKey,bindingIndex,isClassBased){let tData=tView.data;if(tData[bindingIndex+1]===null){let tNode=tData[getSelectedIndex()],isHostBindings=isInHostBindings(tView,bindingIndex);hasStylingInputShadow(tNode,isClassBased)&&tStylingKey===null&&!isHostBindings&&(tStylingKey=!1),tStylingKey=wrapInStaticStylingKey(tData,tNode,tStylingKey,isClassBased),insertTStylingBinding(tData,tNode,tStylingKey,bindingIndex,isHostBindings,isClassBased)}}function wrapInStaticStylingKey(tData,tNode,stylingKey,isClassBased){let hostDirectiveDef=getCurrentDirectiveDef(tData),residual=isClassBased?tNode.residualClasses:tNode.residualStyles;if(hostDirectiveDef===null)(isClassBased?tNode.classBindings:tNode.styleBindings)===0&&(stylingKey=collectStylingFromDirectives(null,tData,tNode,stylingKey,isClassBased),stylingKey=collectStylingFromTAttrs(stylingKey,tNode.attrs,isClassBased),residual=null);else{let directiveStylingLast=tNode.directiveStylingLast;if(directiveStylingLast===-1||tData[directiveStylingLast]!==hostDirectiveDef)if(stylingKey=collectStylingFromDirectives(hostDirectiveDef,tData,tNode,stylingKey,isClassBased),residual===null){let templateStylingKey=getTemplateHeadTStylingKey(tData,tNode,isClassBased);templateStylingKey!==void 0&&Array.isArray(templateStylingKey)&&(templateStylingKey=collectStylingFromDirectives(null,tData,tNode,templateStylingKey[1],isClassBased),templateStylingKey=collectStylingFromTAttrs(templateStylingKey,tNode.attrs,isClassBased),setTemplateHeadTStylingKey(tData,tNode,isClassBased,templateStylingKey))}else residual=collectResidual(tData,tNode,isClassBased)}return residual!==void 0&&(isClassBased?tNode.residualClasses=residual:tNode.residualStyles=residual),stylingKey}function getTemplateHeadTStylingKey(tData,tNode,isClassBased){let bindings=isClassBased?tNode.classBindings:tNode.styleBindings;if(getTStylingRangeNext(bindings)!==0)return tData[getTStylingRangePrev(bindings)]}function setTemplateHeadTStylingKey(tData,tNode,isClassBased,tStylingKey){let bindings=isClassBased?tNode.classBindings:tNode.styleBindings;tData[getTStylingRangePrev(bindings)]=tStylingKey}function collectResidual(tData,tNode,isClassBased){let residual,directiveEnd=tNode.directiveEnd;for(let i=1+tNode.directiveStylingLast;i<directiveEnd;i++){let attrs=tData[i].hostAttrs;residual=collectStylingFromTAttrs(residual,attrs,isClassBased)}return collectStylingFromTAttrs(residual,tNode.attrs,isClassBased)}function collectStylingFromDirectives(hostDirectiveDef,tData,tNode,stylingKey,isClassBased){let currentDirective=null,directiveEnd=tNode.directiveEnd,directiveStylingLast=tNode.directiveStylingLast;for(directiveStylingLast===-1?directiveStylingLast=tNode.directiveStart:directiveStylingLast++;directiveStylingLast<directiveEnd&&(currentDirective=tData[directiveStylingLast],stylingKey=collectStylingFromTAttrs(stylingKey,currentDirective.hostAttrs,isClassBased),currentDirective!==hostDirectiveDef);)directiveStylingLast++;return hostDirectiveDef!==null&&(tNode.directiveStylingLast=directiveStylingLast),stylingKey}function collectStylingFromTAttrs(stylingKey,attrs,isClassBased){let desiredMarker=isClassBased?1:2,currentMarker=-1;if(attrs!==null)for(let i=0;i<attrs.length;i++){let item=attrs[i];typeof item=="number"?currentMarker=item:currentMarker===desiredMarker&&(Array.isArray(stylingKey)||(stylingKey=stylingKey===void 0?[]:["",stylingKey]),keyValueArraySet(stylingKey,item,isClassBased?!0:attrs[++i]))}return stylingKey===void 0?null:stylingKey}function toStylingKeyValueArray(keyValueArraySet2,stringParser,value){if(value==null||value==="")return EMPTY_ARRAY;let styleKeyValueArray=[],unwrappedValue=unwrapSafeValue(value);if(Array.isArray(unwrappedValue))for(let i=0;i<unwrappedValue.length;i++)keyValueArraySet2(styleKeyValueArray,unwrappedValue[i],!0);else if(typeof unwrappedValue=="object")for(let key in unwrappedValue)unwrappedValue.hasOwnProperty(key)&&keyValueArraySet2(styleKeyValueArray,key,unwrappedValue[key]);else typeof unwrappedValue=="string"&&stringParser(styleKeyValueArray,unwrappedValue);return styleKeyValueArray}function styleKeyValueArraySet(keyValueArray,key,value){keyValueArraySet(keyValueArray,key,unwrapSafeValue(value))}function classKeyValueArraySet(keyValueArray,key,value){let stringKey=String(key);stringKey!==""&&!stringKey.includes(" ")&&keyValueArraySet(keyValueArray,stringKey,value)}function updateStylingMap(tView,tNode,lView,renderer,oldKeyValueArray,newKeyValueArray,isClassBased,bindingIndex){oldKeyValueArray===NO_CHANGE&&(oldKeyValueArray=EMPTY_ARRAY);let oldIndex=0,newIndex=0,oldKey=0<oldKeyValueArray.length?oldKeyValueArray[0]:null,newKey=0<newKeyValueArray.length?newKeyValueArray[0]:null;for(;oldKey!==null||newKey!==null;){let oldValue=oldIndex<oldKeyValueArray.length?oldKeyValueArray[oldIndex+1]:void 0,newValue=newIndex<newKeyValueArray.length?newKeyValueArray[newIndex+1]:void 0,setKey=null,setValue2;oldKey===newKey?(oldIndex+=2,newIndex+=2,oldValue!==newValue&&(setKey=newKey,setValue2=newValue)):newKey===null||oldKey!==null&&oldKey<newKey?(oldIndex+=2,setKey=oldKey):(newIndex+=2,setKey=newKey,setValue2=newValue),setKey!==null&&updateStyling(tView,tNode,lView,renderer,setKey,setValue2,isClassBased,bindingIndex),oldKey=oldIndex<oldKeyValueArray.length?oldKeyValueArray[oldIndex]:null,newKey=newIndex<newKeyValueArray.length?newKeyValueArray[newIndex]:null}}function updateStyling(tView,tNode,lView,renderer,prop,value,isClassBased,bindingIndex){if(!(tNode.type&3))return;let tData=tView.data,tRange=tData[bindingIndex+1],higherPriorityValue=getTStylingRangeNextDuplicate(tRange)?findStylingValue(tData,tNode,lView,prop,getTStylingRangeNext(tRange),isClassBased):void 0;if(!isStylingValuePresent(higherPriorityValue)){isStylingValuePresent(value)||getTStylingRangePrevDuplicate(tRange)&&(value=findStylingValue(tData,null,lView,prop,bindingIndex,isClassBased));let rNode=getNativeByIndex(getSelectedIndex(),lView);applyStyling(renderer,isClassBased,rNode,prop,value)}}function findStylingValue(tData,tNode,lView,prop,index,isClassBased){let isPrevDirection=tNode===null,value;for(;index>0;){let rawKey=tData[index],containsStatics=Array.isArray(rawKey),key=containsStatics?rawKey[1]:rawKey,isStylingMap=key===null,valueAtLViewIndex=lView[index+1];valueAtLViewIndex===NO_CHANGE&&(valueAtLViewIndex=isStylingMap?EMPTY_ARRAY:void 0);let currentValue=isStylingMap?keyValueArrayGet(valueAtLViewIndex,prop):key===prop?valueAtLViewIndex:void 0;if(containsStatics&&!isStylingValuePresent(currentValue)&&(currentValue=keyValueArrayGet(rawKey,prop)),isStylingValuePresent(currentValue)&&(value=currentValue,isPrevDirection))return value;let tRange=tData[index+1];index=isPrevDirection?getTStylingRangePrev(tRange):getTStylingRangeNext(tRange)}if(tNode!==null){let residual=isClassBased?tNode.residualClasses:tNode.residualStyles;residual!=null&&(value=keyValueArrayGet(residual,prop))}return value}function isStylingValuePresent(value){return value!==void 0}function normalizeSuffix(value,suffix){return value==null||value===""||(typeof suffix=="string"?value=value+suffix:typeof value=="object"&&(value=stringify(unwrapSafeValue(value)))),value}function hasStylingInputShadow(tNode,isClassBased){return(tNode.flags&(isClassBased?8:16))!==0}function \u0275\u0275text(index,value=""){let lView=getLView(),tView=getTView(),adjustedIndex=index+HEADER_OFFSET,tNode=tView.firstCreatePass?getOrCreateTNode(tView,adjustedIndex,1,value,null):tView.data[adjustedIndex],textNative=_locateOrCreateTextNode(tView,lView,tNode,value,index);lView[adjustedIndex]=textNative,wasLastNodeCreated()&&appendChild(tView,lView,textNative,tNode),setCurrentTNode(tNode,!1)}var _locateOrCreateTextNode=(tView,lView,tNode,value,index)=>(lastNodeWasCreated(!0),createTextNode(lView[RENDERER],value));function interpolation1(lView,prefix,v0,suffix=""){return bindingUpdated(lView,nextBindingIndex(),v0)?prefix+renderStringify(v0)+suffix:NO_CHANGE}function interpolation2(lView,prefix,v0,i0,v1,suffix=""){let bindingIndex=getBindingIndex(),different=bindingUpdated2(lView,bindingIndex,v0,v1);return incrementBindingIndex(2),different?prefix+renderStringify(v0)+i0+renderStringify(v1)+suffix:NO_CHANGE}function interpolation3(lView,prefix,v0,i0,v1,i1,v2,suffix=""){let bindingIndex=getBindingIndex(),different=bindingUpdated3(lView,bindingIndex,v0,v1,v2);return incrementBindingIndex(3),different?prefix+renderStringify(v0)+i0+renderStringify(v1)+i1+renderStringify(v2)+suffix:NO_CHANGE}function \u0275\u0275textInterpolate(v0){return \u0275\u0275textInterpolate1("",v0),\u0275\u0275textInterpolate}function \u0275\u0275textInterpolate1(prefix,v0,suffix){let lView=getLView(),interpolated=interpolation1(lView,prefix,v0,suffix);return interpolated!==NO_CHANGE&&textBindingInternal(lView,getSelectedIndex(),interpolated),\u0275\u0275textInterpolate1}function \u0275\u0275textInterpolate2(prefix,v0,i0,v1,suffix){let lView=getLView(),interpolated=interpolation2(lView,prefix,v0,i0,v1,suffix);return interpolated!==NO_CHANGE&&textBindingInternal(lView,getSelectedIndex(),interpolated),\u0275\u0275textInterpolate2}function \u0275\u0275textInterpolate3(prefix,v0,i0,v1,i1,v2,suffix){let lView=getLView(),interpolated=interpolation3(lView,prefix,v0,i0,v1,i1,v2,suffix);return interpolated!==NO_CHANGE&&textBindingInternal(lView,getSelectedIndex(),interpolated),\u0275\u0275textInterpolate3}function textBindingInternal(lView,index,value){let element=getNativeByIndex(index,lView);updateTextNode(lView[RENDERER],element,value)}function \u0275\u0275twoWayProperty(propName,value,sanitizer){isWritableSignal(value)&&(value=value());let lView=getLView(),bindingIndex=nextBindingIndex();if(bindingUpdated(lView,bindingIndex,value)){let tView=getTView(),tNode=getSelectedTNode();setPropertyAndInputs(tNode,lView,propName,value,lView[RENDERER],sanitizer)}return \u0275\u0275twoWayProperty}function \u0275\u0275twoWayBindingSet(target,value){let canWrite=isWritableSignal(target);return canWrite&&target.set(value),canWrite}function \u0275\u0275twoWayListener(eventName,listenerFn){let lView=getLView(),tView=getTView(),tNode=getCurrentTNode();return listenerInternal(tView,lView,lView[RENDERER],tNode,eventName,listenerFn),\u0275\u0275twoWayListener}var UNINITIALIZED_LET={};function \u0275\u0275declareLet(index){let tView=getTView(),lView=getLView(),adjustedIndex=index+HEADER_OFFSET,tNode=getOrCreateTNode(tView,adjustedIndex,128,null,null);return setCurrentTNode(tNode,!1),store(tView,lView,adjustedIndex,UNINITIALIZED_LET),\u0275\u0275declareLet}function \u0275\u0275storeLet(value){performanceMarkFeature("NgLet");let tView=getTView(),lView=getLView(),index=getSelectedIndex();return store(tView,lView,index,value),value}function \u0275\u0275readContextLet(index){let contextLView=getContextLView(),value=load(contextLView,HEADER_OFFSET+index);if(value===UNINITIALIZED_LET)throw new RuntimeError(314,!1);return value}function \u0275\u0275interpolate(v0){return bindingUpdated(getLView(),nextBindingIndex(),v0)?renderStringify(v0):NO_CHANGE}function \u0275\u0275interpolate1(prefix,v0,suffix=""){return interpolation1(getLView(),prefix,v0,suffix)}function providersResolver(def,providers,viewProviders){let tView=getTView();if(tView.firstCreatePass){let isComponent2=isComponentDef(def);resolveProvider(viewProviders,tView.data,tView.blueprint,isComponent2,!0),resolveProvider(providers,tView.data,tView.blueprint,isComponent2,!1)}}function resolveProvider(provider,tInjectables,lInjectablesBlueprint,isComponent2,isViewProvider){if(provider=resolveForwardRef(provider),Array.isArray(provider))for(let i=0;i<provider.length;i++)resolveProvider(provider[i],tInjectables,lInjectablesBlueprint,isComponent2,isViewProvider);else{let tView=getTView(),lView=getLView(),tNode=getCurrentTNode(),token=isTypeProvider(provider)?provider:resolveForwardRef(provider.provide),providerFactory=providerToFactory(provider),beginIndex=tNode.providerIndexes&1048575,endIndex=tNode.directiveStart,cptViewProvidersCount=tNode.providerIndexes>>20;if(isTypeProvider(provider)||!provider.multi){let factory=new NodeInjectorFactory(providerFactory,isViewProvider,\u0275\u0275directiveInject,null),existingFactoryIndex=indexOf(token,tInjectables,isViewProvider?beginIndex:beginIndex+cptViewProvidersCount,endIndex);existingFactoryIndex===-1?(diPublicInInjector(getOrCreateNodeInjectorForNode(tNode,lView),tView,token),registerDestroyHooksIfSupported(tView,provider,tInjectables.length),tInjectables.push(token),tNode.directiveStart++,tNode.directiveEnd++,isViewProvider&&(tNode.providerIndexes+=1048576),lInjectablesBlueprint.push(factory),lView.push(factory)):(lInjectablesBlueprint[existingFactoryIndex]=factory,lView[existingFactoryIndex]=factory)}else{let existingProvidersFactoryIndex=indexOf(token,tInjectables,beginIndex+cptViewProvidersCount,endIndex),existingViewProvidersFactoryIndex=indexOf(token,tInjectables,beginIndex,beginIndex+cptViewProvidersCount),doesProvidersFactoryExist=existingProvidersFactoryIndex>=0&&lInjectablesBlueprint[existingProvidersFactoryIndex],doesViewProvidersFactoryExist=existingViewProvidersFactoryIndex>=0&&lInjectablesBlueprint[existingViewProvidersFactoryIndex];if(isViewProvider&&!doesViewProvidersFactoryExist||!isViewProvider&&!doesProvidersFactoryExist){diPublicInInjector(getOrCreateNodeInjectorForNode(tNode,lView),tView,token);let factory=multiFactory(isViewProvider?multiViewProvidersFactoryResolver:multiProvidersFactoryResolver,lInjectablesBlueprint.length,isViewProvider,isComponent2,providerFactory,provider);!isViewProvider&&doesViewProvidersFactoryExist&&(lInjectablesBlueprint[existingViewProvidersFactoryIndex].providerFactory=factory),registerDestroyHooksIfSupported(tView,provider,tInjectables.length,0),tInjectables.push(token),tNode.directiveStart++,tNode.directiveEnd++,isViewProvider&&(tNode.providerIndexes+=1048576),lInjectablesBlueprint.push(factory),lView.push(factory)}else{let indexInFactory=multiFactoryAdd(lInjectablesBlueprint[isViewProvider?existingViewProvidersFactoryIndex:existingProvidersFactoryIndex],providerFactory,!isViewProvider&&isComponent2);registerDestroyHooksIfSupported(tView,provider,existingProvidersFactoryIndex>-1?existingProvidersFactoryIndex:existingViewProvidersFactoryIndex,indexInFactory)}!isViewProvider&&isComponent2&&doesViewProvidersFactoryExist&&lInjectablesBlueprint[existingViewProvidersFactoryIndex].componentProviders++}}}function registerDestroyHooksIfSupported(tView,provider,contextIndex,indexInFactory){let providerIsTypeProvider=isTypeProvider(provider),providerIsClassProvider=isClassProvider(provider);if(providerIsTypeProvider||providerIsClassProvider){let ngOnDestroy=(providerIsClassProvider?resolveForwardRef(provider.useClass):provider).prototype.ngOnDestroy;if(ngOnDestroy){let hooks=tView.destroyHooks||(tView.destroyHooks=[]);if(!providerIsTypeProvider&&provider.multi){let existingCallbacksIndex=hooks.indexOf(contextIndex);existingCallbacksIndex===-1?hooks.push(contextIndex,[indexInFactory,ngOnDestroy]):hooks[existingCallbacksIndex+1].push(indexInFactory,ngOnDestroy)}else hooks.push(contextIndex,ngOnDestroy)}}}function multiFactoryAdd(multiFactory2,factory,isComponentProvider){return isComponentProvider&&multiFactory2.componentProviders++,multiFactory2.multi.push(factory)-1}function indexOf(item,arr,begin,end){for(let i=begin;i<end;i++)if(arr[i]===item)return i;return-1}function multiProvidersFactoryResolver(_,flags,tData,lData,tNode){return multiResolve(this.multi,[])}function multiViewProvidersFactoryResolver(_,_flags,_tData,lView,tNode){let factories=this.multi,result;if(this.providerFactory){let componentCount=this.providerFactory.componentProviders,multiProviders=getNodeInjectable(lView,lView[TVIEW],this.providerFactory.index,tNode);result=multiProviders.slice(0,componentCount),multiResolve(factories,result);for(let i=componentCount;i<multiProviders.length;i++)result.push(multiProviders[i])}else result=[],multiResolve(factories,result);return result}function multiResolve(factories,result){for(let i=0;i<factories.length;i++){let factory=factories[i];result.push(factory())}return result}function multiFactory(factoryFn,index,isViewProvider,isComponent2,f,provider){let factory=new NodeInjectorFactory(factoryFn,isViewProvider,\u0275\u0275directiveInject,null);return factory.multi=[],factory.index=index,factory.componentProviders=0,multiFactoryAdd(factory,f,isComponent2&&!isViewProvider),factory}function \u0275\u0275ProvidersFeature(providers,viewProviders=[]){return definition=>{definition.providersResolver=(def,processProvidersFn)=>providersResolver(def,processProvidersFn?processProvidersFn(providers):providers,viewProviders)}}function \u0275\u0275pureFunction0(slotOffset,pureFn,thisArg){let bindingIndex=getBindingRoot()+slotOffset,lView=getLView();return lView[bindingIndex]===NO_CHANGE?updateBinding(lView,bindingIndex,thisArg?pureFn.call(thisArg):pureFn()):getBinding(lView,bindingIndex)}function \u0275\u0275pureFunction1(slotOffset,pureFn,exp,thisArg){return pureFunction1Internal(getLView(),getBindingRoot(),slotOffset,pureFn,exp,thisArg)}function \u0275\u0275pureFunction3(slotOffset,pureFn,exp1,exp2,exp3,thisArg){return pureFunction3Internal(getLView(),getBindingRoot(),slotOffset,pureFn,exp1,exp2,exp3,thisArg)}function getPureFunctionReturnValue(lView,returnValueIndex){let lastReturnValue=lView[returnValueIndex];return lastReturnValue===NO_CHANGE?void 0:lastReturnValue}function pureFunction1Internal(lView,bindingRoot,slotOffset,pureFn,exp,thisArg){let bindingIndex=bindingRoot+slotOffset;return bindingUpdated(lView,bindingIndex,exp)?updateBinding(lView,bindingIndex+1,thisArg?pureFn.call(thisArg,exp):pureFn(exp)):getPureFunctionReturnValue(lView,bindingIndex+1)}function pureFunction2Internal(lView,bindingRoot,slotOffset,pureFn,exp1,exp2,thisArg){let bindingIndex=bindingRoot+slotOffset;return bindingUpdated2(lView,bindingIndex,exp1,exp2)?updateBinding(lView,bindingIndex+2,thisArg?pureFn.call(thisArg,exp1,exp2):pureFn(exp1,exp2)):getPureFunctionReturnValue(lView,bindingIndex+2)}function pureFunction3Internal(lView,bindingRoot,slotOffset,pureFn,exp1,exp2,exp3,thisArg){let bindingIndex=bindingRoot+slotOffset;return bindingUpdated3(lView,bindingIndex,exp1,exp2,exp3)?updateBinding(lView,bindingIndex+3,thisArg?pureFn.call(thisArg,exp1,exp2,exp3):pureFn(exp1,exp2,exp3)):getPureFunctionReturnValue(lView,bindingIndex+3)}function \u0275\u0275pipe(index,pipeName){let tView=getTView(),pipeDef,adjustedIndex=index+HEADER_OFFSET;tView.firstCreatePass?(pipeDef=getPipeDef2(pipeName,tView.pipeRegistry),tView.data[adjustedIndex]=pipeDef,pipeDef.onDestroy&&(tView.destroyHooks??=[]).push(adjustedIndex,pipeDef.onDestroy)):pipeDef=tView.data[adjustedIndex];let pipeFactory=pipeDef.factory||(pipeDef.factory=getFactoryDef(pipeDef.type,!0)),previousInjectorProfilerContext,previousInjectImplementation=setInjectImplementation(\u0275\u0275directiveInject);try{let previousIncludeViewProviders=setIncludeViewProviders(!1),pipeInstance=pipeFactory();return setIncludeViewProviders(previousIncludeViewProviders),store(tView,getLView(),adjustedIndex,pipeInstance),pipeInstance}finally{setInjectImplementation(previousInjectImplementation)}}function getPipeDef2(name,registry2){if(registry2)for(let i=registry2.length-1;i>=0;i--){let pipeDef=registry2[i];if(name===pipeDef.name)return pipeDef}}function \u0275\u0275pipeBind1(index,offset,v1){let adjustedIndex=index+HEADER_OFFSET,lView=getLView(),pipeInstance=load(lView,adjustedIndex);return isPure(lView,adjustedIndex)?pureFunction1Internal(lView,getBindingRoot(),offset,pipeInstance.transform,v1,pipeInstance):pipeInstance.transform(v1)}function \u0275\u0275pipeBind2(index,slotOffset,v1,v2){let adjustedIndex=index+HEADER_OFFSET,lView=getLView(),pipeInstance=load(lView,adjustedIndex);return isPure(lView,adjustedIndex)?pureFunction2Internal(lView,getBindingRoot(),slotOffset,pipeInstance.transform,v1,v2,pipeInstance):pipeInstance.transform(v1,v2)}function \u0275\u0275pipeBind3(index,slotOffset,v1,v2,v3){let adjustedIndex=index+HEADER_OFFSET,lView=getLView(),pipeInstance=load(lView,adjustedIndex);return isPure(lView,adjustedIndex)?pureFunction3Internal(lView,getBindingRoot(),slotOffset,pipeInstance.transform,v1,v2,v3,pipeInstance):pipeInstance.transform(v1,v2,v3)}function isPure(lView,index){return lView[TVIEW].data[index].pure}function \u0275\u0275templateRefExtractor(tNode,lView){return createTemplateRef(tNode,lView)}var jitOptions=null;function setJitOptions(options){jitOptions!==null&&(options.defaultEncapsulation!==jitOptions.defaultEncapsulation||options.preserveWhitespaces!==jitOptions.preserveWhitespaces)||(jitOptions=options)}var ModuleWithComponentFactories=class{ngModuleFactory;componentFactories;constructor(ngModuleFactory,componentFactories){this.ngModuleFactory=ngModuleFactory,this.componentFactories=componentFactories}},Compiler=(()=>{class Compiler2{compileModuleSync(moduleType){return new NgModuleFactory2(moduleType)}compileModuleAsync(moduleType){return Promise.resolve(this.compileModuleSync(moduleType))}compileModuleAndAllComponentsSync(moduleType){let ngModuleFactory=this.compileModuleSync(moduleType),moduleDef=getNgModuleDef(moduleType),componentFactories=maybeUnwrapFn(moduleDef.declarations).reduce((factories,declaration)=>{let componentDef=getComponentDef(declaration);return componentDef&&factories.push(new ComponentFactory2(componentDef)),factories},[]);return new ModuleWithComponentFactories(ngModuleFactory,componentFactories)}compileModuleAndAllComponentsAsync(moduleType){return Promise.resolve(this.compileModuleAndAllComponentsSync(moduleType))}clearCache(){}clearCacheFor(type2){}getModuleId(moduleType){}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Compiler2)};static \u0275prov=\u0275\u0275defineInjectable({token:Compiler2,factory:Compiler2.\u0275fac,providedIn:"root"})}return Compiler2})(),COMPILER_OPTIONS=new InjectionToken("");var NgZoneChangeDetectionScheduler=(()=>{class NgZoneChangeDetectionScheduler2{zone=inject2(NgZone);changeDetectionScheduler=inject2(ChangeDetectionScheduler);applicationRef=inject2(ApplicationRef);applicationErrorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);_onMicrotaskEmptySubscription;initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{try{this.applicationRef.dirtyFlags|=1,this.applicationRef._tick()}catch(e){this.applicationErrorHandler(e)}})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgZoneChangeDetectionScheduler2)};static \u0275prov=\u0275\u0275defineInjectable({token:NgZoneChangeDetectionScheduler2,factory:NgZoneChangeDetectionScheduler2.\u0275fac,providedIn:"root"})}return NgZoneChangeDetectionScheduler2})();function internalProvideZoneChangeDetection({ngZoneFactory,ignoreChangesOutsideZone,scheduleInRootZone}){return ngZoneFactory??=()=>new NgZone(__spreadProps(__spreadValues({},getNgZoneOptions()),{scheduleInRootZone})),[{provide:NgZone,useFactory:ngZoneFactory},{provide:ENVIRONMENT_INITIALIZER,multi:!0,useFactory:()=>{let ngZoneChangeDetectionScheduler=inject2(NgZoneChangeDetectionScheduler,{optional:!0});return()=>ngZoneChangeDetectionScheduler.initialize()}},{provide:ENVIRONMENT_INITIALIZER,multi:!0,useFactory:()=>{let service=inject2(ZoneStablePendingTask);return()=>{service.initialize()}}},ignoreChangesOutsideZone===!0?{provide:ZONELESS_SCHEDULER_DISABLED,useValue:!0}:[],{provide:SCHEDULE_IN_ROOT_ZONE,useValue:scheduleInRootZone??SCHEDULE_IN_ROOT_ZONE_DEFAULT},{provide:INTERNAL_APPLICATION_ERROR_HANDLER,useFactory:()=>{let zone=inject2(NgZone),injector=inject2(EnvironmentInjector),userErrorHandler;return e=>{zone.runOutsideAngular(()=>{injector.destroyed&&!userErrorHandler?setTimeout(()=>{throw e}):(userErrorHandler??=injector.get(ErrorHandler),userErrorHandler.handleError(e))})}}}]}function getNgZoneOptions(options){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:options?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:options?.runCoalescing??!1}}var ZoneStablePendingTask=(()=>{class ZoneStablePendingTask2{subscription=new Subscription;initialized=!1;zone=inject2(NgZone);pendingTasks=inject2(PendingTasksInternal);initialize(){if(this.initialized)return;this.initialized=!0;let task=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(task=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{NgZone.assertNotInAngularZone(),queueMicrotask(()=>{task!==null&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(task),task=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{NgZone.assertInAngularZone(),task??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ZoneStablePendingTask2)};static \u0275prov=\u0275\u0275defineInjectable({token:ZoneStablePendingTask2,factory:ZoneStablePendingTask2.\u0275fac,providedIn:"root"})}return ZoneStablePendingTask2})();var ChangeDetectionSchedulerImpl=(()=>{class ChangeDetectionSchedulerImpl2{applicationErrorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);appRef=inject2(ApplicationRef);taskService=inject2(PendingTasksInternal);ngZone=inject2(NgZone);zonelessEnabled=inject2(ZONELESS_ENABLED);tracing=inject2(TracingService,{optional:!0});disableScheduling=inject2(ZONELESS_SCHEDULER_DISABLED,{optional:!0})??!1;zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run;schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}];subscriptions=new Subscription;angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(angularZoneInstanceIdProperty):null;scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(inject2(SCHEDULE_IN_ROOT_ZONE,{optional:!0})??!1);cancelScheduledCallback=null;useMicrotaskScheduler=!1;runningTick=!1;pendingRenderTaskId=null;constructor(){this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{this.runningTick||this.cleanup()})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()})),this.disableScheduling||=!this.zonelessEnabled&&(this.ngZone instanceof NoopNgZone||!this.zoneIsDefined)}notify(source){if(!this.zonelessEnabled&&source===5)return;let force=!1;switch(source){case 0:{this.appRef.dirtyFlags|=2;break}case 3:case 2:case 4:case 5:case 1:{this.appRef.dirtyFlags|=4;break}case 6:{this.appRef.dirtyFlags|=2,force=!0;break}case 12:{this.appRef.dirtyFlags|=16,force=!0;break}case 13:{this.appRef.dirtyFlags|=2,force=!0;break}case 11:{force=!0;break}case 9:case 8:case 7:case 10:default:this.appRef.dirtyFlags|=8}if(this.appRef.tracingSnapshot=this.tracing?.snapshot(this.appRef.tracingSnapshot)??null,!this.shouldScheduleTick(force))return;let scheduleCallback=this.useMicrotaskScheduler?scheduleCallbackWithMicrotask:scheduleCallbackWithRafRace;this.pendingRenderTaskId=this.taskService.add(),this.scheduleInRootZone?this.cancelScheduledCallback=Zone.root.run(()=>scheduleCallback(()=>this.tick())):this.cancelScheduledCallback=this.ngZone.runOutsideAngular(()=>scheduleCallback(()=>this.tick()))}shouldScheduleTick(force){return!(this.disableScheduling&&!force||this.appRef.destroyed||this.pendingRenderTaskId!==null||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(angularZoneInstanceIdProperty+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;if(this.appRef.dirtyFlags===0){this.cleanup();return}!this.zonelessEnabled&&this.appRef.dirtyFlags&7&&(this.appRef.dirtyFlags|=1);let task=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(e){this.taskService.remove(task),this.applicationErrorHandler(e)}finally{this.cleanup()}this.useMicrotaskScheduler=!0,scheduleCallbackWithMicrotask(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(task)})}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,this.pendingRenderTaskId!==null){let taskId=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(taskId)}}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ChangeDetectionSchedulerImpl2)};static \u0275prov=\u0275\u0275defineInjectable({token:ChangeDetectionSchedulerImpl2,factory:ChangeDetectionSchedulerImpl2.\u0275fac,providedIn:"root"})}return ChangeDetectionSchedulerImpl2})();function getGlobalLocale(){return typeof $localize<"u"&&$localize.locale||DEFAULT_LOCALE_ID}var LOCALE_ID=new InjectionToken("",{providedIn:"root",factory:()=>inject2(LOCALE_ID,{optional:!0,skipSelf:!0})||getGlobalLocale()});var OutputEmitterRef=class{destroyed=!1;listeners=null;errorHandler=inject2(ErrorHandler,{optional:!0});destroyRef=inject2(DestroyRef);constructor(){this.destroyRef.onDestroy(()=>{this.destroyed=!0,this.listeners=null})}subscribe(callback){if(this.destroyed)throw new RuntimeError(953,!1);return(this.listeners??=[]).push(callback),{unsubscribe:()=>{let idx=this.listeners?.indexOf(callback);idx!==void 0&&idx!==-1&&this.listeners?.splice(idx,1)}}}emit(value){if(this.destroyed){console.warn(formatRuntimeError(953,!1));return}if(this.listeners===null)return;let previousConsumer=setActiveConsumer(null);try{for(let listenerFn of this.listeners)try{listenerFn(value)}catch(err){this.errorHandler?.handleError(err)}}finally{setActiveConsumer(previousConsumer)}}};function untracked2(nonReactiveReadsFn){return untracked(nonReactiveReadsFn)}function computed(computation,options){return createComputed(computation,options?.equal)}var EffectRefImpl=class{[SIGNAL];constructor(node){this[SIGNAL]=node}destroy(){this[SIGNAL].destroy()}};function effect(effectFn,options){let injector=options?.injector??inject2(Injector),destroyRef=options?.manualCleanup!==!0?injector.get(DestroyRef):null,node,viewContext=injector.get(ViewContext,null,{optional:!0}),notifier=injector.get(ChangeDetectionScheduler);return viewContext!==null?(node=createViewEffect(viewContext.view,notifier,effectFn),destroyRef instanceof NodeInjectorDestroyRef&&destroyRef._lView===viewContext.view&&(destroyRef=null)):node=createRootEffect(effectFn,injector.get(EffectScheduler),notifier),node.injector=injector,destroyRef!==null&&(node.onDestroyFn=destroyRef.onDestroy(()=>node.destroy())),new EffectRefImpl(node)}var BASE_EFFECT_NODE=__spreadProps(__spreadValues({},REACTIVE_NODE),{consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!0,dirty:!0,hasRun:!1,cleanupFns:void 0,zone:null,kind:"effect",onDestroyFn:noop2,run(){if(this.dirty=!1,this.hasRun&&!consumerPollProducersForChange(this))return;this.hasRun=!0;let registerCleanupFn=cleanupFn=>(this.cleanupFns??=[]).push(cleanupFn),prevNode=consumerBeforeComputation(this),prevRefreshingViews=setIsRefreshingViews(!1);try{this.maybeCleanup(),this.fn(registerCleanupFn)}finally{setIsRefreshingViews(prevRefreshingViews),consumerAfterComputation(this,prevNode)}},maybeCleanup(){if(!this.cleanupFns?.length)return;let prevConsumer=setActiveConsumer(null);try{for(;this.cleanupFns.length;)this.cleanupFns.pop()()}finally{this.cleanupFns=[],setActiveConsumer(prevConsumer)}}}),ROOT_EFFECT_NODE=__spreadProps(__spreadValues({},BASE_EFFECT_NODE),{consumerMarkedDirty(){this.scheduler.schedule(this),this.notifier.notify(12)},destroy(){consumerDestroy(this),this.onDestroyFn(),this.maybeCleanup(),this.scheduler.remove(this)}}),VIEW_EFFECT_NODE=__spreadProps(__spreadValues({},BASE_EFFECT_NODE),{consumerMarkedDirty(){this.view[FLAGS]|=8192,markAncestorsForTraversal(this.view),this.notifier.notify(13)},destroy(){consumerDestroy(this),this.onDestroyFn(),this.maybeCleanup(),this.view[EFFECTS]?.delete(this)}});function createViewEffect(view,notifier,fn){let node=Object.create(VIEW_EFFECT_NODE);return node.view=view,node.zone=typeof Zone<"u"?Zone.current:null,node.notifier=notifier,node.fn=fn,view[EFFECTS]??=new Set,view[EFFECTS].add(node),node.consumerMarkedDirty(node),node}function createRootEffect(fn,scheduler,notifier){let node=Object.create(ROOT_EFFECT_NODE);return node.fn=fn,node.scheduler=scheduler,node.notifier=notifier,node.zone=typeof Zone<"u"?Zone.current:null,node.scheduler.add(node),node.notifier.notify(12),node}var REQUIRED_UNSET_VALUE=Symbol("InputSignalNode#UNSET"),INPUT_SIGNAL_NODE=__spreadProps(__spreadValues({},SIGNAL_NODE),{transformFn:void 0,applyValueToInputSignal(node,value){signalSetFn(node,value)}});function createInputSignal(initialValue,options){let node=Object.create(INPUT_SIGNAL_NODE);node.value=initialValue,node.transformFn=options?.transform;function inputValueFn(){if(producerAccessed(node),node.value===REQUIRED_UNSET_VALUE){let message=null;throw new RuntimeError(-950,message)}return node.value}return inputValueFn[SIGNAL]=node,inputValueFn}var HostAttributeToken=class{attributeName;constructor(attributeName){this.attributeName=attributeName}__NG_ELEMENT_ID__=()=>\u0275\u0275injectAttribute(this.attributeName);toString(){return`HostAttributeToken ${this.attributeName}`}},HOST_TAG_NAME=new InjectionToken("");HOST_TAG_NAME.__NG_ELEMENT_ID__=flags=>{let tNode=getCurrentTNode();if(tNode===null)throw new RuntimeError(204,!1);if(tNode.type&2)return tNode.value;if(flags&8)return null;throw new RuntimeError(204,!1)};function output(opts){return new OutputEmitterRef}function inputFunction(initialValue,opts){return createInputSignal(initialValue,opts)}function inputRequiredFunction(opts){return createInputSignal(REQUIRED_UNSET_VALUE,opts)}var input=(inputFunction.required=inputRequiredFunction,inputFunction);function viewChildFn(locator,opts){return createSingleResultOptionalQuerySignalFn(opts)}function viewChildRequiredFn(locator,opts){return createSingleResultRequiredQuerySignalFn(opts)}var viewChild=(viewChildFn.required=viewChildRequiredFn,viewChildFn);function contentChildFn(locator,opts){return createSingleResultOptionalQuerySignalFn(opts)}function contentChildRequiredFn(locator,opts){return createSingleResultRequiredQuerySignalFn(opts)}var contentChild=(contentChildFn.required=contentChildRequiredFn,contentChildFn);var Version=class{full;major;minor;patch;constructor(full){this.full=full;let parts=full.split(".");this.major=parts[0],this.minor=parts[1],this.patch=parts.slice(2).join(".")}};function compileNgModuleFactory(injector,options,moduleType){let moduleFactory=new NgModuleFactory2(moduleType);return Promise.resolve(moduleFactory)}function _lastDefined(args){for(let i=args.length-1;i>=0;i--)if(args[i]!==void 0)return args[i]}var PLATFORM_DESTROY_LISTENERS=new InjectionToken(""),ENABLE_ROOT_COMPONENT_BOOTSTRAP=new InjectionToken("");function isApplicationBootstrapConfig(config2){return!config2.moduleRef}function bootstrap(config2){let envInjector=isApplicationBootstrapConfig(config2)?config2.r3Injector:config2.moduleRef.injector,ngZone=envInjector.get(NgZone);return ngZone.run(()=>{isApplicationBootstrapConfig(config2)?config2.r3Injector.resolveInjectorInitializers():config2.moduleRef.resolveInjectorInitializers();let exceptionHandler=envInjector.get(INTERNAL_APPLICATION_ERROR_HANDLER),onErrorSubscription;if(ngZone.runOutsideAngular(()=>{onErrorSubscription=ngZone.onError.subscribe({next:exceptionHandler})}),isApplicationBootstrapConfig(config2)){let destroyListener=()=>envInjector.destroy(),onPlatformDestroyListeners=config2.platformInjector.get(PLATFORM_DESTROY_LISTENERS);onPlatformDestroyListeners.add(destroyListener),envInjector.onDestroy(()=>{onErrorSubscription.unsubscribe(),onPlatformDestroyListeners.delete(destroyListener)})}else{let destroyListener=()=>config2.moduleRef.destroy(),onPlatformDestroyListeners=config2.platformInjector.get(PLATFORM_DESTROY_LISTENERS);onPlatformDestroyListeners.add(destroyListener),config2.moduleRef.onDestroy(()=>{remove(config2.allPlatformModules,config2.moduleRef),onErrorSubscription.unsubscribe(),onPlatformDestroyListeners.delete(destroyListener)})}return _callAndReportToErrorHandler(exceptionHandler,ngZone,()=>{let pendingTasks=envInjector.get(PendingTasksInternal),taskId=pendingTasks.add(),initStatus=envInjector.get(ApplicationInitStatus);return initStatus.runInitializers(),initStatus.donePromise.then(()=>{let localeId=envInjector.get(LOCALE_ID,DEFAULT_LOCALE_ID);if(setLocaleId(localeId||DEFAULT_LOCALE_ID),!envInjector.get(ENABLE_ROOT_COMPONENT_BOOTSTRAP,!0))return isApplicationBootstrapConfig(config2)?envInjector.get(ApplicationRef):(config2.allPlatformModules.push(config2.moduleRef),config2.moduleRef);if(isApplicationBootstrapConfig(config2)){let appRef=envInjector.get(ApplicationRef);return config2.rootComponent!==void 0&&appRef.bootstrap(config2.rootComponent),appRef}else return moduleBootstrapImpl?.(config2.moduleRef,config2.allPlatformModules),config2.moduleRef}).finally(()=>void pendingTasks.remove(taskId))})})}var moduleBootstrapImpl;function setModuleBootstrapImpl(){moduleBootstrapImpl=_moduleDoBootstrap}function _moduleDoBootstrap(moduleRef,allPlatformModules){let appRef=moduleRef.injector.get(ApplicationRef);if(moduleRef._bootstrapComponents.length>0)moduleRef._bootstrapComponents.forEach(f=>appRef.bootstrap(f));else if(moduleRef.instance.ngDoBootstrap)moduleRef.instance.ngDoBootstrap(appRef);else throw new RuntimeError(-403,!1);allPlatformModules.push(moduleRef)}function _callAndReportToErrorHandler(errorHandler2,ngZone,callback){try{let result=callback();return isPromise2(result)?result.catch(e=>{throw ngZone.runOutsideAngular(()=>errorHandler2(e)),e}):result}catch(e){throw ngZone.runOutsideAngular(()=>errorHandler2(e)),e}}var PlatformRef=(()=>{class PlatformRef2{_injector;_modules=[];_destroyListeners=[];_destroyed=!1;constructor(_injector){this._injector=_injector}bootstrapModuleFactory(moduleFactory,options){let scheduleInRootZone=options?.scheduleInRootZone,ngZoneFactory=()=>getNgZone(options?.ngZone,__spreadProps(__spreadValues({},getNgZoneOptions({eventCoalescing:options?.ngZoneEventCoalescing,runCoalescing:options?.ngZoneRunCoalescing})),{scheduleInRootZone})),ignoreChangesOutsideZone=options?.ignoreChangesOutsideZone,allAppProviders=[internalProvideZoneChangeDetection({ngZoneFactory,ignoreChangesOutsideZone}),{provide:ChangeDetectionScheduler,useExisting:ChangeDetectionSchedulerImpl},errorHandlerEnvironmentInitializer],moduleRef=createNgModuleRefWithProviders(moduleFactory.moduleType,this.injector,allAppProviders);return setModuleBootstrapImpl(),bootstrap({moduleRef,allPlatformModules:this._modules,platformInjector:this.injector})}bootstrapModule(moduleType,compilerOptions=[]){let options=optionsReducer({},compilerOptions);return setModuleBootstrapImpl(),compileNgModuleFactory(this.injector,options,moduleType).then(moduleFactory=>this.bootstrapModuleFactory(moduleFactory,options))}onDestroy(callback){this._destroyListeners.push(callback)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new RuntimeError(404,!1);this._modules.slice().forEach(module=>module.destroy()),this._destroyListeners.forEach(listener=>listener());let destroyListeners=this._injector.get(PLATFORM_DESTROY_LISTENERS,null);destroyListeners&&(destroyListeners.forEach(listener=>listener()),destroyListeners.clear()),this._destroyed=!0}get destroyed(){return this._destroyed}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PlatformRef2)(\u0275\u0275inject(Injector))};static \u0275prov=\u0275\u0275defineInjectable({token:PlatformRef2,factory:PlatformRef2.\u0275fac,providedIn:"platform"})}return PlatformRef2})(),_platformInjector=null,ALLOW_MULTIPLE_PLATFORMS=new InjectionToken("");function createPlatform(injector){if(_platformInjector&&!_platformInjector.get(ALLOW_MULTIPLE_PLATFORMS,!1))throw new RuntimeError(400,!1);publishSignalConfiguration(),_platformInjector=injector;let platform=injector.get(PlatformRef);return runPlatformInitializers(injector),platform}function createPlatformFactory(parentPlatformFactory,name,providers=[]){let desc=`Platform: ${name}`,marker=new InjectionToken(desc);return(extraProviders=[])=>{let platform=getPlatform();if(!platform||platform.injector.get(ALLOW_MULTIPLE_PLATFORMS,!1)){let platformProviders=[...providers,...extraProviders,{provide:marker,useValue:!0}];parentPlatformFactory?parentPlatformFactory(platformProviders):createPlatform(createPlatformInjector(platformProviders,desc))}return assertPlatform(marker)}}function createPlatformInjector(providers=[],name){return Injector.create({name,providers:[{provide:INJECTOR_SCOPE,useValue:"platform"},{provide:PLATFORM_DESTROY_LISTENERS,useValue:new Set([()=>_platformInjector=null])},...providers]})}function assertPlatform(requiredToken){let platform=getPlatform();if(!platform)throw new RuntimeError(401,!1);return platform}function getPlatform(){return _platformInjector?.get(PlatformRef)??null}function runPlatformInitializers(injector){let inits=injector.get(PLATFORM_INITIALIZER,null);runInInjectionContext(injector,()=>{inits?.forEach(init=>init())})}function isDevMode(){return!1}var ChangeDetectorRef=(()=>{class ChangeDetectorRef2{static __NG_ELEMENT_ID__=injectChangeDetectorRef}return ChangeDetectorRef2})();function injectChangeDetectorRef(flags){return createViewRef(getCurrentTNode(),getLView(),(flags&16)===16)}function createViewRef(tNode,lView,isPipe){if(isComponentHost(tNode)&&!isPipe){let componentView=getComponentLViewByIndex(tNode.index,lView);return new ViewRef(componentView,componentView)}else if(tNode.type&175){let hostComponentView=lView[DECLARATION_COMPONENT_VIEW];return new ViewRef(hostComponentView,lView)}return null}var DefaultIterableDifferFactory=class{constructor(){}supports(obj){return isListLikeIterable(obj)}create(trackByFn){return new DefaultIterableDiffer(trackByFn)}},trackByIdentity=(index,item)=>item,DefaultIterableDiffer=class{length=0;collection;_linkedRecords=null;_unlinkedRecords=null;_previousItHead=null;_itHead=null;_itTail=null;_additionsHead=null;_additionsTail=null;_movesHead=null;_movesTail=null;_removalsHead=null;_removalsTail=null;_identityChangesHead=null;_identityChangesTail=null;_trackByFn;constructor(trackByFn){this._trackByFn=trackByFn||trackByIdentity}forEachItem(fn){let record;for(record=this._itHead;record!==null;record=record._next)fn(record)}forEachOperation(fn){let nextIt=this._itHead,nextRemove=this._removalsHead,addRemoveOffset=0,moveOffsets=null;for(;nextIt||nextRemove;){let record=!nextRemove||nextIt&&nextIt.currentIndex<getPreviousIndex(nextRemove,addRemoveOffset,moveOffsets)?nextIt:nextRemove,adjPreviousIndex=getPreviousIndex(record,addRemoveOffset,moveOffsets),currentIndex=record.currentIndex;if(record===nextRemove)addRemoveOffset--,nextRemove=nextRemove._nextRemoved;else if(nextIt=nextIt._next,record.previousIndex==null)addRemoveOffset++;else{moveOffsets||(moveOffsets=[]);let localMovePreviousIndex=adjPreviousIndex-addRemoveOffset,localCurrentIndex=currentIndex-addRemoveOffset;if(localMovePreviousIndex!=localCurrentIndex){for(let i=0;i<localMovePreviousIndex;i++){let offset=i<moveOffsets.length?moveOffsets[i]:moveOffsets[i]=0,index=offset+i;localCurrentIndex<=index&&index<localMovePreviousIndex&&(moveOffsets[i]=offset+1)}let previousIndex=record.previousIndex;moveOffsets[previousIndex]=localCurrentIndex-localMovePreviousIndex}}adjPreviousIndex!==currentIndex&&fn(record,adjPreviousIndex,currentIndex)}}forEachPreviousItem(fn){let record;for(record=this._previousItHead;record!==null;record=record._nextPrevious)fn(record)}forEachAddedItem(fn){let record;for(record=this._additionsHead;record!==null;record=record._nextAdded)fn(record)}forEachMovedItem(fn){let record;for(record=this._movesHead;record!==null;record=record._nextMoved)fn(record)}forEachRemovedItem(fn){let record;for(record=this._removalsHead;record!==null;record=record._nextRemoved)fn(record)}forEachIdentityChange(fn){let record;for(record=this._identityChangesHead;record!==null;record=record._nextIdentityChange)fn(record)}diff(collection){if(collection==null&&(collection=[]),!isListLikeIterable(collection))throw new RuntimeError(900,!1);return this.check(collection)?this:null}onDestroy(){}check(collection){this._reset();let record=this._itHead,mayBeDirty=!1,index,item,itemTrackBy;if(Array.isArray(collection)){this.length=collection.length;for(let index2=0;index2<this.length;index2++)item=collection[index2],itemTrackBy=this._trackByFn(index2,item),record===null||!Object.is(record.trackById,itemTrackBy)?(record=this._mismatch(record,item,itemTrackBy,index2),mayBeDirty=!0):(mayBeDirty&&(record=this._verifyReinsertion(record,item,itemTrackBy,index2)),Object.is(record.item,item)||this._addIdentityChange(record,item)),record=record._next}else index=0,iterateListLike(collection,item2=>{itemTrackBy=this._trackByFn(index,item2),record===null||!Object.is(record.trackById,itemTrackBy)?(record=this._mismatch(record,item2,itemTrackBy,index),mayBeDirty=!0):(mayBeDirty&&(record=this._verifyReinsertion(record,item2,itemTrackBy,index)),Object.is(record.item,item2)||this._addIdentityChange(record,item2)),record=record._next,index++}),this.length=index;return this._truncate(record),this.collection=collection,this.isDirty}get isDirty(){return this._additionsHead!==null||this._movesHead!==null||this._removalsHead!==null||this._identityChangesHead!==null}_reset(){if(this.isDirty){let record;for(record=this._previousItHead=this._itHead;record!==null;record=record._next)record._nextPrevious=record._next;for(record=this._additionsHead;record!==null;record=record._nextAdded)record.previousIndex=record.currentIndex;for(this._additionsHead=this._additionsTail=null,record=this._movesHead;record!==null;record=record._nextMoved)record.previousIndex=record.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(record,item,itemTrackBy,index){let previousRecord;return record===null?previousRecord=this._itTail:(previousRecord=record._prev,this._remove(record)),record=this._unlinkedRecords===null?null:this._unlinkedRecords.get(itemTrackBy,null),record!==null?(Object.is(record.item,item)||this._addIdentityChange(record,item),this._reinsertAfter(record,previousRecord,index)):(record=this._linkedRecords===null?null:this._linkedRecords.get(itemTrackBy,index),record!==null?(Object.is(record.item,item)||this._addIdentityChange(record,item),this._moveAfter(record,previousRecord,index)):record=this._addAfter(new IterableChangeRecord_(item,itemTrackBy),previousRecord,index)),record}_verifyReinsertion(record,item,itemTrackBy,index){let reinsertRecord=this._unlinkedRecords===null?null:this._unlinkedRecords.get(itemTrackBy,null);return reinsertRecord!==null?record=this._reinsertAfter(reinsertRecord,record._prev,index):record.currentIndex!=index&&(record.currentIndex=index,this._addToMoves(record,index)),record}_truncate(record){for(;record!==null;){let nextRecord=record._next;this._addToRemovals(this._unlink(record)),record=nextRecord}this._unlinkedRecords!==null&&this._unlinkedRecords.clear(),this._additionsTail!==null&&(this._additionsTail._nextAdded=null),this._movesTail!==null&&(this._movesTail._nextMoved=null),this._itTail!==null&&(this._itTail._next=null),this._removalsTail!==null&&(this._removalsTail._nextRemoved=null),this._identityChangesTail!==null&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(record,prevRecord,index){this._unlinkedRecords!==null&&this._unlinkedRecords.remove(record);let prev=record._prevRemoved,next=record._nextRemoved;return prev===null?this._removalsHead=next:prev._nextRemoved=next,next===null?this._removalsTail=prev:next._prevRemoved=prev,this._insertAfter(record,prevRecord,index),this._addToMoves(record,index),record}_moveAfter(record,prevRecord,index){return this._unlink(record),this._insertAfter(record,prevRecord,index),this._addToMoves(record,index),record}_addAfter(record,prevRecord,index){return this._insertAfter(record,prevRecord,index),this._additionsTail===null?this._additionsTail=this._additionsHead=record:this._additionsTail=this._additionsTail._nextAdded=record,record}_insertAfter(record,prevRecord,index){let next=prevRecord===null?this._itHead:prevRecord._next;return record._next=next,record._prev=prevRecord,next===null?this._itTail=record:next._prev=record,prevRecord===null?this._itHead=record:prevRecord._next=record,this._linkedRecords===null&&(this._linkedRecords=new _DuplicateMap),this._linkedRecords.put(record),record.currentIndex=index,record}_remove(record){return this._addToRemovals(this._unlink(record))}_unlink(record){this._linkedRecords!==null&&this._linkedRecords.remove(record);let prev=record._prev,next=record._next;return prev===null?this._itHead=next:prev._next=next,next===null?this._itTail=prev:next._prev=prev,record}_addToMoves(record,toIndex){return record.previousIndex===toIndex||(this._movesTail===null?this._movesTail=this._movesHead=record:this._movesTail=this._movesTail._nextMoved=record),record}_addToRemovals(record){return this._unlinkedRecords===null&&(this._unlinkedRecords=new _DuplicateMap),this._unlinkedRecords.put(record),record.currentIndex=null,record._nextRemoved=null,this._removalsTail===null?(this._removalsTail=this._removalsHead=record,record._prevRemoved=null):(record._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=record),record}_addIdentityChange(record,item){return record.item=item,this._identityChangesTail===null?this._identityChangesTail=this._identityChangesHead=record:this._identityChangesTail=this._identityChangesTail._nextIdentityChange=record,record}},IterableChangeRecord_=class{item;trackById;currentIndex=null;previousIndex=null;_nextPrevious=null;_prev=null;_next=null;_prevDup=null;_nextDup=null;_prevRemoved=null;_nextRemoved=null;_nextAdded=null;_nextMoved=null;_nextIdentityChange=null;constructor(item,trackById){this.item=item,this.trackById=trackById}},_DuplicateItemRecordList=class{_head=null;_tail=null;add(record){this._head===null?(this._head=this._tail=record,record._nextDup=null,record._prevDup=null):(this._tail._nextDup=record,record._prevDup=this._tail,record._nextDup=null,this._tail=record)}get(trackById,atOrAfterIndex){let record;for(record=this._head;record!==null;record=record._nextDup)if((atOrAfterIndex===null||atOrAfterIndex<=record.currentIndex)&&Object.is(record.trackById,trackById))return record;return null}remove(record){let prev=record._prevDup,next=record._nextDup;return prev===null?this._head=next:prev._nextDup=next,next===null?this._tail=prev:next._prevDup=prev,this._head===null}},_DuplicateMap=class{map=new Map;put(record){let key=record.trackById,duplicates=this.map.get(key);duplicates||(duplicates=new _DuplicateItemRecordList,this.map.set(key,duplicates)),duplicates.add(record)}get(trackById,atOrAfterIndex){let key=trackById,recordList=this.map.get(key);return recordList?recordList.get(trackById,atOrAfterIndex):null}remove(record){let key=record.trackById;return this.map.get(key).remove(record)&&this.map.delete(key),record}get isEmpty(){return this.map.size===0}clear(){this.map.clear()}};function getPreviousIndex(item,addRemoveOffset,moveOffsets){let previousIndex=item.previousIndex;if(previousIndex===null)return previousIndex;let moveOffset=0;return moveOffsets&&previousIndex<moveOffsets.length&&(moveOffset=moveOffsets[previousIndex]),previousIndex+addRemoveOffset+moveOffset}var DefaultKeyValueDifferFactory=class{constructor(){}supports(obj){return obj instanceof Map||isJsObject(obj)}create(){return new DefaultKeyValueDiffer}},DefaultKeyValueDiffer=class{_records=new Map;_mapHead=null;_appendAfter=null;_previousMapHead=null;_changesHead=null;_changesTail=null;_additionsHead=null;_additionsTail=null;_removalsHead=null;_removalsTail=null;get isDirty(){return this._additionsHead!==null||this._changesHead!==null||this._removalsHead!==null}forEachItem(fn){let record;for(record=this._mapHead;record!==null;record=record._next)fn(record)}forEachPreviousItem(fn){let record;for(record=this._previousMapHead;record!==null;record=record._nextPrevious)fn(record)}forEachChangedItem(fn){let record;for(record=this._changesHead;record!==null;record=record._nextChanged)fn(record)}forEachAddedItem(fn){let record;for(record=this._additionsHead;record!==null;record=record._nextAdded)fn(record)}forEachRemovedItem(fn){let record;for(record=this._removalsHead;record!==null;record=record._nextRemoved)fn(record)}diff(map2){if(!map2)map2=new Map;else if(!(map2 instanceof Map||isJsObject(map2)))throw new RuntimeError(900,!1);return this.check(map2)?this:null}onDestroy(){}check(map2){this._reset();let insertBefore=this._mapHead;if(this._appendAfter=null,this._forEach(map2,(value,key)=>{if(insertBefore&&insertBefore.key===key)this._maybeAddToChanges(insertBefore,value),this._appendAfter=insertBefore,insertBefore=insertBefore._next;else{let record=this._getOrCreateRecordForKey(key,value);insertBefore=this._insertBeforeOrAppend(insertBefore,record)}}),insertBefore){insertBefore._prev&&(insertBefore._prev._next=null),this._removalsHead=insertBefore;for(let record=insertBefore;record!==null;record=record._nextRemoved)record===this._mapHead&&(this._mapHead=null),this._records.delete(record.key),record._nextRemoved=record._next,record.previousValue=record.currentValue,record.currentValue=null,record._prev=null,record._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(before,record){if(before){let prev=before._prev;return record._next=before,record._prev=prev,before._prev=record,prev&&(prev._next=record),before===this._mapHead&&(this._mapHead=record),this._appendAfter=before,before}return this._appendAfter?(this._appendAfter._next=record,record._prev=this._appendAfter):this._mapHead=record,this._appendAfter=record,null}_getOrCreateRecordForKey(key,value){if(this._records.has(key)){let record2=this._records.get(key);this._maybeAddToChanges(record2,value);let prev=record2._prev,next=record2._next;return prev&&(prev._next=next),next&&(next._prev=prev),record2._next=null,record2._prev=null,record2}let record=new KeyValueChangeRecord_(key);return this._records.set(key,record),record.currentValue=value,this._addToAdditions(record),record}_reset(){if(this.isDirty){let record;for(this._previousMapHead=this._mapHead,record=this._previousMapHead;record!==null;record=record._next)record._nextPrevious=record._next;for(record=this._changesHead;record!==null;record=record._nextChanged)record.previousValue=record.currentValue;for(record=this._additionsHead;record!=null;record=record._nextAdded)record.previousValue=record.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(record,newValue){Object.is(newValue,record.currentValue)||(record.previousValue=record.currentValue,record.currentValue=newValue,this._addToChanges(record))}_addToAdditions(record){this._additionsHead===null?this._additionsHead=this._additionsTail=record:(this._additionsTail._nextAdded=record,this._additionsTail=record)}_addToChanges(record){this._changesHead===null?this._changesHead=this._changesTail=record:(this._changesTail._nextChanged=record,this._changesTail=record)}_forEach(obj,fn){obj instanceof Map?obj.forEach(fn):Object.keys(obj).forEach(k=>fn(obj[k],k))}},KeyValueChangeRecord_=class{key;previousValue=null;currentValue=null;_nextPrevious=null;_next=null;_prev=null;_nextAdded=null;_nextRemoved=null;_nextChanged=null;constructor(key){this.key=key}};function defaultIterableDiffersFactory(){return new IterableDiffers([new DefaultIterableDifferFactory])}var IterableDiffers=(()=>{class IterableDiffers2{factories;static \u0275prov=\u0275\u0275defineInjectable({token:IterableDiffers2,providedIn:"root",factory:defaultIterableDiffersFactory});constructor(factories){this.factories=factories}static create(factories,parent){if(parent!=null){let copied=parent.factories.slice();factories=factories.concat(copied)}return new IterableDiffers2(factories)}static extend(factories){return{provide:IterableDiffers2,useFactory:parent=>IterableDiffers2.create(factories,parent||defaultIterableDiffersFactory()),deps:[[IterableDiffers2,new SkipSelf,new Optional]]}}find(iterable){let factory=this.factories.find(f=>f.supports(iterable));if(factory!=null)return factory;throw new RuntimeError(901,!1)}}return IterableDiffers2})();function defaultKeyValueDiffersFactory(){return new KeyValueDiffers([new DefaultKeyValueDifferFactory])}var KeyValueDiffers=(()=>{class KeyValueDiffers2{static \u0275prov=\u0275\u0275defineInjectable({token:KeyValueDiffers2,providedIn:"root",factory:defaultKeyValueDiffersFactory});factories;constructor(factories){this.factories=factories}static create(factories,parent){if(parent){let copied=parent.factories.slice();factories=factories.concat(copied)}return new KeyValueDiffers2(factories)}static extend(factories){return{provide:KeyValueDiffers2,useFactory:parent=>KeyValueDiffers2.create(factories,parent||defaultKeyValueDiffersFactory()),deps:[[KeyValueDiffers2,new SkipSelf,new Optional]]}}find(kv){let factory=this.factories.find(f=>f.supports(kv));if(factory)return factory;throw new RuntimeError(901,!1)}}return KeyValueDiffers2})();var platformCore=createPlatformFactory(null,"core",[]),ApplicationModule=(()=>{class ApplicationModule2{constructor(appRef){}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ApplicationModule2)(\u0275\u0275inject(ApplicationRef))};static \u0275mod=\u0275\u0275defineNgModule({type:ApplicationModule2});static \u0275inj=\u0275\u0275defineInjector({})}return ApplicationModule2})();function booleanAttribute(value){return typeof value=="boolean"?value:value!=null&&value!=="false"}function numberAttribute(value,fallbackValue=NaN){return!isNaN(parseFloat(value))&&!isNaN(Number(value))?Number(value):fallbackValue}var NOT_SET=Symbol("NOT_SET"),EMPTY_CLEANUP_SET=new Set,AFTER_RENDER_PHASE_EFFECT_NODE=__spreadProps(__spreadValues({},SIGNAL_NODE),{consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!0,value:NOT_SET,cleanup:null,consumerMarkedDirty(){if(this.sequence.impl.executing){if(this.sequence.lastPhase===null||this.sequence.lastPhase<this.phase)return;this.sequence.erroredOrDestroyed=!0}this.sequence.scheduler.notify(7)},phaseFn(previousValue){if(this.sequence.lastPhase=this.phase,!this.dirty)return this.signal;if(this.dirty=!1,this.value!==NOT_SET&&!consumerPollProducersForChange(this))return this.signal;try{for(let cleanupFn of this.cleanup??EMPTY_CLEANUP_SET)cleanupFn()}finally{this.cleanup?.clear()}let args=[];previousValue!==void 0&&args.push(previousValue),args.push(this.registerCleanupFn);let prevConsumer=consumerBeforeComputation(this),newValue;try{newValue=this.userFn.apply(null,args)}finally{consumerAfterComputation(this,prevConsumer)}return(this.value===NOT_SET||!this.equal(this.value,newValue))&&(this.value=newValue,this.version++),this.signal}}),AfterRenderEffectSequence=class extends AfterRenderSequence{scheduler;lastPhase=null;nodes=[void 0,void 0,void 0,void 0];constructor(impl,effectHooks,view,scheduler,injector,snapshot=null){super(impl,[void 0,void 0,void 0,void 0],view,!1,injector.get(DestroyRef),snapshot),this.scheduler=scheduler;for(let phase of AFTER_RENDER_PHASES){let effectHook=effectHooks[phase];if(effectHook===void 0)continue;let node=Object.create(AFTER_RENDER_PHASE_EFFECT_NODE);node.sequence=this,node.phase=phase,node.userFn=effectHook,node.dirty=!0,node.signal=()=>(producerAccessed(node),node.value),node.signal[SIGNAL]=node,node.registerCleanupFn=fn=>(node.cleanup??=new Set).add(fn),this.nodes[phase]=node,this.hooks[phase]=value=>node.phaseFn(value)}}afterRun(){super.afterRun(),this.lastPhase=null}destroy(){super.destroy();for(let node of this.nodes)if(node)try{for(let fn of node.cleanup??EMPTY_CLEANUP_SET)fn()}finally{consumerDestroy(node)}}};function afterRenderEffect(callbackOrSpec,options){let injector=options?.injector??inject2(Injector),scheduler=injector.get(ChangeDetectionScheduler),manager=injector.get(AfterRenderManager),tracing=injector.get(TracingService,null,{optional:!0});manager.impl??=injector.get(AfterRenderImpl);let spec=callbackOrSpec;typeof spec=="function"&&(spec={mixedReadWrite:callbackOrSpec});let viewContext=injector.get(ViewContext,null,{optional:!0}),sequence2=new AfterRenderEffectSequence(manager.impl,[spec.earlyRead,spec.write,spec.mixedReadWrite,spec.read],viewContext?.view,scheduler,injector,tracing?.snapshot(null));return manager.impl.register(sequence2),sequence2}function createComponent(component,options){let componentDef=getComponentDef(component),elementInjector=options.elementInjector||getNullInjector();return new ComponentFactory2(componentDef).create(elementInjector,options.projectableNodes,options.hostElement,options.environmentInjector,options.directives,options.bindings)}function reflectComponentType(component){let componentDef=getComponentDef(component);if(!componentDef)return null;let factory=new ComponentFactory2(componentDef);return{get selector(){return factory.selector},get type(){return factory.componentType},get inputs(){return factory.inputs},get outputs(){return factory.outputs},get ngContentSelectors(){return factory.ngContentSelectors},get isStandalone(){return componentDef.standalone},get isSignal(){return componentDef.signals}}}var _DOM=null;function getDOM(){return _DOM}function setRootDomAdapter(adapter3){_DOM??=adapter3}var DomAdapter=class{},PlatformLocation=(()=>{class PlatformLocation2{historyGo(relativePosition){throw new Error("")}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PlatformLocation2)};static \u0275prov=\u0275\u0275defineInjectable({token:PlatformLocation2,factory:()=>inject2(BrowserPlatformLocation),providedIn:"platform"})}return PlatformLocation2})(),LOCATION_INITIALIZED=new InjectionToken(""),BrowserPlatformLocation=(()=>{class BrowserPlatformLocation2 extends PlatformLocation{_location;_history;_doc=inject2(DOCUMENT);constructor(){super(),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return getDOM().getBaseHref(this._doc)}onPopState(fn){let window2=getDOM().getGlobalEventTarget(this._doc,"window");return window2.addEventListener("popstate",fn,!1),()=>window2.removeEventListener("popstate",fn)}onHashChange(fn){let window2=getDOM().getGlobalEventTarget(this._doc,"window");return window2.addEventListener("hashchange",fn,!1),()=>window2.removeEventListener("hashchange",fn)}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(newPath){this._location.pathname=newPath}pushState(state2,title,url){this._history.pushState(state2,title,url)}replaceState(state2,title,url){this._history.replaceState(state2,title,url)}forward(){this._history.forward()}back(){this._history.back()}historyGo(relativePosition=0){this._history.go(relativePosition)}getState(){return this._history.state}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||BrowserPlatformLocation2)};static \u0275prov=\u0275\u0275defineInjectable({token:BrowserPlatformLocation2,factory:()=>new BrowserPlatformLocation2,providedIn:"platform"})}return BrowserPlatformLocation2})();function joinWithSlash(start,end){return start?end?start.endsWith("/")?end.startsWith("/")?start+end.slice(1):start+end:end.startsWith("/")?start+end:`${start}/${end}`:start:end}function stripTrailingSlash(url){let pathEndIdx=url.search(/#|\?|$/);return url[pathEndIdx-1]==="/"?url.slice(0,pathEndIdx-1)+url.slice(pathEndIdx):url}function normalizeQueryParams(params){return params&¶ms[0]!=="?"?`?${params}`:params}var LocationStrategy=(()=>{class LocationStrategy2{historyGo(relativePosition){throw new Error("")}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||LocationStrategy2)};static \u0275prov=\u0275\u0275defineInjectable({token:LocationStrategy2,factory:()=>inject2(PathLocationStrategy),providedIn:"root"})}return LocationStrategy2})(),APP_BASE_HREF=new InjectionToken(""),PathLocationStrategy=(()=>{class PathLocationStrategy2 extends LocationStrategy{_platformLocation;_baseHref;_removeListenerFns=[];constructor(_platformLocation,href){super(),this._platformLocation=_platformLocation,this._baseHref=href??this._platformLocation.getBaseHrefFromDOM()??inject2(DOCUMENT).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(fn){this._removeListenerFns.push(this._platformLocation.onPopState(fn),this._platformLocation.onHashChange(fn))}getBaseHref(){return this._baseHref}prepareExternalUrl(internal){return joinWithSlash(this._baseHref,internal)}path(includeHash=!1){let pathname=this._platformLocation.pathname+normalizeQueryParams(this._platformLocation.search),hash=this._platformLocation.hash;return hash&&includeHash?`${pathname}${hash}`:pathname}pushState(state2,title,url,queryParams){let externalUrl=this.prepareExternalUrl(url+normalizeQueryParams(queryParams));this._platformLocation.pushState(state2,title,externalUrl)}replaceState(state2,title,url,queryParams){let externalUrl=this.prepareExternalUrl(url+normalizeQueryParams(queryParams));this._platformLocation.replaceState(state2,title,externalUrl)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(relativePosition=0){this._platformLocation.historyGo?.(relativePosition)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PathLocationStrategy2)(\u0275\u0275inject(PlatformLocation),\u0275\u0275inject(APP_BASE_HREF,8))};static \u0275prov=\u0275\u0275defineInjectable({token:PathLocationStrategy2,factory:PathLocationStrategy2.\u0275fac,providedIn:"root"})}return PathLocationStrategy2})(),Location=(()=>{class Location2{_subject=new Subject;_basePath;_locationStrategy;_urlChangeListeners=[];_urlChangeSubscription=null;constructor(locationStrategy){this._locationStrategy=locationStrategy;let baseHref=this._locationStrategy.getBaseHref();this._basePath=_stripOrigin(stripTrailingSlash(_stripIndexHtml(baseHref))),this._locationStrategy.onPopState(ev=>{this._subject.next({url:this.path(!0),pop:!0,state:ev.state,type:ev.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(includeHash=!1){return this.normalize(this._locationStrategy.path(includeHash))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(path,query2=""){return this.path()==this.normalize(path+normalizeQueryParams(query2))}normalize(url){return Location2.stripTrailingSlash(_stripBasePath(this._basePath,_stripIndexHtml(url)))}prepareExternalUrl(url){return url&&url[0]!=="/"&&(url="/"+url),this._locationStrategy.prepareExternalUrl(url)}go(path,query2="",state2=null){this._locationStrategy.pushState(state2,"",path,query2),this._notifyUrlChangeListeners(this.prepareExternalUrl(path+normalizeQueryParams(query2)),state2)}replaceState(path,query2="",state2=null){this._locationStrategy.replaceState(state2,"",path,query2),this._notifyUrlChangeListeners(this.prepareExternalUrl(path+normalizeQueryParams(query2)),state2)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(relativePosition=0){this._locationStrategy.historyGo?.(relativePosition)}onUrlChange(fn){return this._urlChangeListeners.push(fn),this._urlChangeSubscription??=this.subscribe(v=>{this._notifyUrlChangeListeners(v.url,v.state)}),()=>{let fnIndex=this._urlChangeListeners.indexOf(fn);this._urlChangeListeners.splice(fnIndex,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(url="",state2){this._urlChangeListeners.forEach(fn=>fn(url,state2))}subscribe(onNext,onThrow,onReturn){return this._subject.subscribe({next:onNext,error:onThrow??void 0,complete:onReturn??void 0})}static normalizeQueryParams=normalizeQueryParams;static joinWithSlash=joinWithSlash;static stripTrailingSlash=stripTrailingSlash;static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Location2)(\u0275\u0275inject(LocationStrategy))};static \u0275prov=\u0275\u0275defineInjectable({token:Location2,factory:()=>createLocation(),providedIn:"root"})}return Location2})();function createLocation(){return new Location(\u0275\u0275inject(LocationStrategy))}function _stripBasePath(basePath,url){if(!basePath||!url.startsWith(basePath))return url;let strippedUrl=url.substring(basePath.length);return strippedUrl===""||["/",";","?","#"].includes(strippedUrl[0])?strippedUrl:url}function _stripIndexHtml(url){return url.replace(/\/index.html$/,"")}function _stripOrigin(baseHref){if(new RegExp("^(https?:)?//").test(baseHref)){let[,pathname]=baseHref.split(/\/\/[^\/]+/);return pathname}return baseHref}var HashLocationStrategy=(()=>{class HashLocationStrategy2 extends LocationStrategy{_platformLocation;_baseHref="";_removeListenerFns=[];constructor(_platformLocation,_baseHref){super(),this._platformLocation=_platformLocation,_baseHref!=null&&(this._baseHref=_baseHref)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(fn){this._removeListenerFns.push(this._platformLocation.onPopState(fn),this._platformLocation.onHashChange(fn))}getBaseHref(){return this._baseHref}path(includeHash=!1){let path=this._platformLocation.hash??"#";return path.length>0?path.substring(1):path}prepareExternalUrl(internal){let url=joinWithSlash(this._baseHref,internal);return url.length>0?"#"+url:url}pushState(state2,title,path,queryParams){let url=this.prepareExternalUrl(path+normalizeQueryParams(queryParams))||this._platformLocation.pathname;this._platformLocation.pushState(state2,title,url)}replaceState(state2,title,path,queryParams){let url=this.prepareExternalUrl(path+normalizeQueryParams(queryParams))||this._platformLocation.pathname;this._platformLocation.replaceState(state2,title,url)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(relativePosition=0){this._platformLocation.historyGo?.(relativePosition)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||HashLocationStrategy2)(\u0275\u0275inject(PlatformLocation),\u0275\u0275inject(APP_BASE_HREF,8))};static \u0275prov=\u0275\u0275defineInjectable({token:HashLocationStrategy2,factory:HashLocationStrategy2.\u0275fac})}return HashLocationStrategy2})();var WS_REGEXP=/\s+/,EMPTY_ARRAY2=[],NgClass=(()=>{class NgClass2{_ngEl;_renderer;initialClasses=EMPTY_ARRAY2;rawClass;stateMap=new Map;constructor(_ngEl,_renderer){this._ngEl=_ngEl,this._renderer=_renderer}set klass(value){this.initialClasses=value!=null?value.trim().split(WS_REGEXP):EMPTY_ARRAY2}set ngClass(value){this.rawClass=typeof value=="string"?value.trim().split(WS_REGEXP):value}ngDoCheck(){for(let klass of this.initialClasses)this._updateState(klass,!0);let rawClass=this.rawClass;if(Array.isArray(rawClass)||rawClass instanceof Set)for(let klass of rawClass)this._updateState(klass,!0);else if(rawClass!=null)for(let klass of Object.keys(rawClass))this._updateState(klass,!!rawClass[klass]);this._applyStateDiff()}_updateState(klass,nextEnabled){let state2=this.stateMap.get(klass);state2!==void 0?(state2.enabled!==nextEnabled&&(state2.changed=!0,state2.enabled=nextEnabled),state2.touched=!0):this.stateMap.set(klass,{enabled:nextEnabled,changed:!0,touched:!0})}_applyStateDiff(){for(let stateEntry of this.stateMap){let klass=stateEntry[0],state2=stateEntry[1];state2.changed?(this._toggleClass(klass,state2.enabled),state2.changed=!1):state2.touched||(state2.enabled&&this._toggleClass(klass,!1),this.stateMap.delete(klass)),state2.touched=!1}}_toggleClass(klass,enabled){klass=klass.trim(),klass.length>0&&klass.split(WS_REGEXP).forEach(klass2=>{enabled?this._renderer.addClass(this._ngEl.nativeElement,klass2):this._renderer.removeClass(this._ngEl.nativeElement,klass2)})}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgClass2)(\u0275\u0275directiveInject(ElementRef),\u0275\u0275directiveInject(Renderer2))};static \u0275dir=\u0275\u0275defineDirective({type:NgClass2,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"}})}return NgClass2})();var NgForOfContext=class{$implicit;ngForOf;index;count;constructor($implicit,ngForOf,index,count){this.$implicit=$implicit,this.ngForOf=ngForOf,this.index=index,this.count=count}get first(){return this.index===0}get last(){return this.index===this.count-1}get even(){return this.index%2===0}get odd(){return!this.even}},NgForOf=(()=>{class NgForOf2{_viewContainer;_template;_differs;set ngForOf(ngForOf){this._ngForOf=ngForOf,this._ngForOfDirty=!0}set ngForTrackBy(fn){this._trackByFn=fn}get ngForTrackBy(){return this._trackByFn}_ngForOf=null;_ngForOfDirty=!0;_differ=null;_trackByFn;constructor(_viewContainer,_template,_differs){this._viewContainer=_viewContainer,this._template=_template,this._differs=_differs}set ngForTemplate(value){value&&(this._template=value)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;let value=this._ngForOf;!this._differ&&value&&(this._differ=this._differs.find(value).create(this.ngForTrackBy))}if(this._differ){let changes=this._differ.diff(this._ngForOf);changes&&this._applyChanges(changes)}}_applyChanges(changes){let viewContainer=this._viewContainer;changes.forEachOperation((item,adjustedPreviousIndex,currentIndex)=>{if(item.previousIndex==null)viewContainer.createEmbeddedView(this._template,new NgForOfContext(item.item,this._ngForOf,-1,-1),currentIndex===null?void 0:currentIndex);else if(currentIndex==null)viewContainer.remove(adjustedPreviousIndex===null?void 0:adjustedPreviousIndex);else if(adjustedPreviousIndex!==null){let view=viewContainer.get(adjustedPreviousIndex);viewContainer.move(view,currentIndex),applyViewChange(view,item)}});for(let i=0,ilen=viewContainer.length;i<ilen;i++){let context2=viewContainer.get(i).context;context2.index=i,context2.count=ilen,context2.ngForOf=this._ngForOf}changes.forEachIdentityChange(record=>{let viewRef=viewContainer.get(record.currentIndex);applyViewChange(viewRef,record)})}static ngTemplateContextGuard(dir,ctx){return!0}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgForOf2)(\u0275\u0275directiveInject(ViewContainerRef),\u0275\u0275directiveInject(TemplateRef),\u0275\u0275directiveInject(IterableDiffers))};static \u0275dir=\u0275\u0275defineDirective({type:NgForOf2,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}})}return NgForOf2})();function applyViewChange(view,record){view.context.$implicit=record.item}var NgIf=(()=>{class NgIf2{_viewContainer;_context=new NgIfContext;_thenTemplateRef=null;_elseTemplateRef=null;_thenViewRef=null;_elseViewRef=null;constructor(_viewContainer,templateRef){this._viewContainer=_viewContainer,this._thenTemplateRef=templateRef}set ngIf(condition){this._context.$implicit=this._context.ngIf=condition,this._updateView()}set ngIfThen(templateRef){assertTemplate(templateRef,!1),this._thenTemplateRef=templateRef,this._thenViewRef=null,this._updateView()}set ngIfElse(templateRef){assertTemplate(templateRef,!1),this._elseTemplateRef=templateRef,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 ngIfUseIfTypeGuard;static ngTemplateGuard_ngIf;static ngTemplateContextGuard(dir,ctx){return!0}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgIf2)(\u0275\u0275directiveInject(ViewContainerRef),\u0275\u0275directiveInject(TemplateRef))};static \u0275dir=\u0275\u0275defineDirective({type:NgIf2,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}})}return NgIf2})(),NgIfContext=class{$implicit=null;ngIf=null};function assertTemplate(templateRef,property){if(templateRef&&!templateRef.createEmbeddedView)throw new RuntimeError(2020,!1)}var NgStyle=(()=>{class NgStyle2{_ngEl;_differs;_renderer;_ngStyle=null;_differ=null;constructor(_ngEl,_differs,_renderer){this._ngEl=_ngEl,this._differs=_differs,this._renderer=_renderer}set ngStyle(values){this._ngStyle=values,!this._differ&&values&&(this._differ=this._differs.find(values).create())}ngDoCheck(){if(this._differ){let changes=this._differ.diff(this._ngStyle);changes&&this._applyChanges(changes)}}_setStyle(nameAndUnit,value){let[name,unit]=nameAndUnit.split("."),flags=name.indexOf("-")===-1?void 0:RendererStyleFlags2.DashCase;value!=null?this._renderer.setStyle(this._ngEl.nativeElement,name,unit?`${value}${unit}`:value,flags):this._renderer.removeStyle(this._ngEl.nativeElement,name,flags)}_applyChanges(changes){changes.forEachRemovedItem(record=>this._setStyle(record.key,null)),changes.forEachAddedItem(record=>this._setStyle(record.key,record.currentValue)),changes.forEachChangedItem(record=>this._setStyle(record.key,record.currentValue))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgStyle2)(\u0275\u0275directiveInject(ElementRef),\u0275\u0275directiveInject(KeyValueDiffers),\u0275\u0275directiveInject(Renderer2))};static \u0275dir=\u0275\u0275defineDirective({type:NgStyle2,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}})}return NgStyle2})(),NgTemplateOutlet=(()=>{class NgTemplateOutlet2{_viewContainerRef;_viewRef=null;ngTemplateOutletContext=null;ngTemplateOutlet=null;ngTemplateOutletInjector=null;constructor(_viewContainerRef){this._viewContainerRef=_viewContainerRef}ngOnChanges(changes){if(this._shouldRecreateView(changes)){let viewContainerRef=this._viewContainerRef;if(this._viewRef&&viewContainerRef.remove(viewContainerRef.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}let viewContext=this._createContextForwardProxy();this._viewRef=viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,viewContext,{injector:this.ngTemplateOutletInjector??void 0})}}_shouldRecreateView(changes){return!!changes.ngTemplateOutlet||!!changes.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(_target,prop,newValue)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,prop,newValue):!1,get:(_target,prop,receiver)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,prop,receiver)}})}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgTemplateOutlet2)(\u0275\u0275directiveInject(ViewContainerRef))};static \u0275dir=\u0275\u0275defineDirective({type:NgTemplateOutlet2,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},features:[\u0275\u0275NgOnChangesFeature]})}return NgTemplateOutlet2})();function invalidPipeArgumentError(type2,value){return new RuntimeError(2100,!1)}var SubscribableStrategy=class{createSubscription(async2,updateLatestValue,onError){return untracked2(()=>async2.subscribe({next:updateLatestValue,error:onError}))}dispose(subscription){untracked2(()=>subscription.unsubscribe())}},PromiseStrategy=class{createSubscription(async2,updateLatestValue,onError){return async2.then(v=>updateLatestValue?.(v),e=>onError?.(e)),{unsubscribe:()=>{updateLatestValue=null,onError=null}}}dispose(subscription){subscription.unsubscribe()}},_promiseStrategy=new PromiseStrategy,_subscribableStrategy=new SubscribableStrategy,AsyncPipe=(()=>{class AsyncPipe2{_ref;_latestValue=null;markForCheckOnValueUpdate=!0;_subscription=null;_obj=null;_strategy=null;applicationErrorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);constructor(ref){this._ref=ref}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(obj){if(!this._obj){if(obj)try{this.markForCheckOnValueUpdate=!1,this._subscribe(obj)}finally{this.markForCheckOnValueUpdate=!0}return this._latestValue}return obj!==this._obj?(this._dispose(),this.transform(obj)):this._latestValue}_subscribe(obj){this._obj=obj,this._strategy=this._selectStrategy(obj),this._subscription=this._strategy.createSubscription(obj,value=>this._updateLatestValue(obj,value),e=>this.applicationErrorHandler(e))}_selectStrategy(obj){if(isPromise2(obj))return _promiseStrategy;if(isSubscribable(obj))return _subscribableStrategy;throw invalidPipeArgumentError(AsyncPipe2,obj)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(async2,value){async2===this._obj&&(this._latestValue=value,this.markForCheckOnValueUpdate&&this._ref?.markForCheck())}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||AsyncPipe2)(\u0275\u0275directiveInject(ChangeDetectorRef,16))};static \u0275pipe=\u0275\u0275definePipe({name:"async",type:AsyncPipe2,pure:!1})}return AsyncPipe2})(),LowerCasePipe=(()=>{class LowerCasePipe2{transform(value){if(value==null)return null;if(typeof value!="string")throw invalidPipeArgumentError(LowerCasePipe2,value);return value.toLowerCase()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||LowerCasePipe2)};static \u0275pipe=\u0275\u0275definePipe({name:"lowercase",type:LowerCasePipe2,pure:!0})}return LowerCasePipe2})(),unicodeWordMatch=/(?:[0-9A-Za-z\xAA\xB5\xBA\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\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\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\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\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\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\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\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\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\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\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\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\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\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\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]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\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]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])\S*/g,TitleCasePipe=(()=>{class TitleCasePipe2{transform(value){if(value==null)return null;if(typeof value!="string")throw invalidPipeArgumentError(TitleCasePipe2,value);return value.replace(unicodeWordMatch,txt=>txt[0].toUpperCase()+txt.slice(1).toLowerCase())}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||TitleCasePipe2)};static \u0275pipe=\u0275\u0275definePipe({name:"titlecase",type:TitleCasePipe2,pure:!0})}return TitleCasePipe2})();var CommonModule=(()=>{class CommonModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CommonModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:CommonModule2});static \u0275inj=\u0275\u0275defineInjector({})}return CommonModule2})();function parseCookieValue(cookieStr,name){name=encodeURIComponent(name);for(let cookie of cookieStr.split(";")){let eqIndex=cookie.indexOf("="),[cookieName,cookieValue]=eqIndex==-1?[cookie,""]:[cookie.slice(0,eqIndex),cookie.slice(eqIndex+1)];if(cookieName.trim()===name)return decodeURIComponent(cookieValue)}return null}var XhrFactory=class{};var PLATFORM_BROWSER_ID="browser",PLATFORM_SERVER_ID="server";function isPlatformBrowser(platformId){return platformId===PLATFORM_BROWSER_ID}function isPlatformServer(platformId){return platformId===PLATFORM_SERVER_ID}var ViewportScroller=(()=>{class ViewportScroller2{static \u0275prov=\u0275\u0275defineInjectable({token:ViewportScroller2,providedIn:"root",factory:()=>new BrowserViewportScroller(inject2(DOCUMENT),window)})}return ViewportScroller2})(),BrowserViewportScroller=class{document;window;offset=()=>[0,0];constructor(document2,window2){this.document=document2,this.window=window2}setOffset(offset){Array.isArray(offset)?this.offset=()=>offset:this.offset=offset}getScrollPosition(){return[this.window.scrollX,this.window.scrollY]}scrollToPosition(position,options){this.window.scrollTo(__spreadProps(__spreadValues({},options),{left:position[0],top:position[1]}))}scrollToAnchor(target,options){let elSelected=findAnchorFromDocument(this.document,target);elSelected&&(this.scrollToElement(elSelected,options),elSelected.focus())}setHistoryScrollRestoration(scrollRestoration){try{this.window.history.scrollRestoration=scrollRestoration}catch{console.warn(formatRuntimeError(2400,!1))}}scrollToElement(el,options){let rect=el.getBoundingClientRect(),left=rect.left+this.window.pageXOffset,top=rect.top+this.window.pageYOffset,offset=this.offset();this.window.scrollTo(__spreadProps(__spreadValues({},options),{left:left-offset[0],top:top-offset[1]}))}};function findAnchorFromDocument(document2,target){let documentResult=document2.getElementById(target)||document2.getElementsByName(target)[0];if(documentResult)return documentResult;if(typeof document2.createTreeWalker=="function"&&document2.body&&typeof document2.body.attachShadow=="function"){let treeWalker=document2.createTreeWalker(document2.body,NodeFilter.SHOW_ELEMENT),currentNode=treeWalker.currentNode;for(;currentNode;){let shadowRoot=currentNode.shadowRoot;if(shadowRoot){let result=shadowRoot.getElementById(target)||shadowRoot.querySelector(`[name="${target}"]`);if(result)return result}currentNode=treeWalker.nextNode()}}return null}var EVENT_MANAGER_PLUGINS=new InjectionToken(""),EventManager=(()=>{class EventManager2{_zone;_plugins;_eventNameToPlugin=new Map;constructor(plugins,_zone){this._zone=_zone,plugins.forEach(plugin=>{plugin.manager=this}),this._plugins=plugins.slice().reverse()}addEventListener(element,eventName,handler,options){return this._findPluginFor(eventName).addEventListener(element,eventName,handler,options)}getZone(){return this._zone}_findPluginFor(eventName){let plugin=this._eventNameToPlugin.get(eventName);if(plugin)return plugin;if(plugin=this._plugins.find(plugin2=>plugin2.supports(eventName)),!plugin)throw new RuntimeError(5101,!1);return this._eventNameToPlugin.set(eventName,plugin),plugin}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||EventManager2)(\u0275\u0275inject(EVENT_MANAGER_PLUGINS),\u0275\u0275inject(NgZone))};static \u0275prov=\u0275\u0275defineInjectable({token:EventManager2,factory:EventManager2.\u0275fac})}return EventManager2})(),EventManagerPlugin=class{_doc;constructor(_doc){this._doc=_doc}manager},APP_ID_ATTRIBUTE_NAME="ng-app-id";function removeElements(elements){for(let element of elements)element.remove()}function createStyleElement(style2,doc){let styleElement=doc.createElement("style");return styleElement.textContent=style2,styleElement}function addServerStyles(doc,appId,inline,external){let elements=doc.head?.querySelectorAll(`style[${APP_ID_ATTRIBUTE_NAME}="${appId}"],link[${APP_ID_ATTRIBUTE_NAME}="${appId}"]`);if(elements)for(let styleElement of elements)styleElement.removeAttribute(APP_ID_ATTRIBUTE_NAME),styleElement instanceof HTMLLinkElement?external.set(styleElement.href.slice(styleElement.href.lastIndexOf("/")+1),{usage:0,elements:[styleElement]}):styleElement.textContent&&inline.set(styleElement.textContent,{usage:0,elements:[styleElement]})}function createLinkElement(url,doc){let linkElement=doc.createElement("link");return linkElement.setAttribute("rel","stylesheet"),linkElement.setAttribute("href",url),linkElement}var SharedStylesHost=(()=>{class SharedStylesHost2{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;constructor(doc,appId,nonce,platformId={}){this.doc=doc,this.appId=appId,this.nonce=nonce,addServerStyles(doc,appId,this.inline,this.external),this.hosts.add(doc.head)}addStyles(styles,urls){for(let value of styles)this.addUsage(value,this.inline,createStyleElement);urls?.forEach(value=>this.addUsage(value,this.external,createLinkElement))}removeStyles(styles,urls){for(let value of styles)this.removeUsage(value,this.inline);urls?.forEach(value=>this.removeUsage(value,this.external))}addUsage(value,usages,creator){let record=usages.get(value);record?record.usage++:usages.set(value,{usage:1,elements:[...this.hosts].map(host=>this.addElement(host,creator(value,this.doc)))})}removeUsage(value,usages){let record=usages.get(value);record&&(record.usage--,record.usage<=0&&(removeElements(record.elements),usages.delete(value)))}ngOnDestroy(){for(let[,{elements}]of[...this.inline,...this.external])removeElements(elements);this.hosts.clear()}addHost(hostNode){this.hosts.add(hostNode);for(let[style2,{elements}]of this.inline)elements.push(this.addElement(hostNode,createStyleElement(style2,this.doc)));for(let[url,{elements}]of this.external)elements.push(this.addElement(hostNode,createLinkElement(url,this.doc)))}removeHost(hostNode){this.hosts.delete(hostNode)}addElement(host,element){return this.nonce&&element.setAttribute("nonce",this.nonce),host.appendChild(element)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SharedStylesHost2)(\u0275\u0275inject(DOCUMENT),\u0275\u0275inject(APP_ID),\u0275\u0275inject(CSP_NONCE,8),\u0275\u0275inject(PLATFORM_ID))};static \u0275prov=\u0275\u0275defineInjectable({token:SharedStylesHost2,factory:SharedStylesHost2.\u0275fac})}return SharedStylesHost2})(),NAMESPACE_URIS={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/",math:"http://www.w3.org/1998/Math/MathML"},COMPONENT_REGEX=/%COMP%/g;var COMPONENT_VARIABLE="%COMP%",HOST_ATTR=`_nghost-${COMPONENT_VARIABLE}`,CONTENT_ATTR=`_ngcontent-${COMPONENT_VARIABLE}`,REMOVE_STYLES_ON_COMPONENT_DESTROY_DEFAULT=!0,REMOVE_STYLES_ON_COMPONENT_DESTROY=new InjectionToken("",{providedIn:"root",factory:()=>REMOVE_STYLES_ON_COMPONENT_DESTROY_DEFAULT});function shimContentAttribute(componentShortId){return CONTENT_ATTR.replace(COMPONENT_REGEX,componentShortId)}function shimHostAttribute(componentShortId){return HOST_ATTR.replace(COMPONENT_REGEX,componentShortId)}function shimStylesContent(compId,styles){return styles.map(s=>s.replace(COMPONENT_REGEX,compId))}var DomRendererFactory2=(()=>{class DomRendererFactory22{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;platformId;ngZone;nonce;animationDisabled;maxAnimationTimeout;tracingService;rendererByCompId=new Map;defaultRenderer;platformIsServer;registry;constructor(eventManager,sharedStylesHost,appId,removeStylesOnCompDestroy,doc,platformId,ngZone,nonce=null,animationDisabled,maxAnimationTimeout,tracingService=null){this.eventManager=eventManager,this.sharedStylesHost=sharedStylesHost,this.appId=appId,this.removeStylesOnCompDestroy=removeStylesOnCompDestroy,this.doc=doc,this.platformId=platformId,this.ngZone=ngZone,this.nonce=nonce,this.animationDisabled=animationDisabled,this.maxAnimationTimeout=maxAnimationTimeout,this.tracingService=tracingService,this.platformIsServer=!1,this.defaultRenderer=new DefaultDomRenderer2(eventManager,doc,ngZone,this.platformIsServer,this.tracingService,this.registry=getAnimationElementRemovalRegistry(),this.maxAnimationTimeout)}createRenderer(element,type2){if(!element||!type2)return this.defaultRenderer;let renderer=this.getOrCreateRenderer(element,type2);return renderer instanceof EmulatedEncapsulationDomRenderer2?renderer.applyToHost(element):renderer instanceof NoneEncapsulationDomRenderer&&renderer.applyStyles(),renderer}getOrCreateRenderer(element,type2){let rendererByCompId=this.rendererByCompId,renderer=rendererByCompId.get(type2.id);if(!renderer){let doc=this.doc,ngZone=this.ngZone,eventManager=this.eventManager,sharedStylesHost=this.sharedStylesHost,removeStylesOnCompDestroy=this.removeStylesOnCompDestroy,platformIsServer=this.platformIsServer,tracingService=this.tracingService;switch(type2.encapsulation){case ViewEncapsulation.Emulated:renderer=new EmulatedEncapsulationDomRenderer2(eventManager,sharedStylesHost,type2,this.appId,removeStylesOnCompDestroy,doc,ngZone,platformIsServer,tracingService,this.registry,this.animationDisabled,this.maxAnimationTimeout);break;case ViewEncapsulation.ShadowDom:return new ShadowDomRenderer(eventManager,sharedStylesHost,element,type2,doc,ngZone,this.nonce,platformIsServer,tracingService,this.registry,this.maxAnimationTimeout);default:renderer=new NoneEncapsulationDomRenderer(eventManager,sharedStylesHost,type2,removeStylesOnCompDestroy,doc,ngZone,platformIsServer,tracingService,this.registry,this.animationDisabled,this.maxAnimationTimeout);break}rendererByCompId.set(type2.id,renderer)}return renderer}ngOnDestroy(){this.rendererByCompId.clear()}componentReplaced(componentId){this.rendererByCompId.delete(componentId)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DomRendererFactory22)(\u0275\u0275inject(EventManager),\u0275\u0275inject(SharedStylesHost),\u0275\u0275inject(APP_ID),\u0275\u0275inject(REMOVE_STYLES_ON_COMPONENT_DESTROY),\u0275\u0275inject(DOCUMENT),\u0275\u0275inject(PLATFORM_ID),\u0275\u0275inject(NgZone),\u0275\u0275inject(CSP_NONCE),\u0275\u0275inject(ANIMATIONS_DISABLED),\u0275\u0275inject(MAX_ANIMATION_TIMEOUT),\u0275\u0275inject(TracingService,8))};static \u0275prov=\u0275\u0275defineInjectable({token:DomRendererFactory22,factory:DomRendererFactory22.\u0275fac})}return DomRendererFactory22})(),DefaultDomRenderer2=class{eventManager;doc;ngZone;platformIsServer;tracingService;registry;maxAnimationTimeout;data=Object.create(null);throwOnSyntheticProps=!0;constructor(eventManager,doc,ngZone,platformIsServer,tracingService,registry2,maxAnimationTimeout){this.eventManager=eventManager,this.doc=doc,this.ngZone=ngZone,this.platformIsServer=platformIsServer,this.tracingService=tracingService,this.registry=registry2,this.maxAnimationTimeout=maxAnimationTimeout}destroy(){}destroyNode=null;createElement(name,namespace){return namespace?this.doc.createElementNS(NAMESPACE_URIS[namespace]||namespace,name):this.doc.createElement(name)}createComment(value){return this.doc.createComment(value)}createText(value){return this.doc.createTextNode(value)}appendChild(parent,newChild){(isTemplateNode(parent)?parent.content:parent).appendChild(newChild)}insertBefore(parent,newChild,refChild){parent&&(isTemplateNode(parent)?parent.content:parent).insertBefore(newChild,refChild)}removeChild(_parent,oldChild){let{elements}=this.registry;if(elements){elements.animate(oldChild,()=>oldChild.remove(),this.maxAnimationTimeout);return}oldChild.remove()}selectRootElement(selectorOrNode,preserveContent){let el=typeof selectorOrNode=="string"?this.doc.querySelector(selectorOrNode):selectorOrNode;if(!el)throw new RuntimeError(-5104,!1);return preserveContent||(el.textContent=""),el}parentNode(node){return node.parentNode}nextSibling(node){return node.nextSibling}setAttribute(el,name,value,namespace){if(namespace){name=namespace+":"+name;let namespaceUri=NAMESPACE_URIS[namespace];namespaceUri?el.setAttributeNS(namespaceUri,name,value):el.setAttribute(name,value)}else el.setAttribute(name,value)}removeAttribute(el,name,namespace){if(namespace){let namespaceUri=NAMESPACE_URIS[namespace];namespaceUri?el.removeAttributeNS(namespaceUri,name):el.removeAttribute(`${namespace}:${name}`)}else el.removeAttribute(name)}addClass(el,name){el.classList.add(name)}removeClass(el,name){el.classList.remove(name)}setStyle(el,style2,value,flags){flags&(RendererStyleFlags2.DashCase|RendererStyleFlags2.Important)?el.style.setProperty(style2,value,flags&RendererStyleFlags2.Important?"important":""):el.style[style2]=value}removeStyle(el,style2,flags){flags&RendererStyleFlags2.DashCase?el.style.removeProperty(style2):el.style[style2]=""}setProperty(el,name,value){el!=null&&(el[name]=value)}setValue(node,value){node.nodeValue=value}listen(target,event,callback,options){if(typeof target=="string"&&(target=getDOM().getGlobalEventTarget(this.doc,target),!target))throw new RuntimeError(5102,!1);let wrappedCallback=this.decoratePreventDefault(callback);return this.tracingService?.wrapEventListener&&(wrappedCallback=this.tracingService.wrapEventListener(target,event,wrappedCallback)),this.eventManager.addEventListener(target,event,wrappedCallback,options)}decoratePreventDefault(eventHandler){return event=>{if(event==="__ngUnwrap__")return eventHandler;eventHandler(event)===!1&&event.preventDefault()}}};function isTemplateNode(node){return node.tagName==="TEMPLATE"&&node.content!==void 0}var ShadowDomRenderer=class extends DefaultDomRenderer2{sharedStylesHost;hostEl;shadowRoot;constructor(eventManager,sharedStylesHost,hostEl,component,doc,ngZone,nonce,platformIsServer,tracingService,registry2,maxAnimationTimeout){super(eventManager,doc,ngZone,platformIsServer,tracingService,registry2,maxAnimationTimeout),this.sharedStylesHost=sharedStylesHost,this.hostEl=hostEl,this.shadowRoot=hostEl.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let styles=component.styles;styles=shimStylesContent(component.id,styles);for(let style2 of styles){let styleEl=document.createElement("style");nonce&&styleEl.setAttribute("nonce",nonce),styleEl.textContent=style2,this.shadowRoot.appendChild(styleEl)}let styleUrls=component.getExternalStyles?.();if(styleUrls)for(let styleUrl of styleUrls){let linkEl=createLinkElement(styleUrl,doc);nonce&&linkEl.setAttribute("nonce",nonce),this.shadowRoot.appendChild(linkEl)}}nodeOrShadowRoot(node){return node===this.hostEl?this.shadowRoot:node}appendChild(parent,newChild){return super.appendChild(this.nodeOrShadowRoot(parent),newChild)}insertBefore(parent,newChild,refChild){return super.insertBefore(this.nodeOrShadowRoot(parent),newChild,refChild)}removeChild(_parent,oldChild){return super.removeChild(null,oldChild)}parentNode(node){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(node)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},NoneEncapsulationDomRenderer=class extends DefaultDomRenderer2{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;_animationDisabled;constructor(eventManager,sharedStylesHost,component,removeStylesOnCompDestroy,doc,ngZone,platformIsServer,tracingService,registry2,animationDisabled,maxAnimationTimeout,compId){super(eventManager,doc,ngZone,platformIsServer,tracingService,registry2,maxAnimationTimeout),this.sharedStylesHost=sharedStylesHost,this.removeStylesOnCompDestroy=removeStylesOnCompDestroy,this._animationDisabled=animationDisabled;let styles=component.styles;this.styles=compId?shimStylesContent(compId,styles):styles,this.styleUrls=component.getExternalStyles?.(compId)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){if(this.removeStylesOnCompDestroy){if(!this._animationDisabled&&this.registry.elements){this.ngZone.runOutsideAngular(()=>{setTimeout(()=>{this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)},this.maxAnimationTimeout)});return}this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}}},EmulatedEncapsulationDomRenderer2=class extends NoneEncapsulationDomRenderer{contentAttr;hostAttr;constructor(eventManager,sharedStylesHost,component,appId,removeStylesOnCompDestroy,doc,ngZone,platformIsServer,tracingService,registry2,animationDisabled,maxAnimationTimeout){let compId=appId+"-"+component.id;super(eventManager,sharedStylesHost,component,removeStylesOnCompDestroy,doc,ngZone,platformIsServer,tracingService,registry2,animationDisabled,maxAnimationTimeout,compId),this.contentAttr=shimContentAttribute(compId),this.hostAttr=shimHostAttribute(compId)}applyToHost(element){this.applyStyles(),this.setAttribute(element,this.hostAttr,"")}createElement(parent,name){let el=super.createElement(parent,name);return super.setAttribute(el,this.contentAttr,""),el}};var BrowserDomAdapter=class _BrowserDomAdapter extends DomAdapter{supportsDOMEvents=!0;static makeCurrent(){setRootDomAdapter(new _BrowserDomAdapter)}onAndCancel(el,evt,listener,options){return el.addEventListener(evt,listener,options),()=>{el.removeEventListener(evt,listener,options)}}dispatchEvent(el,evt){el.dispatchEvent(evt)}remove(node){node.remove()}createElement(tagName,doc){return doc=doc||this.getDefaultDocument(),doc.createElement(tagName)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(node){return node.nodeType===Node.ELEMENT_NODE}isShadowRoot(node){return node instanceof DocumentFragment}getGlobalEventTarget(doc,target){return target==="window"?window:target==="document"?doc:target==="body"?doc.body:null}getBaseHref(doc){let href=getBaseElementHref();return href==null?null:relativePath(href)}resetBaseElement(){baseElement=null}getUserAgent(){return window.navigator.userAgent}getCookie(name){return parseCookieValue(document.cookie,name)}},baseElement=null;function getBaseElementHref(){return baseElement=baseElement||document.head.querySelector("base"),baseElement?baseElement.getAttribute("href"):null}function relativePath(url){return new URL(url,document.baseURI).pathname}var BrowserGetTestability=class{addToWindow(registry2){_global.getAngularTestability=(elem,findInAncestors=!0)=>{let testability=registry2.findTestabilityInTree(elem,findInAncestors);if(testability==null)throw new RuntimeError(5103,!1);return testability},_global.getAllAngularTestabilities=()=>registry2.getAllTestabilities(),_global.getAllAngularRootElements=()=>registry2.getAllRootElements();let whenAllStable=callback=>{let testabilities=_global.getAllAngularTestabilities(),count=testabilities.length,decrement=function(){count--,count==0&&callback()};testabilities.forEach(testability=>{testability.whenStable(decrement)})};_global.frameworkStabilizers||(_global.frameworkStabilizers=[]),_global.frameworkStabilizers.push(whenAllStable)}findTestabilityInTree(registry2,elem,findInAncestors){if(elem==null)return null;let t=registry2.getTestability(elem);return t??(findInAncestors?getDOM().isShadowRoot(elem)?this.findTestabilityInTree(registry2,elem.host,!0):this.findTestabilityInTree(registry2,elem.parentElement,!0):null)}},BrowserXhr=(()=>{class BrowserXhr2{build(){return new XMLHttpRequest}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||BrowserXhr2)};static \u0275prov=\u0275\u0275defineInjectable({token:BrowserXhr2,factory:BrowserXhr2.\u0275fac})}return BrowserXhr2})(),DomEventsPlugin=(()=>{class DomEventsPlugin2 extends EventManagerPlugin{constructor(doc){super(doc)}supports(eventName){return!0}addEventListener(element,eventName,handler,options){return element.addEventListener(eventName,handler,options),()=>this.removeEventListener(element,eventName,handler,options)}removeEventListener(target,eventName,callback,options){return target.removeEventListener(eventName,callback,options)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DomEventsPlugin2)(\u0275\u0275inject(DOCUMENT))};static \u0275prov=\u0275\u0275defineInjectable({token:DomEventsPlugin2,factory:DomEventsPlugin2.\u0275fac})}return DomEventsPlugin2})(),MODIFIER_KEYS=["alt","control","meta","shift"],_keyMap={"\b":"Backspace"," ":"Tab","\x7F":"Delete","\x1B":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},MODIFIER_KEY_GETTERS={alt:event=>event.altKey,control:event=>event.ctrlKey,meta:event=>event.metaKey,shift:event=>event.shiftKey},KeyEventsPlugin=(()=>{class KeyEventsPlugin2 extends EventManagerPlugin{constructor(doc){super(doc)}supports(eventName){return KeyEventsPlugin2.parseEventName(eventName)!=null}addEventListener(element,eventName,handler,options){let parsedEvent=KeyEventsPlugin2.parseEventName(eventName),outsideHandler=KeyEventsPlugin2.eventCallback(parsedEvent.fullKey,handler,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>getDOM().onAndCancel(element,parsedEvent.domEventName,outsideHandler,options))}static parseEventName(eventName){let parts=eventName.toLowerCase().split("."),domEventName=parts.shift();if(parts.length===0||!(domEventName==="keydown"||domEventName==="keyup"))return null;let key=KeyEventsPlugin2._normalizeKey(parts.pop()),fullKey="",codeIX=parts.indexOf("code");if(codeIX>-1&&(parts.splice(codeIX,1),fullKey="code."),MODIFIER_KEYS.forEach(modifierName=>{let index=parts.indexOf(modifierName);index>-1&&(parts.splice(index,1),fullKey+=modifierName+".")}),fullKey+=key,parts.length!=0||key.length===0)return null;let result={};return result.domEventName=domEventName,result.fullKey=fullKey,result}static matchEventFullKeyCode(event,fullKeyCode){let keycode=_keyMap[event.key]||event.key,key="";return fullKeyCode.indexOf("code.")>-1&&(keycode=event.code,key="code."),keycode==null||!keycode?!1:(keycode=keycode.toLowerCase(),keycode===" "?keycode="space":keycode==="."&&(keycode="dot"),MODIFIER_KEYS.forEach(modifierName=>{if(modifierName!==keycode){let modifierGetter=MODIFIER_KEY_GETTERS[modifierName];modifierGetter(event)&&(key+=modifierName+".")}}),key+=keycode,key===fullKeyCode)}static eventCallback(fullKey,handler,zone){return event=>{KeyEventsPlugin2.matchEventFullKeyCode(event,fullKey)&&zone.runGuarded(()=>handler(event))}}static _normalizeKey(keyName){return keyName==="esc"?"escape":keyName}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||KeyEventsPlugin2)(\u0275\u0275inject(DOCUMENT))};static \u0275prov=\u0275\u0275defineInjectable({token:KeyEventsPlugin2,factory:KeyEventsPlugin2.\u0275fac})}return KeyEventsPlugin2})();function initDomAdapter(){BrowserDomAdapter.makeCurrent()}function errorHandler(){return new ErrorHandler}function _document(){return setDocument(document),document}var INTERNAL_BROWSER_PLATFORM_PROVIDERS=[{provide:PLATFORM_ID,useValue:PLATFORM_BROWSER_ID},{provide:PLATFORM_INITIALIZER,useValue:initDomAdapter,multi:!0},{provide:DOCUMENT,useFactory:_document}],platformBrowser=createPlatformFactory(platformCore,"browser",INTERNAL_BROWSER_PLATFORM_PROVIDERS);var TESTABILITY_PROVIDERS=[{provide:TESTABILITY_GETTER,useClass:BrowserGetTestability},{provide:TESTABILITY,useClass:Testability,deps:[NgZone,TestabilityRegistry,TESTABILITY_GETTER]},{provide:Testability,useClass:Testability,deps:[NgZone,TestabilityRegistry,TESTABILITY_GETTER]}],BROWSER_MODULE_PROVIDERS=[{provide:INJECTOR_SCOPE,useValue:"root"},{provide:ErrorHandler,useFactory:errorHandler},{provide:EVENT_MANAGER_PLUGINS,useClass:DomEventsPlugin,multi:!0,deps:[DOCUMENT]},{provide:EVENT_MANAGER_PLUGINS,useClass:KeyEventsPlugin,multi:!0,deps:[DOCUMENT]},DomRendererFactory2,SharedStylesHost,EventManager,{provide:RendererFactory2,useExisting:DomRendererFactory2},{provide:XhrFactory,useClass:BrowserXhr},[]],BrowserModule=(()=>{class BrowserModule2{constructor(){}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||BrowserModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:BrowserModule2});static \u0275inj=\u0275\u0275defineInjector({providers:[...BROWSER_MODULE_PROVIDERS,...TESTABILITY_PROVIDERS],imports:[CommonModule,ApplicationModule]})}return BrowserModule2})();var HttpHandler=class{},HttpBackend=class{},HttpHeaders=class _HttpHeaders{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(headers){headers?typeof headers=="string"?this.lazyInit=()=>{this.headers=new Map,headers.split(`
|
|
10
|
+
`)}`:"",this.name="UnsubscriptionError",this.errors=errors});function arrRemove(arr,item){if(arr){let index=arr.indexOf(item);0<=index&&arr.splice(index,1)}}var Subscription=class _Subscription{constructor(initialTeardown){this.initialTeardown=initialTeardown,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let errors;if(!this.closed){this.closed=!0;let{_parentage}=this;if(_parentage)if(this._parentage=null,Array.isArray(_parentage))for(let parent of _parentage)parent.remove(this);else _parentage.remove(this);let{initialTeardown:initialFinalizer}=this;if(isFunction(initialFinalizer))try{initialFinalizer()}catch(e){errors=e instanceof UnsubscriptionError?e.errors:[e]}let{_finalizers}=this;if(_finalizers){this._finalizers=null;for(let finalizer of _finalizers)try{execFinalizer(finalizer)}catch(err){errors=errors??[],err instanceof UnsubscriptionError?errors=[...errors,...err.errors]:errors.push(err)}}if(errors)throw new UnsubscriptionError(errors)}}add(teardown){var _a;if(teardown&&teardown!==this)if(this.closed)execFinalizer(teardown);else{if(teardown instanceof _Subscription){if(teardown.closed||teardown._hasParent(this))return;teardown._addParent(this)}(this._finalizers=(_a=this._finalizers)!==null&&_a!==void 0?_a:[]).push(teardown)}}_hasParent(parent){let{_parentage}=this;return _parentage===parent||Array.isArray(_parentage)&&_parentage.includes(parent)}_addParent(parent){let{_parentage}=this;this._parentage=Array.isArray(_parentage)?(_parentage.push(parent),_parentage):_parentage?[_parentage,parent]:parent}_removeParent(parent){let{_parentage}=this;_parentage===parent?this._parentage=null:Array.isArray(_parentage)&&arrRemove(_parentage,parent)}remove(teardown){let{_finalizers}=this;_finalizers&&arrRemove(_finalizers,teardown),teardown instanceof _Subscription&&teardown._removeParent(this)}};Subscription.EMPTY=(()=>{let empty=new Subscription;return empty.closed=!0,empty})();var EMPTY_SUBSCRIPTION=Subscription.EMPTY;function isSubscription(value){return value instanceof Subscription||value&&"closed"in value&&isFunction(value.remove)&&isFunction(value.add)&&isFunction(value.unsubscribe)}function execFinalizer(finalizer){isFunction(finalizer)?finalizer():finalizer.unsubscribe()}var config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var timeoutProvider={setTimeout(handler,timeout2,...args){let{delegate}=timeoutProvider;return delegate?.setTimeout?delegate.setTimeout(handler,timeout2,...args):setTimeout(handler,timeout2,...args)},clearTimeout(handle){let{delegate}=timeoutProvider;return(delegate?.clearTimeout||clearTimeout)(handle)},delegate:void 0};function reportUnhandledError(err){timeoutProvider.setTimeout(()=>{let{onUnhandledError}=config;if(onUnhandledError)onUnhandledError(err);else throw err})}function noop(){}var COMPLETE_NOTIFICATION=createNotification("C",void 0,void 0);function errorNotification(error){return createNotification("E",void 0,error)}function nextNotification(value){return createNotification("N",value,void 0)}function createNotification(kind,value,error){return{kind,value,error}}var context=null;function errorContext(cb){if(config.useDeprecatedSynchronousErrorHandling){let isRoot=!context;if(isRoot&&(context={errorThrown:!1,error:null}),cb(),isRoot){let{errorThrown,error}=context;if(context=null,errorThrown)throw error}}else cb()}function captureError(err){config.useDeprecatedSynchronousErrorHandling&&context&&(context.errorThrown=!0,context.error=err)}var Subscriber=class extends Subscription{constructor(destination){super(),this.isStopped=!1,destination?(this.destination=destination,isSubscription(destination)&&destination.add(this)):this.destination=EMPTY_OBSERVER}static create(next,error,complete){return new SafeSubscriber(next,error,complete)}next(value){this.isStopped?handleStoppedNotification(nextNotification(value),this):this._next(value)}error(err){this.isStopped?handleStoppedNotification(errorNotification(err),this):(this.isStopped=!0,this._error(err))}complete(){this.isStopped?handleStoppedNotification(COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(value){this.destination.next(value)}_error(err){try{this.destination.error(err)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}},_bind=Function.prototype.bind;function bind(fn,thisArg){return _bind.call(fn,thisArg)}var ConsumerObserver=class{constructor(partialObserver){this.partialObserver=partialObserver}next(value){let{partialObserver}=this;if(partialObserver.next)try{partialObserver.next(value)}catch(error){handleUnhandledError(error)}}error(err){let{partialObserver}=this;if(partialObserver.error)try{partialObserver.error(err)}catch(error){handleUnhandledError(error)}else handleUnhandledError(err)}complete(){let{partialObserver}=this;if(partialObserver.complete)try{partialObserver.complete()}catch(error){handleUnhandledError(error)}}},SafeSubscriber=class extends Subscriber{constructor(observerOrNext,error,complete){super();let partialObserver;if(isFunction(observerOrNext)||!observerOrNext)partialObserver={next:observerOrNext??void 0,error:error??void 0,complete:complete??void 0};else{let context2;this&&config.useDeprecatedNextContext?(context2=Object.create(observerOrNext),context2.unsubscribe=()=>this.unsubscribe(),partialObserver={next:observerOrNext.next&&bind(observerOrNext.next,context2),error:observerOrNext.error&&bind(observerOrNext.error,context2),complete:observerOrNext.complete&&bind(observerOrNext.complete,context2)}):partialObserver=observerOrNext}this.destination=new ConsumerObserver(partialObserver)}};function handleUnhandledError(error){config.useDeprecatedSynchronousErrorHandling?captureError(error):reportUnhandledError(error)}function defaultErrorHandler(err){throw err}function handleStoppedNotification(notification,subscriber){let{onStoppedNotification}=config;onStoppedNotification&&timeoutProvider.setTimeout(()=>onStoppedNotification(notification,subscriber))}var EMPTY_OBSERVER={closed:!0,next:noop,error:defaultErrorHandler,complete:noop};var observable=typeof Symbol=="function"&&Symbol.observable||"@@observable";function identity(x){return x}function pipe(...fns){return pipeFromArray(fns)}function pipeFromArray(fns){return fns.length===0?identity:fns.length===1?fns[0]:function(input2){return fns.reduce((prev,fn)=>fn(prev),input2)}}var Observable=(()=>{class Observable2{constructor(subscribe){subscribe&&(this._subscribe=subscribe)}lift(operator){let observable2=new Observable2;return observable2.source=this,observable2.operator=operator,observable2}subscribe(observerOrNext,error,complete){let subscriber=isSubscriber(observerOrNext)?observerOrNext:new SafeSubscriber(observerOrNext,error,complete);return errorContext(()=>{let{operator,source}=this;subscriber.add(operator?operator.call(subscriber,source):source?this._subscribe(subscriber):this._trySubscribe(subscriber))}),subscriber}_trySubscribe(sink){try{return this._subscribe(sink)}catch(err){sink.error(err)}}forEach(next,promiseCtor){return promiseCtor=getPromiseCtor(promiseCtor),new promiseCtor((resolve,reject)=>{let subscriber=new SafeSubscriber({next:value=>{try{next(value)}catch(err){reject(err),subscriber.unsubscribe()}},error:reject,complete:resolve});this.subscribe(subscriber)})}_subscribe(subscriber){var _a;return(_a=this.source)===null||_a===void 0?void 0:_a.subscribe(subscriber)}[observable](){return this}pipe(...operations){return pipeFromArray(operations)(this)}toPromise(promiseCtor){return promiseCtor=getPromiseCtor(promiseCtor),new promiseCtor((resolve,reject)=>{let value;this.subscribe(x=>value=x,err=>reject(err),()=>resolve(value))})}}return Observable2.create=subscribe=>new Observable2(subscribe),Observable2})();function getPromiseCtor(promiseCtor){var _a;return(_a=promiseCtor??config.Promise)!==null&&_a!==void 0?_a:Promise}function isObserver(value){return value&&isFunction(value.next)&&isFunction(value.error)&&isFunction(value.complete)}function isSubscriber(value){return value&&value instanceof Subscriber||isObserver(value)&&isSubscription(value)}function hasLift(source){return isFunction(source?.lift)}function operate(init){return source=>{if(hasLift(source))return source.lift(function(liftedSource){try{return init(liftedSource,this)}catch(err){this.error(err)}});throw new TypeError("Unable to lift unknown Observable type")}}function createOperatorSubscriber(destination,onNext,onComplete,onError,onFinalize){return new OperatorSubscriber(destination,onNext,onComplete,onError,onFinalize)}var OperatorSubscriber=class extends Subscriber{constructor(destination,onNext,onComplete,onError,onFinalize,shouldUnsubscribe){super(destination),this.onFinalize=onFinalize,this.shouldUnsubscribe=shouldUnsubscribe,this._next=onNext?function(value){try{onNext(value)}catch(err){destination.error(err)}}:super._next,this._error=onError?function(err){try{onError(err)}catch(err2){destination.error(err2)}finally{this.unsubscribe()}}:super._error,this._complete=onComplete?function(){try{onComplete()}catch(err){destination.error(err)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var _a;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){let{closed}=this;super.unsubscribe(),!closed&&((_a=this.onFinalize)===null||_a===void 0||_a.call(this))}}};function refCount(){return operate((source,subscriber)=>{let connection=null;source._refCount++;let refCounter=createOperatorSubscriber(subscriber,void 0,void 0,void 0,()=>{if(!source||source._refCount<=0||0<--source._refCount){connection=null;return}let sharedConnection=source._connection,conn=connection;connection=null,sharedConnection&&(!conn||sharedConnection===conn)&&sharedConnection.unsubscribe(),subscriber.unsubscribe()});source.subscribe(refCounter),refCounter.closed||(connection=source.connect())})}var ConnectableObservable=class extends Observable{constructor(source,subjectFactory){super(),this.source=source,this.subjectFactory=subjectFactory,this._subject=null,this._refCount=0,this._connection=null,hasLift(source)&&(this.lift=source.lift)}_subscribe(subscriber){return this.getSubject().subscribe(subscriber)}getSubject(){let subject=this._subject;return(!subject||subject.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;let{_connection}=this;this._subject=this._connection=null,_connection?.unsubscribe()}connect(){let connection=this._connection;if(!connection){connection=this._connection=new Subscription;let subject=this.getSubject();connection.add(this.source.subscribe(createOperatorSubscriber(subject,void 0,()=>{this._teardown(),subject.complete()},err=>{this._teardown(),subject.error(err)},()=>this._teardown()))),connection.closed&&(this._connection=null,connection=Subscription.EMPTY)}return connection}refCount(){return refCount()(this)}};var animationFrameProvider={schedule(callback){let request=requestAnimationFrame,cancel=cancelAnimationFrame,{delegate}=animationFrameProvider;delegate&&(request=delegate.requestAnimationFrame,cancel=delegate.cancelAnimationFrame);let handle=request(timestamp=>{cancel=void 0,callback(timestamp)});return new Subscription(()=>cancel?.(handle))},requestAnimationFrame(...args){let{delegate}=animationFrameProvider;return(delegate?.requestAnimationFrame||requestAnimationFrame)(...args)},cancelAnimationFrame(...args){let{delegate}=animationFrameProvider;return(delegate?.cancelAnimationFrame||cancelAnimationFrame)(...args)},delegate:void 0};var ObjectUnsubscribedError=createErrorClass(_super=>function(){_super(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var Subject=(()=>{class Subject2 extends Observable{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(operator){let subject=new AnonymousSubject(this,this);return subject.operator=operator,subject}_throwIfClosed(){if(this.closed)throw new ObjectUnsubscribedError}next(value){errorContext(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let observer of this.currentObservers)observer.next(value)}})}error(err){errorContext(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=err;let{observers}=this;for(;observers.length;)observers.shift().error(err)}})}complete(){errorContext(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;let{observers}=this;for(;observers.length;)observers.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var _a;return((_a=this.observers)===null||_a===void 0?void 0:_a.length)>0}_trySubscribe(subscriber){return this._throwIfClosed(),super._trySubscribe(subscriber)}_subscribe(subscriber){return this._throwIfClosed(),this._checkFinalizedStatuses(subscriber),this._innerSubscribe(subscriber)}_innerSubscribe(subscriber){let{hasError,isStopped,observers}=this;return hasError||isStopped?EMPTY_SUBSCRIPTION:(this.currentObservers=null,observers.push(subscriber),new Subscription(()=>{this.currentObservers=null,arrRemove(observers,subscriber)}))}_checkFinalizedStatuses(subscriber){let{hasError,thrownError,isStopped}=this;hasError?subscriber.error(thrownError):isStopped&&subscriber.complete()}asObservable(){let observable2=new Observable;return observable2.source=this,observable2}}return Subject2.create=(destination,source)=>new AnonymousSubject(destination,source),Subject2})(),AnonymousSubject=class extends Subject{constructor(destination,source){super(),this.destination=destination,this.source=source}next(value){var _a,_b;(_b=(_a=this.destination)===null||_a===void 0?void 0:_a.next)===null||_b===void 0||_b.call(_a,value)}error(err){var _a,_b;(_b=(_a=this.destination)===null||_a===void 0?void 0:_a.error)===null||_b===void 0||_b.call(_a,err)}complete(){var _a,_b;(_b=(_a=this.destination)===null||_a===void 0?void 0:_a.complete)===null||_b===void 0||_b.call(_a)}_subscribe(subscriber){var _a,_b;return(_b=(_a=this.source)===null||_a===void 0?void 0:_a.subscribe(subscriber))!==null&&_b!==void 0?_b:EMPTY_SUBSCRIPTION}};var BehaviorSubject=class extends Subject{constructor(_value){super(),this._value=_value}get value(){return this.getValue()}_subscribe(subscriber){let subscription=super._subscribe(subscriber);return!subscription.closed&&subscriber.next(this._value),subscription}getValue(){let{hasError,thrownError,_value}=this;if(hasError)throw thrownError;return this._throwIfClosed(),_value}next(value){super.next(this._value=value)}};var dateTimestampProvider={now(){return(dateTimestampProvider.delegate||Date).now()},delegate:void 0};var ReplaySubject=class extends Subject{constructor(_bufferSize=1/0,_windowTime=1/0,_timestampProvider=dateTimestampProvider){super(),this._bufferSize=_bufferSize,this._windowTime=_windowTime,this._timestampProvider=_timestampProvider,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=_windowTime===1/0,this._bufferSize=Math.max(1,_bufferSize),this._windowTime=Math.max(1,_windowTime)}next(value){let{isStopped,_buffer,_infiniteTimeWindow,_timestampProvider,_windowTime}=this;isStopped||(_buffer.push(value),!_infiniteTimeWindow&&_buffer.push(_timestampProvider.now()+_windowTime)),this._trimBuffer(),super.next(value)}_subscribe(subscriber){this._throwIfClosed(),this._trimBuffer();let subscription=this._innerSubscribe(subscriber),{_infiniteTimeWindow,_buffer}=this,copy=_buffer.slice();for(let i=0;i<copy.length&&!subscriber.closed;i+=_infiniteTimeWindow?1:2)subscriber.next(copy[i]);return this._checkFinalizedStatuses(subscriber),subscription}_trimBuffer(){let{_bufferSize,_timestampProvider,_buffer,_infiniteTimeWindow}=this,adjustedBufferSize=(_infiniteTimeWindow?1:2)*_bufferSize;if(_bufferSize<1/0&&adjustedBufferSize<_buffer.length&&_buffer.splice(0,_buffer.length-adjustedBufferSize),!_infiniteTimeWindow){let now=_timestampProvider.now(),last4=0;for(let i=1;i<_buffer.length&&_buffer[i]<=now;i+=2)last4=i;last4&&_buffer.splice(0,last4+1)}}};var Action=class extends Subscription{constructor(scheduler,work){super()}schedule(state2,delay2=0){return this}};var intervalProvider={setInterval(handler,timeout2,...args){let{delegate}=intervalProvider;return delegate?.setInterval?delegate.setInterval(handler,timeout2,...args):setInterval(handler,timeout2,...args)},clearInterval(handle){let{delegate}=intervalProvider;return(delegate?.clearInterval||clearInterval)(handle)},delegate:void 0};var AsyncAction=class extends Action{constructor(scheduler,work){super(scheduler,work),this.scheduler=scheduler,this.work=work,this.pending=!1}schedule(state2,delay2=0){var _a;if(this.closed)return this;this.state=state2;let id=this.id,scheduler=this.scheduler;return id!=null&&(this.id=this.recycleAsyncId(scheduler,id,delay2)),this.pending=!0,this.delay=delay2,this.id=(_a=this.id)!==null&&_a!==void 0?_a:this.requestAsyncId(scheduler,this.id,delay2),this}requestAsyncId(scheduler,_id,delay2=0){return intervalProvider.setInterval(scheduler.flush.bind(scheduler,this),delay2)}recycleAsyncId(_scheduler,id,delay2=0){if(delay2!=null&&this.delay===delay2&&this.pending===!1)return id;id!=null&&intervalProvider.clearInterval(id)}execute(state2,delay2){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;let error=this._execute(state2,delay2);if(error)return error;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(state2,_delay){let errored=!1,errorValue;try{this.work(state2)}catch(e){errored=!0,errorValue=e||new Error("Scheduled action threw falsy error")}if(errored)return this.unsubscribe(),errorValue}unsubscribe(){if(!this.closed){let{id,scheduler}=this,{actions}=scheduler;this.work=this.state=this.scheduler=null,this.pending=!1,arrRemove(actions,this),id!=null&&(this.id=this.recycleAsyncId(scheduler,id,null)),this.delay=null,super.unsubscribe()}}};var nextHandle=1,resolved,activeHandles={};function findAndClearHandle(handle){return handle in activeHandles?(delete activeHandles[handle],!0):!1}var Immediate={setImmediate(cb){let handle=nextHandle++;return activeHandles[handle]=!0,resolved||(resolved=Promise.resolve()),resolved.then(()=>findAndClearHandle(handle)&&cb()),handle},clearImmediate(handle){findAndClearHandle(handle)}};var{setImmediate,clearImmediate}=Immediate,immediateProvider={setImmediate(...args){let{delegate}=immediateProvider;return(delegate?.setImmediate||setImmediate)(...args)},clearImmediate(handle){let{delegate}=immediateProvider;return(delegate?.clearImmediate||clearImmediate)(handle)},delegate:void 0};var AsapAction=class extends AsyncAction{constructor(scheduler,work){super(scheduler,work),this.scheduler=scheduler,this.work=work}requestAsyncId(scheduler,id,delay2=0){return delay2!==null&&delay2>0?super.requestAsyncId(scheduler,id,delay2):(scheduler.actions.push(this),scheduler._scheduled||(scheduler._scheduled=immediateProvider.setImmediate(scheduler.flush.bind(scheduler,void 0))))}recycleAsyncId(scheduler,id,delay2=0){var _a;if(delay2!=null?delay2>0:this.delay>0)return super.recycleAsyncId(scheduler,id,delay2);let{actions}=scheduler;id!=null&&((_a=actions[actions.length-1])===null||_a===void 0?void 0:_a.id)!==id&&(immediateProvider.clearImmediate(id),scheduler._scheduled===id&&(scheduler._scheduled=void 0))}};var Scheduler=class _Scheduler{constructor(schedulerActionCtor,now=_Scheduler.now){this.schedulerActionCtor=schedulerActionCtor,this.now=now}schedule(work,delay2=0,state2){return new this.schedulerActionCtor(this,work).schedule(state2,delay2)}};Scheduler.now=dateTimestampProvider.now;var AsyncScheduler=class extends Scheduler{constructor(SchedulerAction,now=Scheduler.now){super(SchedulerAction,now),this.actions=[],this._active=!1}flush(action){let{actions}=this;if(this._active){actions.push(action);return}let error;this._active=!0;do if(error=action.execute(action.state,action.delay))break;while(action=actions.shift());if(this._active=!1,error){for(;action=actions.shift();)action.unsubscribe();throw error}}};var AsapScheduler=class extends AsyncScheduler{flush(action){this._active=!0;let flushId=this._scheduled;this._scheduled=void 0;let{actions}=this,error;action=action||actions.shift();do if(error=action.execute(action.state,action.delay))break;while((action=actions[0])&&action.id===flushId&&actions.shift());if(this._active=!1,error){for(;(action=actions[0])&&action.id===flushId&&actions.shift();)action.unsubscribe();throw error}}};var asapScheduler=new AsapScheduler(AsapAction);var asyncScheduler=new AsyncScheduler(AsyncAction),async=asyncScheduler;var QueueAction=class extends AsyncAction{constructor(scheduler,work){super(scheduler,work),this.scheduler=scheduler,this.work=work}schedule(state2,delay2=0){return delay2>0?super.schedule(state2,delay2):(this.delay=delay2,this.state=state2,this.scheduler.flush(this),this)}execute(state2,delay2){return delay2>0||this.closed?super.execute(state2,delay2):this._execute(state2,delay2)}requestAsyncId(scheduler,id,delay2=0){return delay2!=null&&delay2>0||delay2==null&&this.delay>0?super.requestAsyncId(scheduler,id,delay2):(scheduler.flush(this),0)}};var QueueScheduler=class extends AsyncScheduler{};var queueScheduler=new QueueScheduler(QueueAction);var AnimationFrameAction=class extends AsyncAction{constructor(scheduler,work){super(scheduler,work),this.scheduler=scheduler,this.work=work}requestAsyncId(scheduler,id,delay2=0){return delay2!==null&&delay2>0?super.requestAsyncId(scheduler,id,delay2):(scheduler.actions.push(this),scheduler._scheduled||(scheduler._scheduled=animationFrameProvider.requestAnimationFrame(()=>scheduler.flush(void 0))))}recycleAsyncId(scheduler,id,delay2=0){var _a;if(delay2!=null?delay2>0:this.delay>0)return super.recycleAsyncId(scheduler,id,delay2);let{actions}=scheduler;id!=null&&id===scheduler._scheduled&&((_a=actions[actions.length-1])===null||_a===void 0?void 0:_a.id)!==id&&(animationFrameProvider.cancelAnimationFrame(id),scheduler._scheduled=void 0)}};var AnimationFrameScheduler=class extends AsyncScheduler{flush(action){this._active=!0;let flushId;action?flushId=action.id:(flushId=this._scheduled,this._scheduled=void 0);let{actions}=this,error;action=action||actions.shift();do if(error=action.execute(action.state,action.delay))break;while((action=actions[0])&&action.id===flushId&&actions.shift());if(this._active=!1,error){for(;(action=actions[0])&&action.id===flushId&&actions.shift();)action.unsubscribe();throw error}}};var animationFrameScheduler=new AnimationFrameScheduler(AnimationFrameAction);var EMPTY=new Observable(subscriber=>subscriber.complete());function isScheduler(value){return value&&isFunction(value.schedule)}function last(arr){return arr[arr.length-1]}function popResultSelector(args){return isFunction(last(args))?args.pop():void 0}function popScheduler(args){return isScheduler(last(args))?args.pop():void 0}function popNumber(args,defaultValue){return typeof last(args)=="number"?args.pop():defaultValue}function __awaiter(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value)})}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator.throw(value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())})}function __values(o){var s=typeof Symbol=="function"&&Symbol.iterator,m=s&&o[s],i=0;if(m)return m.call(o);if(o&&typeof o.length=="number")return{next:function(){return o&&i>=o.length&&(o=void 0),{value:o&&o[i++],done:!o}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")}function __await(v){return this instanceof __await?(this.v=v,this):new __await(v)}function __asyncGenerator(thisArg,_arguments,generator){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var g=generator.apply(thisArg,_arguments||[]),i,q=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),verb("next"),verb("throw"),verb("return",awaitReturn),i[Symbol.asyncIterator]=function(){return this},i;function awaitReturn(f){return function(v){return Promise.resolve(v).then(f,reject)}}function verb(n,f){g[n]&&(i[n]=function(v){return new Promise(function(a,b){q.push([n,v,a,b])>1||resume(n,v)})},f&&(i[n]=f(i[n])))}function resume(n,v){try{step(g[n](v))}catch(e){settle(q[0][3],e)}}function step(r){r.value instanceof __await?Promise.resolve(r.value.v).then(fulfill,reject):settle(q[0][2],r)}function fulfill(value){resume("next",value)}function reject(value){resume("throw",value)}function settle(f,v){f(v),q.shift(),q.length&&resume(q[0][0],q[0][1])}}function __asyncValues(o){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var m=o[Symbol.asyncIterator],i;return m?m.call(o):(o=typeof __values=="function"?__values(o):o[Symbol.iterator](),i={},verb("next"),verb("throw"),verb("return"),i[Symbol.asyncIterator]=function(){return this},i);function verb(n){i[n]=o[n]&&function(v){return new Promise(function(resolve,reject){v=o[n](v),settle(resolve,reject,v.done,v.value)})}}function settle(resolve,reject,d,v){Promise.resolve(v).then(function(v2){resolve({value:v2,done:d})},reject)}}var isArrayLike=x=>x&&typeof x.length=="number"&&typeof x!="function";function isPromise(value){return isFunction(value?.then)}function isInteropObservable(input2){return isFunction(input2[observable])}function isAsyncIterable(obj){return Symbol.asyncIterator&&isFunction(obj?.[Symbol.asyncIterator])}function createInvalidObservableTypeError(input2){return new TypeError(`You provided ${input2!==null&&typeof input2=="object"?"an invalid object":`'${input2}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}function getSymbolIterator(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var iterator=getSymbolIterator();function isIterable(input2){return isFunction(input2?.[iterator])}function readableStreamLikeToAsyncGenerator(readableStream){return __asyncGenerator(this,arguments,function*(){let reader=readableStream.getReader();try{for(;;){let{value,done}=yield __await(reader.read());if(done)return yield __await(void 0);yield yield __await(value)}}finally{reader.releaseLock()}})}function isReadableStreamLike(obj){return isFunction(obj?.getReader)}function innerFrom(input2){if(input2 instanceof Observable)return input2;if(input2!=null){if(isInteropObservable(input2))return fromInteropObservable(input2);if(isArrayLike(input2))return fromArrayLike(input2);if(isPromise(input2))return fromPromise(input2);if(isAsyncIterable(input2))return fromAsyncIterable(input2);if(isIterable(input2))return fromIterable(input2);if(isReadableStreamLike(input2))return fromReadableStreamLike(input2)}throw createInvalidObservableTypeError(input2)}function fromInteropObservable(obj){return new Observable(subscriber=>{let obs=obj[observable]();if(isFunction(obs.subscribe))return obs.subscribe(subscriber);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function fromArrayLike(array){return new Observable(subscriber=>{for(let i=0;i<array.length&&!subscriber.closed;i++)subscriber.next(array[i]);subscriber.complete()})}function fromPromise(promise){return new Observable(subscriber=>{promise.then(value=>{subscriber.closed||(subscriber.next(value),subscriber.complete())},err=>subscriber.error(err)).then(null,reportUnhandledError)})}function fromIterable(iterable){return new Observable(subscriber=>{for(let value of iterable)if(subscriber.next(value),subscriber.closed)return;subscriber.complete()})}function fromAsyncIterable(asyncIterable){return new Observable(subscriber=>{process(asyncIterable,subscriber).catch(err=>subscriber.error(err))})}function fromReadableStreamLike(readableStream){return fromAsyncIterable(readableStreamLikeToAsyncGenerator(readableStream))}function process(asyncIterable,subscriber){var asyncIterable_1,asyncIterable_1_1,e_1,_a;return __awaiter(this,void 0,void 0,function*(){try{for(asyncIterable_1=__asyncValues(asyncIterable);asyncIterable_1_1=yield asyncIterable_1.next(),!asyncIterable_1_1.done;){let value=asyncIterable_1_1.value;if(subscriber.next(value),subscriber.closed)return}}catch(e_1_1){e_1={error:e_1_1}}finally{try{asyncIterable_1_1&&!asyncIterable_1_1.done&&(_a=asyncIterable_1.return)&&(yield _a.call(asyncIterable_1))}finally{if(e_1)throw e_1.error}}subscriber.complete()})}function executeSchedule(parentSubscription,scheduler,work,delay2=0,repeat=!1){let scheduleSubscription=scheduler.schedule(function(){work(),repeat?parentSubscription.add(this.schedule(null,delay2)):this.unsubscribe()},delay2);if(parentSubscription.add(scheduleSubscription),!repeat)return scheduleSubscription}function observeOn(scheduler,delay2=0){return operate((source,subscriber)=>{source.subscribe(createOperatorSubscriber(subscriber,value=>executeSchedule(subscriber,scheduler,()=>subscriber.next(value),delay2),()=>executeSchedule(subscriber,scheduler,()=>subscriber.complete(),delay2),err=>executeSchedule(subscriber,scheduler,()=>subscriber.error(err),delay2)))})}function subscribeOn(scheduler,delay2=0){return operate((source,subscriber)=>{subscriber.add(scheduler.schedule(()=>source.subscribe(subscriber),delay2))})}function scheduleObservable(input2,scheduler){return innerFrom(input2).pipe(subscribeOn(scheduler),observeOn(scheduler))}function schedulePromise(input2,scheduler){return innerFrom(input2).pipe(subscribeOn(scheduler),observeOn(scheduler))}function scheduleArray(input2,scheduler){return new Observable(subscriber=>{let i=0;return scheduler.schedule(function(){i===input2.length?subscriber.complete():(subscriber.next(input2[i++]),subscriber.closed||this.schedule())})})}function scheduleIterable(input2,scheduler){return new Observable(subscriber=>{let iterator2;return executeSchedule(subscriber,scheduler,()=>{iterator2=input2[iterator](),executeSchedule(subscriber,scheduler,()=>{let value,done;try{({value,done}=iterator2.next())}catch(err){subscriber.error(err);return}done?subscriber.complete():subscriber.next(value)},0,!0)}),()=>isFunction(iterator2?.return)&&iterator2.return()})}function scheduleAsyncIterable(input2,scheduler){if(!input2)throw new Error("Iterable cannot be null");return new Observable(subscriber=>{executeSchedule(subscriber,scheduler,()=>{let iterator2=input2[Symbol.asyncIterator]();executeSchedule(subscriber,scheduler,()=>{iterator2.next().then(result=>{result.done?subscriber.complete():subscriber.next(result.value)})},0,!0)})})}function scheduleReadableStreamLike(input2,scheduler){return scheduleAsyncIterable(readableStreamLikeToAsyncGenerator(input2),scheduler)}function scheduled(input2,scheduler){if(input2!=null){if(isInteropObservable(input2))return scheduleObservable(input2,scheduler);if(isArrayLike(input2))return scheduleArray(input2,scheduler);if(isPromise(input2))return schedulePromise(input2,scheduler);if(isAsyncIterable(input2))return scheduleAsyncIterable(input2,scheduler);if(isIterable(input2))return scheduleIterable(input2,scheduler);if(isReadableStreamLike(input2))return scheduleReadableStreamLike(input2,scheduler)}throw createInvalidObservableTypeError(input2)}function from(input2,scheduler){return scheduler?scheduled(input2,scheduler):innerFrom(input2)}function of(...args){let scheduler=popScheduler(args);return from(args,scheduler)}function throwError(errorOrErrorFactory,scheduler){let errorFactory=isFunction(errorOrErrorFactory)?errorOrErrorFactory:()=>errorOrErrorFactory,init=subscriber=>subscriber.error(errorFactory());return new Observable(scheduler?subscriber=>scheduler.schedule(init,0,subscriber):init)}var Notification=class _Notification{constructor(kind,value,error){this.kind=kind,this.value=value,this.error=error,this.hasValue=kind==="N"}observe(observer){return observeNotification(this,observer)}do(nextHandler,errorHandler2,completeHandler){let{kind,value,error}=this;return kind==="N"?nextHandler?.(value):kind==="E"?errorHandler2?.(error):completeHandler?.()}accept(nextOrObserver,error,complete){var _a;return isFunction((_a=nextOrObserver)===null||_a===void 0?void 0:_a.next)?this.observe(nextOrObserver):this.do(nextOrObserver,error,complete)}toObservable(){let{kind,value,error}=this,result=kind==="N"?of(value):kind==="E"?throwError(()=>error):kind==="C"?EMPTY:0;if(!result)throw new TypeError(`Unexpected notification kind ${kind}`);return result}static createNext(value){return new _Notification("N",value)}static createError(err){return new _Notification("E",void 0,err)}static createComplete(){return _Notification.completeNotification}};Notification.completeNotification=new Notification("C");function observeNotification(notification,observer){var _a,_b,_c;let{kind,value,error}=notification;if(typeof kind!="string")throw new TypeError('Invalid notification, missing "kind"');kind==="N"?(_a=observer.next)===null||_a===void 0||_a.call(observer,value):kind==="E"?(_b=observer.error)===null||_b===void 0||_b.call(observer,error):(_c=observer.complete)===null||_c===void 0||_c.call(observer)}function isObservable(obj){return!!obj&&(obj instanceof Observable||isFunction(obj.lift)&&isFunction(obj.subscribe))}var EmptyError=createErrorClass(_super=>function(){_super(this),this.name="EmptyError",this.message="no elements in sequence"});function lastValueFrom(source,config2){let hasConfig=typeof config2=="object";return new Promise((resolve,reject)=>{let _hasValue=!1,_value;source.subscribe({next:value=>{_value=value,_hasValue=!0},error:reject,complete:()=>{_hasValue?resolve(_value):hasConfig?resolve(config2.defaultValue):reject(new EmptyError)}})})}function firstValueFrom(source,config2){let hasConfig=typeof config2=="object";return new Promise((resolve,reject)=>{let subscriber=new SafeSubscriber({next:value=>{resolve(value),subscriber.unsubscribe()},error:reject,complete:()=>{hasConfig?resolve(config2.defaultValue):reject(new EmptyError)}});source.subscribe(subscriber)})}function isValidDate(value){return value instanceof Date&&!isNaN(value)}var TimeoutError=createErrorClass(_super=>function(info=null){_super(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=info});function timeout(config2,schedulerArg){let{first:first2,each,with:_with=timeoutErrorFactory,scheduler=schedulerArg??asyncScheduler,meta=null}=isValidDate(config2)?{first:config2}:typeof config2=="number"?{each:config2}:config2;if(first2==null&&each==null)throw new TypeError("No timeout provided.");return operate((source,subscriber)=>{let originalSourceSubscription,timerSubscription,lastValue=null,seen=0,startTimer=delay2=>{timerSubscription=executeSchedule(subscriber,scheduler,()=>{try{originalSourceSubscription.unsubscribe(),innerFrom(_with({meta,lastValue,seen})).subscribe(subscriber)}catch(err){subscriber.error(err)}},delay2)};originalSourceSubscription=source.subscribe(createOperatorSubscriber(subscriber,value=>{timerSubscription?.unsubscribe(),seen++,subscriber.next(lastValue=value),each>0&&startTimer(each)},void 0,void 0,()=>{timerSubscription?.closed||timerSubscription?.unsubscribe(),lastValue=null})),!seen&&startTimer(first2!=null?typeof first2=="number"?first2:+first2-scheduler.now():each)})}function timeoutErrorFactory(info){throw new TimeoutError(info)}function map(project,thisArg){return operate((source,subscriber)=>{let index=0;source.subscribe(createOperatorSubscriber(subscriber,value=>{subscriber.next(project.call(thisArg,value,index++))}))})}var{isArray}=Array;function callOrApply(fn,args){return isArray(args)?fn(...args):fn(args)}function mapOneOrManyArgs(fn){return map(args=>callOrApply(fn,args))}var{isArray:isArray2}=Array,{getPrototypeOf,prototype:objectProto,keys:getKeys}=Object;function argsArgArrayOrObject(args){if(args.length===1){let first2=args[0];if(isArray2(first2))return{args:first2,keys:null};if(isPOJO(first2)){let keys=getKeys(first2);return{args:keys.map(key=>first2[key]),keys}}}return{args,keys:null}}function isPOJO(obj){return obj&&typeof obj=="object"&&getPrototypeOf(obj)===objectProto}function createObject(keys,values){return keys.reduce((result,key,i)=>(result[key]=values[i],result),{})}function combineLatest(...args){let scheduler=popScheduler(args),resultSelector=popResultSelector(args),{args:observables,keys}=argsArgArrayOrObject(args);if(observables.length===0)return from([],scheduler);let result=new Observable(combineLatestInit(observables,scheduler,keys?values=>createObject(keys,values):identity));return resultSelector?result.pipe(mapOneOrManyArgs(resultSelector)):result}function combineLatestInit(observables,scheduler,valueTransform=identity){return subscriber=>{maybeSchedule(scheduler,()=>{let{length}=observables,values=new Array(length),active=length,remainingFirstValues=length;for(let i=0;i<length;i++)maybeSchedule(scheduler,()=>{let source=from(observables[i],scheduler),hasFirstValue=!1;source.subscribe(createOperatorSubscriber(subscriber,value=>{values[i]=value,hasFirstValue||(hasFirstValue=!0,remainingFirstValues--),remainingFirstValues||subscriber.next(valueTransform(values.slice()))},()=>{--active||subscriber.complete()}))},subscriber)},subscriber)}}function maybeSchedule(scheduler,execute,subscription){scheduler?executeSchedule(subscription,scheduler,execute):execute()}function mergeInternals(source,subscriber,project,concurrent,onBeforeNext,expand,innerSubScheduler,additionalFinalizer){let buffer2=[],active=0,index=0,isComplete=!1,checkComplete=()=>{isComplete&&!buffer2.length&&!active&&subscriber.complete()},outerNext=value=>active<concurrent?doInnerSub(value):buffer2.push(value),doInnerSub=value=>{expand&&subscriber.next(value),active++;let innerComplete=!1;innerFrom(project(value,index++)).subscribe(createOperatorSubscriber(subscriber,innerValue=>{onBeforeNext?.(innerValue),expand?outerNext(innerValue):subscriber.next(innerValue)},()=>{innerComplete=!0},void 0,()=>{if(innerComplete)try{for(active--;buffer2.length&&active<concurrent;){let bufferedValue=buffer2.shift();innerSubScheduler?executeSchedule(subscriber,innerSubScheduler,()=>doInnerSub(bufferedValue)):doInnerSub(bufferedValue)}checkComplete()}catch(err){subscriber.error(err)}}))};return source.subscribe(createOperatorSubscriber(subscriber,outerNext,()=>{isComplete=!0,checkComplete()})),()=>{additionalFinalizer?.()}}function mergeMap(project,resultSelector,concurrent=1/0){return isFunction(resultSelector)?mergeMap((a,i)=>map((b,ii)=>resultSelector(a,b,i,ii))(innerFrom(project(a,i))),concurrent):(typeof resultSelector=="number"&&(concurrent=resultSelector),operate((source,subscriber)=>mergeInternals(source,subscriber,project,concurrent)))}function mergeAll(concurrent=1/0){return mergeMap(identity,concurrent)}function concatAll(){return mergeAll(1)}function concat(...args){return concatAll()(from(args,popScheduler(args)))}function defer(observableFactory){return new Observable(subscriber=>{innerFrom(observableFactory()).subscribe(subscriber)})}function forkJoin(...args){let resultSelector=popResultSelector(args),{args:sources,keys}=argsArgArrayOrObject(args),result=new Observable(subscriber=>{let{length}=sources;if(!length){subscriber.complete();return}let values=new Array(length),remainingCompletions=length,remainingEmissions=length;for(let sourceIndex=0;sourceIndex<length;sourceIndex++){let hasValue=!1;innerFrom(sources[sourceIndex]).subscribe(createOperatorSubscriber(subscriber,value=>{hasValue||(hasValue=!0,remainingEmissions--),values[sourceIndex]=value},()=>remainingCompletions--,void 0,()=>{(!remainingCompletions||!hasValue)&&(remainingEmissions||subscriber.next(keys?createObject(keys,values):values),subscriber.complete())}))}});return resultSelector?result.pipe(mapOneOrManyArgs(resultSelector)):result}var nodeEventEmitterMethods=["addListener","removeListener"],eventTargetMethods=["addEventListener","removeEventListener"],jqueryMethods=["on","off"];function fromEvent(target,eventName,options,resultSelector){if(isFunction(options)&&(resultSelector=options,options=void 0),resultSelector)return fromEvent(target,eventName,options).pipe(mapOneOrManyArgs(resultSelector));let[add3,remove3]=isEventTarget(target)?eventTargetMethods.map(methodName=>handler=>target[methodName](eventName,handler,options)):isNodeStyleEventEmitter(target)?nodeEventEmitterMethods.map(toCommonHandlerRegistry(target,eventName)):isJQueryStyleEventEmitter(target)?jqueryMethods.map(toCommonHandlerRegistry(target,eventName)):[];if(!add3&&isArrayLike(target))return mergeMap(subTarget=>fromEvent(subTarget,eventName,options))(innerFrom(target));if(!add3)throw new TypeError("Invalid event target");return new Observable(subscriber=>{let handler=(...args)=>subscriber.next(1<args.length?args:args[0]);return add3(handler),()=>remove3(handler)})}function toCommonHandlerRegistry(target,eventName){return methodName=>handler=>target[methodName](eventName,handler)}function isNodeStyleEventEmitter(target){return isFunction(target.addListener)&&isFunction(target.removeListener)}function isJQueryStyleEventEmitter(target){return isFunction(target.on)&&isFunction(target.off)}function isEventTarget(target){return isFunction(target.addEventListener)&&isFunction(target.removeEventListener)}function iif(condition,trueResult,falseResult){return defer(()=>condition()?trueResult:falseResult)}function timer(dueTime=0,intervalOrScheduler,scheduler=async){let intervalDuration=-1;return intervalOrScheduler!=null&&(isScheduler(intervalOrScheduler)?scheduler=intervalOrScheduler:intervalDuration=intervalOrScheduler),new Observable(subscriber=>{let due=isValidDate(dueTime)?+dueTime-scheduler.now():dueTime;due<0&&(due=0);let n=0;return scheduler.schedule(function(){subscriber.closed||(subscriber.next(n++),0<=intervalDuration?this.schedule(void 0,intervalDuration):subscriber.complete())},due)})}function interval(period=0,scheduler=asyncScheduler){return period<0&&(period=0),timer(period,period,scheduler)}function merge(...args){let scheduler=popScheduler(args),concurrent=popNumber(args,1/0),sources=args;return sources.length?sources.length===1?innerFrom(sources[0]):mergeAll(concurrent)(from(sources,scheduler)):EMPTY}function filter(predicate,thisArg){return operate((source,subscriber)=>{let index=0;source.subscribe(createOperatorSubscriber(subscriber,value=>predicate.call(thisArg,value,index++)&&subscriber.next(value)))})}function audit(durationSelector){return operate((source,subscriber)=>{let hasValue=!1,lastValue=null,durationSubscriber=null,isComplete=!1,endDuration=()=>{if(durationSubscriber?.unsubscribe(),durationSubscriber=null,hasValue){hasValue=!1;let value=lastValue;lastValue=null,subscriber.next(value)}isComplete&&subscriber.complete()},cleanupDuration=()=>{durationSubscriber=null,isComplete&&subscriber.complete()};source.subscribe(createOperatorSubscriber(subscriber,value=>{hasValue=!0,lastValue=value,durationSubscriber||innerFrom(durationSelector(value)).subscribe(durationSubscriber=createOperatorSubscriber(subscriber,endDuration,cleanupDuration))},()=>{isComplete=!0,(!hasValue||!durationSubscriber||durationSubscriber.closed)&&subscriber.complete()}))})}function auditTime(duration,scheduler=asyncScheduler){return audit(()=>timer(duration,scheduler))}function buffer(closingNotifier){return operate((source,subscriber)=>{let currentBuffer=[];return source.subscribe(createOperatorSubscriber(subscriber,value=>currentBuffer.push(value),()=>{subscriber.next(currentBuffer),subscriber.complete()})),innerFrom(closingNotifier).subscribe(createOperatorSubscriber(subscriber,()=>{let b=currentBuffer;currentBuffer=[],subscriber.next(b)},noop)),()=>{currentBuffer=null}})}function catchError(selector){return operate((source,subscriber)=>{let innerSub=null,syncUnsub=!1,handledResult;innerSub=source.subscribe(createOperatorSubscriber(subscriber,void 0,void 0,err=>{handledResult=innerFrom(selector(err,catchError(selector)(source))),innerSub?(innerSub.unsubscribe(),innerSub=null,handledResult.subscribe(subscriber)):syncUnsub=!0})),syncUnsub&&(innerSub.unsubscribe(),innerSub=null,handledResult.subscribe(subscriber))})}function scanInternals(accumulator,seed,hasSeed,emitOnNext,emitBeforeComplete){return(source,subscriber)=>{let hasState=hasSeed,state2=seed,index=0;source.subscribe(createOperatorSubscriber(subscriber,value=>{let i=index++;state2=hasState?accumulator(state2,value,i):(hasState=!0,value),emitOnNext&&subscriber.next(state2)},emitBeforeComplete&&(()=>{hasState&&subscriber.next(state2),subscriber.complete()})))}}function concatMap(project,resultSelector){return isFunction(resultSelector)?mergeMap(project,resultSelector,1):mergeMap(project,1)}function debounceTime(dueTime,scheduler=asyncScheduler){return operate((source,subscriber)=>{let activeTask=null,lastValue=null,lastTime=null,emit=()=>{if(activeTask){activeTask.unsubscribe(),activeTask=null;let value=lastValue;lastValue=null,subscriber.next(value)}};function emitWhenIdle(){let targetTime=lastTime+dueTime,now=scheduler.now();if(now<targetTime){activeTask=this.schedule(void 0,targetTime-now),subscriber.add(activeTask);return}emit()}source.subscribe(createOperatorSubscriber(subscriber,value=>{lastValue=value,lastTime=scheduler.now(),activeTask||(activeTask=scheduler.schedule(emitWhenIdle,dueTime),subscriber.add(activeTask))},()=>{emit(),subscriber.complete()},void 0,()=>{lastValue=activeTask=null}))})}function defaultIfEmpty(defaultValue){return operate((source,subscriber)=>{let hasValue=!1;source.subscribe(createOperatorSubscriber(subscriber,value=>{hasValue=!0,subscriber.next(value)},()=>{hasValue||subscriber.next(defaultValue),subscriber.complete()}))})}function take(count){return count<=0?()=>EMPTY:operate((source,subscriber)=>{let seen=0;source.subscribe(createOperatorSubscriber(subscriber,value=>{++seen<=count&&(subscriber.next(value),count<=seen&&subscriber.complete())}))})}function ignoreElements(){return operate((source,subscriber)=>{source.subscribe(createOperatorSubscriber(subscriber,noop))})}function mapTo(value){return map(()=>value)}function delayWhen(delayDurationSelector,subscriptionDelay){return subscriptionDelay?source=>concat(subscriptionDelay.pipe(take(1),ignoreElements()),source.pipe(delayWhen(delayDurationSelector))):mergeMap((value,index)=>innerFrom(delayDurationSelector(value,index)).pipe(take(1),mapTo(value)))}function delay(due,scheduler=asyncScheduler){let duration=timer(due,scheduler);return delayWhen(()=>duration)}function dematerialize(){return operate((source,subscriber)=>{source.subscribe(createOperatorSubscriber(subscriber,notification=>observeNotification(notification,subscriber)))})}function distinctUntilChanged(comparator,keySelector=identity){return comparator=comparator??defaultCompare,operate((source,subscriber)=>{let previousKey,first2=!0;source.subscribe(createOperatorSubscriber(subscriber,value=>{let currentKey=keySelector(value);(first2||!comparator(previousKey,currentKey))&&(first2=!1,previousKey=currentKey,subscriber.next(value))}))})}function defaultCompare(a,b){return a===b}function throwIfEmpty(errorFactory=defaultErrorFactory){return operate((source,subscriber)=>{let hasValue=!1;source.subscribe(createOperatorSubscriber(subscriber,value=>{hasValue=!0,subscriber.next(value)},()=>hasValue?subscriber.complete():subscriber.error(errorFactory())))})}function defaultErrorFactory(){return new EmptyError}function exhaustMap(project,resultSelector){return resultSelector?source=>source.pipe(exhaustMap((a,i)=>innerFrom(project(a,i)).pipe(map((b,ii)=>resultSelector(a,b,i,ii))))):operate((source,subscriber)=>{let index=0,innerSub=null,isComplete=!1;source.subscribe(createOperatorSubscriber(subscriber,outerValue=>{innerSub||(innerSub=createOperatorSubscriber(subscriber,void 0,()=>{innerSub=null,isComplete&&subscriber.complete()}),innerFrom(project(outerValue,index++)).subscribe(innerSub))},()=>{isComplete=!0,!innerSub&&subscriber.complete()}))})}function finalize(callback){return operate((source,subscriber)=>{try{source.subscribe(subscriber)}finally{subscriber.add(callback)}})}function first(predicate,defaultValue){let hasDefaultValue=arguments.length>=2;return source=>source.pipe(predicate?filter((v,i)=>predicate(v,i,source)):identity,take(1),hasDefaultValue?defaultIfEmpty(defaultValue):throwIfEmpty(()=>new EmptyError))}function groupBy(keySelector,elementOrOptions,duration,connector){return operate((source,subscriber)=>{let element;!elementOrOptions||typeof elementOrOptions=="function"?element=elementOrOptions:{duration,element,connector}=elementOrOptions;let groups=new Map,notify=cb=>{groups.forEach(cb),cb(subscriber)},handleError=err=>notify(consumer=>consumer.error(err)),activeGroups=0,teardownAttempted=!1,groupBySourceSubscriber=new OperatorSubscriber(subscriber,value=>{try{let key=keySelector(value),group2=groups.get(key);if(!group2){groups.set(key,group2=connector?connector():new Subject);let grouped=createGroupedObservable(key,group2);if(subscriber.next(grouped),duration){let durationSubscriber=createOperatorSubscriber(group2,()=>{group2.complete(),durationSubscriber?.unsubscribe()},void 0,void 0,()=>groups.delete(key));groupBySourceSubscriber.add(innerFrom(duration(grouped)).subscribe(durationSubscriber))}}group2.next(element?element(value):value)}catch(err){handleError(err)}},()=>notify(consumer=>consumer.complete()),handleError,()=>groups.clear(),()=>(teardownAttempted=!0,activeGroups===0));source.subscribe(groupBySourceSubscriber);function createGroupedObservable(key,groupSubject){let result=new Observable(groupSubscriber=>{activeGroups++;let innerSub=groupSubject.subscribe(groupSubscriber);return()=>{innerSub.unsubscribe(),--activeGroups===0&&teardownAttempted&&groupBySourceSubscriber.unsubscribe()}});return result.key=key,result}})}function takeLast(count){return count<=0?()=>EMPTY:operate((source,subscriber)=>{let buffer2=[];source.subscribe(createOperatorSubscriber(subscriber,value=>{buffer2.push(value),count<buffer2.length&&buffer2.shift()},()=>{for(let value of buffer2)subscriber.next(value);subscriber.complete()},void 0,()=>{buffer2=null}))})}function last2(predicate,defaultValue){let hasDefaultValue=arguments.length>=2;return source=>source.pipe(predicate?filter((v,i)=>predicate(v,i,source)):identity,takeLast(1),hasDefaultValue?defaultIfEmpty(defaultValue):throwIfEmpty(()=>new EmptyError))}function materialize(){return operate((source,subscriber)=>{source.subscribe(createOperatorSubscriber(subscriber,value=>{subscriber.next(Notification.createNext(value))},()=>{subscriber.next(Notification.createComplete()),subscriber.complete()},err=>{subscriber.next(Notification.createError(err)),subscriber.complete()}))})}function pairwise(){return operate((source,subscriber)=>{let prev,hasPrev=!1;source.subscribe(createOperatorSubscriber(subscriber,value=>{let p=prev;prev=value,hasPrev&&subscriber.next([p,value]),hasPrev=!0}))})}function pluck(...properties2){let length=properties2.length;if(length===0)throw new Error("list of properties cannot be empty.");return map(x=>{let currentProp=x;for(let i=0;i<length;i++){let p=currentProp?.[properties2[i]];if(typeof p<"u")currentProp=p;else return}return currentProp})}function retryWhen(notifier){return operate((source,subscriber)=>{let innerSub,syncResub=!1,errors$,subscribeForRetryWhen=()=>{innerSub=source.subscribe(createOperatorSubscriber(subscriber,void 0,void 0,err=>{errors$||(errors$=new Subject,innerFrom(notifier(errors$)).subscribe(createOperatorSubscriber(subscriber,()=>innerSub?subscribeForRetryWhen():syncResub=!0))),errors$&&errors$.next(err)})),syncResub&&(innerSub.unsubscribe(),innerSub=null,syncResub=!1,subscribeForRetryWhen())};subscribeForRetryWhen()})}function scan(accumulator,seed){return operate(scanInternals(accumulator,seed,arguments.length>=2,!0))}function share(options={}){let{connector=()=>new Subject,resetOnError=!0,resetOnComplete=!0,resetOnRefCountZero=!0}=options;return wrapperSource=>{let connection,resetConnection,subject,refCount2=0,hasCompleted=!1,hasErrored=!1,cancelReset=()=>{resetConnection?.unsubscribe(),resetConnection=void 0},reset4=()=>{cancelReset(),connection=subject=void 0,hasCompleted=hasErrored=!1},resetAndUnsubscribe=()=>{let conn=connection;reset4(),conn?.unsubscribe()};return operate((source,subscriber)=>{refCount2++,!hasErrored&&!hasCompleted&&cancelReset();let dest=subject=subject??connector();subscriber.add(()=>{refCount2--,refCount2===0&&!hasErrored&&!hasCompleted&&(resetConnection=handleReset(resetAndUnsubscribe,resetOnRefCountZero))}),dest.subscribe(subscriber),!connection&&refCount2>0&&(connection=new SafeSubscriber({next:value=>dest.next(value),error:err=>{hasErrored=!0,cancelReset(),resetConnection=handleReset(reset4,resetOnError,err),dest.error(err)},complete:()=>{hasCompleted=!0,cancelReset(),resetConnection=handleReset(reset4,resetOnComplete),dest.complete()}}),innerFrom(source).subscribe(connection))})(wrapperSource)}}function handleReset(reset4,on2,...args){if(on2===!0){reset4();return}if(on2===!1)return;let onSubscriber=new SafeSubscriber({next:()=>{onSubscriber.unsubscribe(),reset4()}});return innerFrom(on2(...args)).subscribe(onSubscriber)}function shareReplay(configOrBufferSize,windowTime,scheduler){let bufferSize,refCount2=!1;return configOrBufferSize&&typeof configOrBufferSize=="object"?{bufferSize=1/0,windowTime=1/0,refCount:refCount2=!1,scheduler}=configOrBufferSize:bufferSize=configOrBufferSize??1/0,share({connector:()=>new ReplaySubject(bufferSize,windowTime,scheduler),resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:refCount2})}function skip(count){return filter((_,index)=>count<=index)}function startWith(...values){let scheduler=popScheduler(values);return operate((source,subscriber)=>{(scheduler?concat(values,source,scheduler):concat(values,source)).subscribe(subscriber)})}function switchMap(project,resultSelector){return operate((source,subscriber)=>{let innerSubscriber=null,index=0,isComplete=!1,checkComplete=()=>isComplete&&!innerSubscriber&&subscriber.complete();source.subscribe(createOperatorSubscriber(subscriber,value=>{innerSubscriber?.unsubscribe();let innerIndex=0,outerIndex=index++;innerFrom(project(value,outerIndex)).subscribe(innerSubscriber=createOperatorSubscriber(subscriber,innerValue=>subscriber.next(resultSelector?resultSelector(value,innerValue,outerIndex,innerIndex++):innerValue),()=>{innerSubscriber=null,checkComplete()}))},()=>{isComplete=!0,checkComplete()}))})}function takeUntil(notifier){return operate((source,subscriber)=>{innerFrom(notifier).subscribe(createOperatorSubscriber(subscriber,()=>subscriber.complete(),noop)),!subscriber.closed&&source.subscribe(subscriber)})}function takeWhile(predicate,inclusive=!1){return operate((source,subscriber)=>{let index=0;source.subscribe(createOperatorSubscriber(subscriber,value=>{let result=predicate(value,index++);(result||inclusive)&&subscriber.next(value),!result&&subscriber.complete()}))})}function tap(observerOrNext,error,complete){let tapObserver=isFunction(observerOrNext)||error||complete?{next:observerOrNext,error,complete}:observerOrNext;return tapObserver?operate((source,subscriber)=>{var _a;(_a=tapObserver.subscribe)===null||_a===void 0||_a.call(tapObserver);let isUnsub=!0;source.subscribe(createOperatorSubscriber(subscriber,value=>{var _a2;(_a2=tapObserver.next)===null||_a2===void 0||_a2.call(tapObserver,value),subscriber.next(value)},()=>{var _a2;isUnsub=!1,(_a2=tapObserver.complete)===null||_a2===void 0||_a2.call(tapObserver),subscriber.complete()},err=>{var _a2;isUnsub=!1,(_a2=tapObserver.error)===null||_a2===void 0||_a2.call(tapObserver,err),subscriber.error(err)},()=>{var _a2,_b;isUnsub&&((_a2=tapObserver.unsubscribe)===null||_a2===void 0||_a2.call(tapObserver)),(_b=tapObserver.finalize)===null||_b===void 0||_b.call(tapObserver)}))}):identity}function withLatestFrom(...inputs2){let project=popResultSelector(inputs2);return operate((source,subscriber)=>{let len=inputs2.length,otherValues=new Array(len),hasValue=inputs2.map(()=>!1),ready=!1;for(let i=0;i<len;i++)innerFrom(inputs2[i]).subscribe(createOperatorSubscriber(subscriber,value=>{otherValues[i]=value,!ready&&!hasValue[i]&&(hasValue[i]=!0,(ready=hasValue.every(identity))&&(hasValue=null))},noop));source.subscribe(createOperatorSubscriber(subscriber,value=>{if(ready){let values=[value,...otherValues];subscriber.next(project?project(...values):values)}}))})}function createLinkedSignal(sourceFn,computationFn,equalityFn){let node=Object.create(LINKED_SIGNAL_NODE);node.source=sourceFn,node.computation=computationFn,equalityFn!=null&&(node.equal=equalityFn);let getter=()=>{if(producerUpdateValueVersion(node),producerAccessed(node),node.value===ERRORED)throw node.error;return node.value};return getter[SIGNAL]=node,runPostProducerCreatedFn(node),getter}function linkedSignalSetFn(node,newValue){producerUpdateValueVersion(node),signalSetFn(node,newValue),producerMarkClean(node)}function linkedSignalUpdateFn(node,updater){producerUpdateValueVersion(node),signalUpdateFn(node,updater),producerMarkClean(node)}var LINKED_SIGNAL_NODE=__spreadProps(__spreadValues({},REACTIVE_NODE),{value:UNSET,dirty:!0,error:null,equal:defaultEquals,kind:"linkedSignal",producerMustRecompute(node){return node.value===UNSET||node.value===COMPUTING},producerRecomputeValue(node){if(node.value===COMPUTING)throw new Error("");let oldValue=node.value;node.value=COMPUTING;let prevConsumer=consumerBeforeComputation(node),newValue;try{let newSourceValue=node.source(),prev=oldValue===UNSET||oldValue===ERRORED?void 0:{source:node.sourceValue,value:oldValue};newValue=node.computation(newSourceValue,prev),node.sourceValue=newSourceValue}catch(err){newValue=ERRORED,node.error=err}finally{consumerAfterComputation(node,prevConsumer)}if(oldValue!==UNSET&&newValue!==ERRORED&&node.equal(oldValue,newValue)){node.value=oldValue;return}node.value=newValue,node.version++}});function untracked(nonReactiveReadsFn){let prevConsumer=setActiveConsumer(null);try{return nonReactiveReadsFn()}finally{setActiveConsumer(prevConsumer)}}var XSS_SECURITY_URL="https://angular.dev/best-practices/security#preventing-cross-site-scripting-xss",RuntimeError=class extends Error{code;constructor(code,message){super(formatRuntimeError(code,message)),this.code=code}};function formatRuntimeErrorCode(code){return`NG0${Math.abs(code)}`}function formatRuntimeError(code,message){return`${formatRuntimeErrorCode(code)}${message?": "+message:""}`}var _global=globalThis;function getClosureSafeProperty(objWithPropertyToExtract){for(let key in objWithPropertyToExtract)if(objWithPropertyToExtract[key]===getClosureSafeProperty)return key;throw Error("")}function fillProperties(target,source){for(let key in source)source.hasOwnProperty(key)&&!target.hasOwnProperty(key)&&(target[key]=source[key])}function stringify(token){if(typeof token=="string")return token;if(Array.isArray(token))return`[${token.map(stringify).join(", ")}]`;if(token==null)return""+token;let name=token.overriddenName||token.name;if(name)return`${name}`;let result=token.toString();if(result==null)return""+result;let newLineIndex=result.indexOf(`
|
|
11
|
+
`);return newLineIndex>=0?result.slice(0,newLineIndex):result}function concatStringsWithSpace(before,after){return before?after?`${before} ${after}`:before:after||""}var __forward_ref__=getClosureSafeProperty({__forward_ref__:getClosureSafeProperty});function forwardRef(forwardRefFn){return forwardRefFn.__forward_ref__=forwardRef,forwardRefFn.toString=function(){return stringify(this())},forwardRefFn}function resolveForwardRef(type2){return isForwardRef(type2)?type2():type2}function isForwardRef(fn){return typeof fn=="function"&&fn.hasOwnProperty(__forward_ref__)&&fn.__forward_ref__===forwardRef}function assertDefined(actual,msg){actual==null&&throwError2(msg,actual,null,"!=")}function throwError2(msg,actual,expected,comparison){throw new Error(`ASSERTION ERROR: ${msg}`+(comparison==null?"":` [Expected=> ${expected} ${comparison} ${actual} <=Actual]`))}function \u0275\u0275defineInjectable(opts){return{token:opts.token,providedIn:opts.providedIn||null,factory:opts.factory,value:void 0}}function \u0275\u0275defineInjector(options){return{providers:options.providers||[],imports:options.imports||[]}}function getInjectableDef(type2){return getOwnDefinition(type2,NG_PROV_DEF)}function isInjectable(type2){return getInjectableDef(type2)!==null}function getOwnDefinition(type2,field){return type2.hasOwnProperty(field)&&type2[field]||null}function getInheritedInjectableDef(type2){let def=type2?.[NG_PROV_DEF]??null;return def||null}function getInjectorDef(type2){return type2&&type2.hasOwnProperty(NG_INJ_DEF)?type2[NG_INJ_DEF]:null}var NG_PROV_DEF=getClosureSafeProperty({\u0275prov:getClosureSafeProperty}),NG_INJ_DEF=getClosureSafeProperty({\u0275inj:getClosureSafeProperty}),InjectionToken=class{_desc;ngMetadataName="InjectionToken";\u0275prov;constructor(_desc,options){this._desc=_desc,this.\u0275prov=void 0,typeof options=="number"?this.__NG_ELEMENT_ID__=options:options!==void 0&&(this.\u0275prov=\u0275\u0275defineInjectable({token:this,providedIn:options.providedIn||"root",factory:options.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}};function isEnvironmentProviders(value){return value&&!!value.\u0275providers}var NG_COMP_DEF=getClosureSafeProperty({\u0275cmp:getClosureSafeProperty}),NG_DIR_DEF=getClosureSafeProperty({\u0275dir:getClosureSafeProperty}),NG_PIPE_DEF=getClosureSafeProperty({\u0275pipe:getClosureSafeProperty}),NG_MOD_DEF=getClosureSafeProperty({\u0275mod:getClosureSafeProperty}),NG_FACTORY_DEF=getClosureSafeProperty({\u0275fac:getClosureSafeProperty}),NG_ELEMENT_ID=getClosureSafeProperty({__NG_ELEMENT_ID__:getClosureSafeProperty}),NG_ENV_ID=getClosureSafeProperty({__NG_ENV_ID__:getClosureSafeProperty});function renderStringify(value){return typeof value=="string"?value:value==null?"":String(value)}function stringifyForError(value){return typeof value=="function"?value.name||value.toString():typeof value=="object"&&value!=null&&typeof value.type=="function"?value.type.name||value.type.toString():renderStringify(value)}var NG_RUNTIME_ERROR_CODE=getClosureSafeProperty({ngErrorCode:getClosureSafeProperty}),NG_RUNTIME_ERROR_MESSAGE=getClosureSafeProperty({ngErrorMessage:getClosureSafeProperty}),NG_TOKEN_PATH=getClosureSafeProperty({ngTokenPath:getClosureSafeProperty});function cyclicDependencyError(token,path){return createRuntimeError("",-200,path)}function throwProviderNotFoundError(token,injectorName){throw new RuntimeError(-201,!1)}function prependTokenToDependencyPath(error,token){error[NG_TOKEN_PATH]??=[];let currentPath=error[NG_TOKEN_PATH],pathStr;typeof token=="object"&&"multi"in token&&token?.multi===!0?(assertDefined(token.provide,"Token with multi: true should have a provide property"),pathStr=stringifyForError(token.provide)):pathStr=stringifyForError(token),currentPath[0]!==pathStr&&error[NG_TOKEN_PATH].unshift(pathStr)}function augmentRuntimeError(error,source){let tokenPath=error[NG_TOKEN_PATH],errorCode=error[NG_RUNTIME_ERROR_CODE],message=error[NG_RUNTIME_ERROR_MESSAGE]||error.message;return error.message=formatErrorMessage(message,errorCode,tokenPath,source),error}function createRuntimeError(message,code,path){let error=new RuntimeError(code,message);return error[NG_RUNTIME_ERROR_CODE]=code,error[NG_RUNTIME_ERROR_MESSAGE]=message,path&&(error[NG_TOKEN_PATH]=path),error}function getRuntimeErrorCode(error){return error[NG_RUNTIME_ERROR_CODE]}function formatErrorMessage(text,code,path=[],source=null){let pathDetails="";path&&path.length>1&&(pathDetails=` Path: ${path.join(" -> ")}.`);let sourceDetails=source?` Source: ${source}.`:"";return formatRuntimeError(code,`${text}${sourceDetails}${pathDetails}`)}var _injectImplementation;function getInjectImplementation(){return _injectImplementation}function setInjectImplementation(impl){let previous=_injectImplementation;return _injectImplementation=impl,previous}function injectRootLimpMode(token,notFoundValue,flags){let injectableDef=getInjectableDef(token);if(injectableDef&&injectableDef.providedIn=="root")return injectableDef.value===void 0?injectableDef.value=injectableDef.factory():injectableDef.value;if(flags&8)return null;if(notFoundValue!==void 0)return notFoundValue;throwProviderNotFoundError(token,"Injector")}var _THROW_IF_NOT_FOUND={},THROW_IF_NOT_FOUND=_THROW_IF_NOT_FOUND,DI_DECORATOR_FLAG="__NG_DI_FLAG__",RetrievingInjector=class{injector;constructor(injector){this.injector=injector}retrieve(token,options){let flags=convertToBitFlags(options)||0;try{return this.injector.get(token,flags&8?null:THROW_IF_NOT_FOUND,flags)}catch(e){if(isNotFound(e))return e;throw e}}};function injectInjectorOnly(token,flags=0){let currentInjector=getCurrentInjector();if(currentInjector===void 0)throw new RuntimeError(-203,!1);if(currentInjector===null)return injectRootLimpMode(token,void 0,flags);{let options=convertToInjectOptions(flags),value=currentInjector.retrieve(token,options);if(isNotFound(value)){if(options.optional)return null;throw value}return value}}function \u0275\u0275inject(token,flags=0){return(getInjectImplementation()||injectInjectorOnly)(resolveForwardRef(token),flags)}function inject2(token,options){return \u0275\u0275inject(token,convertToBitFlags(options))}function convertToBitFlags(flags){return typeof flags>"u"||typeof flags=="number"?flags:0|(flags.optional&&8)|(flags.host&&1)|(flags.self&&2)|(flags.skipSelf&&4)}function convertToInjectOptions(flags){return{optional:!!(flags&8),host:!!(flags&1),self:!!(flags&2),skipSelf:!!(flags&4)}}function injectArgs(types){let args=[];for(let i=0;i<types.length;i++){let arg=resolveForwardRef(types[i]);if(Array.isArray(arg)){if(arg.length===0)throw new RuntimeError(900,!1);let type2,flags=0;for(let j=0;j<arg.length;j++){let meta=arg[j],flag=getInjectFlag(meta);typeof flag=="number"?flag===-1?type2=meta.token:flags|=flag:type2=meta}args.push(\u0275\u0275inject(type2,flags))}else args.push(\u0275\u0275inject(arg))}return args}function attachInjectFlag(decorator,flag){return decorator[DI_DECORATOR_FLAG]=flag,decorator.prototype[DI_DECORATOR_FLAG]=flag,decorator}function getInjectFlag(token){return token[DI_DECORATOR_FLAG]}function getFactoryDef(type2,throwNotFound){let hasFactoryDef=type2.hasOwnProperty(NG_FACTORY_DEF);return hasFactoryDef?type2[NG_FACTORY_DEF]:null}function arrayEquals(a,b,identityAccessor){if(a.length!==b.length)return!1;for(let i=0;i<a.length;i++){let valueA=a[i],valueB=b[i];if(identityAccessor&&(valueA=identityAccessor(valueA),valueB=identityAccessor(valueB)),valueB!==valueA)return!1}return!0}function flatten(list){return list.flat(Number.POSITIVE_INFINITY)}function deepForEach(input2,fn){input2.forEach(value=>Array.isArray(value)?deepForEach(value,fn):fn(value))}function addToArray(arr,index,value){index>=arr.length?arr.push(value):arr.splice(index,0,value)}function removeFromArray(arr,index){return index>=arr.length-1?arr.pop():arr.splice(index,1)[0]}function newArray(size,value){let list=[];for(let i=0;i<size;i++)list.push(value);return list}function arrayInsert2(array,index,value1,value2){let end=array.length;if(end==index)array.push(value1,value2);else if(end===1)array.push(value2,array[0]),array[0]=value1;else{for(end--,array.push(array[end-1],array[end]);end>index;){let previousEnd=end-2;array[end]=array[previousEnd],end--}array[index]=value1,array[index+1]=value2}}function keyValueArraySet(keyValueArray,key,value){let index=keyValueArrayIndexOf(keyValueArray,key);return index>=0?keyValueArray[index|1]=value:(index=~index,arrayInsert2(keyValueArray,index,key,value)),index}function keyValueArrayGet(keyValueArray,key){let index=keyValueArrayIndexOf(keyValueArray,key);if(index>=0)return keyValueArray[index|1]}function keyValueArrayIndexOf(keyValueArray,key){return _arrayIndexOfSorted(keyValueArray,key,1)}function _arrayIndexOfSorted(array,value,shift){let start=0,end=array.length>>shift;for(;end!==start;){let middle=start+(end-start>>1),current=array[middle<<shift];if(value===current)return middle<<shift;current>value?end=middle:start=middle+1}return~(end<<shift)}var EMPTY_OBJ={},EMPTY_ARRAY=[],ENVIRONMENT_INITIALIZER=new InjectionToken(""),INJECTOR$1=new InjectionToken("",-1),INJECTOR_DEF_TYPES=new InjectionToken(""),NullInjector=class{get(token,notFoundValue=THROW_IF_NOT_FOUND){if(notFoundValue===THROW_IF_NOT_FOUND){let error=createRuntimeError("",-201);throw error.name="\u0275NotFound",error}return notFoundValue}};function getNgModuleDef(type2){return type2[NG_MOD_DEF]||null}function getComponentDef(type2){return type2[NG_COMP_DEF]||null}function getDirectiveDef(type2){return type2[NG_DIR_DEF]||null}function getPipeDef(type2){return type2[NG_PIPE_DEF]||null}function makeEnvironmentProviders(providers){return{\u0275providers:providers}}function provideEnvironmentInitializer(initializerFn){return makeEnvironmentProviders([{provide:ENVIRONMENT_INITIALIZER,multi:!0,useValue:initializerFn}])}function importProvidersFrom(...sources){return{\u0275providers:internalImportProvidersFrom(!0,sources),\u0275fromNgModule:!0}}function internalImportProvidersFrom(checkForStandaloneCmp,...sources){let providersOut=[],dedup=new Set,injectorTypesWithProviders,collectProviders=provider=>{providersOut.push(provider)};return deepForEach(sources,source=>{let internalSource=source;walkProviderTree(internalSource,collectProviders,[],dedup)&&(injectorTypesWithProviders||=[],injectorTypesWithProviders.push(internalSource))}),injectorTypesWithProviders!==void 0&&processInjectorTypesWithProviders(injectorTypesWithProviders,collectProviders),providersOut}function processInjectorTypesWithProviders(typesWithProviders,visitor){for(let i=0;i<typesWithProviders.length;i++){let{ngModule,providers}=typesWithProviders[i];deepForEachProvider(providers,provider=>{visitor(provider,ngModule)})}}function walkProviderTree(container,visitor,parents,dedup){if(container=resolveForwardRef(container),!container)return!1;let defType=null,injDef=getInjectorDef(container),cmpDef=!injDef&&getComponentDef(container);if(!injDef&&!cmpDef){let ngModule=container.ngModule;if(injDef=getInjectorDef(ngModule),injDef)defType=ngModule;else return!1}else{if(cmpDef&&!cmpDef.standalone)return!1;defType=container}let isDuplicate=dedup.has(defType);if(cmpDef){if(isDuplicate)return!1;if(dedup.add(defType),cmpDef.dependencies){let deps=typeof cmpDef.dependencies=="function"?cmpDef.dependencies():cmpDef.dependencies;for(let dep of deps)walkProviderTree(dep,visitor,parents,dedup)}}else if(injDef){if(injDef.imports!=null&&!isDuplicate){dedup.add(defType);let importTypesWithProviders;try{deepForEach(injDef.imports,imported=>{walkProviderTree(imported,visitor,parents,dedup)&&(importTypesWithProviders||=[],importTypesWithProviders.push(imported))})}finally{}importTypesWithProviders!==void 0&&processInjectorTypesWithProviders(importTypesWithProviders,visitor)}if(!isDuplicate){let factory=getFactoryDef(defType)||(()=>new defType);visitor({provide:defType,useFactory:factory,deps:EMPTY_ARRAY},defType),visitor({provide:INJECTOR_DEF_TYPES,useValue:defType,multi:!0},defType),visitor({provide:ENVIRONMENT_INITIALIZER,useValue:()=>\u0275\u0275inject(defType),multi:!0},defType)}let defProviders=injDef.providers;if(defProviders!=null&&!isDuplicate){let injectorType=container;deepForEachProvider(defProviders,provider=>{visitor(provider,injectorType)})}}else return!1;return defType!==container&&container.providers!==void 0}function deepForEachProvider(providers,fn){for(let provider of providers)isEnvironmentProviders(provider)&&(provider=provider.\u0275providers),Array.isArray(provider)?deepForEachProvider(provider,fn):fn(provider)}var USE_VALUE=getClosureSafeProperty({provide:String,useValue:getClosureSafeProperty});function isValueProvider(value){return value!==null&&typeof value=="object"&&USE_VALUE in value}function isExistingProvider(value){return!!(value&&value.useExisting)}function isFactoryProvider(value){return!!(value&&value.useFactory)}function isTypeProvider(value){return typeof value=="function"}function isClassProvider(value){return!!value.useClass}var INJECTOR_SCOPE=new InjectionToken(""),NOT_YET={},CIRCULAR={},NULL_INJECTOR;function getNullInjector(){return NULL_INJECTOR===void 0&&(NULL_INJECTOR=new NullInjector),NULL_INJECTOR}var EnvironmentInjector=class{},R3Injector=class extends EnvironmentInjector{parent;source;scopes;records=new Map;_ngOnDestroyHooks=new Set;_onDestroyHooks=[];get destroyed(){return this._destroyed}_destroyed=!1;injectorDefTypes;constructor(providers,parent,source,scopes){super(),this.parent=parent,this.source=source,this.scopes=scopes,forEachSingleProvider(providers,provider=>this.processProvider(provider)),this.records.set(INJECTOR$1,makeRecord(void 0,this)),scopes.has("environment")&&this.records.set(EnvironmentInjector,makeRecord(void 0,this));let record=this.records.get(INJECTOR_SCOPE);record!=null&&typeof record.value=="string"&&this.scopes.add(record.value),this.injectorDefTypes=new Set(this.get(INJECTOR_DEF_TYPES,EMPTY_ARRAY,{self:!0}))}retrieve(token,options){let flags=convertToBitFlags(options)||0;try{return this.get(token,THROW_IF_NOT_FOUND,flags)}catch(e){if(isNotFound(e))return e;throw e}}destroy(){assertNotDestroyed(this),this._destroyed=!0;let prevConsumer=setActiveConsumer(null);try{for(let service of this._ngOnDestroyHooks)service.ngOnDestroy();let onDestroyHooks=this._onDestroyHooks;this._onDestroyHooks=[];for(let hook of onDestroyHooks)hook()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),setActiveConsumer(prevConsumer)}}onDestroy(callback){return assertNotDestroyed(this),this._onDestroyHooks.push(callback),()=>this.removeOnDestroy(callback)}runInContext(fn){assertNotDestroyed(this);let previousInjector=setCurrentInjector(this),previousInjectImplementation=setInjectImplementation(void 0),prevInjectContext;try{return fn()}finally{setCurrentInjector(previousInjector),setInjectImplementation(previousInjectImplementation)}}get(token,notFoundValue=THROW_IF_NOT_FOUND,options){if(assertNotDestroyed(this),token.hasOwnProperty(NG_ENV_ID))return token[NG_ENV_ID](this);let flags=convertToBitFlags(options),prevInjectContext,previousInjector=setCurrentInjector(this),previousInjectImplementation=setInjectImplementation(void 0);try{if(!(flags&4)){let record=this.records.get(token);if(record===void 0){let def=couldBeInjectableType(token)&&getInjectableDef(token);def&&this.injectableDefInScope(def)?record=makeRecord(injectableDefOrInjectorDefFactory(token),NOT_YET):record=null,this.records.set(token,record)}if(record!=null)return this.hydrate(token,record,flags)}let nextInjector=flags&2?getNullInjector():this.parent;return notFoundValue=flags&8&¬FoundValue===THROW_IF_NOT_FOUND?null:notFoundValue,nextInjector.get(token,notFoundValue)}catch(error){let errorCode=getRuntimeErrorCode(error);throw errorCode===-200||errorCode===-201?new RuntimeError(errorCode,null):error}finally{setInjectImplementation(previousInjectImplementation),setCurrentInjector(previousInjector)}}resolveInjectorInitializers(){let prevConsumer=setActiveConsumer(null),previousInjector=setCurrentInjector(this),previousInjectImplementation=setInjectImplementation(void 0),prevInjectContext;try{let initializers=this.get(ENVIRONMENT_INITIALIZER,EMPTY_ARRAY,{self:!0});for(let initializer of initializers)initializer()}finally{setCurrentInjector(previousInjector),setInjectImplementation(previousInjectImplementation),setActiveConsumer(prevConsumer)}}toString(){let tokens=[],records=this.records;for(let token of records.keys())tokens.push(stringify(token));return`R3Injector[${tokens.join(", ")}]`}processProvider(provider){provider=resolveForwardRef(provider);let token=isTypeProvider(provider)?provider:resolveForwardRef(provider&&provider.provide),record=providerToRecord(provider);if(!isTypeProvider(provider)&&provider.multi===!0){let multiRecord=this.records.get(token);multiRecord||(multiRecord=makeRecord(void 0,NOT_YET,!0),multiRecord.factory=()=>injectArgs(multiRecord.multi),this.records.set(token,multiRecord)),token=provider,multiRecord.multi.push(provider)}this.records.set(token,record)}hydrate(token,record,flags){let prevConsumer=setActiveConsumer(null);try{if(record.value===CIRCULAR)throw cyclicDependencyError(stringify(token));return record.value===NOT_YET&&(record.value=CIRCULAR,record.value=record.factory(void 0,flags)),typeof record.value=="object"&&record.value&&hasOnDestroy(record.value)&&this._ngOnDestroyHooks.add(record.value),record.value}finally{setActiveConsumer(prevConsumer)}}injectableDefInScope(def){if(!def.providedIn)return!1;let providedIn=resolveForwardRef(def.providedIn);return typeof providedIn=="string"?providedIn==="any"||this.scopes.has(providedIn):this.injectorDefTypes.has(providedIn)}removeOnDestroy(callback){let destroyCBIdx=this._onDestroyHooks.indexOf(callback);destroyCBIdx!==-1&&this._onDestroyHooks.splice(destroyCBIdx,1)}};function injectableDefOrInjectorDefFactory(token){let injectableDef=getInjectableDef(token),factory=injectableDef!==null?injectableDef.factory:getFactoryDef(token);if(factory!==null)return factory;if(token instanceof InjectionToken)throw new RuntimeError(204,!1);if(token instanceof Function)return getUndecoratedInjectableFactory(token);throw new RuntimeError(204,!1)}function getUndecoratedInjectableFactory(token){if(token.length>0)throw new RuntimeError(204,!1);let inheritedInjectableDef=getInheritedInjectableDef(token);return inheritedInjectableDef!==null?()=>inheritedInjectableDef.factory(token):()=>new token}function providerToRecord(provider){if(isValueProvider(provider))return makeRecord(void 0,provider.useValue);{let factory=providerToFactory(provider);return makeRecord(factory,NOT_YET)}}function providerToFactory(provider,ngModuleType,providers){let factory;if(isTypeProvider(provider)){let unwrappedProvider=resolveForwardRef(provider);return getFactoryDef(unwrappedProvider)||injectableDefOrInjectorDefFactory(unwrappedProvider)}else if(isValueProvider(provider))factory=()=>resolveForwardRef(provider.useValue);else if(isFactoryProvider(provider))factory=()=>provider.useFactory(...injectArgs(provider.deps||[]));else if(isExistingProvider(provider))factory=(_,flags)=>\u0275\u0275inject(resolveForwardRef(provider.useExisting),flags!==void 0&&flags&8?8:void 0);else{let classRef=resolveForwardRef(provider&&(provider.useClass||provider.provide));if(hasDeps(provider))factory=()=>new classRef(...injectArgs(provider.deps));else return getFactoryDef(classRef)||injectableDefOrInjectorDefFactory(classRef)}return factory}function assertNotDestroyed(injector){if(injector.destroyed)throw new RuntimeError(205,!1)}function makeRecord(factory,value,multi=!1){return{factory,value,multi:multi?[]:void 0}}function hasDeps(value){return!!value.deps}function hasOnDestroy(value){return value!==null&&typeof value=="object"&&typeof value.ngOnDestroy=="function"}function couldBeInjectableType(value){return typeof value=="function"||typeof value=="object"&&value.ngMetadataName==="InjectionToken"}function forEachSingleProvider(providers,fn){for(let provider of providers)Array.isArray(provider)?forEachSingleProvider(provider,fn):provider&&isEnvironmentProviders(provider)?forEachSingleProvider(provider.\u0275providers,fn):fn(provider)}function runInInjectionContext(injector,fn){let internalInjector;injector instanceof R3Injector?(assertNotDestroyed(injector),internalInjector=injector):internalInjector=new RetrievingInjector(injector);let prevInjectorProfilerContext,prevInjector=setCurrentInjector(internalInjector),previousInjectImplementation=setInjectImplementation(void 0);try{return fn()}finally{setCurrentInjector(prevInjector),setInjectImplementation(previousInjectImplementation)}}function isInInjectionContext(){return getInjectImplementation()!==void 0||getCurrentInjector()!=null}var HOST=0,TVIEW=1,FLAGS=2,PARENT=3,NEXT=4,T_HOST=5,HYDRATION=6,CLEANUP=7,CONTEXT=8,INJECTOR=9,ENVIRONMENT=10,RENDERER=11,CHILD_HEAD=12,CHILD_TAIL=13,DECLARATION_VIEW=14,DECLARATION_COMPONENT_VIEW=15,DECLARATION_LCONTAINER=16,PREORDER_HOOK_FLAGS=17,QUERIES=18,ID=19,EMBEDDED_VIEW_INJECTOR=20,ON_DESTROY_HOOKS=21,EFFECTS_TO_SCHEDULE=22,EFFECTS=23,REACTIVE_TEMPLATE_CONSUMER=24,AFTER_RENDER_SEQUENCES_TO_ADD=25,HEADER_OFFSET=26,TYPE=1,DEHYDRATED_VIEWS=6,NATIVE=7,VIEW_REFS=8,MOVED_VIEWS=9,CONTAINER_HEADER_OFFSET=10;function isLView(value){return Array.isArray(value)&&typeof value[TYPE]=="object"}function isLContainer(value){return Array.isArray(value)&&value[TYPE]===!0}function isContentQueryHost(tNode){return(tNode.flags&4)!==0}function isComponentHost(tNode){return tNode.componentOffset>-1}function isDirectiveHost(tNode){return(tNode.flags&1)===1}function isComponentDef(def){return!!def.template}function isRootView(target){return(target[FLAGS]&512)!==0}function isDestroyed(lView){return(lView[FLAGS]&256)===256}var SVG_NAMESPACE="svg",MATH_ML_NAMESPACE="math";function unwrapRNode(value){for(;Array.isArray(value);)value=value[HOST];return value}function getNativeByIndex(index,lView){return unwrapRNode(lView[index])}function getNativeByTNode(tNode,lView){return unwrapRNode(lView[tNode.index])}function getTNode(tView,index){return tView.data[index]}function load(view,index){return view[index]}function store(tView,lView,index,value){index>=tView.data.length&&(tView.data[index]=null,tView.blueprint[index]=null),lView[index]=value}function getComponentLViewByIndex(nodeIndex,hostView){let slotValue=hostView[nodeIndex];return isLView(slotValue)?slotValue:slotValue[HOST]}function isCreationMode(view){return(view[FLAGS]&4)===4}function viewAttachedToChangeDetector(view){return(view[FLAGS]&128)===128}function viewAttachedToContainer(view){return isLContainer(view[PARENT])}function getConstant(consts,index){return index==null?null:consts[index]}function resetPreOrderHookFlags(lView){lView[PREORDER_HOOK_FLAGS]=0}function markViewForRefresh(lView){lView[FLAGS]&1024||(lView[FLAGS]|=1024,viewAttachedToChangeDetector(lView)&&markAncestorsForTraversal(lView))}function walkUpViews(nestingLevel,currentView){for(;nestingLevel>0;)currentView=currentView[DECLARATION_VIEW],nestingLevel--;return currentView}function requiresRefreshOrTraversal(lView){return!!(lView[FLAGS]&9216||lView[REACTIVE_TEMPLATE_CONSUMER]?.dirty)}function updateAncestorTraversalFlagsOnAttach(lView){lView[ENVIRONMENT].changeDetectionScheduler?.notify(8),lView[FLAGS]&64&&(lView[FLAGS]|=1024),requiresRefreshOrTraversal(lView)&&markAncestorsForTraversal(lView)}function markAncestorsForTraversal(lView){lView[ENVIRONMENT].changeDetectionScheduler?.notify(0);let parent=getLViewParent(lView);for(;parent!==null&&!(parent[FLAGS]&8192||(parent[FLAGS]|=8192,!viewAttachedToChangeDetector(parent)));)parent=getLViewParent(parent)}function storeLViewOnDestroy(lView,onDestroyCallback){if(isDestroyed(lView))throw new RuntimeError(911,!1);lView[ON_DESTROY_HOOKS]===null&&(lView[ON_DESTROY_HOOKS]=[]),lView[ON_DESTROY_HOOKS].push(onDestroyCallback)}function removeLViewOnDestroy(lView,onDestroyCallback){if(lView[ON_DESTROY_HOOKS]===null)return;let destroyCBIdx=lView[ON_DESTROY_HOOKS].indexOf(onDestroyCallback);destroyCBIdx!==-1&&lView[ON_DESTROY_HOOKS].splice(destroyCBIdx,1)}function getLViewParent(lView){let parent=lView[PARENT];return isLContainer(parent)?parent[PARENT]:parent}function getOrCreateLViewCleanup(view){return view[CLEANUP]??=[]}function getOrCreateTViewCleanup(tView){return tView.cleanup??=[]}function storeCleanupWithContext(tView,lView,context2,cleanupFn){let lCleanup=getOrCreateLViewCleanup(lView);lCleanup.push(context2),tView.firstCreatePass&&getOrCreateTViewCleanup(tView).push(cleanupFn,lCleanup.length-1)}var instructionState={lFrame:createLFrame(null),bindingsEnabled:!0,skipHydrationRootTNode:null},CheckNoChangesMode=(function(CheckNoChangesMode2){return CheckNoChangesMode2[CheckNoChangesMode2.Off=0]="Off",CheckNoChangesMode2[CheckNoChangesMode2.Exhaustive=1]="Exhaustive",CheckNoChangesMode2[CheckNoChangesMode2.OnlyDirtyViews=2]="OnlyDirtyViews",CheckNoChangesMode2})(CheckNoChangesMode||{}),_checkNoChangesMode=0,_isRefreshingViews=!1;function getElementDepthCount(){return instructionState.lFrame.elementDepthCount}function increaseElementDepthCount(){instructionState.lFrame.elementDepthCount++}function decreaseElementDepthCount(){instructionState.lFrame.elementDepthCount--}function getBindingsEnabled(){return instructionState.bindingsEnabled}function isInSkipHydrationBlock(){return instructionState.skipHydrationRootTNode!==null}function isSkipHydrationRootTNode(tNode){return instructionState.skipHydrationRootTNode===tNode}function leaveSkipHydrationBlock(){instructionState.skipHydrationRootTNode=null}function getLView(){return instructionState.lFrame.lView}function getTView(){return instructionState.lFrame.tView}function \u0275\u0275restoreView(viewToRestore){return instructionState.lFrame.contextLView=viewToRestore,viewToRestore[CONTEXT]}function \u0275\u0275resetView(value){return instructionState.lFrame.contextLView=null,value}function getCurrentTNode(){let currentTNode=getCurrentTNodePlaceholderOk();for(;currentTNode!==null&¤tTNode.type===64;)currentTNode=currentTNode.parent;return currentTNode}function getCurrentTNodePlaceholderOk(){return instructionState.lFrame.currentTNode}function getCurrentParentTNode(){let lFrame=instructionState.lFrame,currentTNode=lFrame.currentTNode;return lFrame.isParent?currentTNode:currentTNode.parent}function setCurrentTNode(tNode,isParent){let lFrame=instructionState.lFrame;lFrame.currentTNode=tNode,lFrame.isParent=isParent}function isCurrentTNodeParent(){return instructionState.lFrame.isParent}function setCurrentTNodeAsNotParent(){instructionState.lFrame.isParent=!1}function getContextLView(){return instructionState.lFrame.contextLView}function setIsInCheckNoChangesMode(mode){throwError2("Must never be called in production mode"),_checkNoChangesMode=mode}function isRefreshingViews(){return _isRefreshingViews}function setIsRefreshingViews(mode){let prev=_isRefreshingViews;return _isRefreshingViews=mode,prev}function getBindingRoot(){let lFrame=instructionState.lFrame,index=lFrame.bindingRootIndex;return index===-1&&(index=lFrame.bindingRootIndex=lFrame.tView.bindingStartIndex),index}function getBindingIndex(){return instructionState.lFrame.bindingIndex}function setBindingIndex(value){return instructionState.lFrame.bindingIndex=value}function nextBindingIndex(){return instructionState.lFrame.bindingIndex++}function incrementBindingIndex(count){let lFrame=instructionState.lFrame,index=lFrame.bindingIndex;return lFrame.bindingIndex=lFrame.bindingIndex+count,index}function isInI18nBlock(){return instructionState.lFrame.inI18n}function setBindingRootForHostBindings(bindingRootIndex,currentDirectiveIndex){let lFrame=instructionState.lFrame;lFrame.bindingIndex=lFrame.bindingRootIndex=bindingRootIndex,setCurrentDirectiveIndex(currentDirectiveIndex)}function getCurrentDirectiveIndex(){return instructionState.lFrame.currentDirectiveIndex}function setCurrentDirectiveIndex(currentDirectiveIndex){instructionState.lFrame.currentDirectiveIndex=currentDirectiveIndex}function getCurrentDirectiveDef(tData){let currentDirectiveIndex=instructionState.lFrame.currentDirectiveIndex;return currentDirectiveIndex===-1?null:tData[currentDirectiveIndex]}function getCurrentQueryIndex(){return instructionState.lFrame.currentQueryIndex}function setCurrentQueryIndex(value){instructionState.lFrame.currentQueryIndex=value}function getDeclarationTNode(lView){let tView=lView[TVIEW];return tView.type===2?tView.declTNode:tView.type===1?lView[T_HOST]:null}function enterDI(lView,tNode,flags){if(flags&4){let parentTNode=tNode,parentLView=lView;for(;parentTNode=parentTNode.parent,parentTNode===null&&!(flags&1);)if(parentTNode=getDeclarationTNode(parentLView),parentTNode===null||(parentLView=parentLView[DECLARATION_VIEW],parentTNode.type&10))break;if(parentTNode===null)return!1;tNode=parentTNode,lView=parentLView}let lFrame=instructionState.lFrame=allocLFrame();return lFrame.currentTNode=tNode,lFrame.lView=lView,!0}function enterView(newView){let newLFrame=allocLFrame(),tView=newView[TVIEW];instructionState.lFrame=newLFrame,newLFrame.currentTNode=tView.firstChild,newLFrame.lView=newView,newLFrame.tView=tView,newLFrame.contextLView=newView,newLFrame.bindingIndex=tView.bindingStartIndex,newLFrame.inI18n=!1}function allocLFrame(){let currentLFrame=instructionState.lFrame,childLFrame=currentLFrame===null?null:currentLFrame.child;return childLFrame===null?createLFrame(currentLFrame):childLFrame}function createLFrame(parent){let lFrame={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,child:null,inI18n:!1};return parent!==null&&(parent.child=lFrame),lFrame}function leaveViewLight(){let oldLFrame=instructionState.lFrame;return instructionState.lFrame=oldLFrame.parent,oldLFrame.currentTNode=null,oldLFrame.lView=null,oldLFrame}var leaveDI=leaveViewLight;function leaveView(){let oldLFrame=leaveViewLight();oldLFrame.isParent=!0,oldLFrame.tView=null,oldLFrame.selectedIndex=-1,oldLFrame.contextLView=null,oldLFrame.elementDepthCount=0,oldLFrame.currentDirectiveIndex=-1,oldLFrame.currentNamespace=null,oldLFrame.bindingRootIndex=-1,oldLFrame.bindingIndex=-1,oldLFrame.currentQueryIndex=0}function nextContextImpl(level){return(instructionState.lFrame.contextLView=walkUpViews(level,instructionState.lFrame.contextLView))[CONTEXT]}function getSelectedIndex(){return instructionState.lFrame.selectedIndex}function setSelectedIndex(index){instructionState.lFrame.selectedIndex=index}function getSelectedTNode(){let lFrame=instructionState.lFrame;return getTNode(lFrame.tView,lFrame.selectedIndex)}function \u0275\u0275namespaceSVG(){instructionState.lFrame.currentNamespace=SVG_NAMESPACE}function \u0275\u0275namespaceHTML(){namespaceHTMLInternal()}function namespaceHTMLInternal(){instructionState.lFrame.currentNamespace=null}function getNamespace(){return instructionState.lFrame.currentNamespace}var _wasLastNodeCreated=!0;function wasLastNodeCreated(){return _wasLastNodeCreated}function lastNodeWasCreated(flag){_wasLastNodeCreated=flag}var registry={elements:void 0};function getAnimationElementRemovalRegistry(){return registry}function createInjector(defType,parent=null,additionalProviders=null,name){let injector=createInjectorWithoutInjectorInstances(defType,parent,additionalProviders,name);return injector.resolveInjectorInitializers(),injector}function createInjectorWithoutInjectorInstances(defType,parent=null,additionalProviders=null,name,scopes=new Set){let providers=[additionalProviders||EMPTY_ARRAY,importProvidersFrom(defType)];return name=name||(typeof defType=="object"?void 0:stringify(defType)),new R3Injector(providers,parent||getNullInjector(),name||null,scopes)}var Injector=class _Injector{static THROW_IF_NOT_FOUND=THROW_IF_NOT_FOUND;static NULL=new NullInjector;static create(options,parent){if(Array.isArray(options))return createInjector({name:""},parent,options,"");{let name=options.name??"";return createInjector({name},options.parent,options.providers,name)}}static \u0275prov=\u0275\u0275defineInjectable({token:_Injector,providedIn:"any",factory:()=>\u0275\u0275inject(INJECTOR$1)});static __NG_ELEMENT_ID__=-1},DOCUMENT=new InjectionToken(""),DestroyRef=(()=>{class DestroyRef3{static __NG_ELEMENT_ID__=injectDestroyRef;static __NG_ENV_ID__=injector=>injector}return DestroyRef3})(),NodeInjectorDestroyRef=class extends DestroyRef{_lView;constructor(_lView){super(),this._lView=_lView}get destroyed(){return isDestroyed(this._lView)}onDestroy(callback){let lView=this._lView;return storeLViewOnDestroy(lView,callback),()=>removeLViewOnDestroy(lView,callback)}};function injectDestroyRef(){return new NodeInjectorDestroyRef(getLView())}var ErrorHandler=class{_console=console;handleError(error){this._console.error("ERROR",error)}},INTERNAL_APPLICATION_ERROR_HANDLER=new InjectionToken("",{providedIn:"root",factory:()=>{let injector=inject2(EnvironmentInjector),userErrorHandler;return e=>{injector.destroyed&&!userErrorHandler?setTimeout(()=>{throw e}):(userErrorHandler??=injector.get(ErrorHandler),userErrorHandler.handleError(e))}}}),errorHandlerEnvironmentInitializer={provide:ENVIRONMENT_INITIALIZER,useValue:()=>void inject2(ErrorHandler),multi:!0};function isSignal(value){return typeof value=="function"&&value[SIGNAL]!==void 0}function signal(initialValue,options){let[get,set,update3]=createSignal(initialValue,options?.equal),signalFn=get,node=signalFn[SIGNAL];return signalFn.set=set,signalFn.update=update3,signalFn.asReadonly=signalAsReadonlyFn.bind(signalFn),signalFn}function signalAsReadonlyFn(){let node=this[SIGNAL];if(node.readonlyFn===void 0){let readonlyFn=()=>this();readonlyFn[SIGNAL]=node,node.readonlyFn=readonlyFn}return node.readonlyFn}function isWritableSignal(value){return isSignal(value)&&typeof value.set=="function"}var ChangeDetectionScheduler=class{},ZONELESS_ENABLED=new InjectionToken("",{providedIn:"root",factory:()=>!1});var ZONELESS_SCHEDULER_DISABLED=new InjectionToken(""),SCHEDULE_IN_ROOT_ZONE=new InjectionToken("");var ViewContext=(()=>{class ViewContext2{view;node;constructor(view,node){this.view=view,this.node=node}static __NG_ELEMENT_ID__=injectViewContext}return ViewContext2})();function injectViewContext(){return new ViewContext(getLView(),getCurrentTNode())}var PendingTasksInternal=(()=>{class PendingTasksInternal2{taskId=0;pendingTasks=new Set;destroyed=!1;pendingTask=new BehaviorSubject(!1);get hasPendingTasks(){return this.destroyed?!1:this.pendingTask.value}get hasPendingTasksObservable(){return this.destroyed?new Observable(subscriber=>{subscriber.next(!1),subscriber.complete()}):this.pendingTask}add(){!this.hasPendingTasks&&!this.destroyed&&this.pendingTask.next(!0);let taskId=this.taskId++;return this.pendingTasks.add(taskId),taskId}has(taskId){return this.pendingTasks.has(taskId)}remove(taskId){this.pendingTasks.delete(taskId),this.pendingTasks.size===0&&this.hasPendingTasks&&this.pendingTask.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks&&this.pendingTask.next(!1),this.destroyed=!0,this.pendingTask.unsubscribe()}static \u0275prov=\u0275\u0275defineInjectable({token:PendingTasksInternal2,providedIn:"root",factory:()=>new PendingTasksInternal2})}return PendingTasksInternal2})(),PendingTasks=(()=>{class PendingTasks2{internalPendingTasks=inject2(PendingTasksInternal);scheduler=inject2(ChangeDetectionScheduler);errorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);add(){let taskId=this.internalPendingTasks.add();return()=>{this.internalPendingTasks.has(taskId)&&(this.scheduler.notify(11),this.internalPendingTasks.remove(taskId))}}run(fn){let removeTask=this.add();fn().catch(this.errorHandler).finally(removeTask)}static \u0275prov=\u0275\u0275defineInjectable({token:PendingTasks2,providedIn:"root",factory:()=>new PendingTasks2})}return PendingTasks2})();function noop2(...args){}var EffectScheduler=(()=>{class EffectScheduler2{static \u0275prov=\u0275\u0275defineInjectable({token:EffectScheduler2,providedIn:"root",factory:()=>new ZoneAwareEffectScheduler})}return EffectScheduler2})(),ZoneAwareEffectScheduler=class{dirtyEffectCount=0;queues=new Map;add(handle){this.enqueue(handle),this.schedule(handle)}schedule(handle){handle.dirty&&this.dirtyEffectCount++}remove(handle){let zone=handle.zone,queue2=this.queues.get(zone);queue2.has(handle)&&(queue2.delete(handle),handle.dirty&&this.dirtyEffectCount--)}enqueue(handle){let zone=handle.zone;this.queues.has(zone)||this.queues.set(zone,new Set);let queue2=this.queues.get(zone);queue2.has(handle)||queue2.add(handle)}flush(){for(;this.dirtyEffectCount>0;){let ranOneEffect=!1;for(let[zone,queue2]of this.queues)zone===null?ranOneEffect||=this.flushQueue(queue2):ranOneEffect||=zone.run(()=>this.flushQueue(queue2));ranOneEffect||(this.dirtyEffectCount=0)}}flushQueue(queue2){let ranOneEffect=!1;for(let handle of queue2)handle.dirty&&(this.dirtyEffectCount--,ranOneEffect=!0,handle.run());return ranOneEffect}};function noSideEffects(fn){return{toString:fn}.toString()}var PARAMETERS="__parameters__";function makeMetadataCtor(props2){return function(...args){if(props2){let values=props2(...args);for(let propName in values)this[propName]=values[propName]}}}function makeParamDecorator(name,props2,parentClass){return noSideEffects(()=>{let metaCtor=makeMetadataCtor(props2);function ParamDecoratorFactory(...args){if(this instanceof ParamDecoratorFactory)return metaCtor.apply(this,args),this;let annotationInstance=new ParamDecoratorFactory(...args);return ParamDecorator.annotation=annotationInstance,ParamDecorator;function ParamDecorator(cls,unusedKey,index){let parameters=cls.hasOwnProperty(PARAMETERS)?cls[PARAMETERS]:Object.defineProperty(cls,PARAMETERS,{value:[]})[PARAMETERS];for(;parameters.length<=index;)parameters.push(null);return(parameters[index]=parameters[index]||[]).push(annotationInstance),cls}}return ParamDecoratorFactory.prototype.ngMetadataName=name,ParamDecoratorFactory.annotationCls=ParamDecoratorFactory,ParamDecoratorFactory})}var Inject=attachInjectFlag(makeParamDecorator("Inject",token=>({token})),-1),Optional=attachInjectFlag(makeParamDecorator("Optional"),8);var SkipSelf=attachInjectFlag(makeParamDecorator("SkipSelf"),4);function getCompilerFacade(request){let globalNg=_global.ng;if(globalNg&&globalNg.\u0275compilerFacade)return globalNg.\u0275compilerFacade;throw new Error("JIT compiler unavailable")}function isType(v){return typeof v=="function"}var SimpleChange=class{previousValue;currentValue;firstChange;constructor(previousValue,currentValue,firstChange){this.previousValue=previousValue,this.currentValue=currentValue,this.firstChange=firstChange}isFirstChange(){return this.firstChange}};function applyValueToInputField(instance,inputSignalNode,privateName,value){inputSignalNode!==null?inputSignalNode.applyValueToInputSignal(inputSignalNode,value):instance[privateName]=value}var \u0275\u0275NgOnChangesFeature=(()=>{let \u0275\u0275NgOnChangesFeatureImpl=()=>NgOnChangesFeatureImpl;return \u0275\u0275NgOnChangesFeatureImpl.ngInherit=!0,\u0275\u0275NgOnChangesFeatureImpl})();function NgOnChangesFeatureImpl(definition){return definition.type.prototype.ngOnChanges&&(definition.setInput=ngOnChangesSetInput),rememberChangeHistoryAndInvokeOnChangesHook}function rememberChangeHistoryAndInvokeOnChangesHook(){let simpleChangesStore=getSimpleChangesStore(this),current=simpleChangesStore?.current;if(current){let previous=simpleChangesStore.previous;if(previous===EMPTY_OBJ)simpleChangesStore.previous=current;else for(let key in current)previous[key]=current[key];simpleChangesStore.current=null,this.ngOnChanges(current)}}function ngOnChangesSetInput(instance,inputSignalNode,value,publicName,privateName){let declaredName=this.declaredInputs[publicName],simpleChangesStore=getSimpleChangesStore(instance)||setSimpleChangesStore(instance,{previous:EMPTY_OBJ,current:null}),current=simpleChangesStore.current||(simpleChangesStore.current={}),previous=simpleChangesStore.previous,previousChange=previous[declaredName];current[declaredName]=new SimpleChange(previousChange&&previousChange.currentValue,value,previous===EMPTY_OBJ),applyValueToInputField(instance,inputSignalNode,privateName,value)}var SIMPLE_CHANGES_STORE="__ngSimpleChanges__";function getSimpleChangesStore(instance){return instance[SIMPLE_CHANGES_STORE]||null}function setSimpleChangesStore(instance,store2){return instance[SIMPLE_CHANGES_STORE]=store2}var profilerCallbacks=[];var profiler=function(event,instance=null,eventFn){for(let i=0;i<profilerCallbacks.length;i++){let profilerCallback=profilerCallbacks[i];profilerCallback(event,instance,eventFn)}};function registerPreOrderHooks(directiveIndex,directiveDef,tView){let{ngOnChanges,ngOnInit,ngDoCheck}=directiveDef.type.prototype;if(ngOnChanges){let wrappedOnChanges=NgOnChangesFeatureImpl(directiveDef);(tView.preOrderHooks??=[]).push(directiveIndex,wrappedOnChanges),(tView.preOrderCheckHooks??=[]).push(directiveIndex,wrappedOnChanges)}ngOnInit&&(tView.preOrderHooks??=[]).push(0-directiveIndex,ngOnInit),ngDoCheck&&((tView.preOrderHooks??=[]).push(directiveIndex,ngDoCheck),(tView.preOrderCheckHooks??=[]).push(directiveIndex,ngDoCheck))}function registerPostOrderHooks(tView,tNode){for(let i=tNode.directiveStart,end=tNode.directiveEnd;i<end;i++){let lifecycleHooks=tView.data[i].type.prototype,{ngAfterContentInit,ngAfterContentChecked,ngAfterViewInit,ngAfterViewChecked,ngOnDestroy}=lifecycleHooks;ngAfterContentInit&&(tView.contentHooks??=[]).push(-i,ngAfterContentInit),ngAfterContentChecked&&((tView.contentHooks??=[]).push(i,ngAfterContentChecked),(tView.contentCheckHooks??=[]).push(i,ngAfterContentChecked)),ngAfterViewInit&&(tView.viewHooks??=[]).push(-i,ngAfterViewInit),ngAfterViewChecked&&((tView.viewHooks??=[]).push(i,ngAfterViewChecked),(tView.viewCheckHooks??=[]).push(i,ngAfterViewChecked)),ngOnDestroy!=null&&(tView.destroyHooks??=[]).push(i,ngOnDestroy)}}function executeCheckHooks(lView,hooks,nodeIndex){callHooks(lView,hooks,3,nodeIndex)}function executeInitAndCheckHooks(lView,hooks,initPhase,nodeIndex){(lView[FLAGS]&3)===initPhase&&callHooks(lView,hooks,initPhase,nodeIndex)}function incrementInitPhaseFlags(lView,initPhase){let flags=lView[FLAGS];(flags&3)===initPhase&&(flags&=16383,flags+=1,lView[FLAGS]=flags)}function callHooks(currentView,arr,initPhase,currentNodeIndex){let startIndex=currentNodeIndex!==void 0?currentView[PREORDER_HOOK_FLAGS]&65535:0,nodeIndexLimit=currentNodeIndex??-1,max=arr.length-1,lastNodeIndexFound=0;for(let i=startIndex;i<max;i++)if(typeof arr[i+1]=="number"){if(lastNodeIndexFound=arr[i],currentNodeIndex!=null&&lastNodeIndexFound>=currentNodeIndex)break}else arr[i]<0&&(currentView[PREORDER_HOOK_FLAGS]+=65536),(lastNodeIndexFound<nodeIndexLimit||nodeIndexLimit==-1)&&(callHook(currentView,initPhase,arr,i),currentView[PREORDER_HOOK_FLAGS]=(currentView[PREORDER_HOOK_FLAGS]&4294901760)+i+2),i++}function callHookInternal(directive,hook){profiler(4,directive,hook);let prevConsumer=setActiveConsumer(null);try{hook.call(directive)}finally{setActiveConsumer(prevConsumer),profiler(5,directive,hook)}}function callHook(currentView,initPhase,arr,i){let isInitHook=arr[i]<0,hook=arr[i+1],directiveIndex=isInitHook?-arr[i]:arr[i],directive=currentView[directiveIndex];isInitHook?currentView[FLAGS]>>14<currentView[PREORDER_HOOK_FLAGS]>>16&&(currentView[FLAGS]&3)===initPhase&&(currentView[FLAGS]+=16384,callHookInternal(directive,hook)):callHookInternal(directive,hook)}var NO_PARENT_INJECTOR=-1,NodeInjectorFactory=class{factory;name;injectImpl;resolving=!1;canSeeViewProviders;multi;componentProviders;index;providerFactory;constructor(factory,isViewProvider,injectImplementation,name){this.factory=factory,this.name=name,this.canSeeViewProviders=isViewProvider,this.injectImpl=injectImplementation}};function hasClassInput(tNode){return(tNode.flags&8)!==0}function hasStyleInput(tNode){return(tNode.flags&16)!==0}function setUpAttributes(renderer,native,attrs){let i=0;for(;i<attrs.length;){let value=attrs[i];if(typeof value=="number"){if(value!==0)break;i++;let namespaceURI=attrs[i++],attrName=attrs[i++],attrVal=attrs[i++];renderer.setAttribute(native,attrName,attrVal,namespaceURI)}else{let attrName=value,attrVal=attrs[++i];isAnimationProp(attrName)?renderer.setProperty(native,attrName,attrVal):renderer.setAttribute(native,attrName,attrVal),i++}}return i}function isNameOnlyAttributeMarker(marker){return marker===3||marker===4||marker===6}function isAnimationProp(name){return name.charCodeAt(0)===64}function mergeHostAttrs(dst,src){if(!(src===null||src.length===0))if(dst===null||dst.length===0)dst=src.slice();else{let srcMarker=-1;for(let i=0;i<src.length;i++){let item=src[i];typeof item=="number"?srcMarker=item:srcMarker===0||(srcMarker===-1||srcMarker===2?mergeHostAttribute(dst,srcMarker,item,null,src[++i]):mergeHostAttribute(dst,srcMarker,item,null,null))}}return dst}function mergeHostAttribute(dst,marker,key1,key2,value){let i=0,markerInsertPosition=dst.length;if(marker===-1)markerInsertPosition=-1;else for(;i<dst.length;){let dstValue=dst[i++];if(typeof dstValue=="number"){if(dstValue===marker){markerInsertPosition=-1;break}else if(dstValue>marker){markerInsertPosition=i-1;break}}}for(;i<dst.length;){let item=dst[i];if(typeof item=="number")break;if(item===key1){value!==null&&(dst[i+1]=value);return}i++,value!==null&&i++}markerInsertPosition!==-1&&(dst.splice(markerInsertPosition,0,marker),i=markerInsertPosition+1),dst.splice(i++,0,key1),value!==null&&dst.splice(i++,0,value)}function hasParentInjector(parentLocation){return parentLocation!==NO_PARENT_INJECTOR}function getParentInjectorIndex(parentLocation){return parentLocation&32767}function getParentInjectorViewOffset(parentLocation){return parentLocation>>16}function getParentInjectorView(location2,startView){let viewOffset=getParentInjectorViewOffset(location2),parentView=startView;for(;viewOffset>0;)parentView=parentView[DECLARATION_VIEW],viewOffset--;return parentView}var includeViewProviders=!0;function setIncludeViewProviders(v){let oldValue=includeViewProviders;return includeViewProviders=v,oldValue}var BLOOM_SIZE=256,BLOOM_MASK=BLOOM_SIZE-1,BLOOM_BUCKET_BITS=5,nextNgElementId=0,NOT_FOUND2={};function bloomAdd(injectorIndex,tView,type2){let id;typeof type2=="string"?id=type2.charCodeAt(0)||0:type2.hasOwnProperty(NG_ELEMENT_ID)&&(id=type2[NG_ELEMENT_ID]),id==null&&(id=type2[NG_ELEMENT_ID]=nextNgElementId++);let bloomHash=id&BLOOM_MASK,mask=1<<bloomHash;tView.data[injectorIndex+(bloomHash>>BLOOM_BUCKET_BITS)]|=mask}function getOrCreateNodeInjectorForNode(tNode,lView){let existingInjectorIndex=getInjectorIndex(tNode,lView);if(existingInjectorIndex!==-1)return existingInjectorIndex;let tView=lView[TVIEW];tView.firstCreatePass&&(tNode.injectorIndex=lView.length,insertBloom(tView.data,tNode),insertBloom(lView,null),insertBloom(tView.blueprint,null));let parentLoc=getParentInjectorLocation(tNode,lView),injectorIndex=tNode.injectorIndex;if(hasParentInjector(parentLoc)){let parentIndex=getParentInjectorIndex(parentLoc),parentLView=getParentInjectorView(parentLoc,lView),parentData=parentLView[TVIEW].data;for(let i=0;i<8;i++)lView[injectorIndex+i]=parentLView[parentIndex+i]|parentData[parentIndex+i]}return lView[injectorIndex+8]=parentLoc,injectorIndex}function insertBloom(arr,footer){arr.push(0,0,0,0,0,0,0,0,footer)}function getInjectorIndex(tNode,lView){return tNode.injectorIndex===-1||tNode.parent&&tNode.parent.injectorIndex===tNode.injectorIndex||lView[tNode.injectorIndex+8]===null?-1:tNode.injectorIndex}function getParentInjectorLocation(tNode,lView){if(tNode.parent&&tNode.parent.injectorIndex!==-1)return tNode.parent.injectorIndex;let declarationViewOffset=0,parentTNode=null,lViewCursor=lView;for(;lViewCursor!==null;){if(parentTNode=getTNodeFromLView(lViewCursor),parentTNode===null)return NO_PARENT_INJECTOR;if(declarationViewOffset++,lViewCursor=lViewCursor[DECLARATION_VIEW],parentTNode.injectorIndex!==-1)return parentTNode.injectorIndex|declarationViewOffset<<16}return NO_PARENT_INJECTOR}function diPublicInInjector(injectorIndex,tView,token){bloomAdd(injectorIndex,tView,token)}function injectAttributeImpl(tNode,attrNameToInject){if(attrNameToInject==="class")return tNode.classes;if(attrNameToInject==="style")return tNode.styles;let attrs=tNode.attrs;if(attrs){let attrsLength=attrs.length,i=0;for(;i<attrsLength;){let value=attrs[i];if(isNameOnlyAttributeMarker(value))break;if(value===0)i=i+2;else if(typeof value=="number")for(i++;i<attrsLength&&typeof attrs[i]=="string";)i++;else{if(value===attrNameToInject)return attrs[i+1];i=i+2}}}return null}function notFoundValueOrThrow(notFoundValue,token,flags){if(flags&8||notFoundValue!==void 0)return notFoundValue;throwProviderNotFoundError(token,"NodeInjector")}function lookupTokenUsingModuleInjector(lView,token,flags,notFoundValue){if(flags&8&¬FoundValue===void 0&&(notFoundValue=null),(flags&3)===0){let moduleInjector=lView[INJECTOR],previousInjectImplementation=setInjectImplementation(void 0);try{return moduleInjector?moduleInjector.get(token,notFoundValue,flags&8):injectRootLimpMode(token,notFoundValue,flags&8)}finally{setInjectImplementation(previousInjectImplementation)}}return notFoundValueOrThrow(notFoundValue,token,flags)}function getOrCreateInjectable(tNode,lView,token,flags=0,notFoundValue){if(tNode!==null){if(lView[FLAGS]&2048&&!(flags&2)){let embeddedInjectorValue=lookupTokenUsingEmbeddedInjector(tNode,lView,token,flags,NOT_FOUND2);if(embeddedInjectorValue!==NOT_FOUND2)return embeddedInjectorValue}let value=lookupTokenUsingNodeInjector(tNode,lView,token,flags,NOT_FOUND2);if(value!==NOT_FOUND2)return value}return lookupTokenUsingModuleInjector(lView,token,flags,notFoundValue)}function lookupTokenUsingNodeInjector(tNode,lView,token,flags,notFoundValue){let bloomHash=bloomHashBitOrFactory(token);if(typeof bloomHash=="function"){if(!enterDI(lView,tNode,flags))return flags&1?notFoundValueOrThrow(notFoundValue,token,flags):lookupTokenUsingModuleInjector(lView,token,flags,notFoundValue);try{let value;if(value=bloomHash(flags),value==null&&!(flags&8))throwProviderNotFoundError(token);else return value}finally{leaveDI()}}else if(typeof bloomHash=="number"){let previousTView=null,injectorIndex=getInjectorIndex(tNode,lView),parentLocation=NO_PARENT_INJECTOR,hostTElementNode=flags&1?lView[DECLARATION_COMPONENT_VIEW][T_HOST]:null;for((injectorIndex===-1||flags&4)&&(parentLocation=injectorIndex===-1?getParentInjectorLocation(tNode,lView):lView[injectorIndex+8],parentLocation===NO_PARENT_INJECTOR||!shouldSearchParent(flags,!1)?injectorIndex=-1:(previousTView=lView[TVIEW],injectorIndex=getParentInjectorIndex(parentLocation),lView=getParentInjectorView(parentLocation,lView)));injectorIndex!==-1;){let tView=lView[TVIEW];if(bloomHasToken(bloomHash,injectorIndex,tView.data)){let instance=searchTokensOnInjector(injectorIndex,lView,token,previousTView,flags,hostTElementNode);if(instance!==NOT_FOUND2)return instance}parentLocation=lView[injectorIndex+8],parentLocation!==NO_PARENT_INJECTOR&&shouldSearchParent(flags,lView[TVIEW].data[injectorIndex+8]===hostTElementNode)&&bloomHasToken(bloomHash,injectorIndex,lView)?(previousTView=tView,injectorIndex=getParentInjectorIndex(parentLocation),lView=getParentInjectorView(parentLocation,lView)):injectorIndex=-1}}return notFoundValue}function searchTokensOnInjector(injectorIndex,lView,token,previousTView,flags,hostTElementNode){let currentTView=lView[TVIEW],tNode=currentTView.data[injectorIndex+8],canAccessViewProviders=previousTView==null?isComponentHost(tNode)&&includeViewProviders:previousTView!=currentTView&&(tNode.type&3)!==0,isHostSpecialCase=flags&1&&hostTElementNode===tNode,injectableIdx=locateDirectiveOrProvider(tNode,currentTView,token,canAccessViewProviders,isHostSpecialCase);return injectableIdx!==null?getNodeInjectable(lView,currentTView,injectableIdx,tNode,flags):NOT_FOUND2}function locateDirectiveOrProvider(tNode,tView,token,canAccessViewProviders,isHostSpecialCase){let nodeProviderIndexes=tNode.providerIndexes,tInjectables=tView.data,injectablesStart=nodeProviderIndexes&1048575,directivesStart=tNode.directiveStart,directiveEnd=tNode.directiveEnd,cptViewProvidersCount=nodeProviderIndexes>>20,startingIndex=canAccessViewProviders?injectablesStart:injectablesStart+cptViewProvidersCount,endIndex=isHostSpecialCase?injectablesStart+cptViewProvidersCount:directiveEnd;for(let i=startingIndex;i<endIndex;i++){let providerTokenOrDef=tInjectables[i];if(i<directivesStart&&token===providerTokenOrDef||i>=directivesStart&&providerTokenOrDef.type===token)return i}if(isHostSpecialCase){let dirDef=tInjectables[directivesStart];if(dirDef&&isComponentDef(dirDef)&&dirDef.type===token)return directivesStart}return null}function getNodeInjectable(lView,tView,index,tNode,flags){let value=lView[index],tData=tView.data;if(value instanceof NodeInjectorFactory){let factory=value;if(factory.resolving){let token2=stringifyForError(tData[index]);throw cyclicDependencyError(token2)}let previousIncludeViewProviders=setIncludeViewProviders(factory.canSeeViewProviders);factory.resolving=!0;let token=tData[index].type||tData[index],prevInjectContext,previousInjectImplementation=factory.injectImpl?setInjectImplementation(factory.injectImpl):null,success=enterDI(lView,tNode,0);try{value=lView[index]=factory.factory(void 0,flags,tData,lView,tNode),tView.firstCreatePass&&index>=tNode.directiveStart&®isterPreOrderHooks(index,tData[index],tView)}finally{previousInjectImplementation!==null&&setInjectImplementation(previousInjectImplementation),setIncludeViewProviders(previousIncludeViewProviders),factory.resolving=!1,leaveDI()}}return value}function bloomHashBitOrFactory(token){if(typeof token=="string")return token.charCodeAt(0)||0;let tokenId=token.hasOwnProperty(NG_ELEMENT_ID)?token[NG_ELEMENT_ID]:void 0;return typeof tokenId=="number"?tokenId>=0?tokenId&BLOOM_MASK:createNodeInjector:tokenId}function bloomHasToken(bloomHash,injectorIndex,injectorView){let mask=1<<bloomHash;return!!(injectorView[injectorIndex+(bloomHash>>BLOOM_BUCKET_BITS)]&mask)}function shouldSearchParent(flags,isFirstHostTNode){return!(flags&2)&&!(flags&1&&isFirstHostTNode)}var NodeInjector=class{_tNode;_lView;constructor(_tNode,_lView){this._tNode=_tNode,this._lView=_lView}get(token,notFoundValue,flags){return getOrCreateInjectable(this._tNode,this._lView,token,convertToBitFlags(flags),notFoundValue)}};function createNodeInjector(){return new NodeInjector(getCurrentTNode(),getLView())}function \u0275\u0275getInheritedFactory(type2){return noSideEffects(()=>{let ownConstructor=type2.prototype.constructor,ownFactory=ownConstructor[NG_FACTORY_DEF]||getFactoryOf(ownConstructor),objectPrototype=Object.prototype,parent=Object.getPrototypeOf(type2.prototype).constructor;for(;parent&&parent!==objectPrototype;){let factory=parent[NG_FACTORY_DEF]||getFactoryOf(parent);if(factory&&factory!==ownFactory)return factory;parent=Object.getPrototypeOf(parent)}return t=>new t})}function getFactoryOf(type2){return isForwardRef(type2)?()=>{let factory=getFactoryOf(resolveForwardRef(type2));return factory&&factory()}:getFactoryDef(type2)}function lookupTokenUsingEmbeddedInjector(tNode,lView,token,flags,notFoundValue){let currentTNode=tNode,currentLView=lView;for(;currentTNode!==null&¤tLView!==null&¤tLView[FLAGS]&2048&&!isRootView(currentLView);){let nodeInjectorValue=lookupTokenUsingNodeInjector(currentTNode,currentLView,token,flags|2,NOT_FOUND2);if(nodeInjectorValue!==NOT_FOUND2)return nodeInjectorValue;let parentTNode=currentTNode.parent;if(!parentTNode){let embeddedViewInjector=currentLView[EMBEDDED_VIEW_INJECTOR];if(embeddedViewInjector){let embeddedViewInjectorValue=embeddedViewInjector.get(token,NOT_FOUND2,flags);if(embeddedViewInjectorValue!==NOT_FOUND2)return embeddedViewInjectorValue}parentTNode=getTNodeFromLView(currentLView),currentLView=currentLView[DECLARATION_VIEW]}currentTNode=parentTNode}return notFoundValue}function getTNodeFromLView(lView){let tView=lView[TVIEW],tViewType=tView.type;return tViewType===2?tView.declTNode:tViewType===1?lView[T_HOST]:null}function \u0275\u0275injectAttribute(attrNameToInject){return injectAttributeImpl(getCurrentTNode(),attrNameToInject)}function injectElementRef(){return createElementRef(getCurrentTNode(),getLView())}function createElementRef(tNode,lView){return new ElementRef(getNativeByTNode(tNode,lView))}var ElementRef=(()=>{class ElementRef2{nativeElement;constructor(nativeElement){this.nativeElement=nativeElement}static __NG_ELEMENT_ID__=injectElementRef}return ElementRef2})();function unwrapElementRef(value){return value instanceof ElementRef?value.nativeElement:value}function symbolIterator(){return this._results[Symbol.iterator]()}var QueryList=class{_emitDistinctChangesOnly;dirty=!0;_onDirty=void 0;_results=[];_changesDetected=!1;_changes=void 0;length=0;first=void 0;last=void 0;get changes(){return this._changes??=new Subject}constructor(_emitDistinctChangesOnly=!1){this._emitDistinctChangesOnly=_emitDistinctChangesOnly}get(index){return this._results[index]}map(fn){return this._results.map(fn)}filter(fn){return this._results.filter(fn)}find(fn){return this._results.find(fn)}reduce(fn,init){return this._results.reduce(fn,init)}forEach(fn){this._results.forEach(fn)}some(fn){return this._results.some(fn)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(resultsTree,identityAccessor){this.dirty=!1;let newResultFlat=flatten(resultsTree);(this._changesDetected=!arrayEquals(this._results,newResultFlat,identityAccessor))&&(this._results=newResultFlat,this.length=newResultFlat.length,this.last=newResultFlat[this.length-1],this.first=newResultFlat[0])}notifyOnChanges(){this._changes!==void 0&&(this._changesDetected||!this._emitDistinctChangesOnly)&&this._changes.next(this)}onDirty(cb){this._onDirty=cb}setDirty(){this.dirty=!0,this._onDirty?.()}destroy(){this._changes!==void 0&&(this._changes.complete(),this._changes.unsubscribe())}[Symbol.iterator]=symbolIterator};function hasInSkipHydrationBlockFlag(tNode){return(tNode.flags&128)===128}var ChangeDetectionStrategy=(function(ChangeDetectionStrategy39){return ChangeDetectionStrategy39[ChangeDetectionStrategy39.OnPush=0]="OnPush",ChangeDetectionStrategy39[ChangeDetectionStrategy39.Default=1]="Default",ChangeDetectionStrategy39})(ChangeDetectionStrategy||{}),TRACKED_LVIEWS=new Map,uniqueIdCounter=0;function getUniqueLViewId(){return uniqueIdCounter++}function registerLView(lView){TRACKED_LVIEWS.set(lView[ID],lView)}function unregisterLView(lView){TRACKED_LVIEWS.delete(lView[ID])}var MONKEY_PATCH_KEY_NAME="__ngContext__";function attachPatchData(target,data){isLView(data)?(target[MONKEY_PATCH_KEY_NAME]=data[ID],registerLView(data)):target[MONKEY_PATCH_KEY_NAME]=data}function getFirstLContainer(lView){return getNearestLContainer(lView[CHILD_HEAD])}function getNextLContainer(container){return getNearestLContainer(container[NEXT])}function getNearestLContainer(viewOrContainer){for(;viewOrContainer!==null&&!isLContainer(viewOrContainer);)viewOrContainer=viewOrContainer[NEXT];return viewOrContainer}var DOCUMENT2;function setDocument(document2){DOCUMENT2=document2}function getDocument(){if(DOCUMENT2!==void 0)return DOCUMENT2;if(typeof document<"u")return document;throw new RuntimeError(210,!1)}var APP_ID=new InjectionToken("",{providedIn:"root",factory:()=>DEFAULT_APP_ID}),DEFAULT_APP_ID="ng",PLATFORM_INITIALIZER=new InjectionToken(""),PLATFORM_ID=new InjectionToken("",{providedIn:"platform",factory:()=>"unknown"});var ANIMATION_MODULE_TYPE=new InjectionToken(""),CSP_NONCE=new InjectionToken("",{providedIn:"root",factory:()=>getDocument().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});var REFERENCE_NODE_HOST="h",REFERENCE_NODE_BODY="b";var NUM_ROOT_NODES="r";var DEFER_BLOCK_ID="di";var PRESERVE_HOST_CONTENT_DEFAULT=!1,PRESERVE_HOST_CONTENT=new InjectionToken("",{providedIn:"root",factory:()=>PRESERVE_HOST_CONTENT_DEFAULT});var IS_ENABLED_BLOCKING_INITIAL_NAVIGATION=new InjectionToken("");var _stashEventListenerImpl=(lView,target,eventName,wrappedListener)=>{};function stashEventListenerImpl(lView,target,eventName,wrappedListener){_stashEventListenerImpl(lView,target,eventName,wrappedListener)}function isDetachedByI18n(tNode){return(tNode.flags&32)===32}var _retrieveHydrationInfoImpl=()=>null;function retrieveHydrationInfo(rNode,injector,isRootView2=!1){return _retrieveHydrationInfoImpl(rNode,injector,isRootView2)}function refreshContentQueries(tView,lView){let contentQueries=tView.contentQueries;if(contentQueries!==null){let prevConsumer=setActiveConsumer(null);try{for(let i=0;i<contentQueries.length;i+=2){let queryStartIdx=contentQueries[i],directiveDefIdx=contentQueries[i+1];if(directiveDefIdx!==-1){let directiveDef=tView.data[directiveDefIdx];setCurrentQueryIndex(queryStartIdx),directiveDef.contentQueries(2,lView[directiveDefIdx],directiveDefIdx)}}}finally{setActiveConsumer(prevConsumer)}}}function executeViewQueryFn(flags,viewQueryFn,component){setCurrentQueryIndex(0);let prevConsumer=setActiveConsumer(null);try{viewQueryFn(flags,component)}finally{setActiveConsumer(prevConsumer)}}function executeContentQueries(tView,tNode,lView){if(isContentQueryHost(tNode)){let prevConsumer=setActiveConsumer(null);try{let start=tNode.directiveStart,end=tNode.directiveEnd;for(let directiveIndex=start;directiveIndex<end;directiveIndex++){let def=tView.data[directiveIndex];if(def.contentQueries){let directiveInstance=lView[directiveIndex];def.contentQueries(1,directiveInstance,directiveIndex)}}}finally{setActiveConsumer(prevConsumer)}}}var ViewEncapsulation=(function(ViewEncapsulation39){return ViewEncapsulation39[ViewEncapsulation39.Emulated=0]="Emulated",ViewEncapsulation39[ViewEncapsulation39.None=2]="None",ViewEncapsulation39[ViewEncapsulation39.ShadowDom=3]="ShadowDom",ViewEncapsulation39})(ViewEncapsulation||{}),policy$1;function getPolicy$1(){if(policy$1===void 0&&(policy$1=null,_global.trustedTypes))try{policy$1=_global.trustedTypes.createPolicy("angular",{createHTML:s=>s,createScript:s=>s,createScriptURL:s=>s})}catch{}return policy$1}function trustedHTMLFromString(html){return getPolicy$1()?.createHTML(html)||html}var policy;function getPolicy(){if(policy===void 0&&(policy=null,_global.trustedTypes))try{policy=_global.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:s=>s,createScript:s=>s,createScriptURL:s=>s})}catch{}return policy}function trustedHTMLFromStringBypass(html){return getPolicy()?.createHTML(html)||html}function trustedScriptURLFromStringBypass(url){return getPolicy()?.createScriptURL(url)||url}var SafeValueImpl=class{changingThisBreaksApplicationSecurity;constructor(changingThisBreaksApplicationSecurity){this.changingThisBreaksApplicationSecurity=changingThisBreaksApplicationSecurity}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${XSS_SECURITY_URL})`}},SafeHtmlImpl=class extends SafeValueImpl{getTypeName(){return"HTML"}},SafeStyleImpl=class extends SafeValueImpl{getTypeName(){return"Style"}},SafeScriptImpl=class extends SafeValueImpl{getTypeName(){return"Script"}},SafeUrlImpl=class extends SafeValueImpl{getTypeName(){return"URL"}},SafeResourceUrlImpl=class extends SafeValueImpl{getTypeName(){return"ResourceURL"}};function unwrapSafeValue(value){return value instanceof SafeValueImpl?value.changingThisBreaksApplicationSecurity:value}function allowSanitizationBypassAndThrow(value,type2){let actualType=getSanitizationBypassType(value);if(actualType!=null&&actualType!==type2){if(actualType==="ResourceURL"&&type2==="URL")return!0;throw new Error(`Required a safe ${type2}, got a ${actualType} (see ${XSS_SECURITY_URL})`)}return actualType===type2}function getSanitizationBypassType(value){return value instanceof SafeValueImpl&&value.getTypeName()||null}function bypassSanitizationTrustHtml(trustedHtml){return new SafeHtmlImpl(trustedHtml)}function bypassSanitizationTrustStyle(trustedStyle){return new SafeStyleImpl(trustedStyle)}function bypassSanitizationTrustScript(trustedScript){return new SafeScriptImpl(trustedScript)}function bypassSanitizationTrustUrl(trustedUrl){return new SafeUrlImpl(trustedUrl)}function bypassSanitizationTrustResourceUrl(trustedResourceUrl){return new SafeResourceUrlImpl(trustedResourceUrl)}function getInertBodyHelper(defaultDoc){let inertDocumentHelper=new InertDocumentHelper(defaultDoc);return isDOMParserAvailable()?new DOMParserHelper(inertDocumentHelper):inertDocumentHelper}var DOMParserHelper=class{inertDocumentHelper;constructor(inertDocumentHelper){this.inertDocumentHelper=inertDocumentHelper}getInertBodyElement(html){html="<body><remove></remove>"+html;try{let body=new window.DOMParser().parseFromString(trustedHTMLFromString(html),"text/html").body;return body===null?this.inertDocumentHelper.getInertBodyElement(html):(body.firstChild?.remove(),body)}catch{return null}}},InertDocumentHelper=class{defaultDoc;inertDocument;constructor(defaultDoc){this.defaultDoc=defaultDoc,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(html){let templateEl=this.inertDocument.createElement("template");return templateEl.innerHTML=trustedHTMLFromString(html),templateEl}};function isDOMParserAvailable(){try{return!!new window.DOMParser().parseFromString(trustedHTMLFromString(""),"text/html")}catch{return!1}}var SAFE_URL_PATTERN=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function _sanitizeUrl(url){return url=String(url),url.match(SAFE_URL_PATTERN)?url:"unsafe:"+url}function tagSet(tags){let res={};for(let t of tags.split(","))res[t]=!0;return res}function merge2(...sets){let res={};for(let s of sets)for(let v in s)s.hasOwnProperty(v)&&(res[v]=!0);return res}var VOID_ELEMENTS=tagSet("area,br,col,hr,img,wbr"),OPTIONAL_END_TAG_BLOCK_ELEMENTS=tagSet("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),OPTIONAL_END_TAG_INLINE_ELEMENTS=tagSet("rp,rt"),OPTIONAL_END_TAG_ELEMENTS=merge2(OPTIONAL_END_TAG_INLINE_ELEMENTS,OPTIONAL_END_TAG_BLOCK_ELEMENTS),BLOCK_ELEMENTS=merge2(OPTIONAL_END_TAG_BLOCK_ELEMENTS,tagSet("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")),INLINE_ELEMENTS=merge2(OPTIONAL_END_TAG_INLINE_ELEMENTS,tagSet("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")),VALID_ELEMENTS=merge2(VOID_ELEMENTS,BLOCK_ELEMENTS,INLINE_ELEMENTS,OPTIONAL_END_TAG_ELEMENTS),URI_ATTRS=tagSet("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),HTML_ATTRS=tagSet("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,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),ARIA_ATTRS=tagSet("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"),VALID_ATTRS=merge2(URI_ATTRS,HTML_ATTRS,ARIA_ATTRS),SKIP_TRAVERSING_CONTENT_IF_INVALID_ELEMENTS=tagSet("script,style,template"),SanitizingHtmlSerializer=class{sanitizedSomething=!1;buf=[];sanitizeChildren(el){let current=el.firstChild,traverseContent=!0,parentNodes=[];for(;current;){if(current.nodeType===Node.ELEMENT_NODE?traverseContent=this.startElement(current):current.nodeType===Node.TEXT_NODE?this.chars(current.nodeValue):this.sanitizedSomething=!0,traverseContent&¤t.firstChild){parentNodes.push(current),current=getFirstChild(current);continue}for(;current;){current.nodeType===Node.ELEMENT_NODE&&this.endElement(current);let next=getNextSibling(current);if(next){current=next;break}current=parentNodes.pop()}}return this.buf.join("")}startElement(element){let tagName=getNodeName(element).toLowerCase();if(!VALID_ELEMENTS.hasOwnProperty(tagName))return this.sanitizedSomething=!0,!SKIP_TRAVERSING_CONTENT_IF_INVALID_ELEMENTS.hasOwnProperty(tagName);this.buf.push("<"),this.buf.push(tagName);let elAttrs=element.attributes;for(let i=0;i<elAttrs.length;i++){let elAttr=elAttrs.item(i),attrName=elAttr.name,lower=attrName.toLowerCase();if(!VALID_ATTRS.hasOwnProperty(lower)){this.sanitizedSomething=!0;continue}let value=elAttr.value;URI_ATTRS[lower]&&(value=_sanitizeUrl(value)),this.buf.push(" ",attrName,'="',encodeEntities(value),'"')}return this.buf.push(">"),!0}endElement(current){let tagName=getNodeName(current).toLowerCase();VALID_ELEMENTS.hasOwnProperty(tagName)&&!VOID_ELEMENTS.hasOwnProperty(tagName)&&(this.buf.push("</"),this.buf.push(tagName),this.buf.push(">"))}chars(chars){this.buf.push(encodeEntities(chars))}};function isClobberedElement(parentNode,childNode){return(parentNode.compareDocumentPosition(childNode)&Node.DOCUMENT_POSITION_CONTAINED_BY)!==Node.DOCUMENT_POSITION_CONTAINED_BY}function getNextSibling(node){let nextSibling=node.nextSibling;if(nextSibling&&node!==nextSibling.previousSibling)throw clobberedElementError(nextSibling);return nextSibling}function getFirstChild(node){let firstChild=node.firstChild;if(firstChild&&isClobberedElement(node,firstChild))throw clobberedElementError(firstChild);return firstChild}function getNodeName(node){let nodeName=node.nodeName;return typeof nodeName=="string"?nodeName:"FORM"}function clobberedElementError(node){return new Error(`Failed to sanitize html because the element is clobbered: ${node.outerHTML}`)}var SURROGATE_PAIR_REGEXP=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,NON_ALPHANUMERIC_REGEXP=/([^\#-~ |!])/g;function encodeEntities(value){return value.replace(/&/g,"&").replace(SURROGATE_PAIR_REGEXP,function(match2){let hi=match2.charCodeAt(0),low=match2.charCodeAt(1);return"&#"+((hi-55296)*1024+(low-56320)+65536)+";"}).replace(NON_ALPHANUMERIC_REGEXP,function(match2){return"&#"+match2.charCodeAt(0)+";"}).replace(/</g,"<").replace(/>/g,">")}var inertBodyHelper;function _sanitizeHtml(defaultDoc,unsafeHtmlInput){let inertBodyElement=null;try{inertBodyHelper=inertBodyHelper||getInertBodyHelper(defaultDoc);let unsafeHtml=unsafeHtmlInput?String(unsafeHtmlInput):"";inertBodyElement=inertBodyHelper.getInertBodyElement(unsafeHtml);let mXSSAttempts=5,parsedHtml=unsafeHtml;do{if(mXSSAttempts===0)throw new Error("Failed to sanitize html because the input is unstable");mXSSAttempts--,unsafeHtml=parsedHtml,parsedHtml=inertBodyElement.innerHTML,inertBodyElement=inertBodyHelper.getInertBodyElement(unsafeHtml)}while(unsafeHtml!==parsedHtml);let safeHtml=new SanitizingHtmlSerializer().sanitizeChildren(getTemplateContent(inertBodyElement)||inertBodyElement);return trustedHTMLFromString(safeHtml)}finally{if(inertBodyElement){let parent=getTemplateContent(inertBodyElement)||inertBodyElement;for(;parent.firstChild;)parent.firstChild.remove()}}}function getTemplateContent(el){return"content"in el&&isTemplateElement(el)?el.content:null}function isTemplateElement(el){return el.nodeType===Node.ELEMENT_NODE&&el.nodeName==="TEMPLATE"}var SecurityContext=(function(SecurityContext2){return SecurityContext2[SecurityContext2.NONE=0]="NONE",SecurityContext2[SecurityContext2.HTML=1]="HTML",SecurityContext2[SecurityContext2.STYLE=2]="STYLE",SecurityContext2[SecurityContext2.SCRIPT=3]="SCRIPT",SecurityContext2[SecurityContext2.URL=4]="URL",SecurityContext2[SecurityContext2.RESOURCE_URL=5]="RESOURCE_URL",SecurityContext2})(SecurityContext||{});function \u0275\u0275sanitizeHtml(unsafeHtml){let sanitizer=getSanitizer();return sanitizer?trustedHTMLFromStringBypass(sanitizer.sanitize(SecurityContext.HTML,unsafeHtml)||""):allowSanitizationBypassAndThrow(unsafeHtml,"HTML")?trustedHTMLFromStringBypass(unwrapSafeValue(unsafeHtml)):_sanitizeHtml(getDocument(),renderStringify(unsafeHtml))}function \u0275\u0275sanitizeUrl(unsafeUrl){let sanitizer=getSanitizer();return sanitizer?sanitizer.sanitize(SecurityContext.URL,unsafeUrl)||"":allowSanitizationBypassAndThrow(unsafeUrl,"URL")?unwrapSafeValue(unsafeUrl):_sanitizeUrl(renderStringify(unsafeUrl))}function \u0275\u0275sanitizeResourceUrl(unsafeResourceUrl){let sanitizer=getSanitizer();if(sanitizer)return trustedScriptURLFromStringBypass(sanitizer.sanitize(SecurityContext.RESOURCE_URL,unsafeResourceUrl)||"");if(allowSanitizationBypassAndThrow(unsafeResourceUrl,"ResourceURL"))return trustedScriptURLFromStringBypass(unwrapSafeValue(unsafeResourceUrl));throw new RuntimeError(904,!1)}function getUrlSanitizer(tag,prop){return prop==="src"&&(tag==="embed"||tag==="frame"||tag==="iframe"||tag==="media"||tag==="script")||prop==="href"&&(tag==="base"||tag==="link")?\u0275\u0275sanitizeResourceUrl:\u0275\u0275sanitizeUrl}function \u0275\u0275sanitizeUrlOrResourceUrl(unsafeUrl,tag,prop){return getUrlSanitizer(tag,prop)(unsafeUrl)}function getSanitizer(){let lView=getLView();return lView&&lView[ENVIRONMENT].sanitizer}var COMMENT_DISALLOWED=/^>|^->|<!--|-->|--!>|<!-$/g,COMMENT_DELIMITER=/(<|>)/g,COMMENT_DELIMITER_ESCAPED="\u200B$1\u200B";function escapeCommentText(value){return value.replace(COMMENT_DISALLOWED,text=>text.replace(COMMENT_DELIMITER,COMMENT_DELIMITER_ESCAPED))}function \u0275\u0275resolveDocument(element){return element.ownerDocument}function maybeUnwrapFn(value){return value instanceof Function?value():value}function classIndexOf(className,classToSearch,startingIndex){let end=className.length;for(;;){let foundIndex=className.indexOf(classToSearch,startingIndex);if(foundIndex===-1)return foundIndex;if(foundIndex===0||className.charCodeAt(foundIndex-1)<=32){let length=classToSearch.length;if(foundIndex+length===end||className.charCodeAt(foundIndex+length)<=32)return foundIndex}startingIndex=foundIndex+1}}var NG_TEMPLATE_SELECTOR="ng-template";function isCssClassMatching(tNode,attrs,cssClassToMatch,isProjectionMode){let i=0;if(isProjectionMode){for(;i<attrs.length&&typeof attrs[i]=="string";i+=2)if(attrs[i]==="class"&&classIndexOf(attrs[i+1].toLowerCase(),cssClassToMatch,0)!==-1)return!0}else if(isInlineTemplate(tNode))return!1;if(i=attrs.indexOf(1,i),i>-1){let item;for(;++i<attrs.length&&typeof(item=attrs[i])=="string";)if(item.toLowerCase()===cssClassToMatch)return!0}return!1}function isInlineTemplate(tNode){return tNode.type===4&&tNode.value!==NG_TEMPLATE_SELECTOR}function hasTagAndTypeMatch(tNode,currentSelector,isProjectionMode){let tagNameToCompare=tNode.type===4&&!isProjectionMode?NG_TEMPLATE_SELECTOR:tNode.value;return currentSelector===tagNameToCompare}function isNodeMatchingSelector(tNode,selector,isProjectionMode){let mode=4,nodeAttrs=tNode.attrs,nameOnlyMarkerIdx=nodeAttrs!==null?getNameOnlyMarkerIndex(nodeAttrs):0,skipToNextSelector=!1;for(let i=0;i<selector.length;i++){let current=selector[i];if(typeof current=="number"){if(!skipToNextSelector&&!isPositive(mode)&&!isPositive(current))return!1;if(skipToNextSelector&&isPositive(current))continue;skipToNextSelector=!1,mode=current|mode&1;continue}if(!skipToNextSelector)if(mode&4){if(mode=2|mode&1,current!==""&&!hasTagAndTypeMatch(tNode,current,isProjectionMode)||current===""&&selector.length===1){if(isPositive(mode))return!1;skipToNextSelector=!0}}else if(mode&8){if(nodeAttrs===null||!isCssClassMatching(tNode,nodeAttrs,current,isProjectionMode)){if(isPositive(mode))return!1;skipToNextSelector=!0}}else{let selectorAttrValue=selector[++i],attrIndexInNode=findAttrIndexInNode(current,nodeAttrs,isInlineTemplate(tNode),isProjectionMode);if(attrIndexInNode===-1){if(isPositive(mode))return!1;skipToNextSelector=!0;continue}if(selectorAttrValue!==""){let nodeAttrValue;if(attrIndexInNode>nameOnlyMarkerIdx?nodeAttrValue="":nodeAttrValue=nodeAttrs[attrIndexInNode+1].toLowerCase(),mode&2&&selectorAttrValue!==nodeAttrValue){if(isPositive(mode))return!1;skipToNextSelector=!0}}}}return isPositive(mode)||skipToNextSelector}function isPositive(mode){return(mode&1)===0}function findAttrIndexInNode(name,attrs,isInlineTemplate2,isProjectionMode){if(attrs===null)return-1;let i=0;if(isProjectionMode||!isInlineTemplate2){let bindingsMode=!1;for(;i<attrs.length;){let maybeAttrName=attrs[i];if(maybeAttrName===name)return i;if(maybeAttrName===3||maybeAttrName===6)bindingsMode=!0;else if(maybeAttrName===1||maybeAttrName===2){let value=attrs[++i];for(;typeof value=="string";)value=attrs[++i];continue}else{if(maybeAttrName===4)break;if(maybeAttrName===0){i+=4;continue}}i+=bindingsMode?1:2}return-1}else return matchTemplateAttribute(attrs,name)}function isNodeMatchingSelectorList(tNode,selector,isProjectionMode=!1){for(let i=0;i<selector.length;i++)if(isNodeMatchingSelector(tNode,selector[i],isProjectionMode))return!0;return!1}function getProjectAsAttrValue(tNode){let nodeAttrs=tNode.attrs;if(nodeAttrs!=null){let ngProjectAsAttrIdx=nodeAttrs.indexOf(5);if((ngProjectAsAttrIdx&1)===0)return nodeAttrs[ngProjectAsAttrIdx+1]}return null}function getNameOnlyMarkerIndex(nodeAttrs){for(let i=0;i<nodeAttrs.length;i++){let nodeAttr=nodeAttrs[i];if(isNameOnlyAttributeMarker(nodeAttr))return i}return nodeAttrs.length}function matchTemplateAttribute(attrs,name){let i=attrs.indexOf(4);if(i>-1)for(i++;i<attrs.length;){let attr=attrs[i];if(typeof attr=="number")return-1;if(attr===name)return i;i++}return-1}function isSelectorInSelectorList(selector,list){selectorListLoop:for(let i=0;i<list.length;i++){let currentSelectorInList=list[i];if(selector.length===currentSelectorInList.length){for(let j=0;j<selector.length;j++)if(selector[j]!==currentSelectorInList[j])continue selectorListLoop;return!0}}return!1}function maybeWrapInNotSelector(isNegativeMode,chunk){return isNegativeMode?":not("+chunk.trim()+")":chunk}function stringifyCSSSelector(selector){let result=selector[0],i=1,mode=2,currentChunk="",isNegativeMode=!1;for(;i<selector.length;){let valueOrMarker=selector[i];if(typeof valueOrMarker=="string")if(mode&2){let attrValue=selector[++i];currentChunk+="["+valueOrMarker+(attrValue.length>0?'="'+attrValue+'"':"")+"]"}else mode&8?currentChunk+="."+valueOrMarker:mode&4&&(currentChunk+=" "+valueOrMarker);else currentChunk!==""&&!isPositive(valueOrMarker)&&(result+=maybeWrapInNotSelector(isNegativeMode,currentChunk),currentChunk=""),mode=valueOrMarker,isNegativeMode=isNegativeMode||!isPositive(mode);i++}return currentChunk!==""&&(result+=maybeWrapInNotSelector(isNegativeMode,currentChunk)),result}function stringifyCSSSelectorList(selectorList){return selectorList.map(stringifyCSSSelector).join(",")}function extractAttrsAndClassesFromSelector(selector){let attrs=[],classes=[],i=1,mode=2;for(;i<selector.length;){let valueOrMarker=selector[i];if(typeof valueOrMarker=="string")mode===2?valueOrMarker!==""&&attrs.push(valueOrMarker,selector[++i]):mode===8&&classes.push(valueOrMarker);else{if(!isPositive(mode))break;mode=valueOrMarker}i++}return classes.length&&attrs.push(1,...classes),attrs}var NO_CHANGE={};function createTextNode(renderer,value){return renderer.createText(value)}function updateTextNode(renderer,rNode,value){renderer.setValue(rNode,value)}function createCommentNode(renderer,value){return renderer.createComment(escapeCommentText(value))}function createElementNode(renderer,name,namespace){return renderer.createElement(name,namespace)}function nativeInsertBefore(renderer,parent,child,beforeNode,isMove){renderer.insertBefore(parent,child,beforeNode,isMove)}function nativeAppendChild(renderer,parent,child){renderer.appendChild(parent,child)}function nativeAppendOrInsertBefore(renderer,parent,child,beforeNode,isMove){beforeNode!==null?nativeInsertBefore(renderer,parent,child,beforeNode,isMove):nativeAppendChild(renderer,parent,child)}function nativeRemoveNode(renderer,rNode,isHostElement){renderer.removeChild(null,rNode,isHostElement)}function writeDirectStyle(renderer,element,newValue){renderer.setAttribute(element,"style",newValue)}function writeDirectClass(renderer,element,newValue){newValue===""?renderer.removeAttribute(element,"class"):renderer.setAttribute(element,"class",newValue)}function setupStaticAttributes(renderer,element,tNode){let{mergedAttrs,classes,styles}=tNode;mergedAttrs!==null&&setUpAttributes(renderer,element,mergedAttrs),classes!==null&&writeDirectClass(renderer,element,classes),styles!==null&&writeDirectStyle(renderer,element,styles)}function createTView(type2,declTNode,templateFn,decls,vars,directives,pipes,viewQuery,schemas,constsOrFactory,ssrId){let bindingStartIndex=HEADER_OFFSET+decls,initialViewLength=bindingStartIndex+vars,blueprint=createViewBlueprint(bindingStartIndex,initialViewLength),consts=typeof constsOrFactory=="function"?constsOrFactory():constsOrFactory;return blueprint[TVIEW]={type:type2,blueprint,template:templateFn,queries:null,viewQuery,declTNode,data:blueprint.slice().fill(null,bindingStartIndex),bindingStartIndex,expandoStartIndex:initialViewLength,hostBindingOpCodes:null,firstCreatePass:!0,firstUpdatePass:!0,staticViewQueries:!1,staticContentQueries:!1,preOrderHooks:null,preOrderCheckHooks:null,contentHooks:null,contentCheckHooks:null,viewHooks:null,viewCheckHooks:null,destroyHooks:null,cleanup:null,contentQueries:null,components:null,directiveRegistry:typeof directives=="function"?directives():directives,pipeRegistry:typeof pipes=="function"?pipes():pipes,firstChild:null,schemas,consts,incompleteFirstPass:!1,ssrId}}function createViewBlueprint(bindingStartIndex,initialViewLength){let blueprint=[];for(let i=0;i<initialViewLength;i++)blueprint.push(i<bindingStartIndex?null:NO_CHANGE);return blueprint}function getOrCreateComponentTView(def){let tView=def.tView;return tView===null||tView.incompleteFirstPass?def.tView=createTView(1,null,def.template,def.decls,def.vars,def.directiveDefs,def.pipeDefs,def.viewQuery,def.schemas,def.consts,def.id):tView}function createLView(parentLView,tView,context2,flags,host,tHostNode,environment2,renderer,injector,embeddedViewInjector,hydrationInfo){let lView=tView.blueprint.slice();return lView[HOST]=host,lView[FLAGS]=flags|4|128|8|64|1024,(embeddedViewInjector!==null||parentLView&&parentLView[FLAGS]&2048)&&(lView[FLAGS]|=2048),resetPreOrderHookFlags(lView),lView[PARENT]=lView[DECLARATION_VIEW]=parentLView,lView[CONTEXT]=context2,lView[ENVIRONMENT]=environment2||parentLView&&parentLView[ENVIRONMENT],lView[RENDERER]=renderer||parentLView&&parentLView[RENDERER],lView[INJECTOR]=injector||parentLView&&parentLView[INJECTOR]||null,lView[T_HOST]=tHostNode,lView[ID]=getUniqueLViewId(),lView[HYDRATION]=hydrationInfo,lView[EMBEDDED_VIEW_INJECTOR]=embeddedViewInjector,lView[DECLARATION_COMPONENT_VIEW]=tView.type==2?parentLView[DECLARATION_COMPONENT_VIEW]:lView,lView}function createComponentLView(lView,hostTNode,def){let native=getNativeByTNode(hostTNode,lView),tView=getOrCreateComponentTView(def),rendererFactory=lView[ENVIRONMENT].rendererFactory,componentView=addToEndOfViewTree(lView,createLView(lView,tView,null,getInitialLViewFlagsFromDef(def),native,hostTNode,null,rendererFactory.createRenderer(native,def),null,null,null));return lView[hostTNode.index]=componentView}function getInitialLViewFlagsFromDef(def){let flags=16;return def.signals?flags=4096:def.onPush&&(flags=64),flags}function allocExpando(tView,lView,numSlotsToAlloc,initialValue){if(numSlotsToAlloc===0)return-1;let allocIdx=lView.length;for(let i=0;i<numSlotsToAlloc;i++)lView.push(initialValue),tView.blueprint.push(initialValue),tView.data.push(null);return allocIdx}function addToEndOfViewTree(lView,lViewOrLContainer){return lView[CHILD_HEAD]?lView[CHILD_TAIL][NEXT]=lViewOrLContainer:lView[CHILD_HEAD]=lViewOrLContainer,lView[CHILD_TAIL]=lViewOrLContainer,lViewOrLContainer}function \u0275\u0275advance(delta=1){selectIndexInternal(getTView(),getLView(),getSelectedIndex()+delta,!1)}function selectIndexInternal(tView,lView,index,checkNoChangesMode){if(!checkNoChangesMode)if((lView[FLAGS]&3)===3){let preOrderCheckHooks=tView.preOrderCheckHooks;preOrderCheckHooks!==null&&executeCheckHooks(lView,preOrderCheckHooks,index)}else{let preOrderHooks=tView.preOrderHooks;preOrderHooks!==null&&executeInitAndCheckHooks(lView,preOrderHooks,0,index)}setSelectedIndex(index)}var InputFlags=(function(InputFlags2){return InputFlags2[InputFlags2.None=0]="None",InputFlags2[InputFlags2.SignalBased=1]="SignalBased",InputFlags2[InputFlags2.HasDecoratorInputTransform=2]="HasDecoratorInputTransform",InputFlags2})(InputFlags||{});function writeToDirectiveInput(def,instance,publicName,value){let prevConsumer=setActiveConsumer(null);try{let[privateName,flags,transform]=def.inputs[publicName],inputSignalNode=null;(flags&InputFlags.SignalBased)!==0&&(inputSignalNode=instance[privateName][SIGNAL]),inputSignalNode!==null&&inputSignalNode.transformFn!==void 0?value=inputSignalNode.transformFn(value):transform!==null&&(value=transform.call(instance,value)),def.setInput!==null?def.setInput(instance,inputSignalNode,value,publicName,privateName):applyValueToInputField(instance,inputSignalNode,privateName,value)}finally{setActiveConsumer(prevConsumer)}}var RendererStyleFlags2=(function(RendererStyleFlags22){return RendererStyleFlags22[RendererStyleFlags22.Important=1]="Important",RendererStyleFlags22[RendererStyleFlags22.DashCase=2]="DashCase",RendererStyleFlags22})(RendererStyleFlags2||{}),_icuContainerIterate;function icuContainerIterate(tIcuContainerNode,lView){return _icuContainerIterate(tIcuContainerNode,lView)}function applyToElementOrContainer(action,renderer,parent,lNodeToHandle,beforeNode){if(lNodeToHandle!=null){let lContainer,isComponent2=!1;isLContainer(lNodeToHandle)?lContainer=lNodeToHandle:isLView(lNodeToHandle)&&(isComponent2=!0,lNodeToHandle=lNodeToHandle[HOST]);let rNode=unwrapRNode(lNodeToHandle);action===0&&parent!==null?beforeNode==null?nativeAppendChild(renderer,parent,rNode):nativeInsertBefore(renderer,parent,rNode,beforeNode||null,!0):action===1&&parent!==null?nativeInsertBefore(renderer,parent,rNode,beforeNode||null,!0):action===2?nativeRemoveNode(renderer,rNode,isComponent2):action===3&&renderer.destroyNode(rNode),lContainer!=null&&applyContainer(renderer,action,lContainer,parent,beforeNode)}}function removeViewFromDOM(tView,lView){detachViewFromDOM(tView,lView),lView[HOST]=null,lView[T_HOST]=null}function addViewToDOM(tView,parentTNode,renderer,lView,parentNativeNode,beforeNode){lView[HOST]=parentNativeNode,lView[T_HOST]=parentTNode,applyView(tView,lView,renderer,1,parentNativeNode,beforeNode)}function detachViewFromDOM(tView,lView){lView[ENVIRONMENT].changeDetectionScheduler?.notify(9),applyView(tView,lView,lView[RENDERER],2,null,null)}function destroyViewTree(rootView){let lViewOrLContainer=rootView[CHILD_HEAD];if(!lViewOrLContainer)return cleanUpView(rootView[TVIEW],rootView);for(;lViewOrLContainer;){let next=null;if(isLView(lViewOrLContainer))next=lViewOrLContainer[CHILD_HEAD];else{let firstView=lViewOrLContainer[CONTAINER_HEADER_OFFSET];firstView&&(next=firstView)}if(!next){for(;lViewOrLContainer&&!lViewOrLContainer[NEXT]&&lViewOrLContainer!==rootView;)isLView(lViewOrLContainer)&&cleanUpView(lViewOrLContainer[TVIEW],lViewOrLContainer),lViewOrLContainer=lViewOrLContainer[PARENT];lViewOrLContainer===null&&(lViewOrLContainer=rootView),isLView(lViewOrLContainer)&&cleanUpView(lViewOrLContainer[TVIEW],lViewOrLContainer),next=lViewOrLContainer&&lViewOrLContainer[NEXT]}lViewOrLContainer=next}}function detachMovedView(declarationContainer,lView){let movedViews=declarationContainer[MOVED_VIEWS],declarationViewIndex=movedViews.indexOf(lView);movedViews.splice(declarationViewIndex,1)}function destroyLView(tView,lView){if(isDestroyed(lView))return;let renderer=lView[RENDERER];renderer.destroyNode&&applyView(tView,lView,renderer,3,null,null),destroyViewTree(lView)}function cleanUpView(tView,lView){if(isDestroyed(lView))return;let prevConsumer=setActiveConsumer(null);try{lView[FLAGS]&=-129,lView[FLAGS]|=256,lView[REACTIVE_TEMPLATE_CONSUMER]&&consumerDestroy(lView[REACTIVE_TEMPLATE_CONSUMER]),executeOnDestroys(tView,lView),processCleanups(tView,lView),lView[TVIEW].type===1&&lView[RENDERER].destroy();let declarationContainer=lView[DECLARATION_LCONTAINER];if(declarationContainer!==null&&isLContainer(lView[PARENT])){declarationContainer!==lView[PARENT]&&detachMovedView(declarationContainer,lView);let lQueries=lView[QUERIES];lQueries!==null&&lQueries.detachView(tView)}unregisterLView(lView)}finally{setActiveConsumer(prevConsumer)}}function processCleanups(tView,lView){let tCleanup=tView.cleanup,lCleanup=lView[CLEANUP];if(tCleanup!==null)for(let i=0;i<tCleanup.length-1;i+=2)if(typeof tCleanup[i]=="string"){let targetIdx=tCleanup[i+3];targetIdx>=0?lCleanup[targetIdx]():lCleanup[-targetIdx].unsubscribe(),i+=2}else{let context2=lCleanup[tCleanup[i+1]];tCleanup[i].call(context2)}lCleanup!==null&&(lView[CLEANUP]=null);let destroyHooks=lView[ON_DESTROY_HOOKS];if(destroyHooks!==null){lView[ON_DESTROY_HOOKS]=null;for(let i=0;i<destroyHooks.length;i++){let destroyHooksFn=destroyHooks[i];destroyHooksFn()}}let effects=lView[EFFECTS];if(effects!==null){lView[EFFECTS]=null;for(let effect2 of effects)effect2.destroy()}}function executeOnDestroys(tView,lView){let destroyHooks;if(tView!=null&&(destroyHooks=tView.destroyHooks)!=null)for(let i=0;i<destroyHooks.length;i+=2){let context2=lView[destroyHooks[i]];if(!(context2 instanceof NodeInjectorFactory)){let toCall=destroyHooks[i+1];if(Array.isArray(toCall))for(let j=0;j<toCall.length;j+=2){let callContext=context2[toCall[j]],hook=toCall[j+1];profiler(4,callContext,hook);try{hook.call(callContext)}finally{profiler(5,callContext,hook)}}else{profiler(4,context2,toCall);try{toCall.call(context2)}finally{profiler(5,context2,toCall)}}}}}function getParentRElement(tView,tNode,lView){return getClosestRElement(tView,tNode.parent,lView)}function getClosestRElement(tView,tNode,lView){let parentTNode=tNode;for(;parentTNode!==null&&parentTNode.type&168;)tNode=parentTNode,parentTNode=tNode.parent;if(parentTNode===null)return lView[HOST];if(isComponentHost(parentTNode)){let{encapsulation}=tView.data[parentTNode.directiveStart+parentTNode.componentOffset];if(encapsulation===ViewEncapsulation.None||encapsulation===ViewEncapsulation.Emulated)return null}return getNativeByTNode(parentTNode,lView)}function getInsertInFrontOfRNode(parentTNode,currentTNode,lView){return _getInsertInFrontOfRNodeWithI18n(parentTNode,currentTNode,lView)}function getInsertInFrontOfRNodeWithNoI18n(parentTNode,currentTNode,lView){return parentTNode.type&40?getNativeByTNode(parentTNode,lView):null}var _getInsertInFrontOfRNodeWithI18n=getInsertInFrontOfRNodeWithNoI18n,_processI18nInsertBefore;function appendChild(tView,lView,childRNode,childTNode){let parentRNode=getParentRElement(tView,childTNode,lView),renderer=lView[RENDERER],parentTNode=childTNode.parent||lView[T_HOST],anchorNode=getInsertInFrontOfRNode(parentTNode,childTNode,lView);if(parentRNode!=null)if(Array.isArray(childRNode))for(let i=0;i<childRNode.length;i++)nativeAppendOrInsertBefore(renderer,parentRNode,childRNode[i],anchorNode,!1);else nativeAppendOrInsertBefore(renderer,parentRNode,childRNode,anchorNode,!1);_processI18nInsertBefore!==void 0&&_processI18nInsertBefore(renderer,childTNode,lView,childRNode,parentRNode)}function getFirstNativeNode(lView,tNode){if(tNode!==null){let tNodeType=tNode.type;if(tNodeType&3)return getNativeByTNode(tNode,lView);if(tNodeType&4)return getBeforeNodeForView(-1,lView[tNode.index]);if(tNodeType&8){let elIcuContainerChild=tNode.child;if(elIcuContainerChild!==null)return getFirstNativeNode(lView,elIcuContainerChild);{let rNodeOrLContainer=lView[tNode.index];return isLContainer(rNodeOrLContainer)?getBeforeNodeForView(-1,rNodeOrLContainer):unwrapRNode(rNodeOrLContainer)}}else{if(tNodeType&128)return getFirstNativeNode(lView,tNode.next);if(tNodeType&32)return icuContainerIterate(tNode,lView)()||unwrapRNode(lView[tNode.index]);{let projectionNodes=getProjectionNodes(lView,tNode);if(projectionNodes!==null){if(Array.isArray(projectionNodes))return projectionNodes[0];let parentView=getLViewParent(lView[DECLARATION_COMPONENT_VIEW]);return getFirstNativeNode(parentView,projectionNodes)}else return getFirstNativeNode(lView,tNode.next)}}}return null}function getProjectionNodes(lView,tNode){if(tNode!==null){let componentHost=lView[DECLARATION_COMPONENT_VIEW][T_HOST],slotIdx=tNode.projection;return componentHost.projection[slotIdx]}return null}function getBeforeNodeForView(viewIndexInContainer,lContainer){let nextViewIndex=CONTAINER_HEADER_OFFSET+viewIndexInContainer+1;if(nextViewIndex<lContainer.length){let lView=lContainer[nextViewIndex],firstTNodeOfView=lView[TVIEW].firstChild;if(firstTNodeOfView!==null)return getFirstNativeNode(lView,firstTNodeOfView)}return lContainer[NATIVE]}function applyNodes(renderer,action,tNode,lView,parentRElement,beforeNode,isProjection){for(;tNode!=null;){if(tNode.type===128){tNode=tNode.next;continue}let rawSlotValue=lView[tNode.index],tNodeType=tNode.type;if(isProjection&&action===0&&(rawSlotValue&&attachPatchData(unwrapRNode(rawSlotValue),lView),tNode.flags|=2),!isDetachedByI18n(tNode))if(tNodeType&8)applyNodes(renderer,action,tNode.child,lView,parentRElement,beforeNode,!1),applyToElementOrContainer(action,renderer,parentRElement,rawSlotValue,beforeNode);else if(tNodeType&32){let nextRNode=icuContainerIterate(tNode,lView),rNode;for(;rNode=nextRNode();)applyToElementOrContainer(action,renderer,parentRElement,rNode,beforeNode);applyToElementOrContainer(action,renderer,parentRElement,rawSlotValue,beforeNode)}else tNodeType&16?applyProjectionRecursive(renderer,action,lView,tNode,parentRElement,beforeNode):applyToElementOrContainer(action,renderer,parentRElement,rawSlotValue,beforeNode);tNode=isProjection?tNode.projectionNext:tNode.next}}function applyView(tView,lView,renderer,action,parentRElement,beforeNode){applyNodes(renderer,action,tView.firstChild,lView,parentRElement,beforeNode,!1)}function applyProjection(tView,lView,tProjectionNode){let renderer=lView[RENDERER],parentRNode=getParentRElement(tView,tProjectionNode,lView),parentTNode=tProjectionNode.parent||lView[T_HOST],beforeNode=getInsertInFrontOfRNode(parentTNode,tProjectionNode,lView);applyProjectionRecursive(renderer,0,lView,tProjectionNode,parentRNode,beforeNode)}function applyProjectionRecursive(renderer,action,lView,tProjectionNode,parentRElement,beforeNode){let componentLView=lView[DECLARATION_COMPONENT_VIEW],nodeToProjectOrRNodes=componentLView[T_HOST].projection[tProjectionNode.projection];if(Array.isArray(nodeToProjectOrRNodes))for(let i=0;i<nodeToProjectOrRNodes.length;i++){let rNode=nodeToProjectOrRNodes[i];applyToElementOrContainer(action,renderer,parentRElement,rNode,beforeNode)}else{let nodeToProject=nodeToProjectOrRNodes,projectedComponentLView=componentLView[PARENT];hasInSkipHydrationBlockFlag(tProjectionNode)&&(nodeToProject.flags|=128),applyNodes(renderer,action,nodeToProject,projectedComponentLView,parentRElement,beforeNode,!0)}}function applyContainer(renderer,action,lContainer,parentRElement,beforeNode){let anchor=lContainer[NATIVE],native=unwrapRNode(lContainer);anchor!==native&&applyToElementOrContainer(action,renderer,parentRElement,anchor,beforeNode);for(let i=CONTAINER_HEADER_OFFSET;i<lContainer.length;i++){let lView=lContainer[i];applyView(lView[TVIEW],lView,renderer,action,parentRElement,anchor)}}function applyStyling(renderer,isClassBased,rNode,prop,value){if(isClassBased)value?renderer.addClass(rNode,prop):renderer.removeClass(rNode,prop);else{let flags=prop.indexOf("-")===-1?void 0:RendererStyleFlags2.DashCase;value==null?renderer.removeStyle(rNode,prop,flags):(typeof value=="string"&&value.endsWith("!important")&&(value=value.slice(0,-10),flags|=RendererStyleFlags2.Important),renderer.setStyle(rNode,prop,value,flags))}}function executeTemplate(tView,lView,templateFn,rf,context2){let prevSelectedIndex=getSelectedIndex(),isUpdatePhase=rf&2;try{setSelectedIndex(-1),isUpdatePhase&&lView.length>HEADER_OFFSET&&selectIndexInternal(tView,lView,HEADER_OFFSET,!1),profiler(isUpdatePhase?2:0,context2,templateFn),templateFn(rf,context2)}finally{setSelectedIndex(prevSelectedIndex),profiler(isUpdatePhase?3:1,context2,templateFn)}}function createDirectivesInstances(tView,lView,tNode){instantiateAllDirectives(tView,lView,tNode),(tNode.flags&64)===64&&invokeDirectivesHostBindings(tView,lView,tNode)}function saveResolvedLocalsInData(viewData,tNode,localRefExtractor=getNativeByTNode){let localNames=tNode.localNames;if(localNames!==null){let localIndex=tNode.index+1;for(let i=0;i<localNames.length;i+=2){let index=localNames[i+1],value=index===-1?localRefExtractor(tNode,viewData):viewData[index];viewData[localIndex++]=value}}}function locateHostElement(renderer,elementOrSelector,encapsulation,injector){let preserveContent=injector.get(PRESERVE_HOST_CONTENT,PRESERVE_HOST_CONTENT_DEFAULT)||encapsulation===ViewEncapsulation.ShadowDom,rootElement=renderer.selectRootElement(elementOrSelector,preserveContent);return applyRootElementTransform(rootElement),rootElement}function applyRootElementTransform(rootElement){_applyRootElementTransformImpl(rootElement)}var _applyRootElementTransformImpl=()=>null;function mapPropName(name){return name==="class"?"className":name==="for"?"htmlFor":name==="formaction"?"formAction":name==="innerHtml"?"innerHTML":name==="readonly"?"readOnly":name==="tabindex"?"tabIndex":name}function setPropertyAndInputs(tNode,lView,propName,value,renderer,sanitizer){let tView=lView[TVIEW];if(setAllInputsForProperty(tNode,tView,lView,propName,value)){isComponentHost(tNode)&&markDirtyIfOnPush(lView,tNode.index);return}tNode.type&3&&(propName=mapPropName(propName)),setDomProperty(tNode,lView,propName,value,renderer,sanitizer)}function setDomProperty(tNode,lView,propName,value,renderer,sanitizer){if(tNode.type&3){let element=getNativeByTNode(tNode,lView);value=sanitizer!=null?sanitizer(value,tNode.value||"",propName):value,renderer.setProperty(element,propName,value)}else tNode.type&12}function markDirtyIfOnPush(lView,viewIndex){let childComponentLView=getComponentLViewByIndex(viewIndex,lView);childComponentLView[FLAGS]&16||(childComponentLView[FLAGS]|=64)}function instantiateAllDirectives(tView,lView,tNode){let start=tNode.directiveStart,end=tNode.directiveEnd;isComponentHost(tNode)&&createComponentLView(lView,tNode,tView.data[start+tNode.componentOffset]),tView.firstCreatePass||getOrCreateNodeInjectorForNode(tNode,lView);let initialInputs=tNode.initialInputs;for(let i=start;i<end;i++){let def=tView.data[i],directive=getNodeInjectable(lView,tView,i,tNode);if(attachPatchData(directive,lView),initialInputs!==null&&setInputsFromAttrs(lView,i-start,directive,def,tNode,initialInputs),isComponentDef(def)){let componentView=getComponentLViewByIndex(tNode.index,lView);componentView[CONTEXT]=getNodeInjectable(lView,tView,i,tNode)}}}function invokeDirectivesHostBindings(tView,lView,tNode){let start=tNode.directiveStart,end=tNode.directiveEnd,elementIndex=tNode.index,currentDirectiveIndex=getCurrentDirectiveIndex();try{setSelectedIndex(elementIndex);for(let dirIndex=start;dirIndex<end;dirIndex++){let def=tView.data[dirIndex],directive=lView[dirIndex];setCurrentDirectiveIndex(dirIndex),(def.hostBindings!==null||def.hostVars!==0||def.hostAttrs!==null)&&invokeHostBindingsInCreationMode(def,directive)}}finally{setSelectedIndex(-1),setCurrentDirectiveIndex(currentDirectiveIndex)}}function invokeHostBindingsInCreationMode(def,directive){def.hostBindings!==null&&def.hostBindings(1,directive)}function findDirectiveDefMatches(tView,tNode){let registry2=tView.directiveRegistry,matches=null;if(registry2)for(let i=0;i<registry2.length;i++){let def=registry2[i];isNodeMatchingSelectorList(tNode,def.selectors,!1)&&(matches??=[],isComponentDef(def)?matches.unshift(def):matches.push(def))}return matches}function elementAttributeInternal(tNode,lView,name,value,sanitizer,namespace){let element=getNativeByTNode(tNode,lView);setElementAttribute(lView[RENDERER],element,namespace,tNode.value,name,value,sanitizer)}function setElementAttribute(renderer,element,namespace,tagName,name,value,sanitizer){if(value==null)renderer.removeAttribute(element,name,namespace);else{let strValue=sanitizer==null?renderStringify(value):sanitizer(value,tagName||"",name);renderer.setAttribute(element,name,strValue,namespace)}}function setInputsFromAttrs(lView,directiveIndex,instance,def,tNode,initialInputData){let initialInputs=initialInputData[directiveIndex];if(initialInputs!==null)for(let i=0;i<initialInputs.length;i+=2){let lookupName=initialInputs[i],value=initialInputs[i+1];writeToDirectiveInput(def,instance,lookupName,value)}}function elementLikeStartShared(tNode,lView,index,name,locateOrCreateNativeNode){let adjustedIndex=HEADER_OFFSET+index,tView=lView[TVIEW],native=locateOrCreateNativeNode(tView,lView,tNode,name,index);lView[adjustedIndex]=native,setCurrentTNode(tNode,!0);let isElement=tNode.type===2;return isElement?(setupStaticAttributes(lView[RENDERER],native,tNode),(getElementDepthCount()===0||isDirectiveHost(tNode))&&attachPatchData(native,lView),increaseElementDepthCount()):attachPatchData(native,lView),wasLastNodeCreated()&&(!isElement||!isDetachedByI18n(tNode))&&appendChild(tView,lView,native,tNode),tNode}function elementLikeEndShared(tNode){let currentTNode=tNode;return isCurrentTNodeParent()?setCurrentTNodeAsNotParent():(currentTNode=currentTNode.parent,setCurrentTNode(currentTNode,!1)),currentTNode}function handleUncaughtError(lView,error){let injector=lView[INJECTOR];if(!injector)return;injector.get(INTERNAL_APPLICATION_ERROR_HANDLER,null)?.(error)}function setAllInputsForProperty(tNode,tView,lView,publicName,value){let inputs2=tNode.inputs?.[publicName],hostDirectiveInputs=tNode.hostDirectiveInputs?.[publicName],hasMatch=!1;if(hostDirectiveInputs)for(let i=0;i<hostDirectiveInputs.length;i+=2){let index=hostDirectiveInputs[i],publicName2=hostDirectiveInputs[i+1],def=tView.data[index];writeToDirectiveInput(def,lView[index],publicName2,value),hasMatch=!0}if(inputs2)for(let index of inputs2){let instance=lView[index],def=tView.data[index];writeToDirectiveInput(def,instance,publicName,value),hasMatch=!0}return hasMatch}function renderComponent(hostLView,componentHostIdx){let componentView=getComponentLViewByIndex(componentHostIdx,hostLView),componentTView=componentView[TVIEW];syncViewWithBlueprint(componentTView,componentView);let hostRNode=componentView[HOST];hostRNode!==null&&componentView[HYDRATION]===null&&(componentView[HYDRATION]=retrieveHydrationInfo(hostRNode,componentView[INJECTOR])),profiler(18),renderView(componentTView,componentView,componentView[CONTEXT]),profiler(19,componentView[CONTEXT])}function syncViewWithBlueprint(tView,lView){for(let i=lView.length;i<tView.blueprint.length;i++)lView.push(tView.blueprint[i])}function renderView(tView,lView,context2){enterView(lView);try{let viewQuery=tView.viewQuery;viewQuery!==null&&executeViewQueryFn(1,viewQuery,context2);let templateFn=tView.template;templateFn!==null&&executeTemplate(tView,lView,templateFn,1,context2),tView.firstCreatePass&&(tView.firstCreatePass=!1),lView[QUERIES]?.finishViewCreation(tView),tView.staticContentQueries&&refreshContentQueries(tView,lView),tView.staticViewQueries&&executeViewQueryFn(2,tView.viewQuery,context2);let components=tView.components;components!==null&&renderChildComponents(lView,components)}catch(error){throw tView.firstCreatePass&&(tView.incompleteFirstPass=!0,tView.firstCreatePass=!1),error}finally{lView[FLAGS]&=-5,leaveView()}}function renderChildComponents(hostLView,components){for(let i=0;i<components.length;i++)renderComponent(hostLView,components[i])}function createAndRenderEmbeddedLView(declarationLView,templateTNode,context2,options){let prevConsumer=setActiveConsumer(null);try{let embeddedTView=templateTNode.tView,viewFlags=declarationLView[FLAGS]&4096?4096:16,embeddedLView=createLView(declarationLView,embeddedTView,context2,viewFlags,null,templateTNode,null,null,options?.injector??null,options?.embeddedViewInjector??null,options?.dehydratedView??null),declarationLContainer=declarationLView[templateTNode.index];embeddedLView[DECLARATION_LCONTAINER]=declarationLContainer;let declarationViewLQueries=declarationLView[QUERIES];return declarationViewLQueries!==null&&(embeddedLView[QUERIES]=declarationViewLQueries.createEmbeddedView(embeddedTView)),renderView(embeddedTView,embeddedLView,context2),embeddedLView}finally{setActiveConsumer(prevConsumer)}}function shouldAddViewToDom(tNode,dehydratedView){return!dehydratedView||dehydratedView.firstChild===null||hasInSkipHydrationBlockFlag(tNode)}var USE_EXHAUSTIVE_CHECK_NO_CHANGES_DEFAULT=!1,UseExhaustiveCheckNoChanges=new InjectionToken("");function collectNativeNodes(tView,lView,tNode,result,isProjection=!1){for(;tNode!==null;){if(tNode.type===128){tNode=isProjection?tNode.projectionNext:tNode.next;continue}let lNode=lView[tNode.index];lNode!==null&&result.push(unwrapRNode(lNode)),isLContainer(lNode)&&collectNativeNodesInLContainer(lNode,result);let tNodeType=tNode.type;if(tNodeType&8)collectNativeNodes(tView,lView,tNode.child,result);else if(tNodeType&32){let nextRNode=icuContainerIterate(tNode,lView),rNode;for(;rNode=nextRNode();)result.push(rNode)}else if(tNodeType&16){let nodesInSlot=getProjectionNodes(lView,tNode);if(Array.isArray(nodesInSlot))result.push(...nodesInSlot);else{let parentView=getLViewParent(lView[DECLARATION_COMPONENT_VIEW]);collectNativeNodes(parentView[TVIEW],parentView,nodesInSlot,result,!0)}}tNode=isProjection?tNode.projectionNext:tNode.next}return result}function collectNativeNodesInLContainer(lContainer,result){for(let i=CONTAINER_HEADER_OFFSET;i<lContainer.length;i++){let lViewInAContainer=lContainer[i],lViewFirstChildTNode=lViewInAContainer[TVIEW].firstChild;lViewFirstChildTNode!==null&&collectNativeNodes(lViewInAContainer[TVIEW],lViewInAContainer,lViewFirstChildTNode,result)}lContainer[NATIVE]!==lContainer[HOST]&&result.push(lContainer[NATIVE])}function addAfterRenderSequencesForView(lView){if(lView[AFTER_RENDER_SEQUENCES_TO_ADD]!==null){for(let sequence2 of lView[AFTER_RENDER_SEQUENCES_TO_ADD])sequence2.impl.addSequence(sequence2);lView[AFTER_RENDER_SEQUENCES_TO_ADD].length=0}}var freeConsumers=[];function getOrBorrowReactiveLViewConsumer(lView){return lView[REACTIVE_TEMPLATE_CONSUMER]??borrowReactiveLViewConsumer(lView)}function borrowReactiveLViewConsumer(lView){let consumer=freeConsumers.pop()??Object.create(REACTIVE_LVIEW_CONSUMER_NODE);return consumer.lView=lView,consumer}function maybeReturnReactiveLViewConsumer(consumer){consumer.lView[REACTIVE_TEMPLATE_CONSUMER]!==consumer&&(consumer.lView=null,freeConsumers.push(consumer))}var REACTIVE_LVIEW_CONSUMER_NODE=__spreadProps(__spreadValues({},REACTIVE_NODE),{consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:node=>{markAncestorsForTraversal(node.lView)},consumerOnSignalRead(){this.lView[REACTIVE_TEMPLATE_CONSUMER]=this}});function getOrCreateTemporaryConsumer(lView){let consumer=lView[REACTIVE_TEMPLATE_CONSUMER]??Object.create(TEMPORARY_CONSUMER_NODE);return consumer.lView=lView,consumer}var TEMPORARY_CONSUMER_NODE=__spreadProps(__spreadValues({},REACTIVE_NODE),{consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:node=>{let parent=getLViewParent(node.lView);for(;parent&&!viewShouldHaveReactiveConsumer(parent[TVIEW]);)parent=getLViewParent(parent);parent&&markViewForRefresh(parent)},consumerOnSignalRead(){this.lView[REACTIVE_TEMPLATE_CONSUMER]=this}});function viewShouldHaveReactiveConsumer(tView){return tView.type!==2}function runEffectsInView(view){if(view[EFFECTS]===null)return;let tryFlushEffects=!0;for(;tryFlushEffects;){let foundDirtyEffect=!1;for(let effect2 of view[EFFECTS])effect2.dirty&&(foundDirtyEffect=!0,effect2.zone===null||Zone.current===effect2.zone?effect2.run():effect2.zone.run(()=>effect2.run()));tryFlushEffects=foundDirtyEffect&&!!(view[FLAGS]&8192)}}var MAXIMUM_REFRESH_RERUNS$1=100;function detectChangesInternal(lView,mode=0){let rendererFactory=lView[ENVIRONMENT].rendererFactory,checkNoChangesMode=!1;checkNoChangesMode||rendererFactory.begin?.();try{detectChangesInViewWhileDirty(lView,mode)}finally{checkNoChangesMode||rendererFactory.end?.()}}function detectChangesInViewWhileDirty(lView,mode){let lastIsRefreshingViewsValue=isRefreshingViews();try{setIsRefreshingViews(!0),detectChangesInView(lView,mode);let retries=0;for(;requiresRefreshOrTraversal(lView);){if(retries===MAXIMUM_REFRESH_RERUNS$1)throw new RuntimeError(103,!1);retries++,detectChangesInView(lView,1)}}finally{setIsRefreshingViews(lastIsRefreshingViewsValue)}}function checkNoChangesInternal(lView,exhaustive){setIsInCheckNoChangesMode(exhaustive?CheckNoChangesMode.Exhaustive:CheckNoChangesMode.OnlyDirtyViews);try{detectChangesInternal(lView)}finally{setIsInCheckNoChangesMode(CheckNoChangesMode.Off)}}function refreshView(tView,lView,templateFn,context2){if(isDestroyed(lView))return;let flags=lView[FLAGS],isInCheckNoChangesPass=!1,isInExhaustiveCheckNoChangesPass=!1;enterView(lView);let returnConsumerToPool=!0,prevConsumer=null,currentConsumer=null;isInCheckNoChangesPass||(viewShouldHaveReactiveConsumer(tView)?(currentConsumer=getOrBorrowReactiveLViewConsumer(lView),prevConsumer=consumerBeforeComputation(currentConsumer)):getActiveConsumer()===null?(returnConsumerToPool=!1,currentConsumer=getOrCreateTemporaryConsumer(lView),prevConsumer=consumerBeforeComputation(currentConsumer)):lView[REACTIVE_TEMPLATE_CONSUMER]&&(consumerDestroy(lView[REACTIVE_TEMPLATE_CONSUMER]),lView[REACTIVE_TEMPLATE_CONSUMER]=null));try{resetPreOrderHookFlags(lView),setBindingIndex(tView.bindingStartIndex),templateFn!==null&&executeTemplate(tView,lView,templateFn,2,context2);let hooksInitPhaseCompleted=(flags&3)===3;if(!isInCheckNoChangesPass)if(hooksInitPhaseCompleted){let preOrderCheckHooks=tView.preOrderCheckHooks;preOrderCheckHooks!==null&&executeCheckHooks(lView,preOrderCheckHooks,null)}else{let preOrderHooks=tView.preOrderHooks;preOrderHooks!==null&&executeInitAndCheckHooks(lView,preOrderHooks,0,null),incrementInitPhaseFlags(lView,0)}if(isInExhaustiveCheckNoChangesPass||markTransplantedViewsForRefresh(lView),runEffectsInView(lView),detectChangesInEmbeddedViews(lView,0),tView.contentQueries!==null&&refreshContentQueries(tView,lView),!isInCheckNoChangesPass)if(hooksInitPhaseCompleted){let contentCheckHooks=tView.contentCheckHooks;contentCheckHooks!==null&&executeCheckHooks(lView,contentCheckHooks)}else{let contentHooks=tView.contentHooks;contentHooks!==null&&executeInitAndCheckHooks(lView,contentHooks,1),incrementInitPhaseFlags(lView,1)}processHostBindingOpCodes(tView,lView);let components=tView.components;components!==null&&detectChangesInChildComponents(lView,components,0);let viewQuery=tView.viewQuery;if(viewQuery!==null&&executeViewQueryFn(2,viewQuery,context2),!isInCheckNoChangesPass)if(hooksInitPhaseCompleted){let viewCheckHooks=tView.viewCheckHooks;viewCheckHooks!==null&&executeCheckHooks(lView,viewCheckHooks)}else{let viewHooks=tView.viewHooks;viewHooks!==null&&executeInitAndCheckHooks(lView,viewHooks,2),incrementInitPhaseFlags(lView,2)}if(tView.firstUpdatePass===!0&&(tView.firstUpdatePass=!1),lView[EFFECTS_TO_SCHEDULE]){for(let notifyEffect of lView[EFFECTS_TO_SCHEDULE])notifyEffect();lView[EFFECTS_TO_SCHEDULE]=null}isInCheckNoChangesPass||(addAfterRenderSequencesForView(lView),lView[FLAGS]&=-73)}catch(e){throw isInCheckNoChangesPass||markAncestorsForTraversal(lView),e}finally{currentConsumer!==null&&(consumerAfterComputation(currentConsumer,prevConsumer),returnConsumerToPool&&maybeReturnReactiveLViewConsumer(currentConsumer)),leaveView()}}function detectChangesInEmbeddedViews(lView,mode){for(let lContainer=getFirstLContainer(lView);lContainer!==null;lContainer=getNextLContainer(lContainer))for(let i=CONTAINER_HEADER_OFFSET;i<lContainer.length;i++){let embeddedLView=lContainer[i];detectChangesInViewIfAttached(embeddedLView,mode)}}function markTransplantedViewsForRefresh(lView){for(let lContainer=getFirstLContainer(lView);lContainer!==null;lContainer=getNextLContainer(lContainer)){if(!(lContainer[FLAGS]&2))continue;let movedViews=lContainer[MOVED_VIEWS];for(let i=0;i<movedViews.length;i++){let movedLView=movedViews[i];markViewForRefresh(movedLView)}}}function detectChangesInComponent(hostLView,componentHostIdx,mode){profiler(18);let componentView=getComponentLViewByIndex(componentHostIdx,hostLView);detectChangesInViewIfAttached(componentView,mode),profiler(19,componentView[CONTEXT])}function detectChangesInViewIfAttached(lView,mode){viewAttachedToChangeDetector(lView)&&detectChangesInView(lView,mode)}function detectChangesInView(lView,mode){let tView=lView[TVIEW],flags=lView[FLAGS],consumer=lView[REACTIVE_TEMPLATE_CONSUMER],shouldRefreshView=!!(mode===0&&flags&16);if(shouldRefreshView||=!!(flags&64&&mode===0),shouldRefreshView||=!!(flags&1024),shouldRefreshView||=!!(consumer?.dirty&&consumerPollProducersForChange(consumer)),shouldRefreshView||=!1,consumer&&(consumer.dirty=!1),lView[FLAGS]&=-9217,shouldRefreshView)refreshView(tView,lView,tView.template,lView[CONTEXT]);else if(flags&8192){let prevConsumer=setActiveConsumer(null);try{runEffectsInView(lView),detectChangesInEmbeddedViews(lView,1);let components=tView.components;components!==null&&detectChangesInChildComponents(lView,components,1),addAfterRenderSequencesForView(lView)}finally{setActiveConsumer(prevConsumer)}}}function detectChangesInChildComponents(hostLView,components,mode){for(let i=0;i<components.length;i++)detectChangesInComponent(hostLView,components[i],mode)}function processHostBindingOpCodes(tView,lView){let hostBindingOpCodes=tView.hostBindingOpCodes;if(hostBindingOpCodes!==null)try{for(let i=0;i<hostBindingOpCodes.length;i++){let opCode=hostBindingOpCodes[i];if(opCode<0)setSelectedIndex(~opCode);else{let directiveIdx=opCode,bindingRootIndx=hostBindingOpCodes[++i],hostBindingFn=hostBindingOpCodes[++i];setBindingRootForHostBindings(bindingRootIndx,directiveIdx);let context2=lView[directiveIdx];profiler(24,context2),hostBindingFn(2,context2),profiler(25,context2)}}}finally{setSelectedIndex(-1)}}function markViewDirty(lView,source){let dirtyBitsToUse=isRefreshingViews()?64:1088;for(lView[ENVIRONMENT].changeDetectionScheduler?.notify(source);lView;){lView[FLAGS]|=dirtyBitsToUse;let parent=getLViewParent(lView);if(isRootView(lView)&&!parent)return lView;lView=parent}return null}function createLContainer(hostNative,currentView,native,tNode){return[hostNative,!0,0,currentView,null,tNode,null,native,null,null]}function getLViewFromLContainer(lContainer,index){let adjustedIndex=CONTAINER_HEADER_OFFSET+index;if(adjustedIndex<lContainer.length)return lContainer[adjustedIndex]}function addLViewToLContainer(lContainer,lView,index,addToDOM=!0){let tView=lView[TVIEW];if(insertView(tView,lView,lContainer,index),addToDOM){let beforeNode=getBeforeNodeForView(index,lContainer),renderer=lView[RENDERER],parentRNode=renderer.parentNode(lContainer[NATIVE]);parentRNode!==null&&addViewToDOM(tView,lContainer[T_HOST],renderer,lView,parentRNode,beforeNode)}let hydrationInfo=lView[HYDRATION];hydrationInfo!==null&&hydrationInfo.firstChild!==null&&(hydrationInfo.firstChild=null)}function removeLViewFromLContainer(lContainer,index){let lView=detachView(lContainer,index);return lView!==void 0&&destroyLView(lView[TVIEW],lView),lView}function detachView(lContainer,removeIndex){if(lContainer.length<=CONTAINER_HEADER_OFFSET)return;let indexInContainer=CONTAINER_HEADER_OFFSET+removeIndex,viewToDetach=lContainer[indexInContainer];if(viewToDetach){let declarationLContainer=viewToDetach[DECLARATION_LCONTAINER];declarationLContainer!==null&&declarationLContainer!==lContainer&&detachMovedView(declarationLContainer,viewToDetach),removeIndex>0&&(lContainer[indexInContainer-1][NEXT]=viewToDetach[NEXT]);let removedLView=removeFromArray(lContainer,CONTAINER_HEADER_OFFSET+removeIndex);removeViewFromDOM(viewToDetach[TVIEW],viewToDetach);let lQueries=removedLView[QUERIES];lQueries!==null&&lQueries.detachView(removedLView[TVIEW]),viewToDetach[PARENT]=null,viewToDetach[NEXT]=null,viewToDetach[FLAGS]&=-129}return viewToDetach}function insertView(tView,lView,lContainer,index){let indexInContainer=CONTAINER_HEADER_OFFSET+index,containerLength=lContainer.length;index>0&&(lContainer[indexInContainer-1][NEXT]=lView),index<containerLength-CONTAINER_HEADER_OFFSET?(lView[NEXT]=lContainer[indexInContainer],addToArray(lContainer,CONTAINER_HEADER_OFFSET+index,lView)):(lContainer.push(lView),lView[NEXT]=null),lView[PARENT]=lContainer;let declarationLContainer=lView[DECLARATION_LCONTAINER];declarationLContainer!==null&&lContainer!==declarationLContainer&&trackMovedView(declarationLContainer,lView);let lQueries=lView[QUERIES];lQueries!==null&&lQueries.insertView(tView),updateAncestorTraversalFlagsOnAttach(lView),lView[FLAGS]|=128}function trackMovedView(declarationContainer,lView){let movedViews=declarationContainer[MOVED_VIEWS],parent=lView[PARENT];if(isLView(parent))declarationContainer[FLAGS]|=2;else{let insertedComponentLView=parent[PARENT][DECLARATION_COMPONENT_VIEW];lView[DECLARATION_COMPONENT_VIEW]!==insertedComponentLView&&(declarationContainer[FLAGS]|=2)}movedViews===null?declarationContainer[MOVED_VIEWS]=[lView]:movedViews.push(lView)}var ViewRef=class{_lView;_cdRefInjectingView;_appRef=null;_attachedToViewContainer=!1;exhaustive;get rootNodes(){let lView=this._lView,tView=lView[TVIEW];return collectNativeNodes(tView,lView,tView.firstChild,[])}constructor(_lView,_cdRefInjectingView){this._lView=_lView,this._cdRefInjectingView=_cdRefInjectingView}get context(){return this._lView[CONTEXT]}set context(value){this._lView[CONTEXT]=value}get destroyed(){return isDestroyed(this._lView)}destroy(){if(this._appRef)this._appRef.detachView(this);else if(this._attachedToViewContainer){let parent=this._lView[PARENT];if(isLContainer(parent)){let viewRefs=parent[VIEW_REFS],index=viewRefs?viewRefs.indexOf(this):-1;index>-1&&(detachView(parent,index),removeFromArray(viewRefs,index))}this._attachedToViewContainer=!1}destroyLView(this._lView[TVIEW],this._lView)}onDestroy(callback){storeLViewOnDestroy(this._lView,callback)}markForCheck(){markViewDirty(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[FLAGS]&=-129}reattach(){updateAncestorTraversalFlagsOnAttach(this._lView),this._lView[FLAGS]|=128}detectChanges(){this._lView[FLAGS]|=1024,detectChangesInternal(this._lView)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new RuntimeError(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;let isRoot=isRootView(this._lView),declarationContainer=this._lView[DECLARATION_LCONTAINER];declarationContainer!==null&&!isRoot&&detachMovedView(declarationContainer,this._lView),detachViewFromDOM(this._lView[TVIEW],this._lView)}attachToAppRef(appRef){if(this._attachedToViewContainer)throw new RuntimeError(902,!1);this._appRef=appRef;let isRoot=isRootView(this._lView),declarationContainer=this._lView[DECLARATION_LCONTAINER];declarationContainer!==null&&!isRoot&&trackMovedView(declarationContainer,this._lView),updateAncestorTraversalFlagsOnAttach(this._lView)}};var TemplateRef=(()=>{class TemplateRef2{_declarationLView;_declarationTContainer;elementRef;static __NG_ELEMENT_ID__=injectTemplateRef;constructor(_declarationLView,_declarationTContainer,elementRef){this._declarationLView=_declarationLView,this._declarationTContainer=_declarationTContainer,this.elementRef=elementRef}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(context2,injector){return this.createEmbeddedViewImpl(context2,injector)}createEmbeddedViewImpl(context2,injector,dehydratedView){let embeddedLView=createAndRenderEmbeddedLView(this._declarationLView,this._declarationTContainer,context2,{embeddedViewInjector:injector,dehydratedView});return new ViewRef(embeddedLView)}}return TemplateRef2})();function injectTemplateRef(){return createTemplateRef(getCurrentTNode(),getLView())}function createTemplateRef(hostTNode,hostLView){return hostTNode.type&4?new TemplateRef(hostLView,hostTNode,createElementRef(hostTNode,hostLView)):null}function getOrCreateTNode(tView,index,type2,name,attrs){let tNode=tView.data[index];if(tNode===null)tNode=createTNodeAtIndex(tView,index,type2,name,attrs),isInI18nBlock()&&(tNode.flags|=32);else if(tNode.type&64){tNode.type=type2,tNode.value=name,tNode.attrs=attrs;let parent=getCurrentParentTNode();tNode.injectorIndex=parent===null?-1:parent.injectorIndex}return setCurrentTNode(tNode,!0),tNode}function createTNodeAtIndex(tView,index,type2,name,attrs){let currentTNode=getCurrentTNodePlaceholderOk(),isParent=isCurrentTNodeParent(),parent=isParent?currentTNode:currentTNode&¤tTNode.parent,tNode=tView.data[index]=createTNode(tView,parent,type2,index,name,attrs);return linkTNodeInTView(tView,tNode,currentTNode,isParent),tNode}function linkTNodeInTView(tView,tNode,currentTNode,isParent){tView.firstChild===null&&(tView.firstChild=tNode),currentTNode!==null&&(isParent?currentTNode.child==null&&tNode.parent!==null&&(currentTNode.child=tNode):currentTNode.next===null&&(currentTNode.next=tNode,tNode.prev=currentTNode))}function createTNode(tView,tParent,type2,index,value,attrs){let injectorIndex=tParent?tParent.injectorIndex:-1,flags=0;return isInSkipHydrationBlock()&&(flags|=128),{type:type2,index,insertBeforeIndex:null,injectorIndex,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags,providerIndexes:0,value,attrs,mergedAttrs:null,localNames:null,initialInputs:null,inputs:null,hostDirectiveInputs:null,outputs:null,hostDirectiveOutputs:null,directiveToIndex:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:tParent,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}var REF_EXTRACTOR_REGEXP=new RegExp(`^(\\d+)*(${REFERENCE_NODE_BODY}|${REFERENCE_NODE_HOST})*(.*)`);function removeDehydratedViews(lContainer){let views=lContainer[DEHYDRATED_VIEWS]??[],renderer=lContainer[PARENT][RENDERER],retainedViews=[];for(let view of views)view.data[DEFER_BLOCK_ID]!==void 0?retainedViews.push(view):removeDehydratedView(view,renderer);lContainer[DEHYDRATED_VIEWS]=retainedViews}function removeDehydratedView(dehydratedView,renderer){let nodesRemoved=0,currentRNode=dehydratedView.firstChild;if(currentRNode){let numNodes=dehydratedView.data[NUM_ROOT_NODES];for(;nodesRemoved<numNodes;){let nextSibling=currentRNode.nextSibling;nativeRemoveNode(renderer,currentRNode,!1),currentRNode=nextSibling,nodesRemoved++}}}var _findMatchingDehydratedViewImpl=()=>null,_findAndReconcileMatchingDehydratedViewsImpl=()=>null;function findMatchingDehydratedView(lContainer,template){return _findMatchingDehydratedViewImpl(lContainer,template)}function findAndReconcileMatchingDehydratedViews(lContainer,templateTNode,hostLView){return _findAndReconcileMatchingDehydratedViewsImpl(lContainer,templateTNode,hostLView)}var ComponentRef$1=class{},ComponentFactory$1=class{},_NullComponentFactoryResolver=class{resolveComponentFactory(component){throw new RuntimeError(917,!1)}},ComponentFactoryResolver$1=class{static NULL=new _NullComponentFactoryResolver},RendererFactory2=class{},Renderer2=(()=>{class Renderer22{destroyNode=null;static __NG_ELEMENT_ID__=()=>injectRenderer2()}return Renderer22})();function injectRenderer2(){let lView=getLView(),tNode=getCurrentTNode(),nodeAtIndex=getComponentLViewByIndex(tNode.index,lView);return(isLView(nodeAtIndex)?nodeAtIndex:lView)[RENDERER]}var Sanitizer=(()=>{class Sanitizer2{static \u0275prov=\u0275\u0275defineInjectable({token:Sanitizer2,providedIn:"root",factory:()=>null})}return Sanitizer2})();var NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR={},ChainedInjector=class{injector;parentInjector;constructor(injector,parentInjector){this.injector=injector,this.parentInjector=parentInjector}get(token,notFoundValue,options){let value=this.injector.get(token,NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR,options);return value!==NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR||notFoundValue===NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR?value:this.parentInjector.get(token,notFoundValue,options)}};function computeStaticStyling(tNode,attrs,writeToHost){let styles=writeToHost?tNode.styles:null,classes=writeToHost?tNode.classes:null,mode=0;if(attrs!==null)for(let i=0;i<attrs.length;i++){let value=attrs[i];if(typeof value=="number")mode=value;else if(mode==1)classes=concatStringsWithSpace(classes,value);else if(mode==2){let style2=value,styleValue=attrs[++i];styles=concatStringsWithSpace(styles,style2+": "+styleValue+";")}}writeToHost?tNode.styles=styles:tNode.stylesWithoutHost=styles,writeToHost?tNode.classes=classes:tNode.classesWithoutHost=classes}function \u0275\u0275directiveInject(token,flags=0){let lView=getLView();if(lView===null)return \u0275\u0275inject(token,flags);let tNode=getCurrentTNode();return getOrCreateInjectable(tNode,lView,resolveForwardRef(token),flags)}function \u0275\u0275invalidFactory(){let msg="invalid";throw new Error(msg)}function resolveDirectives(tView,lView,tNode,localRefs,directiveMatcher){let exportsMap=localRefs===null?null:{"":-1},matchedDirectiveDefs=directiveMatcher(tView,tNode);if(matchedDirectiveDefs!==null){let directiveDefs=matchedDirectiveDefs,hostDirectiveDefs=null,hostDirectiveRanges=null;for(let def of matchedDirectiveDefs)if(def.resolveHostDirectives!==null){[directiveDefs,hostDirectiveDefs,hostDirectiveRanges]=def.resolveHostDirectives(matchedDirectiveDefs);break}initializeDirectives(tView,lView,tNode,directiveDefs,exportsMap,hostDirectiveDefs,hostDirectiveRanges)}exportsMap!==null&&localRefs!==null&&cacheMatchingLocalNames(tNode,localRefs,exportsMap)}function cacheMatchingLocalNames(tNode,localRefs,exportsMap){let localNames=tNode.localNames=[];for(let i=0;i<localRefs.length;i+=2){let index=exportsMap[localRefs[i+1]];if(index==null)throw new RuntimeError(-301,!1);localNames.push(localRefs[i],index)}}function markAsComponentHost(tView,hostTNode,componentOffset){hostTNode.componentOffset=componentOffset,(tView.components??=[]).push(hostTNode.index)}function initializeDirectives(tView,lView,tNode,directives,exportsMap,hostDirectiveDefs,hostDirectiveRanges){let directivesLength=directives.length,hasSeenComponent=!1;for(let i=0;i<directivesLength;i++){let def=directives[i];!hasSeenComponent&&isComponentDef(def)&&(hasSeenComponent=!0,markAsComponentHost(tView,tNode,i)),diPublicInInjector(getOrCreateNodeInjectorForNode(tNode,lView),tView,def.type)}initTNodeFlags(tNode,tView.data.length,directivesLength);for(let i=0;i<directivesLength;i++){let def=directives[i];def.providersResolver&&def.providersResolver(def)}let preOrderHooksFound=!1,preOrderCheckHooksFound=!1,directiveIdx=allocExpando(tView,lView,directivesLength,null);directivesLength>0&&(tNode.directiveToIndex=new Map);for(let i=0;i<directivesLength;i++){let def=directives[i];if(tNode.mergedAttrs=mergeHostAttrs(tNode.mergedAttrs,def.hostAttrs),configureViewWithDirective(tView,tNode,lView,directiveIdx,def),saveNameToExportMap(directiveIdx,def,exportsMap),hostDirectiveRanges!==null&&hostDirectiveRanges.has(def)){let[start,end]=hostDirectiveRanges.get(def);tNode.directiveToIndex.set(def.type,[directiveIdx,start+tNode.directiveStart,end+tNode.directiveStart])}else(hostDirectiveDefs===null||!hostDirectiveDefs.has(def))&&tNode.directiveToIndex.set(def.type,directiveIdx);def.contentQueries!==null&&(tNode.flags|=4),(def.hostBindings!==null||def.hostAttrs!==null||def.hostVars!==0)&&(tNode.flags|=64);let lifeCycleHooks=def.type.prototype;!preOrderHooksFound&&(lifeCycleHooks.ngOnChanges||lifeCycleHooks.ngOnInit||lifeCycleHooks.ngDoCheck)&&((tView.preOrderHooks??=[]).push(tNode.index),preOrderHooksFound=!0),!preOrderCheckHooksFound&&(lifeCycleHooks.ngOnChanges||lifeCycleHooks.ngDoCheck)&&((tView.preOrderCheckHooks??=[]).push(tNode.index),preOrderCheckHooksFound=!0),directiveIdx++}initializeInputAndOutputAliases(tView,tNode,hostDirectiveDefs)}function initializeInputAndOutputAliases(tView,tNode,hostDirectiveDefs){for(let index=tNode.directiveStart;index<tNode.directiveEnd;index++){let directiveDef=tView.data[index];if(hostDirectiveDefs===null||!hostDirectiveDefs.has(directiveDef))setupSelectorMatchedInputsOrOutputs(0,tNode,directiveDef,index),setupSelectorMatchedInputsOrOutputs(1,tNode,directiveDef,index),setupInitialInputs(tNode,index,!1);else{let hostDirectiveDef=hostDirectiveDefs.get(directiveDef);setupHostDirectiveInputsOrOutputs(0,tNode,hostDirectiveDef,index),setupHostDirectiveInputsOrOutputs(1,tNode,hostDirectiveDef,index),setupInitialInputs(tNode,index,!0)}}}function setupSelectorMatchedInputsOrOutputs(mode,tNode,def,directiveIndex){let aliasMap=mode===0?def.inputs:def.outputs;for(let publicName in aliasMap)if(aliasMap.hasOwnProperty(publicName)){let bindings;mode===0?bindings=tNode.inputs??={}:bindings=tNode.outputs??={},bindings[publicName]??=[],bindings[publicName].push(directiveIndex),setShadowStylingInputFlags(tNode,publicName)}}function setupHostDirectiveInputsOrOutputs(mode,tNode,config2,directiveIndex){let aliasMap=mode===0?config2.inputs:config2.outputs;for(let initialName in aliasMap)if(aliasMap.hasOwnProperty(initialName)){let publicName=aliasMap[initialName],bindings;mode===0?bindings=tNode.hostDirectiveInputs??={}:bindings=tNode.hostDirectiveOutputs??={},bindings[publicName]??=[],bindings[publicName].push(directiveIndex,initialName),setShadowStylingInputFlags(tNode,publicName)}}function setShadowStylingInputFlags(tNode,publicName){publicName==="class"?tNode.flags|=8:publicName==="style"&&(tNode.flags|=16)}function setupInitialInputs(tNode,directiveIndex,isHostDirective){let{attrs,inputs:inputs2,hostDirectiveInputs}=tNode;if(attrs===null||!isHostDirective&&inputs2===null||isHostDirective&&hostDirectiveInputs===null||isInlineTemplate(tNode)){tNode.initialInputs??=[],tNode.initialInputs.push(null);return}let inputsToStore=null,i=0;for(;i<attrs.length;){let attrName=attrs[i];if(attrName===0){i+=4;continue}else if(attrName===5){i+=2;continue}else if(typeof attrName=="number")break;if(!isHostDirective&&inputs2.hasOwnProperty(attrName)){let inputConfig=inputs2[attrName];for(let index of inputConfig)if(index===directiveIndex){inputsToStore??=[],inputsToStore.push(attrName,attrs[i+1]);break}}else if(isHostDirective&&hostDirectiveInputs.hasOwnProperty(attrName)){let config2=hostDirectiveInputs[attrName];for(let j=0;j<config2.length;j+=2)if(config2[j]===directiveIndex){inputsToStore??=[],inputsToStore.push(config2[j+1],attrs[i+1]);break}}i+=2}tNode.initialInputs??=[],tNode.initialInputs.push(inputsToStore)}function configureViewWithDirective(tView,tNode,lView,directiveIndex,def){tView.data[directiveIndex]=def;let directiveFactory=def.factory||(def.factory=getFactoryDef(def.type,!0)),nodeInjectorFactory=new NodeInjectorFactory(directiveFactory,isComponentDef(def),\u0275\u0275directiveInject,null);tView.blueprint[directiveIndex]=nodeInjectorFactory,lView[directiveIndex]=nodeInjectorFactory,registerHostBindingOpCodes(tView,tNode,directiveIndex,allocExpando(tView,lView,def.hostVars,NO_CHANGE),def)}function registerHostBindingOpCodes(tView,tNode,directiveIdx,directiveVarsIdx,def){let hostBindings=def.hostBindings;if(hostBindings){let hostBindingOpCodes=tView.hostBindingOpCodes;hostBindingOpCodes===null&&(hostBindingOpCodes=tView.hostBindingOpCodes=[]);let elementIndx=~tNode.index;lastSelectedElementIdx(hostBindingOpCodes)!=elementIndx&&hostBindingOpCodes.push(elementIndx),hostBindingOpCodes.push(directiveIdx,directiveVarsIdx,hostBindings)}}function lastSelectedElementIdx(hostBindingOpCodes){let i=hostBindingOpCodes.length;for(;i>0;){let value=hostBindingOpCodes[--i];if(typeof value=="number"&&value<0)return value}return 0}function saveNameToExportMap(directiveIdx,def,exportsMap){if(exportsMap){if(def.exportAs)for(let i=0;i<def.exportAs.length;i++)exportsMap[def.exportAs[i]]=directiveIdx;isComponentDef(def)&&(exportsMap[""]=directiveIdx)}}function initTNodeFlags(tNode,index,numberOfDirectives){tNode.flags|=1,tNode.directiveStart=index,tNode.directiveEnd=index+numberOfDirectives,tNode.providerIndexes=index}function directiveHostFirstCreatePass(index,lView,type2,name,directiveMatcher,bindingsEnabled,attrsIndex,localRefsIndex){let tView=lView[TVIEW],tViewConsts=tView.consts,attrs=getConstant(tViewConsts,attrsIndex),tNode=getOrCreateTNode(tView,index,type2,name,attrs);return bindingsEnabled&&resolveDirectives(tView,lView,tNode,getConstant(tViewConsts,localRefsIndex),directiveMatcher),tNode.mergedAttrs=mergeHostAttrs(tNode.mergedAttrs,tNode.attrs),tNode.attrs!==null&&computeStaticStyling(tNode,tNode.attrs,!1),tNode.mergedAttrs!==null&&computeStaticStyling(tNode,tNode.mergedAttrs,!0),tView.queries!==null&&tView.queries.elementStart(tView,tNode),tNode}function directiveHostEndFirstCreatePass(tView,tNode){registerPostOrderHooks(tView,tNode),isContentQueryHost(tNode)&&tView.queries.elementEnd(tNode)}function domOnlyFirstCreatePass(index,tView,type2,name,attrsIndex,localRefsIndex){let tViewConsts=tView.consts,attrs=getConstant(tViewConsts,attrsIndex),tNode=getOrCreateTNode(tView,index,type2,name,attrs);if(tNode.mergedAttrs=mergeHostAttrs(tNode.mergedAttrs,tNode.attrs),localRefsIndex!=null){let refs=getConstant(tViewConsts,localRefsIndex);tNode.localNames=[];for(let i=0;i<refs.length;i+=2)tNode.localNames.push(refs[i],-1)}return tNode.attrs!==null&&computeStaticStyling(tNode,tNode.attrs,!1),tNode.mergedAttrs!==null&&computeStaticStyling(tNode,tNode.mergedAttrs,!0),tView.queries!==null&&tView.queries.elementStart(tView,tNode),tNode}function isListLikeIterable(obj){return isJsObject(obj)?Array.isArray(obj)||!(obj instanceof Map)&&Symbol.iterator in obj:!1}function iterateListLike(obj,fn){if(Array.isArray(obj))for(let i=0;i<obj.length;i++)fn(obj[i]);else{let iterator2=obj[Symbol.iterator](),item;for(;!(item=iterator2.next()).done;)fn(item.value)}}function isJsObject(o){return o!==null&&(typeof o=="function"||typeof o=="object")}function updateBinding(lView,bindingIndex,value){return lView[bindingIndex]=value}function getBinding(lView,bindingIndex){return lView[bindingIndex]}function bindingUpdated(lView,bindingIndex,value){if(value===NO_CHANGE)return!1;let oldValue=lView[bindingIndex];return Object.is(oldValue,value)?!1:(lView[bindingIndex]=value,!0)}function bindingUpdated2(lView,bindingIndex,exp1,exp2){let different=bindingUpdated(lView,bindingIndex,exp1);return bindingUpdated(lView,bindingIndex+1,exp2)||different}function bindingUpdated3(lView,bindingIndex,exp1,exp2,exp3){let different=bindingUpdated2(lView,bindingIndex,exp1,exp2);return bindingUpdated(lView,bindingIndex+2,exp3)||different}function wrapListener(tNode,lView,listenerFn){return function wrapListenerIn_markDirtyAndPreventDefault(event){let startView=isComponentHost(tNode)?getComponentLViewByIndex(tNode.index,lView):lView;markViewDirty(startView,5);let context2=lView[CONTEXT],result=executeListenerWithErrorHandling(lView,context2,listenerFn,event),nextListenerFn=wrapListenerIn_markDirtyAndPreventDefault.__ngNextListenerFn__;for(;nextListenerFn;)result=executeListenerWithErrorHandling(lView,context2,nextListenerFn,event)&&result,nextListenerFn=nextListenerFn.__ngNextListenerFn__;return result}}function executeListenerWithErrorHandling(lView,context2,listenerFn,e){let prevConsumer=setActiveConsumer(null);try{return profiler(6,context2,listenerFn),listenerFn(e)!==!1}catch(error){return handleUncaughtError(lView,error),!1}finally{profiler(7,context2,listenerFn),setActiveConsumer(prevConsumer)}}function listenToDomEvent(tNode,tView,lView,eventTargetResolver,renderer,eventName,originalListener,wrappedListener){let isTNodeDirectiveHost=isDirectiveHost(tNode),hasCoalesced=!1,existingListener=null;if(!eventTargetResolver&&isTNodeDirectiveHost&&(existingListener=findExistingListener(tView,lView,eventName,tNode.index)),existingListener!==null){let lastListenerFn=existingListener.__ngLastListenerFn__||existingListener;lastListenerFn.__ngNextListenerFn__=originalListener,existingListener.__ngLastListenerFn__=originalListener,hasCoalesced=!0}else{let native=getNativeByTNode(tNode,lView),target=eventTargetResolver?eventTargetResolver(native):native;stashEventListenerImpl(lView,target,eventName,wrappedListener);let cleanupFn=renderer.listen(target,eventName,wrappedListener),idxOrTargetGetter=eventTargetResolver?_lView=>eventTargetResolver(unwrapRNode(_lView[tNode.index])):tNode.index;storeListenerCleanup(idxOrTargetGetter,tView,lView,eventName,wrappedListener,cleanupFn,!1)}return hasCoalesced}function findExistingListener(tView,lView,eventName,tNodeIndex){let tCleanup=tView.cleanup;if(tCleanup!=null)for(let i=0;i<tCleanup.length-1;i+=2){let cleanupEventName=tCleanup[i];if(cleanupEventName===eventName&&tCleanup[i+1]===tNodeIndex){let lCleanup=lView[CLEANUP],listenerIdxInLCleanup=tCleanup[i+2];return lCleanup&&lCleanup.length>listenerIdxInLCleanup?lCleanup[listenerIdxInLCleanup]:null}typeof cleanupEventName=="string"&&(i+=2)}return null}function storeListenerCleanup(indexOrTargetGetter,tView,lView,eventName,listenerFn,cleanup,isOutput){let tCleanup=tView.firstCreatePass?getOrCreateTViewCleanup(tView):null,lCleanup=getOrCreateLViewCleanup(lView),index=lCleanup.length;lCleanup.push(listenerFn,cleanup),tCleanup&&tCleanup.push(eventName,indexOrTargetGetter,index,(index+1)*(isOutput?-1:1))}function listenToOutput(tNode,lView,directiveIndex,lookupName,eventName,listenerFn){let instance=lView[directiveIndex],tView=lView[TVIEW],propertyName=tView.data[directiveIndex].outputs[lookupName],subscription=instance[propertyName].subscribe(listenerFn);storeListenerCleanup(tNode.index,tView,lView,eventName,listenerFn,subscription,!0)}var BINDING=Symbol("BINDING");var ComponentFactoryResolver2=class extends ComponentFactoryResolver$1{ngModule;constructor(ngModule){super(),this.ngModule=ngModule}resolveComponentFactory(component){let componentDef=getComponentDef(component);return new ComponentFactory2(componentDef,this.ngModule)}};function toInputRefArray(map2){return Object.keys(map2).map(name=>{let[propName,flags,transform]=map2[name],inputData={propName,templateName:name,isSignal:(flags&InputFlags.SignalBased)!==0};return transform&&(inputData.transform=transform),inputData})}function toOutputRefArray(map2){return Object.keys(map2).map(name=>({propName:map2[name],templateName:name}))}function createRootViewInjector(componentDef,environmentInjector,injector){let realEnvironmentInjector=environmentInjector instanceof EnvironmentInjector?environmentInjector:environmentInjector?.injector;return realEnvironmentInjector&&componentDef.getStandaloneInjector!==null&&(realEnvironmentInjector=componentDef.getStandaloneInjector(realEnvironmentInjector)||realEnvironmentInjector),realEnvironmentInjector?new ChainedInjector(injector,realEnvironmentInjector):injector}function createRootLViewEnvironment(rootLViewInjector){let rendererFactory=rootLViewInjector.get(RendererFactory2,null);if(rendererFactory===null)throw new RuntimeError(407,!1);let sanitizer=rootLViewInjector.get(Sanitizer,null),changeDetectionScheduler=rootLViewInjector.get(ChangeDetectionScheduler,null);return{rendererFactory,sanitizer,changeDetectionScheduler,ngReflect:!1}}function createHostElement(componentDef,renderer){let tagName=inferTagNameFromDefinition(componentDef);return createElementNode(renderer,tagName,tagName==="svg"?SVG_NAMESPACE:tagName==="math"?MATH_ML_NAMESPACE:null)}function inferTagNameFromDefinition(componentDef){return(componentDef.selectors[0][0]||"div").toLowerCase()}var ComponentFactory2=class extends ComponentFactory$1{componentDef;ngModule;selector;componentType;ngContentSelectors;isBoundToModule;cachedInputs=null;cachedOutputs=null;get inputs(){return this.cachedInputs??=toInputRefArray(this.componentDef.inputs),this.cachedInputs}get outputs(){return this.cachedOutputs??=toOutputRefArray(this.componentDef.outputs),this.cachedOutputs}constructor(componentDef,ngModule){super(),this.componentDef=componentDef,this.ngModule=ngModule,this.componentType=componentDef.type,this.selector=stringifyCSSSelectorList(componentDef.selectors),this.ngContentSelectors=componentDef.ngContentSelectors??[],this.isBoundToModule=!!ngModule}create(injector,projectableNodes,rootSelectorOrNode,environmentInjector,directives,componentBindings){profiler(22);let prevConsumer=setActiveConsumer(null);try{let cmpDef=this.componentDef,rootTView=createRootTView(rootSelectorOrNode,cmpDef,componentBindings,directives),rootViewInjector=createRootViewInjector(cmpDef,environmentInjector||this.ngModule,injector),environment2=createRootLViewEnvironment(rootViewInjector),hostRenderer=environment2.rendererFactory.createRenderer(null,cmpDef),hostElement=rootSelectorOrNode?locateHostElement(hostRenderer,rootSelectorOrNode,cmpDef.encapsulation,rootViewInjector):createHostElement(cmpDef,hostRenderer),hasInputBindings=componentBindings?.some(isInputBinding)||directives?.some(d=>typeof d!="function"&&d.bindings.some(isInputBinding)),rootLView=createLView(null,rootTView,null,512|getInitialLViewFlagsFromDef(cmpDef),null,null,environment2,hostRenderer,rootViewInjector,null,retrieveHydrationInfo(hostElement,rootViewInjector,!0));rootLView[HEADER_OFFSET]=hostElement,enterView(rootLView);let componentView=null;try{let hostTNode=directiveHostFirstCreatePass(HEADER_OFFSET,rootLView,2,"#host",()=>rootTView.directiveRegistry,!0,0);hostElement&&(setupStaticAttributes(hostRenderer,hostElement,hostTNode),attachPatchData(hostElement,rootLView)),createDirectivesInstances(rootTView,rootLView,hostTNode),executeContentQueries(rootTView,hostTNode,rootLView),directiveHostEndFirstCreatePass(rootTView,hostTNode),projectableNodes!==void 0&&projectNodes(hostTNode,this.ngContentSelectors,projectableNodes),componentView=getComponentLViewByIndex(hostTNode.index,rootLView),rootLView[CONTEXT]=componentView[CONTEXT],renderView(rootTView,rootLView,null)}catch(e){throw componentView!==null&&unregisterLView(componentView),unregisterLView(rootLView),e}finally{profiler(23),leaveView()}return new ComponentRef2(this.componentType,rootLView,!!hasInputBindings)}finally{setActiveConsumer(prevConsumer)}}};function createRootTView(rootSelectorOrNode,componentDef,componentBindings,directives){let tAttributes=rootSelectorOrNode?["ng-version","20.2.0"]:extractAttrsAndClassesFromSelector(componentDef.selectors[0]),creationBindings=null,updateBindings=null,varsToAllocate=0;if(componentBindings)for(let binding of componentBindings)varsToAllocate+=binding[BINDING].requiredVars,binding.create&&(binding.targetIdx=0,(creationBindings??=[]).push(binding)),binding.update&&(binding.targetIdx=0,(updateBindings??=[]).push(binding));if(directives)for(let i=0;i<directives.length;i++){let directive=directives[i];if(typeof directive!="function")for(let binding of directive.bindings){varsToAllocate+=binding[BINDING].requiredVars;let targetDirectiveIdx=i+1;binding.create&&(binding.targetIdx=targetDirectiveIdx,(creationBindings??=[]).push(binding)),binding.update&&(binding.targetIdx=targetDirectiveIdx,(updateBindings??=[]).push(binding))}}let directivesToApply=[componentDef];if(directives)for(let directive of directives){let directiveType=typeof directive=="function"?directive:directive.type,directiveDef=getDirectiveDef(directiveType);directivesToApply.push(directiveDef)}return createTView(0,null,getRootTViewTemplate(creationBindings,updateBindings),1,varsToAllocate,directivesToApply,null,null,null,[tAttributes],null)}function getRootTViewTemplate(creationBindings,updateBindings){return!creationBindings&&!updateBindings?null:flags=>{if(flags&1&&creationBindings)for(let binding of creationBindings)binding.create();if(flags&2&&updateBindings)for(let binding of updateBindings)binding.update()}}function isInputBinding(binding){let kind=binding[BINDING].kind;return kind==="input"||kind==="twoWay"}var ComponentRef2=class extends ComponentRef$1{_rootLView;_hasInputBindings;instance;hostView;changeDetectorRef;componentType;location;previousInputValues=null;_tNode;constructor(componentType,_rootLView,_hasInputBindings){super(),this._rootLView=_rootLView,this._hasInputBindings=_hasInputBindings,this._tNode=getTNode(_rootLView[TVIEW],HEADER_OFFSET),this.location=createElementRef(this._tNode,_rootLView),this.instance=getComponentLViewByIndex(this._tNode.index,_rootLView)[CONTEXT],this.hostView=this.changeDetectorRef=new ViewRef(_rootLView,void 0),this.componentType=componentType}setInput(name,value){this._hasInputBindings;let tNode=this._tNode;if(this.previousInputValues??=new Map,this.previousInputValues.has(name)&&Object.is(this.previousInputValues.get(name),value))return;let lView=this._rootLView,hasSetInput=setAllInputsForProperty(tNode,lView[TVIEW],lView,name,value);this.previousInputValues.set(name,value);let childComponentLView=getComponentLViewByIndex(tNode.index,lView);markViewDirty(childComponentLView,1)}get injector(){return new NodeInjector(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(callback){this.hostView.onDestroy(callback)}};function projectNodes(tNode,ngContentSelectors,projectableNodes){let projection=tNode.projection=[];for(let i=0;i<ngContentSelectors.length;i++){let nodesforSlot=projectableNodes[i];projection.push(nodesforSlot!=null&&nodesforSlot.length?Array.from(nodesforSlot):null)}}var ViewContainerRef=(()=>{class ViewContainerRef3{static __NG_ELEMENT_ID__=injectViewContainerRef}return ViewContainerRef3})();function injectViewContainerRef(){let previousTNode=getCurrentTNode();return createContainerRef(previousTNode,getLView())}var VE_ViewContainerRef=ViewContainerRef,R3ViewContainerRef=class extends VE_ViewContainerRef{_lContainer;_hostTNode;_hostLView;constructor(_lContainer,_hostTNode,_hostLView){super(),this._lContainer=_lContainer,this._hostTNode=_hostTNode,this._hostLView=_hostLView}get element(){return createElementRef(this._hostTNode,this._hostLView)}get injector(){return new NodeInjector(this._hostTNode,this._hostLView)}get parentInjector(){let parentLocation=getParentInjectorLocation(this._hostTNode,this._hostLView);if(hasParentInjector(parentLocation)){let parentView=getParentInjectorView(parentLocation,this._hostLView),injectorIndex=getParentInjectorIndex(parentLocation),parentTNode=parentView[TVIEW].data[injectorIndex+8];return new NodeInjector(parentTNode,parentView)}else return new NodeInjector(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(index){let viewRefs=getViewRefs(this._lContainer);return viewRefs!==null&&viewRefs[index]||null}get length(){return this._lContainer.length-CONTAINER_HEADER_OFFSET}createEmbeddedView(templateRef,context2,indexOrOptions){let index,injector;typeof indexOrOptions=="number"?index=indexOrOptions:indexOrOptions!=null&&(index=indexOrOptions.index,injector=indexOrOptions.injector);let dehydratedView=findMatchingDehydratedView(this._lContainer,templateRef.ssrId),viewRef=templateRef.createEmbeddedViewImpl(context2||{},injector,dehydratedView);return this.insertImpl(viewRef,index,shouldAddViewToDom(this._hostTNode,dehydratedView)),viewRef}createComponent(componentFactoryOrType,indexOrOptions,injector,projectableNodes,environmentInjector,directives,bindings){let isComponentFactory=componentFactoryOrType&&!isType(componentFactoryOrType),index;if(isComponentFactory)index=indexOrOptions;else{let options=indexOrOptions||{};index=options.index,injector=options.injector,projectableNodes=options.projectableNodes,environmentInjector=options.environmentInjector||options.ngModuleRef,directives=options.directives,bindings=options.bindings}let componentFactory=isComponentFactory?componentFactoryOrType:new ComponentFactory2(getComponentDef(componentFactoryOrType)),contextInjector=injector||this.parentInjector;if(!environmentInjector&&componentFactory.ngModule==null){let result=(isComponentFactory?contextInjector:this.parentInjector).get(EnvironmentInjector,null);result&&(environmentInjector=result)}let componentDef=getComponentDef(componentFactory.componentType??{}),dehydratedView=findMatchingDehydratedView(this._lContainer,componentDef?.id??null),rNode=dehydratedView?.firstChild??null,componentRef=componentFactory.create(contextInjector,projectableNodes,rNode,environmentInjector,directives,bindings);return this.insertImpl(componentRef.hostView,index,shouldAddViewToDom(this._hostTNode,dehydratedView)),componentRef}insert(viewRef,index){return this.insertImpl(viewRef,index,!0)}insertImpl(viewRef,index,addToDOM){let lView=viewRef._lView;if(viewAttachedToContainer(lView)){let prevIdx=this.indexOf(viewRef);if(prevIdx!==-1)this.detach(prevIdx);else{let prevLContainer=lView[PARENT],prevVCRef=new R3ViewContainerRef(prevLContainer,prevLContainer[T_HOST],prevLContainer[PARENT]);prevVCRef.detach(prevVCRef.indexOf(viewRef))}}let adjustedIdx=this._adjustIndex(index),lContainer=this._lContainer;return addLViewToLContainer(lContainer,lView,adjustedIdx,addToDOM),viewRef.attachToViewContainerRef(),addToArray(getOrCreateViewRefs(lContainer),adjustedIdx,viewRef),viewRef}move(viewRef,newIndex){return this.insert(viewRef,newIndex)}indexOf(viewRef){let viewRefsArr=getViewRefs(this._lContainer);return viewRefsArr!==null?viewRefsArr.indexOf(viewRef):-1}remove(index){let adjustedIdx=this._adjustIndex(index,-1),detachedView=detachView(this._lContainer,adjustedIdx);detachedView&&(removeFromArray(getOrCreateViewRefs(this._lContainer),adjustedIdx),destroyLView(detachedView[TVIEW],detachedView))}detach(index){let adjustedIdx=this._adjustIndex(index,-1),view=detachView(this._lContainer,adjustedIdx);return view&&removeFromArray(getOrCreateViewRefs(this._lContainer),adjustedIdx)!=null?new ViewRef(view):null}_adjustIndex(index,shift=0){return index??this.length+shift}};function getViewRefs(lContainer){return lContainer[VIEW_REFS]}function getOrCreateViewRefs(lContainer){return lContainer[VIEW_REFS]||(lContainer[VIEW_REFS]=[])}function createContainerRef(hostTNode,hostLView){let lContainer,slotValue=hostLView[hostTNode.index];return isLContainer(slotValue)?lContainer=slotValue:(lContainer=createLContainer(slotValue,hostLView,null,hostTNode),hostLView[hostTNode.index]=lContainer,addToEndOfViewTree(hostLView,lContainer)),_locateOrCreateAnchorNode(lContainer,hostLView,hostTNode,slotValue),new R3ViewContainerRef(lContainer,hostTNode,hostLView)}function insertAnchorNode(hostLView,hostTNode){let renderer=hostLView[RENDERER],commentNode=renderer.createComment(""),hostNative=getNativeByTNode(hostTNode,hostLView),parentOfHostNative=renderer.parentNode(hostNative);return nativeInsertBefore(renderer,parentOfHostNative,commentNode,renderer.nextSibling(hostNative),!1),commentNode}var _locateOrCreateAnchorNode=createAnchorNode,_populateDehydratedViewsInLContainer=()=>!1;function populateDehydratedViewsInLContainer(lContainer,tNode,hostLView){return _populateDehydratedViewsInLContainer(lContainer,tNode,hostLView)}function createAnchorNode(lContainer,hostLView,hostTNode,slotValue){if(lContainer[NATIVE])return;let commentNode;hostTNode.type&8?commentNode=unwrapRNode(slotValue):commentNode=insertAnchorNode(hostLView,hostTNode),lContainer[NATIVE]=commentNode}var LQuery_=class _LQuery_{queryList;matches=null;constructor(queryList){this.queryList=queryList}clone(){return new _LQuery_(this.queryList)}setDirty(){this.queryList.setDirty()}},LQueries_=class _LQueries_{queries;constructor(queries=[]){this.queries=queries}createEmbeddedView(tView){let tQueries=tView.queries;if(tQueries!==null){let noOfInheritedQueries=tView.contentQueries!==null?tView.contentQueries[0]:tQueries.length,viewLQueries=[];for(let i=0;i<noOfInheritedQueries;i++){let tQuery=tQueries.getByIndex(i),parentLQuery=this.queries[tQuery.indexInDeclarationView];viewLQueries.push(parentLQuery.clone())}return new _LQueries_(viewLQueries)}return null}insertView(tView){this.dirtyQueriesWithMatches(tView)}detachView(tView){this.dirtyQueriesWithMatches(tView)}finishViewCreation(tView){this.dirtyQueriesWithMatches(tView)}dirtyQueriesWithMatches(tView){for(let i=0;i<this.queries.length;i++)getTQuery(tView,i).matches!==null&&this.queries[i].setDirty()}},TQueryMetadata_=class{flags;read;predicate;constructor(predicate,flags,read=null){this.flags=flags,this.read=read,typeof predicate=="string"?this.predicate=splitQueryMultiSelectors(predicate):this.predicate=predicate}},TQueries_=class _TQueries_{queries;constructor(queries=[]){this.queries=queries}elementStart(tView,tNode){for(let i=0;i<this.queries.length;i++)this.queries[i].elementStart(tView,tNode)}elementEnd(tNode){for(let i=0;i<this.queries.length;i++)this.queries[i].elementEnd(tNode)}embeddedTView(tNode){let queriesForTemplateRef=null;for(let i=0;i<this.length;i++){let childQueryIndex=queriesForTemplateRef!==null?queriesForTemplateRef.length:0,tqueryClone=this.getByIndex(i).embeddedTView(tNode,childQueryIndex);tqueryClone&&(tqueryClone.indexInDeclarationView=i,queriesForTemplateRef!==null?queriesForTemplateRef.push(tqueryClone):queriesForTemplateRef=[tqueryClone])}return queriesForTemplateRef!==null?new _TQueries_(queriesForTemplateRef):null}template(tView,tNode){for(let i=0;i<this.queries.length;i++)this.queries[i].template(tView,tNode)}getByIndex(index){return this.queries[index]}get length(){return this.queries.length}track(tquery){this.queries.push(tquery)}},TQuery_=class _TQuery_{metadata;matches=null;indexInDeclarationView=-1;crossesNgTemplate=!1;_declarationNodeIndex;_appliesToNextNode=!0;constructor(metadata,nodeIndex=-1){this.metadata=metadata,this._declarationNodeIndex=nodeIndex}elementStart(tView,tNode){this.isApplyingToNode(tNode)&&this.matchTNode(tView,tNode)}elementEnd(tNode){this._declarationNodeIndex===tNode.index&&(this._appliesToNextNode=!1)}template(tView,tNode){this.elementStart(tView,tNode)}embeddedTView(tNode,childQueryIndex){return this.isApplyingToNode(tNode)?(this.crossesNgTemplate=!0,this.addMatch(-tNode.index,childQueryIndex),new _TQuery_(this.metadata)):null}isApplyingToNode(tNode){if(this._appliesToNextNode&&(this.metadata.flags&1)!==1){let declarationNodeIdx=this._declarationNodeIndex,parent=tNode.parent;for(;parent!==null&&parent.type&8&&parent.index!==declarationNodeIdx;)parent=parent.parent;return declarationNodeIdx===(parent!==null?parent.index:-1)}return this._appliesToNextNode}matchTNode(tView,tNode){let predicate=this.metadata.predicate;if(Array.isArray(predicate))for(let i=0;i<predicate.length;i++){let name=predicate[i];this.matchTNodeWithReadOption(tView,tNode,getIdxOfMatchingSelector(tNode,name)),this.matchTNodeWithReadOption(tView,tNode,locateDirectiveOrProvider(tNode,tView,name,!1,!1))}else predicate===TemplateRef?tNode.type&4&&this.matchTNodeWithReadOption(tView,tNode,-1):this.matchTNodeWithReadOption(tView,tNode,locateDirectiveOrProvider(tNode,tView,predicate,!1,!1))}matchTNodeWithReadOption(tView,tNode,nodeMatchIdx){if(nodeMatchIdx!==null){let read=this.metadata.read;if(read!==null)if(read===ElementRef||read===ViewContainerRef||read===TemplateRef&&tNode.type&4)this.addMatch(tNode.index,-2);else{let directiveOrProviderIdx=locateDirectiveOrProvider(tNode,tView,read,!1,!1);directiveOrProviderIdx!==null&&this.addMatch(tNode.index,directiveOrProviderIdx)}else this.addMatch(tNode.index,nodeMatchIdx)}}addMatch(tNodeIdx,matchIdx){this.matches===null?this.matches=[tNodeIdx,matchIdx]:this.matches.push(tNodeIdx,matchIdx)}};function getIdxOfMatchingSelector(tNode,selector){let localNames=tNode.localNames;if(localNames!==null){for(let i=0;i<localNames.length;i+=2)if(localNames[i]===selector)return localNames[i+1]}return null}function createResultByTNodeType(tNode,currentView){return tNode.type&11?createElementRef(tNode,currentView):tNode.type&4?createTemplateRef(tNode,currentView):null}function createResultForNode(lView,tNode,matchingIdx,read){return matchingIdx===-1?createResultByTNodeType(tNode,lView):matchingIdx===-2?createSpecialToken(lView,tNode,read):getNodeInjectable(lView,lView[TVIEW],matchingIdx,tNode)}function createSpecialToken(lView,tNode,read){if(read===ElementRef)return createElementRef(tNode,lView);if(read===TemplateRef)return createTemplateRef(tNode,lView);if(read===ViewContainerRef)return createContainerRef(tNode,lView)}function materializeViewResults(tView,lView,tQuery,queryIndex){let lQuery=lView[QUERIES].queries[queryIndex];if(lQuery.matches===null){let tViewData=tView.data,tQueryMatches=tQuery.matches,result=[];for(let i=0;tQueryMatches!==null&&i<tQueryMatches.length;i+=2){let matchedNodeIdx=tQueryMatches[i];if(matchedNodeIdx<0)result.push(null);else{let tNode=tViewData[matchedNodeIdx];result.push(createResultForNode(lView,tNode,tQueryMatches[i+1],tQuery.metadata.read))}}lQuery.matches=result}return lQuery.matches}function collectQueryResults(tView,lView,queryIndex,result){let tQuery=tView.queries.getByIndex(queryIndex),tQueryMatches=tQuery.matches;if(tQueryMatches!==null){let lViewResults=materializeViewResults(tView,lView,tQuery,queryIndex);for(let i=0;i<tQueryMatches.length;i+=2){let tNodeIdx=tQueryMatches[i];if(tNodeIdx>0)result.push(lViewResults[i/2]);else{let childQueryIndex=tQueryMatches[i+1],declarationLContainer=lView[-tNodeIdx];for(let i2=CONTAINER_HEADER_OFFSET;i2<declarationLContainer.length;i2++){let embeddedLView=declarationLContainer[i2];embeddedLView[DECLARATION_LCONTAINER]===embeddedLView[PARENT]&&collectQueryResults(embeddedLView[TVIEW],embeddedLView,childQueryIndex,result)}if(declarationLContainer[MOVED_VIEWS]!==null){let embeddedLViews=declarationLContainer[MOVED_VIEWS];for(let i2=0;i2<embeddedLViews.length;i2++){let embeddedLView=embeddedLViews[i2];collectQueryResults(embeddedLView[TVIEW],embeddedLView,childQueryIndex,result)}}}}}return result}function loadQueryInternal(lView,queryIndex){return lView[QUERIES].queries[queryIndex].queryList}function createLQuery(tView,lView,flags){let queryList=new QueryList((flags&4)===4);return storeCleanupWithContext(tView,lView,queryList,queryList.destroy),(lView[QUERIES]??=new LQueries_).queries.push(new LQuery_(queryList))-1}function createViewQuery(predicate,flags,read){let tView=getTView();return tView.firstCreatePass&&(createTQuery(tView,new TQueryMetadata_(predicate,flags,read),-1),(flags&2)===2&&(tView.staticViewQueries=!0)),createLQuery(tView,getLView(),flags)}function createContentQuery(directiveIndex,predicate,flags,read){let tView=getTView();if(tView.firstCreatePass){let tNode=getCurrentTNode();createTQuery(tView,new TQueryMetadata_(predicate,flags,read),tNode.index),saveContentQueryAndDirectiveIndex(tView,directiveIndex),(flags&2)===2&&(tView.staticContentQueries=!0)}return createLQuery(tView,getLView(),flags)}function splitQueryMultiSelectors(locator){return locator.split(",").map(s=>s.trim())}function createTQuery(tView,metadata,nodeIndex){tView.queries===null&&(tView.queries=new TQueries_),tView.queries.track(new TQuery_(metadata,nodeIndex))}function saveContentQueryAndDirectiveIndex(tView,directiveIndex){let tViewContentQueries=tView.contentQueries||(tView.contentQueries=[]),lastSavedDirectiveIndex=tViewContentQueries.length?tViewContentQueries[tViewContentQueries.length-1]:-1;directiveIndex!==lastSavedDirectiveIndex&&tViewContentQueries.push(tView.queries.length-1,directiveIndex)}function getTQuery(tView,index){return tView.queries.getByIndex(index)}function getQueryResults(lView,queryIndex){let tView=lView[TVIEW],tQuery=getTQuery(tView,queryIndex);return tQuery.crossesNgTemplate?collectQueryResults(tView,lView,queryIndex,[]):materializeViewResults(tView,lView,tQuery,queryIndex)}function createQuerySignalFn(firstOnly,required2,opts){let node,signalFn=createComputed(()=>{node._dirtyCounter();let value=refreshSignalQuery(node,firstOnly);if(required2&&value===void 0)throw new RuntimeError(-951,!1);return value});return node=signalFn[SIGNAL],node._dirtyCounter=signal(0),node._flatValue=void 0,signalFn}function createSingleResultOptionalQuerySignalFn(opts){return createQuerySignalFn(!0,!1,opts)}function createSingleResultRequiredQuerySignalFn(opts){return createQuerySignalFn(!0,!0,opts)}function bindQueryToSignal(target,queryIndex){let node=target[SIGNAL];node._lView=getLView(),node._queryIndex=queryIndex,node._queryList=loadQueryInternal(node._lView,queryIndex),node._queryList.onDirty(()=>node._dirtyCounter.update(v=>v+1))}function refreshSignalQuery(node,firstOnly){let lView=node._lView,queryIndex=node._queryIndex;if(lView===void 0||queryIndex===void 0||lView[FLAGS]&4)return firstOnly?void 0:EMPTY_ARRAY;let queryList=loadQueryInternal(lView,queryIndex),results=getQueryResults(lView,queryIndex);return queryList.reset(results,unwrapElementRef),firstOnly?queryList.first:queryList._changesDetected||node._flatValue===void 0?node._flatValue=queryList.toArray():node._flatValue}function resolveComponentResources(resourceResolver){let componentResolved=[],urlMap=new Map;function cachedResourceResolve(url){let promise=urlMap.get(url);if(!promise){let resp=resourceResolver(url);urlMap.set(url,promise=resp.then(res=>unwrapResponse(url,res)))}return promise}return componentResourceResolutionQueue.forEach((component,type2)=>{let promises=[];component.templateUrl&&promises.push(cachedResourceResolve(component.templateUrl).then(template=>{component.template=template}));let styles=typeof component.styles=="string"?[component.styles]:component.styles||[];if(component.styles=styles,component.styleUrl&&component.styleUrls?.length)throw new Error("@Component cannot define both `styleUrl` and `styleUrls`. Use `styleUrl` if the component has one stylesheet, or `styleUrls` if it has multiple");if(component.styleUrls?.length){let styleOffset=component.styles.length,styleUrls=component.styleUrls;component.styleUrls.forEach((styleUrl,index)=>{styles.push(""),promises.push(cachedResourceResolve(styleUrl).then(style2=>{styles[styleOffset+index]=style2,styleUrls.splice(styleUrls.indexOf(styleUrl),1),styleUrls.length==0&&(component.styleUrls=void 0)}))})}else component.styleUrl&&promises.push(cachedResourceResolve(component.styleUrl).then(style2=>{styles.push(style2),component.styleUrl=void 0}));let fullyResolved=Promise.all(promises).then(()=>componentDefResolved(type2));componentResolved.push(fullyResolved)}),clearResolutionOfComponentResourcesQueue(),Promise.all(componentResolved).then(()=>{})}var componentResourceResolutionQueue=new Map,componentDefPendingResolution=new Set;function clearResolutionOfComponentResourcesQueue(){let old=componentResourceResolutionQueue;return componentResourceResolutionQueue=new Map,old}function isComponentResourceResolutionQueueEmpty(){return componentResourceResolutionQueue.size===0}function unwrapResponse(url,response){return typeof response=="string"?response:response.status!==void 0&&response.status!==200?Promise.reject(new RuntimeError(918,!1)):response.text()}function componentDefResolved(type2){componentDefPendingResolution.delete(type2)}var markedFeatures=new Set;function performanceMarkFeature(feature3){markedFeatures.has(feature3)||(markedFeatures.add(feature3),performance?.mark?.("mark_feature_usage",{detail:{feature:feature3}}))}var NgModuleRef$1=class{},NgModuleFactory$1=class{};var NgModuleRef2=class extends NgModuleRef$1{ngModuleType;_parent;_bootstrapComponents=[];_r3Injector;instance;destroyCbs=[];componentFactoryResolver=new ComponentFactoryResolver2(this);constructor(ngModuleType,_parent,additionalProviders,runInjectorInitializers=!0){super(),this.ngModuleType=ngModuleType,this._parent=_parent;let ngModuleDef=getNgModuleDef(ngModuleType);this._bootstrapComponents=maybeUnwrapFn(ngModuleDef.bootstrap),this._r3Injector=createInjectorWithoutInjectorInstances(ngModuleType,_parent,[{provide:NgModuleRef$1,useValue:this},{provide:ComponentFactoryResolver$1,useValue:this.componentFactoryResolver},...additionalProviders],stringify(ngModuleType),new Set(["environment"])),runInjectorInitializers&&this.resolveInjectorInitializers()}resolveInjectorInitializers(){this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(this.ngModuleType)}get injector(){return this._r3Injector}destroy(){let injector=this._r3Injector;!injector.destroyed&&injector.destroy(),this.destroyCbs.forEach(fn=>fn()),this.destroyCbs=null}onDestroy(callback){this.destroyCbs.push(callback)}},NgModuleFactory2=class extends NgModuleFactory$1{moduleType;constructor(moduleType){super(),this.moduleType=moduleType}create(parentInjector){return new NgModuleRef2(this.moduleType,parentInjector,[])}};function createNgModuleRefWithProviders(moduleType,parentInjector,additionalProviders){return new NgModuleRef2(moduleType,parentInjector,additionalProviders,!1)}var EnvironmentNgModuleRefAdapter=class extends NgModuleRef$1{injector;componentFactoryResolver=new ComponentFactoryResolver2(this);instance=null;constructor(config2){super();let injector=new R3Injector([...config2.providers,{provide:NgModuleRef$1,useValue:this},{provide:ComponentFactoryResolver$1,useValue:this.componentFactoryResolver}],config2.parent||getNullInjector(),config2.debugName,new Set(["environment"]));this.injector=injector,config2.runEnvironmentInitializers&&injector.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(callback){this.injector.onDestroy(callback)}};function createEnvironmentInjector(providers,parent,debugName=null){return new EnvironmentNgModuleRefAdapter({providers,parent,debugName,runEnvironmentInitializers:!0}).injector}var StandaloneService=(()=>{class StandaloneService2{_injector;cachedInjectors=new Map;constructor(_injector){this._injector=_injector}getOrCreateStandaloneInjector(componentDef){if(!componentDef.standalone)return null;if(!this.cachedInjectors.has(componentDef)){let providers=internalImportProvidersFrom(!1,componentDef.type),standaloneInjector=providers.length>0?createEnvironmentInjector([providers],this._injector,`Standalone[${componentDef.type.name}]`):null;this.cachedInjectors.set(componentDef,standaloneInjector)}return this.cachedInjectors.get(componentDef)}ngOnDestroy(){try{for(let injector of this.cachedInjectors.values())injector!==null&&injector.destroy()}finally{this.cachedInjectors.clear()}}static \u0275prov=\u0275\u0275defineInjectable({token:StandaloneService2,providedIn:"environment",factory:()=>new StandaloneService2(\u0275\u0275inject(EnvironmentInjector))})}return StandaloneService2})();function \u0275\u0275defineComponent(componentDefinition){return noSideEffects(()=>{let baseDef=getNgDirectiveDef(componentDefinition),def=__spreadProps(__spreadValues({},baseDef),{decls:componentDefinition.decls,vars:componentDefinition.vars,template:componentDefinition.template,consts:componentDefinition.consts||null,ngContentSelectors:componentDefinition.ngContentSelectors,onPush:componentDefinition.changeDetection===ChangeDetectionStrategy.OnPush,directiveDefs:null,pipeDefs:null,dependencies:baseDef.standalone&&componentDefinition.dependencies||null,getStandaloneInjector:baseDef.standalone?parentInjector=>parentInjector.get(StandaloneService).getOrCreateStandaloneInjector(def):null,getExternalStyles:null,signals:componentDefinition.signals??!1,data:componentDefinition.data||{},encapsulation:componentDefinition.encapsulation||ViewEncapsulation.Emulated,styles:componentDefinition.styles||EMPTY_ARRAY,_:null,schemas:componentDefinition.schemas||null,tView:null,id:""});baseDef.standalone&&performanceMarkFeature("NgStandalone"),initFeatures(def);let dependencies=componentDefinition.dependencies;return def.directiveDefs=extractDefListOrFactory(dependencies,extractDirectiveDef),def.pipeDefs=extractDefListOrFactory(dependencies,getPipeDef),def.id=getComponentId(def),def})}function extractDirectiveDef(type2){return getComponentDef(type2)||getDirectiveDef(type2)}function \u0275\u0275defineNgModule(def){return noSideEffects(()=>({type:def.type,bootstrap:def.bootstrap||EMPTY_ARRAY,declarations:def.declarations||EMPTY_ARRAY,imports:def.imports||EMPTY_ARRAY,exports:def.exports||EMPTY_ARRAY,transitiveCompileScopes:null,schemas:def.schemas||null,id:def.id||null}))}function parseAndConvertInputsForDefinition(obj,declaredInputs){if(obj==null)return EMPTY_OBJ;let newLookup={};for(let minifiedKey in obj)if(obj.hasOwnProperty(minifiedKey)){let value=obj[minifiedKey],publicName,declaredName,inputFlags,transform;Array.isArray(value)?(inputFlags=value[0],publicName=value[1],declaredName=value[2]??publicName,transform=value[3]||null):(publicName=value,declaredName=value,inputFlags=InputFlags.None,transform=null),newLookup[publicName]=[minifiedKey,inputFlags,transform],declaredInputs[publicName]=declaredName}return newLookup}function parseAndConvertOutputsForDefinition(obj){if(obj==null)return EMPTY_OBJ;let newLookup={};for(let minifiedKey in obj)obj.hasOwnProperty(minifiedKey)&&(newLookup[obj[minifiedKey]]=minifiedKey);return newLookup}function \u0275\u0275defineDirective(directiveDefinition){return noSideEffects(()=>{let def=getNgDirectiveDef(directiveDefinition);return initFeatures(def),def})}function \u0275\u0275definePipe(pipeDef){return{type:pipeDef.type,name:pipeDef.name,factory:null,pure:pipeDef.pure!==!1,standalone:pipeDef.standalone??!0,onDestroy:pipeDef.type.prototype.ngOnDestroy||null}}function getNgDirectiveDef(directiveDefinition){let declaredInputs={};return{type:directiveDefinition.type,providersResolver:null,factory:null,hostBindings:directiveDefinition.hostBindings||null,hostVars:directiveDefinition.hostVars||0,hostAttrs:directiveDefinition.hostAttrs||null,contentQueries:directiveDefinition.contentQueries||null,declaredInputs,inputConfig:directiveDefinition.inputs||EMPTY_OBJ,exportAs:directiveDefinition.exportAs||null,standalone:directiveDefinition.standalone??!0,signals:directiveDefinition.signals===!0,selectors:directiveDefinition.selectors||EMPTY_ARRAY,viewQuery:directiveDefinition.viewQuery||null,features:directiveDefinition.features||null,setInput:null,resolveHostDirectives:null,hostDirectives:null,inputs:parseAndConvertInputsForDefinition(directiveDefinition.inputs,declaredInputs),outputs:parseAndConvertOutputsForDefinition(directiveDefinition.outputs),debugInfo:null}}function initFeatures(definition){definition.features?.forEach(fn=>fn(definition))}function extractDefListOrFactory(dependencies,defExtractor){return dependencies?()=>{let resolvedDependencies=typeof dependencies=="function"?dependencies():dependencies,result=[];for(let dep of resolvedDependencies){let definition=defExtractor(dep);definition!==null&&result.push(definition)}return result}:null}function getComponentId(componentDef){let hash=0,componentDefConsts=typeof componentDef.consts=="function"?"":componentDef.consts,hashSelectors=[componentDef.selectors,componentDef.ngContentSelectors,componentDef.hostVars,componentDef.hostAttrs,componentDefConsts,componentDef.vars,componentDef.decls,componentDef.encapsulation,componentDef.standalone,componentDef.signals,componentDef.exportAs,JSON.stringify(componentDef.inputs),JSON.stringify(componentDef.outputs),Object.getOwnPropertyNames(componentDef.type.prototype),!!componentDef.contentQueries,!!componentDef.viewQuery];for(let char of hashSelectors.join("|"))hash=Math.imul(31,hash)+char.charCodeAt(0)<<0;return hash+=2147483648,"c"+hash}function getSuperType(type2){return Object.getPrototypeOf(type2.prototype).constructor}function \u0275\u0275InheritDefinitionFeature(definition){let superType=getSuperType(definition.type),shouldInheritFields=!0,inheritanceChain=[definition];for(;superType;){let superDef;if(isComponentDef(definition))superDef=superType.\u0275cmp||superType.\u0275dir;else{if(superType.\u0275cmp)throw new RuntimeError(903,!1);superDef=superType.\u0275dir}if(superDef){if(shouldInheritFields){inheritanceChain.push(superDef);let writeableDef=definition;writeableDef.inputs=maybeUnwrapEmpty(definition.inputs),writeableDef.declaredInputs=maybeUnwrapEmpty(definition.declaredInputs),writeableDef.outputs=maybeUnwrapEmpty(definition.outputs);let superHostBindings=superDef.hostBindings;superHostBindings&&inheritHostBindings(definition,superHostBindings);let superViewQuery=superDef.viewQuery,superContentQueries=superDef.contentQueries;if(superViewQuery&&inheritViewQuery(definition,superViewQuery),superContentQueries&&inheritContentQueries(definition,superContentQueries),mergeInputsWithTransforms(definition,superDef),fillProperties(definition.outputs,superDef.outputs),isComponentDef(superDef)&&superDef.data.animation){let defData=definition.data;defData.animation=(defData.animation||[]).concat(superDef.data.animation)}}let features=superDef.features;if(features)for(let i=0;i<features.length;i++){let feature3=features[i];feature3&&feature3.ngInherit&&feature3(definition),feature3===\u0275\u0275InheritDefinitionFeature&&(shouldInheritFields=!1)}}superType=Object.getPrototypeOf(superType)}mergeHostAttrsAcrossInheritance(inheritanceChain)}function mergeInputsWithTransforms(target,source){for(let key in source.inputs){if(!source.inputs.hasOwnProperty(key)||target.inputs.hasOwnProperty(key))continue;let value=source.inputs[key];value!==void 0&&(target.inputs[key]=value,target.declaredInputs[key]=source.declaredInputs[key])}}function mergeHostAttrsAcrossInheritance(inheritanceChain){let hostVars=0,hostAttrs=null;for(let i=inheritanceChain.length-1;i>=0;i--){let def=inheritanceChain[i];def.hostVars=hostVars+=def.hostVars,def.hostAttrs=mergeHostAttrs(def.hostAttrs,hostAttrs=mergeHostAttrs(hostAttrs,def.hostAttrs))}}function maybeUnwrapEmpty(value){return value===EMPTY_OBJ?{}:value===EMPTY_ARRAY?[]:value}function inheritViewQuery(definition,superViewQuery){let prevViewQuery=definition.viewQuery;prevViewQuery?definition.viewQuery=(rf,ctx)=>{superViewQuery(rf,ctx),prevViewQuery(rf,ctx)}:definition.viewQuery=superViewQuery}function inheritContentQueries(definition,superContentQueries){let prevContentQueries=definition.contentQueries;prevContentQueries?definition.contentQueries=(rf,ctx,directiveIndex)=>{superContentQueries(rf,ctx,directiveIndex),prevContentQueries(rf,ctx,directiveIndex)}:definition.contentQueries=superContentQueries}function inheritHostBindings(definition,superHostBindings){let prevHostBindings=definition.hostBindings;prevHostBindings?definition.hostBindings=(rf,ctx)=>{superHostBindings(rf,ctx),prevHostBindings(rf,ctx)}:definition.hostBindings=superHostBindings}function \u0275\u0275HostDirectivesFeature(rawHostDirectives){let feature3=definition=>{let isEager=Array.isArray(rawHostDirectives);definition.hostDirectives===null?(definition.resolveHostDirectives=resolveHostDirectives,definition.hostDirectives=isEager?rawHostDirectives.map(createHostDirectiveDef):[rawHostDirectives]):isEager?definition.hostDirectives.unshift(...rawHostDirectives.map(createHostDirectiveDef)):definition.hostDirectives.unshift(rawHostDirectives)};return feature3.ngInherit=!0,feature3}function resolveHostDirectives(matches){let allDirectiveDefs=[],hasComponent=!1,hostDirectiveDefs=null,hostDirectiveRanges=null;for(let i=0;i<matches.length;i++){let def=matches[i];if(def.hostDirectives!==null){let start=allDirectiveDefs.length;hostDirectiveDefs??=new Map,hostDirectiveRanges??=new Map,findHostDirectiveDefs(def,allDirectiveDefs,hostDirectiveDefs),hostDirectiveRanges.set(def,[start,allDirectiveDefs.length-1])}i===0&&isComponentDef(def)&&(hasComponent=!0,allDirectiveDefs.push(def))}for(let i=hasComponent?1:0;i<matches.length;i++)allDirectiveDefs.push(matches[i]);return[allDirectiveDefs,hostDirectiveDefs,hostDirectiveRanges]}function findHostDirectiveDefs(currentDef,matchedDefs,hostDirectiveDefs){if(currentDef.hostDirectives!==null)for(let configOrFn of currentDef.hostDirectives)if(typeof configOrFn=="function"){let resolved2=configOrFn();for(let config2 of resolved2)trackHostDirectiveDef(createHostDirectiveDef(config2),matchedDefs,hostDirectiveDefs)}else trackHostDirectiveDef(configOrFn,matchedDefs,hostDirectiveDefs)}function trackHostDirectiveDef(def,matchedDefs,hostDirectiveDefs){let hostDirectiveDef=getDirectiveDef(def.directive);patchDeclaredInputs(hostDirectiveDef.declaredInputs,def.inputs),findHostDirectiveDefs(hostDirectiveDef,matchedDefs,hostDirectiveDefs),hostDirectiveDefs.set(hostDirectiveDef,def),matchedDefs.push(hostDirectiveDef)}function createHostDirectiveDef(config2){return typeof config2=="function"?{directive:resolveForwardRef(config2),inputs:EMPTY_OBJ,outputs:EMPTY_OBJ}:{directive:resolveForwardRef(config2.directive),inputs:bindingArrayToMap(config2.inputs),outputs:bindingArrayToMap(config2.outputs)}}function bindingArrayToMap(bindings){if(bindings===void 0||bindings.length===0)return EMPTY_OBJ;let result={};for(let i=0;i<bindings.length;i+=2)result[bindings[i]]=bindings[i+1];return result}function patchDeclaredInputs(declaredInputs,exposedInputs){for(let publicName in exposedInputs)if(exposedInputs.hasOwnProperty(publicName)){let remappedPublicName=exposedInputs[publicName],privateName=declaredInputs[publicName];declaredInputs[remappedPublicName]=privateName}}function templateCreate(tNode,declarationLView,declarationTView,index,templateFn,decls,vars,flags){if(declarationTView.firstCreatePass){tNode.mergedAttrs=mergeHostAttrs(tNode.mergedAttrs,tNode.attrs);let embeddedTView=tNode.tView=createTView(2,tNode,templateFn,decls,vars,declarationTView.directiveRegistry,declarationTView.pipeRegistry,null,declarationTView.schemas,declarationTView.consts,null);declarationTView.queries!==null&&(declarationTView.queries.template(declarationTView,tNode),embeddedTView.queries=declarationTView.queries.embeddedTView(tNode))}flags&&(tNode.flags|=flags),setCurrentTNode(tNode,!1);let comment=_locateOrCreateContainerAnchor(declarationTView,declarationLView,tNode,index);wasLastNodeCreated()&&appendChild(declarationTView,declarationLView,comment,tNode),attachPatchData(comment,declarationLView);let lContainer=createLContainer(comment,declarationLView,comment,tNode);declarationLView[index+HEADER_OFFSET]=lContainer,addToEndOfViewTree(declarationLView,lContainer),populateDehydratedViewsInLContainer(lContainer,tNode,declarationLView)}function declareDirectiveHostTemplate(declarationLView,declarationTView,index,templateFn,decls,vars,tagName,attrs,flags,localRefsIndex,localRefExtractor){let adjustedIndex=index+HEADER_OFFSET,tNode;return declarationTView.firstCreatePass?(tNode=getOrCreateTNode(declarationTView,adjustedIndex,4,tagName||null,attrs||null),getBindingsEnabled()&&resolveDirectives(declarationTView,declarationLView,tNode,getConstant(declarationTView.consts,localRefsIndex),findDirectiveDefMatches),registerPostOrderHooks(declarationTView,tNode)):tNode=declarationTView.data[adjustedIndex],templateCreate(tNode,declarationLView,declarationTView,index,templateFn,decls,vars,flags),isDirectiveHost(tNode)&&createDirectivesInstances(declarationTView,declarationLView,tNode),localRefsIndex!=null&&saveResolvedLocalsInData(declarationLView,tNode,localRefExtractor),tNode}function declareNoDirectiveHostTemplate(declarationLView,declarationTView,index,templateFn,decls,vars,tagName,attrs,flags,localRefsIndex,localRefExtractor){let adjustedIndex=index+HEADER_OFFSET,tNode;if(declarationTView.firstCreatePass){if(tNode=getOrCreateTNode(declarationTView,adjustedIndex,4,tagName||null,attrs||null),localRefsIndex!=null){let refs=getConstant(declarationTView.consts,localRefsIndex);tNode.localNames=[];for(let i=0;i<refs.length;i+=2)tNode.localNames.push(refs[i],-1)}}else tNode=declarationTView.data[adjustedIndex];return templateCreate(tNode,declarationLView,declarationTView,index,templateFn,decls,vars,flags),localRefsIndex!=null&&saveResolvedLocalsInData(declarationLView,tNode,localRefExtractor),tNode}function \u0275\u0275template(index,templateFn,decls,vars,tagName,attrsIndex,localRefsIndex,localRefExtractor){let lView=getLView(),tView=getTView(),attrs=getConstant(tView.consts,attrsIndex);return declareDirectiveHostTemplate(lView,tView,index,templateFn,decls,vars,tagName,attrs,void 0,localRefsIndex,localRefExtractor),\u0275\u0275template}function \u0275\u0275domTemplate(index,templateFn,decls,vars,tagName,attrsIndex,localRefsIndex,localRefExtractor){let lView=getLView(),tView=getTView(),attrs=getConstant(tView.consts,attrsIndex);return declareNoDirectiveHostTemplate(lView,tView,index,templateFn,decls,vars,tagName,attrs,void 0,localRefsIndex,localRefExtractor),\u0275\u0275domTemplate}var _locateOrCreateContainerAnchor=createContainerAnchorImpl;function createContainerAnchorImpl(tView,lView,tNode,index){return lastNodeWasCreated(!0),lView[RENDERER].createComment("")}var TracingAction=(function(TracingAction2){return TracingAction2[TracingAction2.CHANGE_DETECTION=0]="CHANGE_DETECTION",TracingAction2[TracingAction2.AFTER_NEXT_RENDER=1]="AFTER_NEXT_RENDER",TracingAction2})(TracingAction||{}),TracingService=new InjectionToken(""),SCHEDULE_IN_ROOT_ZONE_DEFAULT=!1,EventEmitter_=class extends Subject{__isAsync;destroyRef=void 0;pendingTasks=void 0;constructor(isAsync=!1){super(),this.__isAsync=isAsync,isInInjectionContext()&&(this.destroyRef=inject2(DestroyRef,{optional:!0})??void 0,this.pendingTasks=inject2(PendingTasksInternal,{optional:!0})??void 0)}emit(value){let prevConsumer=setActiveConsumer(null);try{super.next(value)}finally{setActiveConsumer(prevConsumer)}}subscribe(observerOrNext,error,complete){let nextFn=observerOrNext,errorFn=error||(()=>null),completeFn=complete;if(observerOrNext&&typeof observerOrNext=="object"){let observer=observerOrNext;nextFn=observer.next?.bind(observer),errorFn=observer.error?.bind(observer),completeFn=observer.complete?.bind(observer)}this.__isAsync&&(errorFn=this.wrapInTimeout(errorFn),nextFn&&(nextFn=this.wrapInTimeout(nextFn)),completeFn&&(completeFn=this.wrapInTimeout(completeFn)));let sink=super.subscribe({next:nextFn,error:errorFn,complete:completeFn});return observerOrNext instanceof Subscription&&observerOrNext.add(sink),sink}wrapInTimeout(fn){return value=>{let taskId=this.pendingTasks?.add();setTimeout(()=>{try{fn(value)}finally{taskId!==void 0&&this.pendingTasks?.remove(taskId)}})}}},EventEmitter=EventEmitter_;function scheduleCallbackWithRafRace(callback){let timeoutId,animationFrameId;function cleanup(){callback=noop2;try{animationFrameId!==void 0&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(animationFrameId),timeoutId!==void 0&&clearTimeout(timeoutId)}catch{}}return timeoutId=setTimeout(()=>{callback(),cleanup()}),typeof requestAnimationFrame=="function"&&(animationFrameId=requestAnimationFrame(()=>{callback(),cleanup()})),()=>cleanup()}function scheduleCallbackWithMicrotask(callback){return queueMicrotask(()=>callback()),()=>{callback=noop2}}var isAngularZoneProperty="isAngularZone",angularZoneInstanceIdProperty=isAngularZoneProperty+"_ID",ngZoneInstanceId=0,NgZone=class _NgZone{hasPendingMacrotasks=!1;hasPendingMicrotasks=!1;isStable=!0;onUnstable=new EventEmitter(!1);onMicrotaskEmpty=new EventEmitter(!1);onStable=new EventEmitter(!1);onError=new EventEmitter(!1);constructor(options){let{enableLongStackTrace=!1,shouldCoalesceEventChangeDetection=!1,shouldCoalesceRunChangeDetection=!1,scheduleInRootZone=SCHEDULE_IN_ROOT_ZONE_DEFAULT}=options;if(typeof Zone>"u")throw new RuntimeError(908,!1);Zone.assertZonePatched();let self2=this;self2._nesting=0,self2._outer=self2._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(self2._inner=self2._inner.fork(new Zone.TaskTrackingZoneSpec)),enableLongStackTrace&&Zone.longStackTraceZoneSpec&&(self2._inner=self2._inner.fork(Zone.longStackTraceZoneSpec)),self2.shouldCoalesceEventChangeDetection=!shouldCoalesceRunChangeDetection&&shouldCoalesceEventChangeDetection,self2.shouldCoalesceRunChangeDetection=shouldCoalesceRunChangeDetection,self2.callbackScheduled=!1,self2.scheduleInRootZone=scheduleInRootZone,forkInnerZoneWithAngularBehavior(self2)}static isInAngularZone(){return typeof Zone<"u"&&Zone.current.get(isAngularZoneProperty)===!0}static assertInAngularZone(){if(!_NgZone.isInAngularZone())throw new RuntimeError(909,!1)}static assertNotInAngularZone(){if(_NgZone.isInAngularZone())throw new RuntimeError(909,!1)}run(fn,applyThis,applyArgs){return this._inner.run(fn,applyThis,applyArgs)}runTask(fn,applyThis,applyArgs,name){let zone=this._inner,task=zone.scheduleEventTask("NgZoneEvent: "+name,fn,EMPTY_PAYLOAD,noop2,noop2);try{return zone.runTask(task,applyThis,applyArgs)}finally{zone.cancelTask(task)}}runGuarded(fn,applyThis,applyArgs){return this._inner.runGuarded(fn,applyThis,applyArgs)}runOutsideAngular(fn){return this._outer.run(fn)}},EMPTY_PAYLOAD={};function checkStable(zone){if(zone._nesting==0&&!zone.hasPendingMicrotasks&&!zone.isStable)try{zone._nesting++,zone.onMicrotaskEmpty.emit(null)}finally{if(zone._nesting--,!zone.hasPendingMicrotasks)try{zone.runOutsideAngular(()=>zone.onStable.emit(null))}finally{zone.isStable=!0}}}function delayChangeDetectionForEvents(zone){if(zone.isCheckStableRunning||zone.callbackScheduled)return;zone.callbackScheduled=!0;function scheduleCheckStable(){scheduleCallbackWithRafRace(()=>{zone.callbackScheduled=!1,updateMicroTaskStatus(zone),zone.isCheckStableRunning=!0,checkStable(zone),zone.isCheckStableRunning=!1})}zone.scheduleInRootZone?Zone.root.run(()=>{scheduleCheckStable()}):zone._outer.run(()=>{scheduleCheckStable()}),updateMicroTaskStatus(zone)}function forkInnerZoneWithAngularBehavior(zone){let delayChangeDetectionForEventsDelegate=()=>{delayChangeDetectionForEvents(zone)},instanceId=ngZoneInstanceId++;zone._inner=zone._inner.fork({name:"angular",properties:{[isAngularZoneProperty]:!0,[angularZoneInstanceIdProperty]:instanceId,[angularZoneInstanceIdProperty+instanceId]:!0},onInvokeTask:(delegate,current,target,task,applyThis,applyArgs)=>{if(shouldBeIgnoredByZone(applyArgs))return delegate.invokeTask(target,task,applyThis,applyArgs);try{return onEnter(zone),delegate.invokeTask(target,task,applyThis,applyArgs)}finally{(zone.shouldCoalesceEventChangeDetection&&task.type==="eventTask"||zone.shouldCoalesceRunChangeDetection)&&delayChangeDetectionForEventsDelegate(),onLeave(zone)}},onInvoke:(delegate,current,target,callback,applyThis,applyArgs,source)=>{try{return onEnter(zone),delegate.invoke(target,callback,applyThis,applyArgs,source)}finally{zone.shouldCoalesceRunChangeDetection&&!zone.callbackScheduled&&!isSchedulerTick(applyArgs)&&delayChangeDetectionForEventsDelegate(),onLeave(zone)}},onHasTask:(delegate,current,target,hasTaskState)=>{delegate.hasTask(target,hasTaskState),current===target&&(hasTaskState.change=="microTask"?(zone._hasPendingMicrotasks=hasTaskState.microTask,updateMicroTaskStatus(zone),checkStable(zone)):hasTaskState.change=="macroTask"&&(zone.hasPendingMacrotasks=hasTaskState.macroTask))},onHandleError:(delegate,current,target,error)=>(delegate.handleError(target,error),zone.runOutsideAngular(()=>zone.onError.emit(error)),!1)})}function updateMicroTaskStatus(zone){zone._hasPendingMicrotasks||(zone.shouldCoalesceEventChangeDetection||zone.shouldCoalesceRunChangeDetection)&&zone.callbackScheduled===!0?zone.hasPendingMicrotasks=!0:zone.hasPendingMicrotasks=!1}function onEnter(zone){zone._nesting++,zone.isStable&&(zone.isStable=!1,zone.onUnstable.emit(null))}function onLeave(zone){zone._nesting--,checkStable(zone)}var NoopNgZone=class{hasPendingMicrotasks=!1;hasPendingMacrotasks=!1;isStable=!0;onUnstable=new EventEmitter;onMicrotaskEmpty=new EventEmitter;onStable=new EventEmitter;onError=new EventEmitter;run(fn,applyThis,applyArgs){return fn.apply(applyThis,applyArgs)}runGuarded(fn,applyThis,applyArgs){return fn.apply(applyThis,applyArgs)}runOutsideAngular(fn){return fn()}runTask(fn,applyThis,applyArgs,name){return fn.apply(applyThis,applyArgs)}};function shouldBeIgnoredByZone(applyArgs){return hasApplyArgsData(applyArgs,"__ignore_ng_zone__")}function isSchedulerTick(applyArgs){return hasApplyArgsData(applyArgs,"__scheduler_tick__")}function hasApplyArgsData(applyArgs,key){return!Array.isArray(applyArgs)||applyArgs.length!==1?!1:applyArgs[0]?.data?.[key]===!0}function getNgZone(ngZoneToUse="zone.js",options){return ngZoneToUse==="noop"?new NoopNgZone:ngZoneToUse==="zone.js"?new NgZone(options):ngZoneToUse}var AfterRenderManager=(()=>{class AfterRenderManager2{impl=null;execute(){this.impl?.execute()}static \u0275prov=\u0275\u0275defineInjectable({token:AfterRenderManager2,providedIn:"root",factory:()=>new AfterRenderManager2})}return AfterRenderManager2})(),AFTER_RENDER_PHASES=[0,1,2,3],AfterRenderImpl=(()=>{class AfterRenderImpl2{ngZone=inject2(NgZone);scheduler=inject2(ChangeDetectionScheduler);errorHandler=inject2(ErrorHandler,{optional:!0});sequences=new Set;deferredRegistrations=new Set;executing=!1;constructor(){inject2(TracingService,{optional:!0})}execute(){let hasSequencesToExecute=this.sequences.size>0;hasSequencesToExecute&&profiler(16),this.executing=!0;for(let phase of AFTER_RENDER_PHASES)for(let sequence2 of this.sequences)if(!(sequence2.erroredOrDestroyed||!sequence2.hooks[phase]))try{sequence2.pipelinedValue=this.ngZone.runOutsideAngular(()=>this.maybeTrace(()=>{let hookFn=sequence2.hooks[phase];return hookFn(sequence2.pipelinedValue)},sequence2.snapshot))}catch(err){sequence2.erroredOrDestroyed=!0,this.errorHandler?.handleError(err)}this.executing=!1;for(let sequence2 of this.sequences)sequence2.afterRun(),sequence2.once&&(this.sequences.delete(sequence2),sequence2.destroy());for(let sequence2 of this.deferredRegistrations)this.sequences.add(sequence2);this.deferredRegistrations.size>0&&this.scheduler.notify(7),this.deferredRegistrations.clear(),hasSequencesToExecute&&profiler(17)}register(sequence2){let{view}=sequence2;view!==void 0?((view[AFTER_RENDER_SEQUENCES_TO_ADD]??=[]).push(sequence2),markAncestorsForTraversal(view),view[FLAGS]|=8192):this.executing?this.deferredRegistrations.add(sequence2):this.addSequence(sequence2)}addSequence(sequence2){this.sequences.add(sequence2),this.scheduler.notify(7)}unregister(sequence2){this.executing&&this.sequences.has(sequence2)?(sequence2.erroredOrDestroyed=!0,sequence2.pipelinedValue=void 0,sequence2.once=!0):(this.sequences.delete(sequence2),this.deferredRegistrations.delete(sequence2))}maybeTrace(fn,snapshot){return snapshot?snapshot.run(TracingAction.AFTER_NEXT_RENDER,fn):fn()}static \u0275prov=\u0275\u0275defineInjectable({token:AfterRenderImpl2,providedIn:"root",factory:()=>new AfterRenderImpl2})}return AfterRenderImpl2})(),AfterRenderSequence=class{impl;hooks;view;once;snapshot;erroredOrDestroyed=!1;pipelinedValue=void 0;unregisterOnDestroy;constructor(impl,hooks,view,once,destroyRef,snapshot=null){this.impl=impl,this.hooks=hooks,this.view=view,this.once=once,this.snapshot=snapshot,this.unregisterOnDestroy=destroyRef?.onDestroy(()=>this.destroy())}afterRun(){this.erroredOrDestroyed=!1,this.pipelinedValue=void 0,this.snapshot?.dispose(),this.snapshot=null}destroy(){this.impl.unregister(this),this.unregisterOnDestroy?.();let scheduled2=this.view?.[AFTER_RENDER_SEQUENCES_TO_ADD];scheduled2&&(this.view[AFTER_RENDER_SEQUENCES_TO_ADD]=scheduled2.filter(s=>s!==this))}};function afterNextRender(callbackOrSpec,options){let injector=options?.injector??inject2(Injector);return performanceMarkFeature("NgAfterNextRender"),afterEveryRenderImpl(callbackOrSpec,injector,options,!0)}function getHooks(callbackOrSpec){return callbackOrSpec instanceof Function?[void 0,void 0,callbackOrSpec,void 0]:[callbackOrSpec.earlyRead,callbackOrSpec.write,callbackOrSpec.mixedReadWrite,callbackOrSpec.read]}function afterEveryRenderImpl(callbackOrSpec,injector,options,once){let manager=injector.get(AfterRenderManager);manager.impl??=injector.get(AfterRenderImpl);let tracing=injector.get(TracingService,null,{optional:!0}),destroyRef=options?.manualCleanup!==!0?injector.get(DestroyRef):null,viewContext=injector.get(ViewContext,null,{optional:!0}),sequence2=new AfterRenderSequence(manager.impl,getHooks(callbackOrSpec),viewContext?.view,once,destroyRef,tracing?.snapshot(null));return manager.impl.register(sequence2),sequence2}var Console=(()=>{class Console2{log(message){console.log(message)}warn(message){console.warn(message)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Console2)};static \u0275prov=\u0275\u0275defineInjectable({token:Console2,factory:Console2.\u0275fac,providedIn:"platform"})}return Console2})();var TESTABILITY=new InjectionToken(""),TESTABILITY_GETTER=new InjectionToken(""),Testability=(()=>{class Testability2{_ngZone;registry;_isZoneStable=!0;_callbacks=[];_taskTrackingZone=null;_destroyRef;constructor(_ngZone,registry2,testabilityGetter){this._ngZone=_ngZone,this.registry=registry2,isInInjectionContext()&&(this._destroyRef=inject2(DestroyRef,{optional:!0})??void 0),_testabilityGetter||(setTestabilityGetter(testabilityGetter),testabilityGetter.addToWindow(registry2)),this._watchAngularEvents(),_ngZone.run(()=>{this._taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){let onUnstableSubscription=this._ngZone.onUnstable.subscribe({next:()=>{this._isZoneStable=!1}}),onStableSubscription=this._ngZone.runOutsideAngular(()=>this._ngZone.onStable.subscribe({next:()=>{NgZone.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}}));this._destroyRef?.onDestroy(()=>{onUnstableSubscription.unsubscribe(),onStableSubscription.unsubscribe()})}isStable(){return this._isZoneStable&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;this._callbacks.length!==0;){let cb=this._callbacks.pop();clearTimeout(cb.timeoutId),cb.doneCb()}});else{let pending=this.getPendingTasks();this._callbacks=this._callbacks.filter(cb=>cb.updateCb&&cb.updateCb(pending)?(clearTimeout(cb.timeoutId),!1):!0)}}getPendingTasks(){return this._taskTrackingZone?this._taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(cb,timeout2,updateCb){let timeoutId=-1;timeout2&&timeout2>0&&(timeoutId=setTimeout(()=>{this._callbacks=this._callbacks.filter(cb2=>cb2.timeoutId!==timeoutId),cb()},timeout2)),this._callbacks.push({doneCb:cb,timeoutId,updateCb})}whenStable(doneCb,timeout2,updateCb){if(updateCb&&!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(doneCb,timeout2,updateCb),this._runCallbacksIfReady()}registerApplication(token){this.registry.registerApplication(token,this)}unregisterApplication(token){this.registry.unregisterApplication(token)}findProviders(using,provider,exactMatch){return[]}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Testability2)(\u0275\u0275inject(NgZone),\u0275\u0275inject(TestabilityRegistry),\u0275\u0275inject(TESTABILITY_GETTER))};static \u0275prov=\u0275\u0275defineInjectable({token:Testability2,factory:Testability2.\u0275fac})}return Testability2})(),TestabilityRegistry=(()=>{class TestabilityRegistry2{_applications=new Map;registerApplication(token,testability){this._applications.set(token,testability)}unregisterApplication(token){this._applications.delete(token)}unregisterAllApplications(){this._applications.clear()}getTestability(elem){return this._applications.get(elem)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(elem,findInAncestors=!0){return _testabilityGetter?.findTestabilityInTree(this,elem,findInAncestors)??null}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||TestabilityRegistry2)};static \u0275prov=\u0275\u0275defineInjectable({token:TestabilityRegistry2,factory:TestabilityRegistry2.\u0275fac,providedIn:"platform"})}return TestabilityRegistry2})();function setTestabilityGetter(getter){_testabilityGetter=getter}var _testabilityGetter;function isPromise2(obj){return!!obj&&typeof obj.then=="function"}function isSubscribable(obj){return!!obj&&typeof obj.subscribe=="function"}var APP_INITIALIZER=new InjectionToken("");function provideAppInitializer(initializerFn){return makeEnvironmentProviders([{provide:APP_INITIALIZER,multi:!0,useValue:initializerFn}])}var ApplicationInitStatus=(()=>{class ApplicationInitStatus2{resolve;reject;initialized=!1;done=!1;donePromise=new Promise((res,rej)=>{this.resolve=res,this.reject=rej});appInits=inject2(APP_INITIALIZER,{optional:!0})??[];injector=inject2(Injector);constructor(){}runInitializers(){if(this.initialized)return;let asyncInitPromises=[];for(let appInits of this.appInits){let initResult=runInInjectionContext(this.injector,appInits);if(isPromise2(initResult))asyncInitPromises.push(initResult);else if(isSubscribable(initResult)){let observableAsPromise=new Promise((resolve,reject)=>{initResult.subscribe({complete:resolve,error:reject})});asyncInitPromises.push(observableAsPromise)}}let complete=()=>{this.done=!0,this.resolve()};Promise.all(asyncInitPromises).then(()=>{complete()}).catch(e=>{this.reject(e)}),asyncInitPromises.length===0&&complete(),this.initialized=!0}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ApplicationInitStatus2)};static \u0275prov=\u0275\u0275defineInjectable({token:ApplicationInitStatus2,factory:ApplicationInitStatus2.\u0275fac,providedIn:"root"})}return ApplicationInitStatus2})(),APP_BOOTSTRAP_LISTENER=new InjectionToken("");function publishSignalConfiguration(){setThrowInvalidWriteToSignalError(()=>{let errorMessage="";throw new RuntimeError(600,errorMessage)})}function isBoundToModule(cf){return cf.isBoundToModule}var MAXIMUM_REFRESH_RERUNS=10;function optionsReducer(dst,objs){return Array.isArray(objs)?objs.reduce(optionsReducer,dst):__spreadValues(__spreadValues({},dst),objs)}var ApplicationRef=(()=>{class ApplicationRef3{_runningTick=!1;_destroyed=!1;_destroyListeners=[];_views=[];internalErrorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);afterRenderManager=inject2(AfterRenderManager);zonelessEnabled=inject2(ZONELESS_ENABLED);rootEffectScheduler=inject2(EffectScheduler);dirtyFlags=0;tracingSnapshot=null;allTestViews=new Set;autoDetectTestViews=new Set;includeAllTestViews=!1;afterTick=new Subject;get allViews(){return[...(this.includeAllTestViews?this.allTestViews:this.autoDetectTestViews).keys(),...this._views]}get destroyed(){return this._destroyed}componentTypes=[];components=[];internalPendingTask=inject2(PendingTasksInternal);get isStable(){return this.internalPendingTask.hasPendingTasksObservable.pipe(map(pending=>!pending))}constructor(){inject2(TracingService,{optional:!0})}whenStable(){let subscription;return new Promise(resolve=>{subscription=this.isStable.subscribe({next:stable=>{stable&&resolve()}})}).finally(()=>{subscription.unsubscribe()})}_injector=inject2(EnvironmentInjector);_rendererFactory=null;get injector(){return this._injector}bootstrap(componentOrFactory,rootSelectorOrNode){return this.bootstrapImpl(componentOrFactory,rootSelectorOrNode)}bootstrapImpl(componentOrFactory,rootSelectorOrNode,injector=Injector.NULL){return this._injector.get(NgZone).run(()=>{profiler(10);let isComponentFactory=componentOrFactory instanceof ComponentFactory$1;if(!this._injector.get(ApplicationInitStatus).done){let errorMessage="";throw new RuntimeError(405,errorMessage)}let componentFactory;isComponentFactory?componentFactory=componentOrFactory:componentFactory=this._injector.get(ComponentFactoryResolver$1).resolveComponentFactory(componentOrFactory),this.componentTypes.push(componentFactory.componentType);let ngModule=isBoundToModule(componentFactory)?void 0:this._injector.get(NgModuleRef$1),selectorOrNode=rootSelectorOrNode||componentFactory.selector,compRef=componentFactory.create(injector,[],selectorOrNode,ngModule),nativeElement=compRef.location.nativeElement,testability=compRef.injector.get(TESTABILITY,null);return testability?.registerApplication(nativeElement),compRef.onDestroy(()=>{this.detachView(compRef.hostView),remove(this.components,compRef),testability?.unregisterApplication(nativeElement)}),this._loadComponent(compRef),profiler(11,compRef),compRef})}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){profiler(12),this.tracingSnapshot!==null?this.tracingSnapshot.run(TracingAction.CHANGE_DETECTION,this.tickImpl):this.tickImpl()}tickImpl=()=>{if(this._runningTick)throw new RuntimeError(101,!1);let prevConsumer=setActiveConsumer(null);try{this._runningTick=!0,this.synchronize()}finally{this._runningTick=!1,this.tracingSnapshot?.dispose(),this.tracingSnapshot=null,setActiveConsumer(prevConsumer),this.afterTick.next(),profiler(13)}};synchronize(){this._rendererFactory===null&&!this._injector.destroyed&&(this._rendererFactory=this._injector.get(RendererFactory2,null,{optional:!0}));let runs=0;for(;this.dirtyFlags!==0&&runs++<MAXIMUM_REFRESH_RERUNS;)profiler(14),this.synchronizeOnce(),profiler(15)}synchronizeOnce(){this.dirtyFlags&16&&(this.dirtyFlags&=-17,this.rootEffectScheduler.flush());let ranDetectChanges=!1;if(this.dirtyFlags&7){let useGlobalCheck=!!(this.dirtyFlags&1);this.dirtyFlags&=-8,this.dirtyFlags|=8;for(let{_lView}of this.allViews){if(!useGlobalCheck&&!requiresRefreshOrTraversal(_lView))continue;let mode=useGlobalCheck&&!this.zonelessEnabled?0:1;detectChangesInternal(_lView,mode),ranDetectChanges=!0}if(this.dirtyFlags&=-5,this.syncDirtyFlagsWithViews(),this.dirtyFlags&23)return}ranDetectChanges||(this._rendererFactory?.begin?.(),this._rendererFactory?.end?.()),this.dirtyFlags&8&&(this.dirtyFlags&=-9,this.afterRenderManager.execute()),this.syncDirtyFlagsWithViews()}syncDirtyFlagsWithViews(){if(this.allViews.some(({_lView})=>requiresRefreshOrTraversal(_lView))){this.dirtyFlags|=2;return}else this.dirtyFlags&=-8}attachView(viewRef){let view=viewRef;this._views.push(view),view.attachToAppRef(this)}detachView(viewRef){let view=viewRef;remove(this._views,view),view.detachFromAppRef()}_loadComponent(componentRef){this.attachView(componentRef.hostView);try{this.tick()}catch(e){this.internalErrorHandler(e)}this.components.push(componentRef),this._injector.get(APP_BOOTSTRAP_LISTENER,[]).forEach(listener=>listener(componentRef))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(listener=>listener()),this._views.slice().forEach(view=>view.destroy())}finally{this._destroyed=!0,this._views=[],this._destroyListeners=[]}}onDestroy(callback){return this._destroyListeners.push(callback),()=>remove(this._destroyListeners,callback)}destroy(){if(this._destroyed)throw new RuntimeError(406,!1);let injector=this._injector;injector.destroy&&!injector.destroyed&&injector.destroy()}get viewCount(){return this._views.length}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ApplicationRef3)};static \u0275prov=\u0275\u0275defineInjectable({token:ApplicationRef3,factory:ApplicationRef3.\u0275fac,providedIn:"root"})}return ApplicationRef3})();function remove(list,el){let index=list.indexOf(el);index>-1&&list.splice(index,1)}var ARIA_PREFIX="aria";function \u0275\u0275ariaProperty(name,value){let lView=getLView(),bindingIndex=nextBindingIndex();if(bindingUpdated(lView,bindingIndex,value)){let tView=getTView(),tNode=getSelectedTNode();if(setAllInputsForProperty(tNode,tView,lView,name,value))isComponentHost(tNode)&&markDirtyIfOnPush(lView,tNode.index);else{let element=getNativeByTNode(tNode,lView),attributeName=ariaAttrName(name);setElementAttribute(lView[RENDERER],element,null,tNode.value,attributeName,value,null)}}return \u0275\u0275ariaProperty}function ariaAttrName(name){return name.charAt(ARIA_PREFIX.length)!=="-"?ARIA_PREFIX+"-"+name.slice(ARIA_PREFIX.length).toLowerCase():name}function \u0275\u0275attribute(name,value,sanitizer,namespace){let lView=getLView(),bindingIndex=nextBindingIndex();if(bindingUpdated(lView,bindingIndex,value)){let tView=getTView(),tNode=getSelectedTNode();elementAttributeInternal(tNode,lView,name,value,sanitizer,namespace)}return \u0275\u0275attribute}var ANIMATIONS_DISABLED=new InjectionToken("",{providedIn:"root",factory:()=>!1}),MAX_ANIMATION_TIMEOUT=new InjectionToken("",{providedIn:"root",factory:()=>MAX_ANIMATION_TIMEOUT_DEFAULT}),MAX_ANIMATION_TIMEOUT_DEFAULT=4e3;var areAnimationSupported=typeof document<"u"&&typeof document?.documentElement?.getAnimations=="function";var LiveCollection=class{destroy(item){}updateValue(index,value){}swap(index1,index2){let startIdx=Math.min(index1,index2),endIdx=Math.max(index1,index2),endItem=this.detach(endIdx);if(endIdx-startIdx>1){let startItem=this.detach(startIdx);this.attach(startIdx,endItem),this.attach(endIdx,startItem)}else this.attach(startIdx,endItem)}move(prevIndex,newIdx){this.attach(newIdx,this.detach(prevIndex))}};function valuesMatching(liveIdx,liveValue,newIdx,newValue,trackBy){return liveIdx===newIdx&&Object.is(liveValue,newValue)?1:Object.is(trackBy(liveIdx,liveValue),trackBy(newIdx,newValue))?-1:0}function reconcile(liveCollection,newCollection,trackByFn){let detachedItems,liveKeysInTheFuture,liveStartIdx=0,liveEndIdx=liveCollection.length-1,duplicateKeys=void 0;if(Array.isArray(newCollection)){let newEndIdx=newCollection.length-1;for(;liveStartIdx<=liveEndIdx&&liveStartIdx<=newEndIdx;){let liveStartValue=liveCollection.at(liveStartIdx),newStartValue=newCollection[liveStartIdx],isStartMatching=valuesMatching(liveStartIdx,liveStartValue,liveStartIdx,newStartValue,trackByFn);if(isStartMatching!==0){isStartMatching<0&&liveCollection.updateValue(liveStartIdx,newStartValue),liveStartIdx++;continue}let liveEndValue=liveCollection.at(liveEndIdx),newEndValue=newCollection[newEndIdx],isEndMatching=valuesMatching(liveEndIdx,liveEndValue,newEndIdx,newEndValue,trackByFn);if(isEndMatching!==0){isEndMatching<0&&liveCollection.updateValue(liveEndIdx,newEndValue),liveEndIdx--,newEndIdx--;continue}let liveStartKey=trackByFn(liveStartIdx,liveStartValue),liveEndKey=trackByFn(liveEndIdx,liveEndValue),newStartKey=trackByFn(liveStartIdx,newStartValue);if(Object.is(newStartKey,liveEndKey)){let newEndKey=trackByFn(newEndIdx,newEndValue);Object.is(newEndKey,liveStartKey)?(liveCollection.swap(liveStartIdx,liveEndIdx),liveCollection.updateValue(liveEndIdx,newEndValue),newEndIdx--,liveEndIdx--):liveCollection.move(liveEndIdx,liveStartIdx),liveCollection.updateValue(liveStartIdx,newStartValue),liveStartIdx++;continue}if(detachedItems??=new UniqueValueMultiKeyMap,liveKeysInTheFuture??=initLiveItemsInTheFuture(liveCollection,liveStartIdx,liveEndIdx,trackByFn),attachPreviouslyDetached(liveCollection,detachedItems,liveStartIdx,newStartKey))liveCollection.updateValue(liveStartIdx,newStartValue),liveStartIdx++,liveEndIdx++;else if(liveKeysInTheFuture.has(newStartKey))detachedItems.set(liveStartKey,liveCollection.detach(liveStartIdx)),liveEndIdx--;else{let newItem=liveCollection.create(liveStartIdx,newCollection[liveStartIdx]);liveCollection.attach(liveStartIdx,newItem),liveStartIdx++,liveEndIdx++}}for(;liveStartIdx<=newEndIdx;)createOrAttach(liveCollection,detachedItems,trackByFn,liveStartIdx,newCollection[liveStartIdx]),liveStartIdx++}else if(newCollection!=null){let newCollectionIterator=newCollection[Symbol.iterator](),newIterationResult=newCollectionIterator.next();for(;!newIterationResult.done&&liveStartIdx<=liveEndIdx;){let liveValue=liveCollection.at(liveStartIdx),newValue=newIterationResult.value,isStartMatching=valuesMatching(liveStartIdx,liveValue,liveStartIdx,newValue,trackByFn);if(isStartMatching!==0)isStartMatching<0&&liveCollection.updateValue(liveStartIdx,newValue),liveStartIdx++,newIterationResult=newCollectionIterator.next();else{detachedItems??=new UniqueValueMultiKeyMap,liveKeysInTheFuture??=initLiveItemsInTheFuture(liveCollection,liveStartIdx,liveEndIdx,trackByFn);let newKey=trackByFn(liveStartIdx,newValue);if(attachPreviouslyDetached(liveCollection,detachedItems,liveStartIdx,newKey))liveCollection.updateValue(liveStartIdx,newValue),liveStartIdx++,liveEndIdx++,newIterationResult=newCollectionIterator.next();else if(!liveKeysInTheFuture.has(newKey))liveCollection.attach(liveStartIdx,liveCollection.create(liveStartIdx,newValue)),liveStartIdx++,liveEndIdx++,newIterationResult=newCollectionIterator.next();else{let liveKey=trackByFn(liveStartIdx,liveValue);detachedItems.set(liveKey,liveCollection.detach(liveStartIdx)),liveEndIdx--}}}for(;!newIterationResult.done;)createOrAttach(liveCollection,detachedItems,trackByFn,liveCollection.length,newIterationResult.value),newIterationResult=newCollectionIterator.next()}for(;liveStartIdx<=liveEndIdx;)liveCollection.destroy(liveCollection.detach(liveEndIdx--));detachedItems?.forEach(item=>{liveCollection.destroy(item)})}function attachPreviouslyDetached(prevCollection,detachedItems,index,key){return detachedItems!==void 0&&detachedItems.has(key)?(prevCollection.attach(index,detachedItems.get(key)),detachedItems.delete(key),!0):!1}function createOrAttach(liveCollection,detachedItems,trackByFn,index,value){if(attachPreviouslyDetached(liveCollection,detachedItems,index,trackByFn(index,value)))liveCollection.updateValue(index,value);else{let newItem=liveCollection.create(index,value);liveCollection.attach(index,newItem)}}function initLiveItemsInTheFuture(liveCollection,start,end,trackByFn){let keys=new Set;for(let i=start;i<=end;i++)keys.add(trackByFn(i,liveCollection.at(i)));return keys}var UniqueValueMultiKeyMap=class{kvMap=new Map;_vMap=void 0;has(key){return this.kvMap.has(key)}delete(key){if(!this.has(key))return!1;let value=this.kvMap.get(key);return this._vMap!==void 0&&this._vMap.has(value)?(this.kvMap.set(key,this._vMap.get(value)),this._vMap.delete(value)):this.kvMap.delete(key),!0}get(key){return this.kvMap.get(key)}set(key,value){if(this.kvMap.has(key)){let prevValue=this.kvMap.get(key);this._vMap===void 0&&(this._vMap=new Map);let vMap=this._vMap;for(;vMap.has(prevValue);)prevValue=vMap.get(prevValue);vMap.set(prevValue,value)}else this.kvMap.set(key,value)}forEach(cb){for(let[key,value]of this.kvMap)if(cb(value,key),this._vMap!==void 0){let vMap=this._vMap;for(;vMap.has(value);)value=vMap.get(value),cb(value,key)}}};function \u0275\u0275conditionalCreate(index,templateFn,decls,vars,tagName,attrsIndex,localRefsIndex,localRefExtractor){performanceMarkFeature("NgControlFlow");let lView=getLView(),tView=getTView(),attrs=getConstant(tView.consts,attrsIndex);return declareNoDirectiveHostTemplate(lView,tView,index,templateFn,decls,vars,tagName,attrs,256,localRefsIndex,localRefExtractor),\u0275\u0275conditionalBranchCreate}function \u0275\u0275conditionalBranchCreate(index,templateFn,decls,vars,tagName,attrsIndex,localRefsIndex,localRefExtractor){performanceMarkFeature("NgControlFlow");let lView=getLView(),tView=getTView(),attrs=getConstant(tView.consts,attrsIndex);return declareNoDirectiveHostTemplate(lView,tView,index,templateFn,decls,vars,tagName,attrs,512,localRefsIndex,localRefExtractor),\u0275\u0275conditionalBranchCreate}function \u0275\u0275conditional(matchingTemplateIndex,contextValue){performanceMarkFeature("NgControlFlow");let hostLView=getLView(),bindingIndex=nextBindingIndex(),prevMatchingTemplateIndex=hostLView[bindingIndex]!==NO_CHANGE?hostLView[bindingIndex]:-1,prevContainer=prevMatchingTemplateIndex!==-1?getLContainer(hostLView,HEADER_OFFSET+prevMatchingTemplateIndex):void 0,viewInContainerIdx=0;if(bindingUpdated(hostLView,bindingIndex,matchingTemplateIndex)){let prevConsumer=setActiveConsumer(null);try{if(prevContainer!==void 0&&removeLViewFromLContainer(prevContainer,viewInContainerIdx),matchingTemplateIndex!==-1){let nextLContainerIndex=HEADER_OFFSET+matchingTemplateIndex,nextContainer=getLContainer(hostLView,nextLContainerIndex),templateTNode=getExistingTNode(hostLView[TVIEW],nextLContainerIndex),dehydratedView=findAndReconcileMatchingDehydratedViews(nextContainer,templateTNode,hostLView),embeddedLView=createAndRenderEmbeddedLView(hostLView,templateTNode,contextValue,{dehydratedView});addLViewToLContainer(nextContainer,embeddedLView,viewInContainerIdx,shouldAddViewToDom(templateTNode,dehydratedView))}}finally{setActiveConsumer(prevConsumer)}}else if(prevContainer!==void 0){let lView=getLViewFromLContainer(prevContainer,viewInContainerIdx);lView!==void 0&&(lView[CONTEXT]=contextValue)}}var RepeaterContext=class{lContainer;$implicit;$index;constructor(lContainer,$implicit,$index){this.lContainer=lContainer,this.$implicit=$implicit,this.$index=$index}get $count(){return this.lContainer.length-CONTAINER_HEADER_OFFSET}};function \u0275\u0275repeaterTrackByIndex(index){return index}function \u0275\u0275repeaterTrackByIdentity(_,value){return value}var RepeaterMetadata=class{hasEmptyBlock;trackByFn;liveCollection;constructor(hasEmptyBlock,trackByFn,liveCollection){this.hasEmptyBlock=hasEmptyBlock,this.trackByFn=trackByFn,this.liveCollection=liveCollection}};function \u0275\u0275repeaterCreate(index,templateFn,decls,vars,tagName,attrsIndex,trackByFn,trackByUsesComponentInstance,emptyTemplateFn,emptyDecls,emptyVars,emptyTagName,emptyAttrsIndex){performanceMarkFeature("NgControlFlow");let lView=getLView(),tView=getTView(),hasEmptyBlock=emptyTemplateFn!==void 0,hostLView=getLView(),boundTrackBy=trackByUsesComponentInstance?trackByFn.bind(hostLView[DECLARATION_COMPONENT_VIEW][CONTEXT]):trackByFn,metadata=new RepeaterMetadata(hasEmptyBlock,boundTrackBy);hostLView[HEADER_OFFSET+index]=metadata,declareNoDirectiveHostTemplate(lView,tView,index+1,templateFn,decls,vars,tagName,getConstant(tView.consts,attrsIndex),256),hasEmptyBlock&&declareNoDirectiveHostTemplate(lView,tView,index+2,emptyTemplateFn,emptyDecls,emptyVars,emptyTagName,getConstant(tView.consts,emptyAttrsIndex),512)}var LiveCollectionLContainerImpl=class extends LiveCollection{lContainer;hostLView;templateTNode;operationsCounter=void 0;needsIndexUpdate=!1;constructor(lContainer,hostLView,templateTNode){super(),this.lContainer=lContainer,this.hostLView=hostLView,this.templateTNode=templateTNode}get length(){return this.lContainer.length-CONTAINER_HEADER_OFFSET}at(index){return this.getLView(index)[CONTEXT].$implicit}attach(index,lView){let dehydratedView=lView[HYDRATION];this.needsIndexUpdate||=index!==this.length,addLViewToLContainer(this.lContainer,lView,index,shouldAddViewToDom(this.templateTNode,dehydratedView))}detach(index){return this.needsIndexUpdate||=index!==this.length-1,detachExistingView(this.lContainer,index)}create(index,value){let dehydratedView=findMatchingDehydratedView(this.lContainer,this.templateTNode.tView.ssrId),embeddedLView=createAndRenderEmbeddedLView(this.hostLView,this.templateTNode,new RepeaterContext(this.lContainer,value,index),{dehydratedView});return this.operationsCounter?.recordCreate(),embeddedLView}destroy(lView){destroyLView(lView[TVIEW],lView),this.operationsCounter?.recordDestroy()}updateValue(index,value){this.getLView(index)[CONTEXT].$implicit=value}reset(){this.needsIndexUpdate=!1,this.operationsCounter?.reset()}updateIndexes(){if(this.needsIndexUpdate)for(let i=0;i<this.length;i++)this.getLView(i)[CONTEXT].$index=i}getLView(index){return getExistingLViewFromLContainer(this.lContainer,index)}};function \u0275\u0275repeater(collection){let prevConsumer=setActiveConsumer(null),metadataSlotIdx=getSelectedIndex();try{let hostLView=getLView(),hostTView=hostLView[TVIEW],metadata=hostLView[metadataSlotIdx],containerIndex=metadataSlotIdx+1,lContainer=getLContainer(hostLView,containerIndex);if(metadata.liveCollection===void 0){let itemTemplateTNode=getExistingTNode(hostTView,containerIndex);metadata.liveCollection=new LiveCollectionLContainerImpl(lContainer,hostLView,itemTemplateTNode)}else metadata.liveCollection.reset();let liveCollection=metadata.liveCollection;if(reconcile(liveCollection,collection,metadata.trackByFn),liveCollection.updateIndexes(),metadata.hasEmptyBlock){let bindingIndex=nextBindingIndex(),isCollectionEmpty=liveCollection.length===0;if(bindingUpdated(hostLView,bindingIndex,isCollectionEmpty)){let emptyTemplateIndex=metadataSlotIdx+2,lContainerForEmpty=getLContainer(hostLView,emptyTemplateIndex);if(isCollectionEmpty){let emptyTemplateTNode=getExistingTNode(hostTView,emptyTemplateIndex),dehydratedView=findAndReconcileMatchingDehydratedViews(lContainerForEmpty,emptyTemplateTNode,hostLView),embeddedLView=createAndRenderEmbeddedLView(hostLView,emptyTemplateTNode,void 0,{dehydratedView});addLViewToLContainer(lContainerForEmpty,embeddedLView,0,shouldAddViewToDom(emptyTemplateTNode,dehydratedView))}else hostTView.firstUpdatePass&&removeDehydratedViews(lContainerForEmpty),removeLViewFromLContainer(lContainerForEmpty,0)}}}finally{setActiveConsumer(prevConsumer)}}function getLContainer(lView,index){return lView[index]}function detachExistingView(lContainer,index){return detachView(lContainer,index)}function getExistingLViewFromLContainer(lContainer,index){return getLViewFromLContainer(lContainer,index)}function getExistingTNode(tView,index){return getTNode(tView,index)}function \u0275\u0275property(propName,value,sanitizer){let lView=getLView(),bindingIndex=nextBindingIndex();if(bindingUpdated(lView,bindingIndex,value)){let tView=getTView(),tNode=getSelectedTNode();setPropertyAndInputs(tNode,lView,propName,value,lView[RENDERER],sanitizer)}return \u0275\u0275property}function setDirectiveInputsWhichShadowsStyling(tView,tNode,lView,value,isClassBased){setAllInputsForProperty(tNode,tView,lView,isClassBased?"class":"style",value)}function \u0275\u0275elementStart(index,name,attrsIndex,localRefsIndex){let lView=getLView(),tView=lView[TVIEW],adjustedIndex=index+HEADER_OFFSET,tNode=tView.firstCreatePass?directiveHostFirstCreatePass(adjustedIndex,lView,2,name,findDirectiveDefMatches,getBindingsEnabled(),attrsIndex,localRefsIndex):tView.data[adjustedIndex];if(elementLikeStartShared(tNode,lView,index,name,_locateOrCreateElementNode),isDirectiveHost(tNode)){let tView2=lView[TVIEW];createDirectivesInstances(tView2,lView,tNode),executeContentQueries(tView2,tNode,lView)}return localRefsIndex!=null&&saveResolvedLocalsInData(lView,tNode),\u0275\u0275elementStart}function \u0275\u0275elementEnd(){let tView=getTView(),initialTNode=getCurrentTNode(),currentTNode=elementLikeEndShared(initialTNode);return tView.firstCreatePass&&directiveHostEndFirstCreatePass(tView,currentTNode),isSkipHydrationRootTNode(currentTNode)&&leaveSkipHydrationBlock(),decreaseElementDepthCount(),currentTNode.classesWithoutHost!=null&&hasClassInput(currentTNode)&&setDirectiveInputsWhichShadowsStyling(tView,currentTNode,getLView(),currentTNode.classesWithoutHost,!0),currentTNode.stylesWithoutHost!=null&&hasStyleInput(currentTNode)&&setDirectiveInputsWhichShadowsStyling(tView,currentTNode,getLView(),currentTNode.stylesWithoutHost,!1),\u0275\u0275elementEnd}function \u0275\u0275element(index,name,attrsIndex,localRefsIndex){return \u0275\u0275elementStart(index,name,attrsIndex,localRefsIndex),\u0275\u0275elementEnd(),\u0275\u0275element}function \u0275\u0275domElementStart(index,name,attrsIndex,localRefsIndex){let lView=getLView(),tView=lView[TVIEW],adjustedIndex=index+HEADER_OFFSET,tNode=tView.firstCreatePass?domOnlyFirstCreatePass(adjustedIndex,tView,2,name,attrsIndex,localRefsIndex):tView.data[adjustedIndex];return elementLikeStartShared(tNode,lView,index,name,_locateOrCreateElementNode),localRefsIndex!=null&&saveResolvedLocalsInData(lView,tNode),\u0275\u0275domElementStart}function \u0275\u0275domElementEnd(){let initialTNode=getCurrentTNode(),currentTNode=elementLikeEndShared(initialTNode);return isSkipHydrationRootTNode(currentTNode)&&leaveSkipHydrationBlock(),decreaseElementDepthCount(),\u0275\u0275domElementEnd}function \u0275\u0275domElement(index,name,attrsIndex,localRefsIndex){return \u0275\u0275domElementStart(index,name,attrsIndex,localRefsIndex),\u0275\u0275domElementEnd(),\u0275\u0275domElement}var _locateOrCreateElementNode=(tView,lView,tNode,name,index)=>(lastNodeWasCreated(!0),createElementNode(lView[RENDERER],name,getNamespace()));function \u0275\u0275elementContainerStart(index,attrsIndex,localRefsIndex){let lView=getLView(),tView=lView[TVIEW],adjustedIndex=index+HEADER_OFFSET,tNode=tView.firstCreatePass?directiveHostFirstCreatePass(adjustedIndex,lView,8,"ng-container",findDirectiveDefMatches,getBindingsEnabled(),attrsIndex,localRefsIndex):tView.data[adjustedIndex];if(elementLikeStartShared(tNode,lView,index,"ng-container",_locateOrCreateElementContainerNode),isDirectiveHost(tNode)){let tView2=lView[TVIEW];createDirectivesInstances(tView2,lView,tNode),executeContentQueries(tView2,tNode,lView)}return localRefsIndex!=null&&saveResolvedLocalsInData(lView,tNode),\u0275\u0275elementContainerStart}function \u0275\u0275elementContainerEnd(){let tView=getTView(),initialTNode=getCurrentTNode(),currentTNode=elementLikeEndShared(initialTNode);return tView.firstCreatePass&&directiveHostEndFirstCreatePass(tView,currentTNode),\u0275\u0275elementContainerEnd}function \u0275\u0275elementContainer(index,attrsIndex,localRefsIndex){return \u0275\u0275elementContainerStart(index,attrsIndex,localRefsIndex),\u0275\u0275elementContainerEnd(),\u0275\u0275elementContainer}var _locateOrCreateElementContainerNode=(tView,lView,tNode,commentText,index)=>(lastNodeWasCreated(!0),createCommentNode(lView[RENDERER],""));function \u0275\u0275getCurrentView(){return getLView()}function \u0275\u0275domProperty(propName,value,sanitizer){let lView=getLView(),bindingIndex=nextBindingIndex();if(bindingUpdated(lView,bindingIndex,value)){let tView=getTView(),tNode=getSelectedTNode();setDomProperty(tNode,lView,propName,value,lView[RENDERER],sanitizer)}return \u0275\u0275domProperty}var DEFAULT_LOCALE_ID="en-US";var LOCALE_ID$1=DEFAULT_LOCALE_ID;function setLocaleId(localeId){typeof localeId=="string"&&(LOCALE_ID$1=localeId.toLowerCase().replace(/_/g,"-"))}function \u0275\u0275listener(eventName,listenerFn,eventTargetResolver){let lView=getLView(),tView=getTView(),tNode=getCurrentTNode();return listenerInternal(tView,lView,lView[RENDERER],tNode,eventName,listenerFn,eventTargetResolver),\u0275\u0275listener}function \u0275\u0275domListener(eventName,listenerFn,eventTargetResolver){let lView=getLView(),tView=getTView(),tNode=getCurrentTNode();return(tNode.type&3||eventTargetResolver)&&listenToDomEvent(tNode,tView,lView,eventTargetResolver,lView[RENDERER],eventName,listenerFn,wrapListener(tNode,lView,listenerFn)),\u0275\u0275domListener}function listenerInternal(tView,lView,renderer,tNode,eventName,listenerFn,eventTargetResolver){let processOutputs=!0,wrappedListener=null;if((tNode.type&3||eventTargetResolver)&&(wrappedListener??=wrapListener(tNode,lView,listenerFn),listenToDomEvent(tNode,tView,lView,eventTargetResolver,renderer,eventName,listenerFn,wrappedListener)&&(processOutputs=!1)),processOutputs){let outputConfig=tNode.outputs?.[eventName],hostDirectiveOutputConfig=tNode.hostDirectiveOutputs?.[eventName];if(hostDirectiveOutputConfig&&hostDirectiveOutputConfig.length)for(let i=0;i<hostDirectiveOutputConfig.length;i+=2){let index=hostDirectiveOutputConfig[i],lookupName=hostDirectiveOutputConfig[i+1];wrappedListener??=wrapListener(tNode,lView,listenerFn),listenToOutput(tNode,lView,index,lookupName,eventName,wrappedListener)}if(outputConfig&&outputConfig.length)for(let index of outputConfig)wrappedListener??=wrapListener(tNode,lView,listenerFn),listenToOutput(tNode,lView,index,eventName,eventName,wrappedListener)}}function \u0275\u0275nextContext(level=1){return nextContextImpl(level)}function matchingProjectionSlotIndex(tNode,projectionSlots){let wildcardNgContentIndex=null,ngProjectAsAttrVal=getProjectAsAttrValue(tNode);for(let i=0;i<projectionSlots.length;i++){let slotValue=projectionSlots[i];if(slotValue==="*"){wildcardNgContentIndex=i;continue}if(ngProjectAsAttrVal===null?isNodeMatchingSelectorList(tNode,slotValue,!0):isSelectorInSelectorList(ngProjectAsAttrVal,slotValue))return i}return wildcardNgContentIndex}function \u0275\u0275projectionDef(projectionSlots){let componentNode=getLView()[DECLARATION_COMPONENT_VIEW][T_HOST];if(!componentNode.projection){let numProjectionSlots=projectionSlots?projectionSlots.length:1,projectionHeads=componentNode.projection=newArray(numProjectionSlots,null),tails=projectionHeads.slice(),componentChild=componentNode.child;for(;componentChild!==null;){if(componentChild.type!==128){let slotIndex=projectionSlots?matchingProjectionSlotIndex(componentChild,projectionSlots):0;slotIndex!==null&&(tails[slotIndex]?tails[slotIndex].projectionNext=componentChild:projectionHeads[slotIndex]=componentChild,tails[slotIndex]=componentChild)}componentChild=componentChild.next}}}function \u0275\u0275projection(nodeIndex,selectorIndex=0,attrs,fallbackTemplateFn,fallbackDecls,fallbackVars){let lView=getLView(),tView=getTView(),fallbackIndex=fallbackTemplateFn?nodeIndex+1:null;fallbackIndex!==null&&declareNoDirectiveHostTemplate(lView,tView,fallbackIndex,fallbackTemplateFn,fallbackDecls,fallbackVars,null,attrs);let tProjectionNode=getOrCreateTNode(tView,HEADER_OFFSET+nodeIndex,16,null,attrs||null);tProjectionNode.projection===null&&(tProjectionNode.projection=selectorIndex),setCurrentTNodeAsNotParent();let isNodeCreationMode=!lView[HYDRATION]||isInSkipHydrationBlock();lView[DECLARATION_COMPONENT_VIEW][T_HOST].projection[tProjectionNode.projection]===null&&fallbackIndex!==null?insertFallbackContent(lView,tView,fallbackIndex):isNodeCreationMode&&!isDetachedByI18n(tProjectionNode)&&applyProjection(tView,lView,tProjectionNode)}function insertFallbackContent(lView,tView,fallbackIndex){let adjustedIndex=HEADER_OFFSET+fallbackIndex,fallbackTNode=tView.data[adjustedIndex],fallbackLContainer=lView[adjustedIndex],dehydratedView=findMatchingDehydratedView(fallbackLContainer,fallbackTNode.tView.ssrId),fallbackLView=createAndRenderEmbeddedLView(lView,fallbackTNode,void 0,{dehydratedView});addLViewToLContainer(fallbackLContainer,fallbackLView,0,shouldAddViewToDom(fallbackTNode,dehydratedView))}function \u0275\u0275contentQuery(directiveIndex,predicate,flags,read){createContentQuery(directiveIndex,predicate,flags,read)}function \u0275\u0275viewQuery(predicate,flags,read){createViewQuery(predicate,flags,read)}function \u0275\u0275queryRefresh(queryList){let lView=getLView(),tView=getTView(),queryIndex=getCurrentQueryIndex();setCurrentQueryIndex(queryIndex+1);let tQuery=getTQuery(tView,queryIndex);if(queryList.dirty&&isCreationMode(lView)===((tQuery.metadata.flags&2)===2)){if(tQuery.matches===null)queryList.reset([]);else{let result=getQueryResults(lView,queryIndex);queryList.reset(result,unwrapElementRef),queryList.notifyOnChanges()}return!0}return!1}function \u0275\u0275loadQuery(){return loadQueryInternal(getLView(),getCurrentQueryIndex())}function \u0275\u0275contentQuerySignal(directiveIndex,target,predicate,flags,read){bindQueryToSignal(target,createContentQuery(directiveIndex,predicate,flags,read))}function \u0275\u0275viewQuerySignal(target,predicate,flags,read){bindQueryToSignal(target,createViewQuery(predicate,flags,read))}function \u0275\u0275queryAdvance(indexOffset=1){setCurrentQueryIndex(getCurrentQueryIndex()+indexOffset)}function \u0275\u0275reference(index){let contextLView=getContextLView();return load(contextLView,HEADER_OFFSET+index)}function toTStylingRange(prev,next){return prev<<17|next<<2}function getTStylingRangePrev(tStylingRange){return tStylingRange>>17&32767}function getTStylingRangePrevDuplicate(tStylingRange){return(tStylingRange&2)==2}function setTStylingRangePrev(tStylingRange,previous){return tStylingRange&131071|previous<<17}function setTStylingRangePrevDuplicate(tStylingRange){return tStylingRange|2}function getTStylingRangeNext(tStylingRange){return(tStylingRange&131068)>>2}function setTStylingRangeNext(tStylingRange,next){return tStylingRange&-131069|next<<2}function getTStylingRangeNextDuplicate(tStylingRange){return(tStylingRange&1)===1}function setTStylingRangeNextDuplicate(tStylingRange){return tStylingRange|1}function insertTStylingBinding(tData,tNode,tStylingKeyWithStatic,index,isHostBinding,isClassBinding){let tBindings=isClassBinding?tNode.classBindings:tNode.styleBindings,tmplHead=getTStylingRangePrev(tBindings),tmplTail=getTStylingRangeNext(tBindings);tData[index]=tStylingKeyWithStatic;let isKeyDuplicateOfStatic=!1,tStylingKey;if(Array.isArray(tStylingKeyWithStatic)){let staticKeyValueArray=tStylingKeyWithStatic;tStylingKey=staticKeyValueArray[1],(tStylingKey===null||keyValueArrayIndexOf(staticKeyValueArray,tStylingKey)>0)&&(isKeyDuplicateOfStatic=!0)}else tStylingKey=tStylingKeyWithStatic;if(isHostBinding)if(tmplTail!==0){let previousNode=getTStylingRangePrev(tData[tmplHead+1]);tData[index+1]=toTStylingRange(previousNode,tmplHead),previousNode!==0&&(tData[previousNode+1]=setTStylingRangeNext(tData[previousNode+1],index)),tData[tmplHead+1]=setTStylingRangePrev(tData[tmplHead+1],index)}else tData[index+1]=toTStylingRange(tmplHead,0),tmplHead!==0&&(tData[tmplHead+1]=setTStylingRangeNext(tData[tmplHead+1],index)),tmplHead=index;else tData[index+1]=toTStylingRange(tmplTail,0),tmplHead===0?tmplHead=index:tData[tmplTail+1]=setTStylingRangeNext(tData[tmplTail+1],index),tmplTail=index;isKeyDuplicateOfStatic&&(tData[index+1]=setTStylingRangePrevDuplicate(tData[index+1])),markDuplicates(tData,tStylingKey,index,!0),markDuplicates(tData,tStylingKey,index,!1),markDuplicateOfResidualStyling(tNode,tStylingKey,tData,index,isClassBinding),tBindings=toTStylingRange(tmplHead,tmplTail),isClassBinding?tNode.classBindings=tBindings:tNode.styleBindings=tBindings}function markDuplicateOfResidualStyling(tNode,tStylingKey,tData,index,isClassBinding){let residual=isClassBinding?tNode.residualClasses:tNode.residualStyles;residual!=null&&typeof tStylingKey=="string"&&keyValueArrayIndexOf(residual,tStylingKey)>=0&&(tData[index+1]=setTStylingRangeNextDuplicate(tData[index+1]))}function markDuplicates(tData,tStylingKey,index,isPrevDir){let tStylingAtIndex=tData[index+1],isMap=tStylingKey===null,cursor=isPrevDir?getTStylingRangePrev(tStylingAtIndex):getTStylingRangeNext(tStylingAtIndex),foundDuplicate=!1;for(;cursor!==0&&(foundDuplicate===!1||isMap);){let tStylingValueAtCursor=tData[cursor],tStyleRangeAtCursor=tData[cursor+1];isStylingMatch(tStylingValueAtCursor,tStylingKey)&&(foundDuplicate=!0,tData[cursor+1]=isPrevDir?setTStylingRangeNextDuplicate(tStyleRangeAtCursor):setTStylingRangePrevDuplicate(tStyleRangeAtCursor)),cursor=isPrevDir?getTStylingRangePrev(tStyleRangeAtCursor):getTStylingRangeNext(tStyleRangeAtCursor)}foundDuplicate&&(tData[index+1]=isPrevDir?setTStylingRangePrevDuplicate(tStylingAtIndex):setTStylingRangeNextDuplicate(tStylingAtIndex))}function isStylingMatch(tStylingKeyCursor,tStylingKey){return tStylingKeyCursor===null||tStylingKey==null||(Array.isArray(tStylingKeyCursor)?tStylingKeyCursor[1]:tStylingKeyCursor)===tStylingKey?!0:Array.isArray(tStylingKeyCursor)&&typeof tStylingKey=="string"?keyValueArrayIndexOf(tStylingKeyCursor,tStylingKey)>=0:!1}var parserState={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function getLastParsedKey(text){return text.substring(parserState.key,parserState.keyEnd)}function getLastParsedValue(text){return text.substring(parserState.value,parserState.valueEnd)}function parseClassName(text){return resetParserState(text),parseClassNameNext(text,consumeWhitespace(text,0,parserState.textEnd))}function parseClassNameNext(text,index){let end=parserState.textEnd;return end===index?-1:(index=parserState.keyEnd=consumeClassToken(text,parserState.key=index,end),consumeWhitespace(text,index,end))}function parseStyle(text){return resetParserState(text),parseStyleNext(text,consumeWhitespace(text,0,parserState.textEnd))}function parseStyleNext(text,startIndex){let end=parserState.textEnd,index=parserState.key=consumeWhitespace(text,startIndex,end);return end===index?-1:(index=parserState.keyEnd=consumeStyleKey(text,index,end),index=consumeSeparator(text,index,end,58),index=parserState.value=consumeWhitespace(text,index,end),index=parserState.valueEnd=consumeStyleValue(text,index,end),consumeSeparator(text,index,end,59))}function resetParserState(text){parserState.key=0,parserState.keyEnd=0,parserState.value=0,parserState.valueEnd=0,parserState.textEnd=text.length}function consumeWhitespace(text,startIndex,endIndex){for(;startIndex<endIndex&&text.charCodeAt(startIndex)<=32;)startIndex++;return startIndex}function consumeClassToken(text,startIndex,endIndex){for(;startIndex<endIndex&&text.charCodeAt(startIndex)>32;)startIndex++;return startIndex}function consumeStyleKey(text,startIndex,endIndex){let ch;for(;startIndex<endIndex&&((ch=text.charCodeAt(startIndex))===45||ch===95||(ch&-33)>=65&&(ch&-33)<=90||ch>=48&&ch<=57);)startIndex++;return startIndex}function consumeSeparator(text,startIndex,endIndex,separator){return startIndex=consumeWhitespace(text,startIndex,endIndex),startIndex<endIndex&&startIndex++,startIndex}function consumeStyleValue(text,startIndex,endIndex){let ch1=-1,ch2=-1,ch3=-1,i=startIndex,lastChIndex=i;for(;i<endIndex;){let ch=text.charCodeAt(i++);if(ch===59)return lastChIndex;ch===34||ch===39?lastChIndex=i=consumeQuotedText(text,ch,i,endIndex):startIndex===i-4&&ch3===85&&ch2===82&&ch1===76&&ch===40?lastChIndex=i=consumeQuotedText(text,41,i,endIndex):ch>32&&(lastChIndex=i),ch3=ch2,ch2=ch1,ch1=ch&-33}return lastChIndex}function consumeQuotedText(text,quoteCharCode,startIndex,endIndex){let ch1=-1,index=startIndex;for(;index<endIndex;){let ch=text.charCodeAt(index++);if(ch==quoteCharCode&&ch1!==92)return index;ch==92&&ch1===92?ch1=0:ch1=ch}throw new Error}function \u0275\u0275styleProp(prop,value,suffix){return checkStylingProperty(prop,value,suffix,!1),\u0275\u0275styleProp}function \u0275\u0275classProp(className,value){return checkStylingProperty(className,value,null,!0),\u0275\u0275classProp}function \u0275\u0275styleMap(styles){checkStylingMap(styleKeyValueArraySet,styleStringParser,styles,!1)}function styleStringParser(keyValueArray,text){for(let i=parseStyle(text);i>=0;i=parseStyleNext(text,i))styleKeyValueArraySet(keyValueArray,getLastParsedKey(text),getLastParsedValue(text))}function \u0275\u0275classMap(classes){checkStylingMap(classKeyValueArraySet,classStringParser,classes,!0)}function classStringParser(keyValueArray,text){for(let i=parseClassName(text);i>=0;i=parseClassNameNext(text,i))keyValueArraySet(keyValueArray,getLastParsedKey(text),!0)}function checkStylingProperty(prop,value,suffix,isClassBased){let lView=getLView(),tView=getTView(),bindingIndex=incrementBindingIndex(2);if(tView.firstUpdatePass&&stylingFirstUpdatePass(tView,prop,bindingIndex,isClassBased),value!==NO_CHANGE&&bindingUpdated(lView,bindingIndex,value)){let tNode=tView.data[getSelectedIndex()];updateStyling(tView,tNode,lView,lView[RENDERER],prop,lView[bindingIndex+1]=normalizeSuffix(value,suffix),isClassBased,bindingIndex)}}function checkStylingMap(keyValueArraySet2,stringParser,value,isClassBased){let tView=getTView(),bindingIndex=incrementBindingIndex(2);tView.firstUpdatePass&&stylingFirstUpdatePass(tView,null,bindingIndex,isClassBased);let lView=getLView();if(value!==NO_CHANGE&&bindingUpdated(lView,bindingIndex,value)){let tNode=tView.data[getSelectedIndex()];if(hasStylingInputShadow(tNode,isClassBased)&&!isInHostBindings(tView,bindingIndex)){let staticPrefix=isClassBased?tNode.classesWithoutHost:tNode.stylesWithoutHost;staticPrefix!==null&&(value=concatStringsWithSpace(staticPrefix,value||"")),setDirectiveInputsWhichShadowsStyling(tView,tNode,lView,value,isClassBased)}else updateStylingMap(tView,tNode,lView,lView[RENDERER],lView[bindingIndex+1],lView[bindingIndex+1]=toStylingKeyValueArray(keyValueArraySet2,stringParser,value),isClassBased,bindingIndex)}}function isInHostBindings(tView,bindingIndex){return bindingIndex>=tView.expandoStartIndex}function stylingFirstUpdatePass(tView,tStylingKey,bindingIndex,isClassBased){let tData=tView.data;if(tData[bindingIndex+1]===null){let tNode=tData[getSelectedIndex()],isHostBindings=isInHostBindings(tView,bindingIndex);hasStylingInputShadow(tNode,isClassBased)&&tStylingKey===null&&!isHostBindings&&(tStylingKey=!1),tStylingKey=wrapInStaticStylingKey(tData,tNode,tStylingKey,isClassBased),insertTStylingBinding(tData,tNode,tStylingKey,bindingIndex,isHostBindings,isClassBased)}}function wrapInStaticStylingKey(tData,tNode,stylingKey,isClassBased){let hostDirectiveDef=getCurrentDirectiveDef(tData),residual=isClassBased?tNode.residualClasses:tNode.residualStyles;if(hostDirectiveDef===null)(isClassBased?tNode.classBindings:tNode.styleBindings)===0&&(stylingKey=collectStylingFromDirectives(null,tData,tNode,stylingKey,isClassBased),stylingKey=collectStylingFromTAttrs(stylingKey,tNode.attrs,isClassBased),residual=null);else{let directiveStylingLast=tNode.directiveStylingLast;if(directiveStylingLast===-1||tData[directiveStylingLast]!==hostDirectiveDef)if(stylingKey=collectStylingFromDirectives(hostDirectiveDef,tData,tNode,stylingKey,isClassBased),residual===null){let templateStylingKey=getTemplateHeadTStylingKey(tData,tNode,isClassBased);templateStylingKey!==void 0&&Array.isArray(templateStylingKey)&&(templateStylingKey=collectStylingFromDirectives(null,tData,tNode,templateStylingKey[1],isClassBased),templateStylingKey=collectStylingFromTAttrs(templateStylingKey,tNode.attrs,isClassBased),setTemplateHeadTStylingKey(tData,tNode,isClassBased,templateStylingKey))}else residual=collectResidual(tData,tNode,isClassBased)}return residual!==void 0&&(isClassBased?tNode.residualClasses=residual:tNode.residualStyles=residual),stylingKey}function getTemplateHeadTStylingKey(tData,tNode,isClassBased){let bindings=isClassBased?tNode.classBindings:tNode.styleBindings;if(getTStylingRangeNext(bindings)!==0)return tData[getTStylingRangePrev(bindings)]}function setTemplateHeadTStylingKey(tData,tNode,isClassBased,tStylingKey){let bindings=isClassBased?tNode.classBindings:tNode.styleBindings;tData[getTStylingRangePrev(bindings)]=tStylingKey}function collectResidual(tData,tNode,isClassBased){let residual,directiveEnd=tNode.directiveEnd;for(let i=1+tNode.directiveStylingLast;i<directiveEnd;i++){let attrs=tData[i].hostAttrs;residual=collectStylingFromTAttrs(residual,attrs,isClassBased)}return collectStylingFromTAttrs(residual,tNode.attrs,isClassBased)}function collectStylingFromDirectives(hostDirectiveDef,tData,tNode,stylingKey,isClassBased){let currentDirective=null,directiveEnd=tNode.directiveEnd,directiveStylingLast=tNode.directiveStylingLast;for(directiveStylingLast===-1?directiveStylingLast=tNode.directiveStart:directiveStylingLast++;directiveStylingLast<directiveEnd&&(currentDirective=tData[directiveStylingLast],stylingKey=collectStylingFromTAttrs(stylingKey,currentDirective.hostAttrs,isClassBased),currentDirective!==hostDirectiveDef);)directiveStylingLast++;return hostDirectiveDef!==null&&(tNode.directiveStylingLast=directiveStylingLast),stylingKey}function collectStylingFromTAttrs(stylingKey,attrs,isClassBased){let desiredMarker=isClassBased?1:2,currentMarker=-1;if(attrs!==null)for(let i=0;i<attrs.length;i++){let item=attrs[i];typeof item=="number"?currentMarker=item:currentMarker===desiredMarker&&(Array.isArray(stylingKey)||(stylingKey=stylingKey===void 0?[]:["",stylingKey]),keyValueArraySet(stylingKey,item,isClassBased?!0:attrs[++i]))}return stylingKey===void 0?null:stylingKey}function toStylingKeyValueArray(keyValueArraySet2,stringParser,value){if(value==null||value==="")return EMPTY_ARRAY;let styleKeyValueArray=[],unwrappedValue=unwrapSafeValue(value);if(Array.isArray(unwrappedValue))for(let i=0;i<unwrappedValue.length;i++)keyValueArraySet2(styleKeyValueArray,unwrappedValue[i],!0);else if(typeof unwrappedValue=="object")for(let key in unwrappedValue)unwrappedValue.hasOwnProperty(key)&&keyValueArraySet2(styleKeyValueArray,key,unwrappedValue[key]);else typeof unwrappedValue=="string"&&stringParser(styleKeyValueArray,unwrappedValue);return styleKeyValueArray}function styleKeyValueArraySet(keyValueArray,key,value){keyValueArraySet(keyValueArray,key,unwrapSafeValue(value))}function classKeyValueArraySet(keyValueArray,key,value){let stringKey=String(key);stringKey!==""&&!stringKey.includes(" ")&&keyValueArraySet(keyValueArray,stringKey,value)}function updateStylingMap(tView,tNode,lView,renderer,oldKeyValueArray,newKeyValueArray,isClassBased,bindingIndex){oldKeyValueArray===NO_CHANGE&&(oldKeyValueArray=EMPTY_ARRAY);let oldIndex=0,newIndex=0,oldKey=0<oldKeyValueArray.length?oldKeyValueArray[0]:null,newKey=0<newKeyValueArray.length?newKeyValueArray[0]:null;for(;oldKey!==null||newKey!==null;){let oldValue=oldIndex<oldKeyValueArray.length?oldKeyValueArray[oldIndex+1]:void 0,newValue=newIndex<newKeyValueArray.length?newKeyValueArray[newIndex+1]:void 0,setKey=null,setValue2;oldKey===newKey?(oldIndex+=2,newIndex+=2,oldValue!==newValue&&(setKey=newKey,setValue2=newValue)):newKey===null||oldKey!==null&&oldKey<newKey?(oldIndex+=2,setKey=oldKey):(newIndex+=2,setKey=newKey,setValue2=newValue),setKey!==null&&updateStyling(tView,tNode,lView,renderer,setKey,setValue2,isClassBased,bindingIndex),oldKey=oldIndex<oldKeyValueArray.length?oldKeyValueArray[oldIndex]:null,newKey=newIndex<newKeyValueArray.length?newKeyValueArray[newIndex]:null}}function updateStyling(tView,tNode,lView,renderer,prop,value,isClassBased,bindingIndex){if(!(tNode.type&3))return;let tData=tView.data,tRange=tData[bindingIndex+1],higherPriorityValue=getTStylingRangeNextDuplicate(tRange)?findStylingValue(tData,tNode,lView,prop,getTStylingRangeNext(tRange),isClassBased):void 0;if(!isStylingValuePresent(higherPriorityValue)){isStylingValuePresent(value)||getTStylingRangePrevDuplicate(tRange)&&(value=findStylingValue(tData,null,lView,prop,bindingIndex,isClassBased));let rNode=getNativeByIndex(getSelectedIndex(),lView);applyStyling(renderer,isClassBased,rNode,prop,value)}}function findStylingValue(tData,tNode,lView,prop,index,isClassBased){let isPrevDirection=tNode===null,value;for(;index>0;){let rawKey=tData[index],containsStatics=Array.isArray(rawKey),key=containsStatics?rawKey[1]:rawKey,isStylingMap=key===null,valueAtLViewIndex=lView[index+1];valueAtLViewIndex===NO_CHANGE&&(valueAtLViewIndex=isStylingMap?EMPTY_ARRAY:void 0);let currentValue=isStylingMap?keyValueArrayGet(valueAtLViewIndex,prop):key===prop?valueAtLViewIndex:void 0;if(containsStatics&&!isStylingValuePresent(currentValue)&&(currentValue=keyValueArrayGet(rawKey,prop)),isStylingValuePresent(currentValue)&&(value=currentValue,isPrevDirection))return value;let tRange=tData[index+1];index=isPrevDirection?getTStylingRangePrev(tRange):getTStylingRangeNext(tRange)}if(tNode!==null){let residual=isClassBased?tNode.residualClasses:tNode.residualStyles;residual!=null&&(value=keyValueArrayGet(residual,prop))}return value}function isStylingValuePresent(value){return value!==void 0}function normalizeSuffix(value,suffix){return value==null||value===""||(typeof suffix=="string"?value=value+suffix:typeof value=="object"&&(value=stringify(unwrapSafeValue(value)))),value}function hasStylingInputShadow(tNode,isClassBased){return(tNode.flags&(isClassBased?8:16))!==0}function \u0275\u0275text(index,value=""){let lView=getLView(),tView=getTView(),adjustedIndex=index+HEADER_OFFSET,tNode=tView.firstCreatePass?getOrCreateTNode(tView,adjustedIndex,1,value,null):tView.data[adjustedIndex],textNative=_locateOrCreateTextNode(tView,lView,tNode,value,index);lView[adjustedIndex]=textNative,wasLastNodeCreated()&&appendChild(tView,lView,textNative,tNode),setCurrentTNode(tNode,!1)}var _locateOrCreateTextNode=(tView,lView,tNode,value,index)=>(lastNodeWasCreated(!0),createTextNode(lView[RENDERER],value));function interpolation1(lView,prefix,v0,suffix=""){return bindingUpdated(lView,nextBindingIndex(),v0)?prefix+renderStringify(v0)+suffix:NO_CHANGE}function interpolation2(lView,prefix,v0,i0,v1,suffix=""){let bindingIndex=getBindingIndex(),different=bindingUpdated2(lView,bindingIndex,v0,v1);return incrementBindingIndex(2),different?prefix+renderStringify(v0)+i0+renderStringify(v1)+suffix:NO_CHANGE}function interpolation3(lView,prefix,v0,i0,v1,i1,v2,suffix=""){let bindingIndex=getBindingIndex(),different=bindingUpdated3(lView,bindingIndex,v0,v1,v2);return incrementBindingIndex(3),different?prefix+renderStringify(v0)+i0+renderStringify(v1)+i1+renderStringify(v2)+suffix:NO_CHANGE}function \u0275\u0275textInterpolate(v0){return \u0275\u0275textInterpolate1("",v0),\u0275\u0275textInterpolate}function \u0275\u0275textInterpolate1(prefix,v0,suffix){let lView=getLView(),interpolated=interpolation1(lView,prefix,v0,suffix);return interpolated!==NO_CHANGE&&textBindingInternal(lView,getSelectedIndex(),interpolated),\u0275\u0275textInterpolate1}function \u0275\u0275textInterpolate2(prefix,v0,i0,v1,suffix){let lView=getLView(),interpolated=interpolation2(lView,prefix,v0,i0,v1,suffix);return interpolated!==NO_CHANGE&&textBindingInternal(lView,getSelectedIndex(),interpolated),\u0275\u0275textInterpolate2}function \u0275\u0275textInterpolate3(prefix,v0,i0,v1,i1,v2,suffix){let lView=getLView(),interpolated=interpolation3(lView,prefix,v0,i0,v1,i1,v2,suffix);return interpolated!==NO_CHANGE&&textBindingInternal(lView,getSelectedIndex(),interpolated),\u0275\u0275textInterpolate3}function textBindingInternal(lView,index,value){let element=getNativeByIndex(index,lView);updateTextNode(lView[RENDERER],element,value)}function \u0275\u0275twoWayProperty(propName,value,sanitizer){isWritableSignal(value)&&(value=value());let lView=getLView(),bindingIndex=nextBindingIndex();if(bindingUpdated(lView,bindingIndex,value)){let tView=getTView(),tNode=getSelectedTNode();setPropertyAndInputs(tNode,lView,propName,value,lView[RENDERER],sanitizer)}return \u0275\u0275twoWayProperty}function \u0275\u0275twoWayBindingSet(target,value){let canWrite=isWritableSignal(target);return canWrite&&target.set(value),canWrite}function \u0275\u0275twoWayListener(eventName,listenerFn){let lView=getLView(),tView=getTView(),tNode=getCurrentTNode();return listenerInternal(tView,lView,lView[RENDERER],tNode,eventName,listenerFn),\u0275\u0275twoWayListener}var UNINITIALIZED_LET={};function \u0275\u0275declareLet(index){let tView=getTView(),lView=getLView(),adjustedIndex=index+HEADER_OFFSET,tNode=getOrCreateTNode(tView,adjustedIndex,128,null,null);return setCurrentTNode(tNode,!1),store(tView,lView,adjustedIndex,UNINITIALIZED_LET),\u0275\u0275declareLet}function \u0275\u0275storeLet(value){performanceMarkFeature("NgLet");let tView=getTView(),lView=getLView(),index=getSelectedIndex();return store(tView,lView,index,value),value}function \u0275\u0275readContextLet(index){let contextLView=getContextLView(),value=load(contextLView,HEADER_OFFSET+index);if(value===UNINITIALIZED_LET)throw new RuntimeError(314,!1);return value}function \u0275\u0275interpolate(v0){return bindingUpdated(getLView(),nextBindingIndex(),v0)?renderStringify(v0):NO_CHANGE}function \u0275\u0275interpolate1(prefix,v0,suffix=""){return interpolation1(getLView(),prefix,v0,suffix)}function providersResolver(def,providers,viewProviders){let tView=getTView();if(tView.firstCreatePass){let isComponent2=isComponentDef(def);resolveProvider(viewProviders,tView.data,tView.blueprint,isComponent2,!0),resolveProvider(providers,tView.data,tView.blueprint,isComponent2,!1)}}function resolveProvider(provider,tInjectables,lInjectablesBlueprint,isComponent2,isViewProvider){if(provider=resolveForwardRef(provider),Array.isArray(provider))for(let i=0;i<provider.length;i++)resolveProvider(provider[i],tInjectables,lInjectablesBlueprint,isComponent2,isViewProvider);else{let tView=getTView(),lView=getLView(),tNode=getCurrentTNode(),token=isTypeProvider(provider)?provider:resolveForwardRef(provider.provide),providerFactory=providerToFactory(provider),beginIndex=tNode.providerIndexes&1048575,endIndex=tNode.directiveStart,cptViewProvidersCount=tNode.providerIndexes>>20;if(isTypeProvider(provider)||!provider.multi){let factory=new NodeInjectorFactory(providerFactory,isViewProvider,\u0275\u0275directiveInject,null),existingFactoryIndex=indexOf(token,tInjectables,isViewProvider?beginIndex:beginIndex+cptViewProvidersCount,endIndex);existingFactoryIndex===-1?(diPublicInInjector(getOrCreateNodeInjectorForNode(tNode,lView),tView,token),registerDestroyHooksIfSupported(tView,provider,tInjectables.length),tInjectables.push(token),tNode.directiveStart++,tNode.directiveEnd++,isViewProvider&&(tNode.providerIndexes+=1048576),lInjectablesBlueprint.push(factory),lView.push(factory)):(lInjectablesBlueprint[existingFactoryIndex]=factory,lView[existingFactoryIndex]=factory)}else{let existingProvidersFactoryIndex=indexOf(token,tInjectables,beginIndex+cptViewProvidersCount,endIndex),existingViewProvidersFactoryIndex=indexOf(token,tInjectables,beginIndex,beginIndex+cptViewProvidersCount),doesProvidersFactoryExist=existingProvidersFactoryIndex>=0&&lInjectablesBlueprint[existingProvidersFactoryIndex],doesViewProvidersFactoryExist=existingViewProvidersFactoryIndex>=0&&lInjectablesBlueprint[existingViewProvidersFactoryIndex];if(isViewProvider&&!doesViewProvidersFactoryExist||!isViewProvider&&!doesProvidersFactoryExist){diPublicInInjector(getOrCreateNodeInjectorForNode(tNode,lView),tView,token);let factory=multiFactory(isViewProvider?multiViewProvidersFactoryResolver:multiProvidersFactoryResolver,lInjectablesBlueprint.length,isViewProvider,isComponent2,providerFactory,provider);!isViewProvider&&doesViewProvidersFactoryExist&&(lInjectablesBlueprint[existingViewProvidersFactoryIndex].providerFactory=factory),registerDestroyHooksIfSupported(tView,provider,tInjectables.length,0),tInjectables.push(token),tNode.directiveStart++,tNode.directiveEnd++,isViewProvider&&(tNode.providerIndexes+=1048576),lInjectablesBlueprint.push(factory),lView.push(factory)}else{let indexInFactory=multiFactoryAdd(lInjectablesBlueprint[isViewProvider?existingViewProvidersFactoryIndex:existingProvidersFactoryIndex],providerFactory,!isViewProvider&&isComponent2);registerDestroyHooksIfSupported(tView,provider,existingProvidersFactoryIndex>-1?existingProvidersFactoryIndex:existingViewProvidersFactoryIndex,indexInFactory)}!isViewProvider&&isComponent2&&doesViewProvidersFactoryExist&&lInjectablesBlueprint[existingViewProvidersFactoryIndex].componentProviders++}}}function registerDestroyHooksIfSupported(tView,provider,contextIndex,indexInFactory){let providerIsTypeProvider=isTypeProvider(provider),providerIsClassProvider=isClassProvider(provider);if(providerIsTypeProvider||providerIsClassProvider){let ngOnDestroy=(providerIsClassProvider?resolveForwardRef(provider.useClass):provider).prototype.ngOnDestroy;if(ngOnDestroy){let hooks=tView.destroyHooks||(tView.destroyHooks=[]);if(!providerIsTypeProvider&&provider.multi){let existingCallbacksIndex=hooks.indexOf(contextIndex);existingCallbacksIndex===-1?hooks.push(contextIndex,[indexInFactory,ngOnDestroy]):hooks[existingCallbacksIndex+1].push(indexInFactory,ngOnDestroy)}else hooks.push(contextIndex,ngOnDestroy)}}}function multiFactoryAdd(multiFactory2,factory,isComponentProvider){return isComponentProvider&&multiFactory2.componentProviders++,multiFactory2.multi.push(factory)-1}function indexOf(item,arr,begin,end){for(let i=begin;i<end;i++)if(arr[i]===item)return i;return-1}function multiProvidersFactoryResolver(_,flags,tData,lData,tNode){return multiResolve(this.multi,[])}function multiViewProvidersFactoryResolver(_,_flags,_tData,lView,tNode){let factories=this.multi,result;if(this.providerFactory){let componentCount=this.providerFactory.componentProviders,multiProviders=getNodeInjectable(lView,lView[TVIEW],this.providerFactory.index,tNode);result=multiProviders.slice(0,componentCount),multiResolve(factories,result);for(let i=componentCount;i<multiProviders.length;i++)result.push(multiProviders[i])}else result=[],multiResolve(factories,result);return result}function multiResolve(factories,result){for(let i=0;i<factories.length;i++){let factory=factories[i];result.push(factory())}return result}function multiFactory(factoryFn,index,isViewProvider,isComponent2,f,provider){let factory=new NodeInjectorFactory(factoryFn,isViewProvider,\u0275\u0275directiveInject,null);return factory.multi=[],factory.index=index,factory.componentProviders=0,multiFactoryAdd(factory,f,isComponent2&&!isViewProvider),factory}function \u0275\u0275ProvidersFeature(providers,viewProviders=[]){return definition=>{definition.providersResolver=(def,processProvidersFn)=>providersResolver(def,processProvidersFn?processProvidersFn(providers):providers,viewProviders)}}function \u0275\u0275pureFunction0(slotOffset,pureFn,thisArg){let bindingIndex=getBindingRoot()+slotOffset,lView=getLView();return lView[bindingIndex]===NO_CHANGE?updateBinding(lView,bindingIndex,thisArg?pureFn.call(thisArg):pureFn()):getBinding(lView,bindingIndex)}function \u0275\u0275pureFunction1(slotOffset,pureFn,exp,thisArg){return pureFunction1Internal(getLView(),getBindingRoot(),slotOffset,pureFn,exp,thisArg)}function \u0275\u0275pureFunction3(slotOffset,pureFn,exp1,exp2,exp3,thisArg){return pureFunction3Internal(getLView(),getBindingRoot(),slotOffset,pureFn,exp1,exp2,exp3,thisArg)}function getPureFunctionReturnValue(lView,returnValueIndex){let lastReturnValue=lView[returnValueIndex];return lastReturnValue===NO_CHANGE?void 0:lastReturnValue}function pureFunction1Internal(lView,bindingRoot,slotOffset,pureFn,exp,thisArg){let bindingIndex=bindingRoot+slotOffset;return bindingUpdated(lView,bindingIndex,exp)?updateBinding(lView,bindingIndex+1,thisArg?pureFn.call(thisArg,exp):pureFn(exp)):getPureFunctionReturnValue(lView,bindingIndex+1)}function pureFunction2Internal(lView,bindingRoot,slotOffset,pureFn,exp1,exp2,thisArg){let bindingIndex=bindingRoot+slotOffset;return bindingUpdated2(lView,bindingIndex,exp1,exp2)?updateBinding(lView,bindingIndex+2,thisArg?pureFn.call(thisArg,exp1,exp2):pureFn(exp1,exp2)):getPureFunctionReturnValue(lView,bindingIndex+2)}function pureFunction3Internal(lView,bindingRoot,slotOffset,pureFn,exp1,exp2,exp3,thisArg){let bindingIndex=bindingRoot+slotOffset;return bindingUpdated3(lView,bindingIndex,exp1,exp2,exp3)?updateBinding(lView,bindingIndex+3,thisArg?pureFn.call(thisArg,exp1,exp2,exp3):pureFn(exp1,exp2,exp3)):getPureFunctionReturnValue(lView,bindingIndex+3)}function \u0275\u0275pipe(index,pipeName){let tView=getTView(),pipeDef,adjustedIndex=index+HEADER_OFFSET;tView.firstCreatePass?(pipeDef=getPipeDef2(pipeName,tView.pipeRegistry),tView.data[adjustedIndex]=pipeDef,pipeDef.onDestroy&&(tView.destroyHooks??=[]).push(adjustedIndex,pipeDef.onDestroy)):pipeDef=tView.data[adjustedIndex];let pipeFactory=pipeDef.factory||(pipeDef.factory=getFactoryDef(pipeDef.type,!0)),previousInjectorProfilerContext,previousInjectImplementation=setInjectImplementation(\u0275\u0275directiveInject);try{let previousIncludeViewProviders=setIncludeViewProviders(!1),pipeInstance=pipeFactory();return setIncludeViewProviders(previousIncludeViewProviders),store(tView,getLView(),adjustedIndex,pipeInstance),pipeInstance}finally{setInjectImplementation(previousInjectImplementation)}}function getPipeDef2(name,registry2){if(registry2)for(let i=registry2.length-1;i>=0;i--){let pipeDef=registry2[i];if(name===pipeDef.name)return pipeDef}}function \u0275\u0275pipeBind1(index,offset,v1){let adjustedIndex=index+HEADER_OFFSET,lView=getLView(),pipeInstance=load(lView,adjustedIndex);return isPure(lView,adjustedIndex)?pureFunction1Internal(lView,getBindingRoot(),offset,pipeInstance.transform,v1,pipeInstance):pipeInstance.transform(v1)}function \u0275\u0275pipeBind2(index,slotOffset,v1,v2){let adjustedIndex=index+HEADER_OFFSET,lView=getLView(),pipeInstance=load(lView,adjustedIndex);return isPure(lView,adjustedIndex)?pureFunction2Internal(lView,getBindingRoot(),slotOffset,pipeInstance.transform,v1,v2,pipeInstance):pipeInstance.transform(v1,v2)}function \u0275\u0275pipeBind3(index,slotOffset,v1,v2,v3){let adjustedIndex=index+HEADER_OFFSET,lView=getLView(),pipeInstance=load(lView,adjustedIndex);return isPure(lView,adjustedIndex)?pureFunction3Internal(lView,getBindingRoot(),slotOffset,pipeInstance.transform,v1,v2,v3,pipeInstance):pipeInstance.transform(v1,v2,v3)}function isPure(lView,index){return lView[TVIEW].data[index].pure}function \u0275\u0275templateRefExtractor(tNode,lView){return createTemplateRef(tNode,lView)}var jitOptions=null;function setJitOptions(options){jitOptions!==null&&(options.defaultEncapsulation!==jitOptions.defaultEncapsulation||options.preserveWhitespaces!==jitOptions.preserveWhitespaces)||(jitOptions=options)}var ModuleWithComponentFactories=class{ngModuleFactory;componentFactories;constructor(ngModuleFactory,componentFactories){this.ngModuleFactory=ngModuleFactory,this.componentFactories=componentFactories}},Compiler=(()=>{class Compiler2{compileModuleSync(moduleType){return new NgModuleFactory2(moduleType)}compileModuleAsync(moduleType){return Promise.resolve(this.compileModuleSync(moduleType))}compileModuleAndAllComponentsSync(moduleType){let ngModuleFactory=this.compileModuleSync(moduleType),moduleDef=getNgModuleDef(moduleType),componentFactories=maybeUnwrapFn(moduleDef.declarations).reduce((factories,declaration)=>{let componentDef=getComponentDef(declaration);return componentDef&&factories.push(new ComponentFactory2(componentDef)),factories},[]);return new ModuleWithComponentFactories(ngModuleFactory,componentFactories)}compileModuleAndAllComponentsAsync(moduleType){return Promise.resolve(this.compileModuleAndAllComponentsSync(moduleType))}clearCache(){}clearCacheFor(type2){}getModuleId(moduleType){}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Compiler2)};static \u0275prov=\u0275\u0275defineInjectable({token:Compiler2,factory:Compiler2.\u0275fac,providedIn:"root"})}return Compiler2})(),COMPILER_OPTIONS=new InjectionToken("");var NgZoneChangeDetectionScheduler=(()=>{class NgZoneChangeDetectionScheduler2{zone=inject2(NgZone);changeDetectionScheduler=inject2(ChangeDetectionScheduler);applicationRef=inject2(ApplicationRef);applicationErrorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);_onMicrotaskEmptySubscription;initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{try{this.applicationRef.dirtyFlags|=1,this.applicationRef._tick()}catch(e){this.applicationErrorHandler(e)}})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgZoneChangeDetectionScheduler2)};static \u0275prov=\u0275\u0275defineInjectable({token:NgZoneChangeDetectionScheduler2,factory:NgZoneChangeDetectionScheduler2.\u0275fac,providedIn:"root"})}return NgZoneChangeDetectionScheduler2})();function internalProvideZoneChangeDetection({ngZoneFactory,ignoreChangesOutsideZone,scheduleInRootZone}){return ngZoneFactory??=()=>new NgZone(__spreadProps(__spreadValues({},getNgZoneOptions()),{scheduleInRootZone})),[{provide:NgZone,useFactory:ngZoneFactory},{provide:ENVIRONMENT_INITIALIZER,multi:!0,useFactory:()=>{let ngZoneChangeDetectionScheduler=inject2(NgZoneChangeDetectionScheduler,{optional:!0});return()=>ngZoneChangeDetectionScheduler.initialize()}},{provide:ENVIRONMENT_INITIALIZER,multi:!0,useFactory:()=>{let service=inject2(ZoneStablePendingTask);return()=>{service.initialize()}}},ignoreChangesOutsideZone===!0?{provide:ZONELESS_SCHEDULER_DISABLED,useValue:!0}:[],{provide:SCHEDULE_IN_ROOT_ZONE,useValue:scheduleInRootZone??SCHEDULE_IN_ROOT_ZONE_DEFAULT},{provide:INTERNAL_APPLICATION_ERROR_HANDLER,useFactory:()=>{let zone=inject2(NgZone),injector=inject2(EnvironmentInjector),userErrorHandler;return e=>{zone.runOutsideAngular(()=>{injector.destroyed&&!userErrorHandler?setTimeout(()=>{throw e}):(userErrorHandler??=injector.get(ErrorHandler),userErrorHandler.handleError(e))})}}}]}function getNgZoneOptions(options){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:options?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:options?.runCoalescing??!1}}var ZoneStablePendingTask=(()=>{class ZoneStablePendingTask2{subscription=new Subscription;initialized=!1;zone=inject2(NgZone);pendingTasks=inject2(PendingTasksInternal);initialize(){if(this.initialized)return;this.initialized=!0;let task=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(task=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{NgZone.assertNotInAngularZone(),queueMicrotask(()=>{task!==null&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(task),task=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{NgZone.assertInAngularZone(),task??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ZoneStablePendingTask2)};static \u0275prov=\u0275\u0275defineInjectable({token:ZoneStablePendingTask2,factory:ZoneStablePendingTask2.\u0275fac,providedIn:"root"})}return ZoneStablePendingTask2})();var ChangeDetectionSchedulerImpl=(()=>{class ChangeDetectionSchedulerImpl2{applicationErrorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);appRef=inject2(ApplicationRef);taskService=inject2(PendingTasksInternal);ngZone=inject2(NgZone);zonelessEnabled=inject2(ZONELESS_ENABLED);tracing=inject2(TracingService,{optional:!0});disableScheduling=inject2(ZONELESS_SCHEDULER_DISABLED,{optional:!0})??!1;zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run;schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}];subscriptions=new Subscription;angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(angularZoneInstanceIdProperty):null;scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(inject2(SCHEDULE_IN_ROOT_ZONE,{optional:!0})??!1);cancelScheduledCallback=null;useMicrotaskScheduler=!1;runningTick=!1;pendingRenderTaskId=null;constructor(){this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{this.runningTick||this.cleanup()})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()})),this.disableScheduling||=!this.zonelessEnabled&&(this.ngZone instanceof NoopNgZone||!this.zoneIsDefined)}notify(source){if(!this.zonelessEnabled&&source===5)return;let force=!1;switch(source){case 0:{this.appRef.dirtyFlags|=2;break}case 3:case 2:case 4:case 5:case 1:{this.appRef.dirtyFlags|=4;break}case 6:{this.appRef.dirtyFlags|=2,force=!0;break}case 12:{this.appRef.dirtyFlags|=16,force=!0;break}case 13:{this.appRef.dirtyFlags|=2,force=!0;break}case 11:{force=!0;break}case 9:case 8:case 7:case 10:default:this.appRef.dirtyFlags|=8}if(this.appRef.tracingSnapshot=this.tracing?.snapshot(this.appRef.tracingSnapshot)??null,!this.shouldScheduleTick(force))return;let scheduleCallback=this.useMicrotaskScheduler?scheduleCallbackWithMicrotask:scheduleCallbackWithRafRace;this.pendingRenderTaskId=this.taskService.add(),this.scheduleInRootZone?this.cancelScheduledCallback=Zone.root.run(()=>scheduleCallback(()=>this.tick())):this.cancelScheduledCallback=this.ngZone.runOutsideAngular(()=>scheduleCallback(()=>this.tick()))}shouldScheduleTick(force){return!(this.disableScheduling&&!force||this.appRef.destroyed||this.pendingRenderTaskId!==null||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(angularZoneInstanceIdProperty+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;if(this.appRef.dirtyFlags===0){this.cleanup();return}!this.zonelessEnabled&&this.appRef.dirtyFlags&7&&(this.appRef.dirtyFlags|=1);let task=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(e){this.taskService.remove(task),this.applicationErrorHandler(e)}finally{this.cleanup()}this.useMicrotaskScheduler=!0,scheduleCallbackWithMicrotask(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(task)})}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,this.pendingRenderTaskId!==null){let taskId=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(taskId)}}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ChangeDetectionSchedulerImpl2)};static \u0275prov=\u0275\u0275defineInjectable({token:ChangeDetectionSchedulerImpl2,factory:ChangeDetectionSchedulerImpl2.\u0275fac,providedIn:"root"})}return ChangeDetectionSchedulerImpl2})();function getGlobalLocale(){return typeof $localize<"u"&&$localize.locale||DEFAULT_LOCALE_ID}var LOCALE_ID=new InjectionToken("",{providedIn:"root",factory:()=>inject2(LOCALE_ID,{optional:!0,skipSelf:!0})||getGlobalLocale()});var OutputEmitterRef=class{destroyed=!1;listeners=null;errorHandler=inject2(ErrorHandler,{optional:!0});destroyRef=inject2(DestroyRef);constructor(){this.destroyRef.onDestroy(()=>{this.destroyed=!0,this.listeners=null})}subscribe(callback){if(this.destroyed)throw new RuntimeError(953,!1);return(this.listeners??=[]).push(callback),{unsubscribe:()=>{let idx=this.listeners?.indexOf(callback);idx!==void 0&&idx!==-1&&this.listeners?.splice(idx,1)}}}emit(value){if(this.destroyed){console.warn(formatRuntimeError(953,!1));return}if(this.listeners===null)return;let previousConsumer=setActiveConsumer(null);try{for(let listenerFn of this.listeners)try{listenerFn(value)}catch(err){this.errorHandler?.handleError(err)}}finally{setActiveConsumer(previousConsumer)}}};function untracked2(nonReactiveReadsFn){return untracked(nonReactiveReadsFn)}function computed(computation,options){return createComputed(computation,options?.equal)}var EffectRefImpl=class{[SIGNAL];constructor(node){this[SIGNAL]=node}destroy(){this[SIGNAL].destroy()}};function effect(effectFn,options){let injector=options?.injector??inject2(Injector),destroyRef=options?.manualCleanup!==!0?injector.get(DestroyRef):null,node,viewContext=injector.get(ViewContext,null,{optional:!0}),notifier=injector.get(ChangeDetectionScheduler);return viewContext!==null?(node=createViewEffect(viewContext.view,notifier,effectFn),destroyRef instanceof NodeInjectorDestroyRef&&destroyRef._lView===viewContext.view&&(destroyRef=null)):node=createRootEffect(effectFn,injector.get(EffectScheduler),notifier),node.injector=injector,destroyRef!==null&&(node.onDestroyFn=destroyRef.onDestroy(()=>node.destroy())),new EffectRefImpl(node)}var BASE_EFFECT_NODE=__spreadProps(__spreadValues({},REACTIVE_NODE),{consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!0,dirty:!0,hasRun:!1,cleanupFns:void 0,zone:null,kind:"effect",onDestroyFn:noop2,run(){if(this.dirty=!1,this.hasRun&&!consumerPollProducersForChange(this))return;this.hasRun=!0;let registerCleanupFn=cleanupFn=>(this.cleanupFns??=[]).push(cleanupFn),prevNode=consumerBeforeComputation(this),prevRefreshingViews=setIsRefreshingViews(!1);try{this.maybeCleanup(),this.fn(registerCleanupFn)}finally{setIsRefreshingViews(prevRefreshingViews),consumerAfterComputation(this,prevNode)}},maybeCleanup(){if(!this.cleanupFns?.length)return;let prevConsumer=setActiveConsumer(null);try{for(;this.cleanupFns.length;)this.cleanupFns.pop()()}finally{this.cleanupFns=[],setActiveConsumer(prevConsumer)}}}),ROOT_EFFECT_NODE=__spreadProps(__spreadValues({},BASE_EFFECT_NODE),{consumerMarkedDirty(){this.scheduler.schedule(this),this.notifier.notify(12)},destroy(){consumerDestroy(this),this.onDestroyFn(),this.maybeCleanup(),this.scheduler.remove(this)}}),VIEW_EFFECT_NODE=__spreadProps(__spreadValues({},BASE_EFFECT_NODE),{consumerMarkedDirty(){this.view[FLAGS]|=8192,markAncestorsForTraversal(this.view),this.notifier.notify(13)},destroy(){consumerDestroy(this),this.onDestroyFn(),this.maybeCleanup(),this.view[EFFECTS]?.delete(this)}});function createViewEffect(view,notifier,fn){let node=Object.create(VIEW_EFFECT_NODE);return node.view=view,node.zone=typeof Zone<"u"?Zone.current:null,node.notifier=notifier,node.fn=fn,view[EFFECTS]??=new Set,view[EFFECTS].add(node),node.consumerMarkedDirty(node),node}function createRootEffect(fn,scheduler,notifier){let node=Object.create(ROOT_EFFECT_NODE);return node.fn=fn,node.scheduler=scheduler,node.notifier=notifier,node.zone=typeof Zone<"u"?Zone.current:null,node.scheduler.add(node),node.notifier.notify(12),node}var identityFn=v=>v;function linkedSignal(optionsOrComputation,options){if(typeof optionsOrComputation=="function"){let getter=createLinkedSignal(optionsOrComputation,identityFn,options?.equal);return upgradeLinkedSignalGetter(getter)}else{let getter=createLinkedSignal(optionsOrComputation.source,optionsOrComputation.computation,optionsOrComputation.equal);return upgradeLinkedSignalGetter(getter)}}function upgradeLinkedSignalGetter(getter){let node=getter[SIGNAL],upgradedGetter=getter;return upgradedGetter.set=newValue=>linkedSignalSetFn(node,newValue),upgradedGetter.update=updateFn=>linkedSignalUpdateFn(node,updateFn),upgradedGetter.asReadonly=signalAsReadonlyFn.bind(getter),upgradedGetter}var RESOURCE_VALUE_THROWS_ERRORS_DEFAULT=!0;function resource(options){let oldNameForParams=options.request,params=options.params??oldNameForParams??(()=>null);return new ResourceImpl(params,getLoader(options),options.defaultValue,options.equal?wrapEqualityFn(options.equal):void 0,options.injector??inject2(Injector),RESOURCE_VALUE_THROWS_ERRORS_DEFAULT)}var BaseWritableResource=class{value;constructor(value){this.value=value,this.value.set=this.set.bind(this),this.value.update=this.update.bind(this),this.value.asReadonly=signalAsReadonlyFn}isError=computed(()=>this.status()==="error");update(updateFn){this.set(updateFn(untracked2(this.value)))}isLoading=computed(()=>this.status()==="loading"||this.status()==="reloading");isValueDefined=computed(()=>this.isError()?!1:this.value()!==void 0);hasValue(){return this.isValueDefined()}asReadonly(){return this}},ResourceImpl=class extends BaseWritableResource{loaderFn;equal;pendingTasks;state;extRequest;effectRef;pendingController;resolvePendingTask=void 0;destroyed=!1;unregisterOnDestroy;constructor(request,loaderFn,defaultValue,equal,injector,throwErrorsFromValue=RESOURCE_VALUE_THROWS_ERRORS_DEFAULT){super(computed(()=>{let streamValue=this.state().stream?.();if(!streamValue||this.state().status==="loading"&&this.error())return defaultValue;if(!isResolved(streamValue)){if(throwErrorsFromValue)throw new ResourceValueError(this.error());return defaultValue}return streamValue.value},{equal})),this.loaderFn=loaderFn,this.equal=equal,this.extRequest=linkedSignal({source:request,computation:request2=>({request:request2,reload:0})}),this.state=linkedSignal({source:this.extRequest,computation:(extRequest,previous)=>{let status=extRequest.request===void 0?"idle":"loading";return previous?{extRequest,status,previousStatus:projectStatusOfState(previous.value),stream:previous.value.extRequest.request===extRequest.request?previous.value.stream:void 0}:{extRequest,status,previousStatus:"idle",stream:void 0}}}),this.effectRef=effect(this.loadEffect.bind(this),{injector,manualCleanup:!0}),this.pendingTasks=injector.get(PendingTasks),this.unregisterOnDestroy=injector.get(DestroyRef).onDestroy(()=>this.destroy())}status=computed(()=>projectStatusOfState(this.state()));error=computed(()=>{let stream=this.state().stream?.();return stream&&!isResolved(stream)?stream.error:void 0});set(value){if(this.destroyed)return;let error=untracked2(this.error),state2=untracked2(this.state);if(!error){let current=untracked2(this.value);if(state2.status==="local"&&(this.equal?this.equal(current,value):current===value))return}this.state.set({extRequest:state2.extRequest,status:"local",previousStatus:"local",stream:signal({value})}),this.abortInProgressLoad()}reload(){let{status}=untracked2(this.state);return status==="idle"||status==="loading"?!1:(this.extRequest.update(({request,reload})=>({request,reload:reload+1})),!0)}destroy(){this.destroyed=!0,this.unregisterOnDestroy(),this.effectRef.destroy(),this.abortInProgressLoad(),this.state.set({extRequest:{request:void 0,reload:0},status:"idle",previousStatus:"idle",stream:void 0})}loadEffect(){return __async(this,null,function*(){let extRequest=this.extRequest(),{status:currentStatus,previousStatus}=untracked2(this.state);if(extRequest.request===void 0)return;if(currentStatus!=="loading")return;this.abortInProgressLoad();let resolvePendingTask=this.resolvePendingTask=this.pendingTasks.add(),{signal:abortSignal}=this.pendingController=new AbortController;try{let stream=yield untracked2(()=>this.loaderFn({params:extRequest.request,request:extRequest.request,abortSignal,previous:{status:previousStatus}}));if(abortSignal.aborted||untracked2(this.extRequest)!==extRequest)return;this.state.set({extRequest,status:"resolved",previousStatus:"resolved",stream})}catch(err){if(abortSignal.aborted||untracked2(this.extRequest)!==extRequest)return;this.state.set({extRequest,status:"resolved",previousStatus:"error",stream:signal({error:encapsulateResourceError(err)})})}finally{resolvePendingTask?.(),resolvePendingTask=void 0}})}abortInProgressLoad(){untracked2(()=>this.pendingController?.abort()),this.pendingController=void 0,this.resolvePendingTask?.(),this.resolvePendingTask=void 0}};function wrapEqualityFn(equal){return(a,b)=>a===void 0||b===void 0?a===b:equal(a,b)}function getLoader(options){return isStreamingResourceOptions(options)?options.stream:params=>__async(null,null,function*(){try{return signal({value:yield options.loader(params)})}catch(err){return signal({error:encapsulateResourceError(err)})}})}function isStreamingResourceOptions(options){return!!options.stream}function projectStatusOfState(state2){switch(state2.status){case"loading":return state2.extRequest.reload===0?"loading":"reloading";case"resolved":return isResolved(state2.stream())?"resolved":"error";default:return state2.status}}function isResolved(state2){return state2.error===void 0}function encapsulateResourceError(error){return error instanceof Error?error:new ResourceWrappedError(error)}var ResourceValueError=class extends Error{constructor(error){super(error.message,{cause:error})}},ResourceWrappedError=class extends Error{constructor(error){super(String(error),{cause:error})}};var REQUIRED_UNSET_VALUE=Symbol("InputSignalNode#UNSET"),INPUT_SIGNAL_NODE=__spreadProps(__spreadValues({},SIGNAL_NODE),{transformFn:void 0,applyValueToInputSignal(node,value){signalSetFn(node,value)}});function createInputSignal(initialValue,options){let node=Object.create(INPUT_SIGNAL_NODE);node.value=initialValue,node.transformFn=options?.transform;function inputValueFn(){if(producerAccessed(node),node.value===REQUIRED_UNSET_VALUE){let message=null;throw new RuntimeError(-950,message)}return node.value}return inputValueFn[SIGNAL]=node,inputValueFn}var HostAttributeToken=class{attributeName;constructor(attributeName){this.attributeName=attributeName}__NG_ELEMENT_ID__=()=>\u0275\u0275injectAttribute(this.attributeName);toString(){return`HostAttributeToken ${this.attributeName}`}},HOST_TAG_NAME=new InjectionToken("");HOST_TAG_NAME.__NG_ELEMENT_ID__=flags=>{let tNode=getCurrentTNode();if(tNode===null)throw new RuntimeError(204,!1);if(tNode.type&2)return tNode.value;if(flags&8)return null;throw new RuntimeError(204,!1)};function output(opts){return new OutputEmitterRef}function inputFunction(initialValue,opts){return createInputSignal(initialValue,opts)}function inputRequiredFunction(opts){return createInputSignal(REQUIRED_UNSET_VALUE,opts)}var input=(inputFunction.required=inputRequiredFunction,inputFunction);function viewChildFn(locator,opts){return createSingleResultOptionalQuerySignalFn(opts)}function viewChildRequiredFn(locator,opts){return createSingleResultRequiredQuerySignalFn(opts)}var viewChild=(viewChildFn.required=viewChildRequiredFn,viewChildFn);function contentChildFn(locator,opts){return createSingleResultOptionalQuerySignalFn(opts)}function contentChildRequiredFn(locator,opts){return createSingleResultRequiredQuerySignalFn(opts)}var contentChild=(contentChildFn.required=contentChildRequiredFn,contentChildFn);var Version=class{full;major;minor;patch;constructor(full){this.full=full;let parts=full.split(".");this.major=parts[0],this.minor=parts[1],this.patch=parts.slice(2).join(".")}};function compileNgModuleFactory(injector,options,moduleType){let moduleFactory=new NgModuleFactory2(moduleType);return Promise.resolve(moduleFactory)}function _lastDefined(args){for(let i=args.length-1;i>=0;i--)if(args[i]!==void 0)return args[i]}var PLATFORM_DESTROY_LISTENERS=new InjectionToken(""),ENABLE_ROOT_COMPONENT_BOOTSTRAP=new InjectionToken("");function isApplicationBootstrapConfig(config2){return!config2.moduleRef}function bootstrap(config2){let envInjector=isApplicationBootstrapConfig(config2)?config2.r3Injector:config2.moduleRef.injector,ngZone=envInjector.get(NgZone);return ngZone.run(()=>{isApplicationBootstrapConfig(config2)?config2.r3Injector.resolveInjectorInitializers():config2.moduleRef.resolveInjectorInitializers();let exceptionHandler=envInjector.get(INTERNAL_APPLICATION_ERROR_HANDLER),onErrorSubscription;if(ngZone.runOutsideAngular(()=>{onErrorSubscription=ngZone.onError.subscribe({next:exceptionHandler})}),isApplicationBootstrapConfig(config2)){let destroyListener=()=>envInjector.destroy(),onPlatformDestroyListeners=config2.platformInjector.get(PLATFORM_DESTROY_LISTENERS);onPlatformDestroyListeners.add(destroyListener),envInjector.onDestroy(()=>{onErrorSubscription.unsubscribe(),onPlatformDestroyListeners.delete(destroyListener)})}else{let destroyListener=()=>config2.moduleRef.destroy(),onPlatformDestroyListeners=config2.platformInjector.get(PLATFORM_DESTROY_LISTENERS);onPlatformDestroyListeners.add(destroyListener),config2.moduleRef.onDestroy(()=>{remove(config2.allPlatformModules,config2.moduleRef),onErrorSubscription.unsubscribe(),onPlatformDestroyListeners.delete(destroyListener)})}return _callAndReportToErrorHandler(exceptionHandler,ngZone,()=>{let pendingTasks=envInjector.get(PendingTasksInternal),taskId=pendingTasks.add(),initStatus=envInjector.get(ApplicationInitStatus);return initStatus.runInitializers(),initStatus.donePromise.then(()=>{let localeId=envInjector.get(LOCALE_ID,DEFAULT_LOCALE_ID);if(setLocaleId(localeId||DEFAULT_LOCALE_ID),!envInjector.get(ENABLE_ROOT_COMPONENT_BOOTSTRAP,!0))return isApplicationBootstrapConfig(config2)?envInjector.get(ApplicationRef):(config2.allPlatformModules.push(config2.moduleRef),config2.moduleRef);if(isApplicationBootstrapConfig(config2)){let appRef=envInjector.get(ApplicationRef);return config2.rootComponent!==void 0&&appRef.bootstrap(config2.rootComponent),appRef}else return moduleBootstrapImpl?.(config2.moduleRef,config2.allPlatformModules),config2.moduleRef}).finally(()=>void pendingTasks.remove(taskId))})})}var moduleBootstrapImpl;function setModuleBootstrapImpl(){moduleBootstrapImpl=_moduleDoBootstrap}function _moduleDoBootstrap(moduleRef,allPlatformModules){let appRef=moduleRef.injector.get(ApplicationRef);if(moduleRef._bootstrapComponents.length>0)moduleRef._bootstrapComponents.forEach(f=>appRef.bootstrap(f));else if(moduleRef.instance.ngDoBootstrap)moduleRef.instance.ngDoBootstrap(appRef);else throw new RuntimeError(-403,!1);allPlatformModules.push(moduleRef)}function _callAndReportToErrorHandler(errorHandler2,ngZone,callback){try{let result=callback();return isPromise2(result)?result.catch(e=>{throw ngZone.runOutsideAngular(()=>errorHandler2(e)),e}):result}catch(e){throw ngZone.runOutsideAngular(()=>errorHandler2(e)),e}}var PlatformRef=(()=>{class PlatformRef2{_injector;_modules=[];_destroyListeners=[];_destroyed=!1;constructor(_injector){this._injector=_injector}bootstrapModuleFactory(moduleFactory,options){let scheduleInRootZone=options?.scheduleInRootZone,ngZoneFactory=()=>getNgZone(options?.ngZone,__spreadProps(__spreadValues({},getNgZoneOptions({eventCoalescing:options?.ngZoneEventCoalescing,runCoalescing:options?.ngZoneRunCoalescing})),{scheduleInRootZone})),ignoreChangesOutsideZone=options?.ignoreChangesOutsideZone,allAppProviders=[internalProvideZoneChangeDetection({ngZoneFactory,ignoreChangesOutsideZone}),{provide:ChangeDetectionScheduler,useExisting:ChangeDetectionSchedulerImpl},errorHandlerEnvironmentInitializer],moduleRef=createNgModuleRefWithProviders(moduleFactory.moduleType,this.injector,allAppProviders);return setModuleBootstrapImpl(),bootstrap({moduleRef,allPlatformModules:this._modules,platformInjector:this.injector})}bootstrapModule(moduleType,compilerOptions=[]){let options=optionsReducer({},compilerOptions);return setModuleBootstrapImpl(),compileNgModuleFactory(this.injector,options,moduleType).then(moduleFactory=>this.bootstrapModuleFactory(moduleFactory,options))}onDestroy(callback){this._destroyListeners.push(callback)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new RuntimeError(404,!1);this._modules.slice().forEach(module=>module.destroy()),this._destroyListeners.forEach(listener=>listener());let destroyListeners=this._injector.get(PLATFORM_DESTROY_LISTENERS,null);destroyListeners&&(destroyListeners.forEach(listener=>listener()),destroyListeners.clear()),this._destroyed=!0}get destroyed(){return this._destroyed}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PlatformRef2)(\u0275\u0275inject(Injector))};static \u0275prov=\u0275\u0275defineInjectable({token:PlatformRef2,factory:PlatformRef2.\u0275fac,providedIn:"platform"})}return PlatformRef2})(),_platformInjector=null,ALLOW_MULTIPLE_PLATFORMS=new InjectionToken("");function createPlatform(injector){if(_platformInjector&&!_platformInjector.get(ALLOW_MULTIPLE_PLATFORMS,!1))throw new RuntimeError(400,!1);publishSignalConfiguration(),_platformInjector=injector;let platform=injector.get(PlatformRef);return runPlatformInitializers(injector),platform}function createPlatformFactory(parentPlatformFactory,name,providers=[]){let desc=`Platform: ${name}`,marker=new InjectionToken(desc);return(extraProviders=[])=>{let platform=getPlatform();if(!platform||platform.injector.get(ALLOW_MULTIPLE_PLATFORMS,!1)){let platformProviders=[...providers,...extraProviders,{provide:marker,useValue:!0}];parentPlatformFactory?parentPlatformFactory(platformProviders):createPlatform(createPlatformInjector(platformProviders,desc))}return assertPlatform(marker)}}function createPlatformInjector(providers=[],name){return Injector.create({name,providers:[{provide:INJECTOR_SCOPE,useValue:"platform"},{provide:PLATFORM_DESTROY_LISTENERS,useValue:new Set([()=>_platformInjector=null])},...providers]})}function assertPlatform(requiredToken){let platform=getPlatform();if(!platform)throw new RuntimeError(401,!1);return platform}function getPlatform(){return _platformInjector?.get(PlatformRef)??null}function runPlatformInitializers(injector){let inits=injector.get(PLATFORM_INITIALIZER,null);runInInjectionContext(injector,()=>{inits?.forEach(init=>init())})}function isDevMode(){return!1}var ChangeDetectorRef=(()=>{class ChangeDetectorRef2{static __NG_ELEMENT_ID__=injectChangeDetectorRef}return ChangeDetectorRef2})();function injectChangeDetectorRef(flags){return createViewRef(getCurrentTNode(),getLView(),(flags&16)===16)}function createViewRef(tNode,lView,isPipe){if(isComponentHost(tNode)&&!isPipe){let componentView=getComponentLViewByIndex(tNode.index,lView);return new ViewRef(componentView,componentView)}else if(tNode.type&175){let hostComponentView=lView[DECLARATION_COMPONENT_VIEW];return new ViewRef(hostComponentView,lView)}return null}var DefaultIterableDifferFactory=class{constructor(){}supports(obj){return isListLikeIterable(obj)}create(trackByFn){return new DefaultIterableDiffer(trackByFn)}},trackByIdentity=(index,item)=>item,DefaultIterableDiffer=class{length=0;collection;_linkedRecords=null;_unlinkedRecords=null;_previousItHead=null;_itHead=null;_itTail=null;_additionsHead=null;_additionsTail=null;_movesHead=null;_movesTail=null;_removalsHead=null;_removalsTail=null;_identityChangesHead=null;_identityChangesTail=null;_trackByFn;constructor(trackByFn){this._trackByFn=trackByFn||trackByIdentity}forEachItem(fn){let record;for(record=this._itHead;record!==null;record=record._next)fn(record)}forEachOperation(fn){let nextIt=this._itHead,nextRemove=this._removalsHead,addRemoveOffset=0,moveOffsets=null;for(;nextIt||nextRemove;){let record=!nextRemove||nextIt&&nextIt.currentIndex<getPreviousIndex(nextRemove,addRemoveOffset,moveOffsets)?nextIt:nextRemove,adjPreviousIndex=getPreviousIndex(record,addRemoveOffset,moveOffsets),currentIndex=record.currentIndex;if(record===nextRemove)addRemoveOffset--,nextRemove=nextRemove._nextRemoved;else if(nextIt=nextIt._next,record.previousIndex==null)addRemoveOffset++;else{moveOffsets||(moveOffsets=[]);let localMovePreviousIndex=adjPreviousIndex-addRemoveOffset,localCurrentIndex=currentIndex-addRemoveOffset;if(localMovePreviousIndex!=localCurrentIndex){for(let i=0;i<localMovePreviousIndex;i++){let offset=i<moveOffsets.length?moveOffsets[i]:moveOffsets[i]=0,index=offset+i;localCurrentIndex<=index&&index<localMovePreviousIndex&&(moveOffsets[i]=offset+1)}let previousIndex=record.previousIndex;moveOffsets[previousIndex]=localCurrentIndex-localMovePreviousIndex}}adjPreviousIndex!==currentIndex&&fn(record,adjPreviousIndex,currentIndex)}}forEachPreviousItem(fn){let record;for(record=this._previousItHead;record!==null;record=record._nextPrevious)fn(record)}forEachAddedItem(fn){let record;for(record=this._additionsHead;record!==null;record=record._nextAdded)fn(record)}forEachMovedItem(fn){let record;for(record=this._movesHead;record!==null;record=record._nextMoved)fn(record)}forEachRemovedItem(fn){let record;for(record=this._removalsHead;record!==null;record=record._nextRemoved)fn(record)}forEachIdentityChange(fn){let record;for(record=this._identityChangesHead;record!==null;record=record._nextIdentityChange)fn(record)}diff(collection){if(collection==null&&(collection=[]),!isListLikeIterable(collection))throw new RuntimeError(900,!1);return this.check(collection)?this:null}onDestroy(){}check(collection){this._reset();let record=this._itHead,mayBeDirty=!1,index,item,itemTrackBy;if(Array.isArray(collection)){this.length=collection.length;for(let index2=0;index2<this.length;index2++)item=collection[index2],itemTrackBy=this._trackByFn(index2,item),record===null||!Object.is(record.trackById,itemTrackBy)?(record=this._mismatch(record,item,itemTrackBy,index2),mayBeDirty=!0):(mayBeDirty&&(record=this._verifyReinsertion(record,item,itemTrackBy,index2)),Object.is(record.item,item)||this._addIdentityChange(record,item)),record=record._next}else index=0,iterateListLike(collection,item2=>{itemTrackBy=this._trackByFn(index,item2),record===null||!Object.is(record.trackById,itemTrackBy)?(record=this._mismatch(record,item2,itemTrackBy,index),mayBeDirty=!0):(mayBeDirty&&(record=this._verifyReinsertion(record,item2,itemTrackBy,index)),Object.is(record.item,item2)||this._addIdentityChange(record,item2)),record=record._next,index++}),this.length=index;return this._truncate(record),this.collection=collection,this.isDirty}get isDirty(){return this._additionsHead!==null||this._movesHead!==null||this._removalsHead!==null||this._identityChangesHead!==null}_reset(){if(this.isDirty){let record;for(record=this._previousItHead=this._itHead;record!==null;record=record._next)record._nextPrevious=record._next;for(record=this._additionsHead;record!==null;record=record._nextAdded)record.previousIndex=record.currentIndex;for(this._additionsHead=this._additionsTail=null,record=this._movesHead;record!==null;record=record._nextMoved)record.previousIndex=record.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(record,item,itemTrackBy,index){let previousRecord;return record===null?previousRecord=this._itTail:(previousRecord=record._prev,this._remove(record)),record=this._unlinkedRecords===null?null:this._unlinkedRecords.get(itemTrackBy,null),record!==null?(Object.is(record.item,item)||this._addIdentityChange(record,item),this._reinsertAfter(record,previousRecord,index)):(record=this._linkedRecords===null?null:this._linkedRecords.get(itemTrackBy,index),record!==null?(Object.is(record.item,item)||this._addIdentityChange(record,item),this._moveAfter(record,previousRecord,index)):record=this._addAfter(new IterableChangeRecord_(item,itemTrackBy),previousRecord,index)),record}_verifyReinsertion(record,item,itemTrackBy,index){let reinsertRecord=this._unlinkedRecords===null?null:this._unlinkedRecords.get(itemTrackBy,null);return reinsertRecord!==null?record=this._reinsertAfter(reinsertRecord,record._prev,index):record.currentIndex!=index&&(record.currentIndex=index,this._addToMoves(record,index)),record}_truncate(record){for(;record!==null;){let nextRecord=record._next;this._addToRemovals(this._unlink(record)),record=nextRecord}this._unlinkedRecords!==null&&this._unlinkedRecords.clear(),this._additionsTail!==null&&(this._additionsTail._nextAdded=null),this._movesTail!==null&&(this._movesTail._nextMoved=null),this._itTail!==null&&(this._itTail._next=null),this._removalsTail!==null&&(this._removalsTail._nextRemoved=null),this._identityChangesTail!==null&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(record,prevRecord,index){this._unlinkedRecords!==null&&this._unlinkedRecords.remove(record);let prev=record._prevRemoved,next=record._nextRemoved;return prev===null?this._removalsHead=next:prev._nextRemoved=next,next===null?this._removalsTail=prev:next._prevRemoved=prev,this._insertAfter(record,prevRecord,index),this._addToMoves(record,index),record}_moveAfter(record,prevRecord,index){return this._unlink(record),this._insertAfter(record,prevRecord,index),this._addToMoves(record,index),record}_addAfter(record,prevRecord,index){return this._insertAfter(record,prevRecord,index),this._additionsTail===null?this._additionsTail=this._additionsHead=record:this._additionsTail=this._additionsTail._nextAdded=record,record}_insertAfter(record,prevRecord,index){let next=prevRecord===null?this._itHead:prevRecord._next;return record._next=next,record._prev=prevRecord,next===null?this._itTail=record:next._prev=record,prevRecord===null?this._itHead=record:prevRecord._next=record,this._linkedRecords===null&&(this._linkedRecords=new _DuplicateMap),this._linkedRecords.put(record),record.currentIndex=index,record}_remove(record){return this._addToRemovals(this._unlink(record))}_unlink(record){this._linkedRecords!==null&&this._linkedRecords.remove(record);let prev=record._prev,next=record._next;return prev===null?this._itHead=next:prev._next=next,next===null?this._itTail=prev:next._prev=prev,record}_addToMoves(record,toIndex){return record.previousIndex===toIndex||(this._movesTail===null?this._movesTail=this._movesHead=record:this._movesTail=this._movesTail._nextMoved=record),record}_addToRemovals(record){return this._unlinkedRecords===null&&(this._unlinkedRecords=new _DuplicateMap),this._unlinkedRecords.put(record),record.currentIndex=null,record._nextRemoved=null,this._removalsTail===null?(this._removalsTail=this._removalsHead=record,record._prevRemoved=null):(record._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=record),record}_addIdentityChange(record,item){return record.item=item,this._identityChangesTail===null?this._identityChangesTail=this._identityChangesHead=record:this._identityChangesTail=this._identityChangesTail._nextIdentityChange=record,record}},IterableChangeRecord_=class{item;trackById;currentIndex=null;previousIndex=null;_nextPrevious=null;_prev=null;_next=null;_prevDup=null;_nextDup=null;_prevRemoved=null;_nextRemoved=null;_nextAdded=null;_nextMoved=null;_nextIdentityChange=null;constructor(item,trackById){this.item=item,this.trackById=trackById}},_DuplicateItemRecordList=class{_head=null;_tail=null;add(record){this._head===null?(this._head=this._tail=record,record._nextDup=null,record._prevDup=null):(this._tail._nextDup=record,record._prevDup=this._tail,record._nextDup=null,this._tail=record)}get(trackById,atOrAfterIndex){let record;for(record=this._head;record!==null;record=record._nextDup)if((atOrAfterIndex===null||atOrAfterIndex<=record.currentIndex)&&Object.is(record.trackById,trackById))return record;return null}remove(record){let prev=record._prevDup,next=record._nextDup;return prev===null?this._head=next:prev._nextDup=next,next===null?this._tail=prev:next._prevDup=prev,this._head===null}},_DuplicateMap=class{map=new Map;put(record){let key=record.trackById,duplicates=this.map.get(key);duplicates||(duplicates=new _DuplicateItemRecordList,this.map.set(key,duplicates)),duplicates.add(record)}get(trackById,atOrAfterIndex){let key=trackById,recordList=this.map.get(key);return recordList?recordList.get(trackById,atOrAfterIndex):null}remove(record){let key=record.trackById;return this.map.get(key).remove(record)&&this.map.delete(key),record}get isEmpty(){return this.map.size===0}clear(){this.map.clear()}};function getPreviousIndex(item,addRemoveOffset,moveOffsets){let previousIndex=item.previousIndex;if(previousIndex===null)return previousIndex;let moveOffset=0;return moveOffsets&&previousIndex<moveOffsets.length&&(moveOffset=moveOffsets[previousIndex]),previousIndex+addRemoveOffset+moveOffset}var DefaultKeyValueDifferFactory=class{constructor(){}supports(obj){return obj instanceof Map||isJsObject(obj)}create(){return new DefaultKeyValueDiffer}},DefaultKeyValueDiffer=class{_records=new Map;_mapHead=null;_appendAfter=null;_previousMapHead=null;_changesHead=null;_changesTail=null;_additionsHead=null;_additionsTail=null;_removalsHead=null;_removalsTail=null;get isDirty(){return this._additionsHead!==null||this._changesHead!==null||this._removalsHead!==null}forEachItem(fn){let record;for(record=this._mapHead;record!==null;record=record._next)fn(record)}forEachPreviousItem(fn){let record;for(record=this._previousMapHead;record!==null;record=record._nextPrevious)fn(record)}forEachChangedItem(fn){let record;for(record=this._changesHead;record!==null;record=record._nextChanged)fn(record)}forEachAddedItem(fn){let record;for(record=this._additionsHead;record!==null;record=record._nextAdded)fn(record)}forEachRemovedItem(fn){let record;for(record=this._removalsHead;record!==null;record=record._nextRemoved)fn(record)}diff(map2){if(!map2)map2=new Map;else if(!(map2 instanceof Map||isJsObject(map2)))throw new RuntimeError(900,!1);return this.check(map2)?this:null}onDestroy(){}check(map2){this._reset();let insertBefore=this._mapHead;if(this._appendAfter=null,this._forEach(map2,(value,key)=>{if(insertBefore&&insertBefore.key===key)this._maybeAddToChanges(insertBefore,value),this._appendAfter=insertBefore,insertBefore=insertBefore._next;else{let record=this._getOrCreateRecordForKey(key,value);insertBefore=this._insertBeforeOrAppend(insertBefore,record)}}),insertBefore){insertBefore._prev&&(insertBefore._prev._next=null),this._removalsHead=insertBefore;for(let record=insertBefore;record!==null;record=record._nextRemoved)record===this._mapHead&&(this._mapHead=null),this._records.delete(record.key),record._nextRemoved=record._next,record.previousValue=record.currentValue,record.currentValue=null,record._prev=null,record._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(before,record){if(before){let prev=before._prev;return record._next=before,record._prev=prev,before._prev=record,prev&&(prev._next=record),before===this._mapHead&&(this._mapHead=record),this._appendAfter=before,before}return this._appendAfter?(this._appendAfter._next=record,record._prev=this._appendAfter):this._mapHead=record,this._appendAfter=record,null}_getOrCreateRecordForKey(key,value){if(this._records.has(key)){let record2=this._records.get(key);this._maybeAddToChanges(record2,value);let prev=record2._prev,next=record2._next;return prev&&(prev._next=next),next&&(next._prev=prev),record2._next=null,record2._prev=null,record2}let record=new KeyValueChangeRecord_(key);return this._records.set(key,record),record.currentValue=value,this._addToAdditions(record),record}_reset(){if(this.isDirty){let record;for(this._previousMapHead=this._mapHead,record=this._previousMapHead;record!==null;record=record._next)record._nextPrevious=record._next;for(record=this._changesHead;record!==null;record=record._nextChanged)record.previousValue=record.currentValue;for(record=this._additionsHead;record!=null;record=record._nextAdded)record.previousValue=record.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(record,newValue){Object.is(newValue,record.currentValue)||(record.previousValue=record.currentValue,record.currentValue=newValue,this._addToChanges(record))}_addToAdditions(record){this._additionsHead===null?this._additionsHead=this._additionsTail=record:(this._additionsTail._nextAdded=record,this._additionsTail=record)}_addToChanges(record){this._changesHead===null?this._changesHead=this._changesTail=record:(this._changesTail._nextChanged=record,this._changesTail=record)}_forEach(obj,fn){obj instanceof Map?obj.forEach(fn):Object.keys(obj).forEach(k=>fn(obj[k],k))}},KeyValueChangeRecord_=class{key;previousValue=null;currentValue=null;_nextPrevious=null;_next=null;_prev=null;_nextAdded=null;_nextRemoved=null;_nextChanged=null;constructor(key){this.key=key}};function defaultIterableDiffersFactory(){return new IterableDiffers([new DefaultIterableDifferFactory])}var IterableDiffers=(()=>{class IterableDiffers2{factories;static \u0275prov=\u0275\u0275defineInjectable({token:IterableDiffers2,providedIn:"root",factory:defaultIterableDiffersFactory});constructor(factories){this.factories=factories}static create(factories,parent){if(parent!=null){let copied=parent.factories.slice();factories=factories.concat(copied)}return new IterableDiffers2(factories)}static extend(factories){return{provide:IterableDiffers2,useFactory:parent=>IterableDiffers2.create(factories,parent||defaultIterableDiffersFactory()),deps:[[IterableDiffers2,new SkipSelf,new Optional]]}}find(iterable){let factory=this.factories.find(f=>f.supports(iterable));if(factory!=null)return factory;throw new RuntimeError(901,!1)}}return IterableDiffers2})();function defaultKeyValueDiffersFactory(){return new KeyValueDiffers([new DefaultKeyValueDifferFactory])}var KeyValueDiffers=(()=>{class KeyValueDiffers2{static \u0275prov=\u0275\u0275defineInjectable({token:KeyValueDiffers2,providedIn:"root",factory:defaultKeyValueDiffersFactory});factories;constructor(factories){this.factories=factories}static create(factories,parent){if(parent){let copied=parent.factories.slice();factories=factories.concat(copied)}return new KeyValueDiffers2(factories)}static extend(factories){return{provide:KeyValueDiffers2,useFactory:parent=>KeyValueDiffers2.create(factories,parent||defaultKeyValueDiffersFactory()),deps:[[KeyValueDiffers2,new SkipSelf,new Optional]]}}find(kv){let factory=this.factories.find(f=>f.supports(kv));if(factory)return factory;throw new RuntimeError(901,!1)}}return KeyValueDiffers2})();var platformCore=createPlatformFactory(null,"core",[]),ApplicationModule=(()=>{class ApplicationModule2{constructor(appRef){}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ApplicationModule2)(\u0275\u0275inject(ApplicationRef))};static \u0275mod=\u0275\u0275defineNgModule({type:ApplicationModule2});static \u0275inj=\u0275\u0275defineInjector({})}return ApplicationModule2})();function booleanAttribute(value){return typeof value=="boolean"?value:value!=null&&value!=="false"}function numberAttribute(value,fallbackValue=NaN){return!isNaN(parseFloat(value))&&!isNaN(Number(value))?Number(value):fallbackValue}var NOT_SET=Symbol("NOT_SET"),EMPTY_CLEANUP_SET=new Set,AFTER_RENDER_PHASE_EFFECT_NODE=__spreadProps(__spreadValues({},SIGNAL_NODE),{consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!0,value:NOT_SET,cleanup:null,consumerMarkedDirty(){if(this.sequence.impl.executing){if(this.sequence.lastPhase===null||this.sequence.lastPhase<this.phase)return;this.sequence.erroredOrDestroyed=!0}this.sequence.scheduler.notify(7)},phaseFn(previousValue){if(this.sequence.lastPhase=this.phase,!this.dirty)return this.signal;if(this.dirty=!1,this.value!==NOT_SET&&!consumerPollProducersForChange(this))return this.signal;try{for(let cleanupFn of this.cleanup??EMPTY_CLEANUP_SET)cleanupFn()}finally{this.cleanup?.clear()}let args=[];previousValue!==void 0&&args.push(previousValue),args.push(this.registerCleanupFn);let prevConsumer=consumerBeforeComputation(this),newValue;try{newValue=this.userFn.apply(null,args)}finally{consumerAfterComputation(this,prevConsumer)}return(this.value===NOT_SET||!this.equal(this.value,newValue))&&(this.value=newValue,this.version++),this.signal}}),AfterRenderEffectSequence=class extends AfterRenderSequence{scheduler;lastPhase=null;nodes=[void 0,void 0,void 0,void 0];constructor(impl,effectHooks,view,scheduler,injector,snapshot=null){super(impl,[void 0,void 0,void 0,void 0],view,!1,injector.get(DestroyRef),snapshot),this.scheduler=scheduler;for(let phase of AFTER_RENDER_PHASES){let effectHook=effectHooks[phase];if(effectHook===void 0)continue;let node=Object.create(AFTER_RENDER_PHASE_EFFECT_NODE);node.sequence=this,node.phase=phase,node.userFn=effectHook,node.dirty=!0,node.signal=()=>(producerAccessed(node),node.value),node.signal[SIGNAL]=node,node.registerCleanupFn=fn=>(node.cleanup??=new Set).add(fn),this.nodes[phase]=node,this.hooks[phase]=value=>node.phaseFn(value)}}afterRun(){super.afterRun(),this.lastPhase=null}destroy(){super.destroy();for(let node of this.nodes)if(node)try{for(let fn of node.cleanup??EMPTY_CLEANUP_SET)fn()}finally{consumerDestroy(node)}}};function afterRenderEffect(callbackOrSpec,options){let injector=options?.injector??inject2(Injector),scheduler=injector.get(ChangeDetectionScheduler),manager=injector.get(AfterRenderManager),tracing=injector.get(TracingService,null,{optional:!0});manager.impl??=injector.get(AfterRenderImpl);let spec=callbackOrSpec;typeof spec=="function"&&(spec={mixedReadWrite:callbackOrSpec});let viewContext=injector.get(ViewContext,null,{optional:!0}),sequence2=new AfterRenderEffectSequence(manager.impl,[spec.earlyRead,spec.write,spec.mixedReadWrite,spec.read],viewContext?.view,scheduler,injector,tracing?.snapshot(null));return manager.impl.register(sequence2),sequence2}function createComponent(component,options){let componentDef=getComponentDef(component),elementInjector=options.elementInjector||getNullInjector();return new ComponentFactory2(componentDef).create(elementInjector,options.projectableNodes,options.hostElement,options.environmentInjector,options.directives,options.bindings)}function reflectComponentType(component){let componentDef=getComponentDef(component);if(!componentDef)return null;let factory=new ComponentFactory2(componentDef);return{get selector(){return factory.selector},get type(){return factory.componentType},get inputs(){return factory.inputs},get outputs(){return factory.outputs},get ngContentSelectors(){return factory.ngContentSelectors},get isStandalone(){return componentDef.standalone},get isSignal(){return componentDef.signals}}}var _DOM=null;function getDOM(){return _DOM}function setRootDomAdapter(adapter3){_DOM??=adapter3}var DomAdapter=class{},PlatformLocation=(()=>{class PlatformLocation2{historyGo(relativePosition){throw new Error("")}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PlatformLocation2)};static \u0275prov=\u0275\u0275defineInjectable({token:PlatformLocation2,factory:()=>inject2(BrowserPlatformLocation),providedIn:"platform"})}return PlatformLocation2})(),LOCATION_INITIALIZED=new InjectionToken(""),BrowserPlatformLocation=(()=>{class BrowserPlatformLocation2 extends PlatformLocation{_location;_history;_doc=inject2(DOCUMENT);constructor(){super(),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return getDOM().getBaseHref(this._doc)}onPopState(fn){let window2=getDOM().getGlobalEventTarget(this._doc,"window");return window2.addEventListener("popstate",fn,!1),()=>window2.removeEventListener("popstate",fn)}onHashChange(fn){let window2=getDOM().getGlobalEventTarget(this._doc,"window");return window2.addEventListener("hashchange",fn,!1),()=>window2.removeEventListener("hashchange",fn)}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(newPath){this._location.pathname=newPath}pushState(state2,title,url){this._history.pushState(state2,title,url)}replaceState(state2,title,url){this._history.replaceState(state2,title,url)}forward(){this._history.forward()}back(){this._history.back()}historyGo(relativePosition=0){this._history.go(relativePosition)}getState(){return this._history.state}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||BrowserPlatformLocation2)};static \u0275prov=\u0275\u0275defineInjectable({token:BrowserPlatformLocation2,factory:()=>new BrowserPlatformLocation2,providedIn:"platform"})}return BrowserPlatformLocation2})();function joinWithSlash(start,end){return start?end?start.endsWith("/")?end.startsWith("/")?start+end.slice(1):start+end:end.startsWith("/")?start+end:`${start}/${end}`:start:end}function stripTrailingSlash(url){let pathEndIdx=url.search(/#|\?|$/);return url[pathEndIdx-1]==="/"?url.slice(0,pathEndIdx-1)+url.slice(pathEndIdx):url}function normalizeQueryParams(params){return params&¶ms[0]!=="?"?`?${params}`:params}var LocationStrategy=(()=>{class LocationStrategy2{historyGo(relativePosition){throw new Error("")}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||LocationStrategy2)};static \u0275prov=\u0275\u0275defineInjectable({token:LocationStrategy2,factory:()=>inject2(PathLocationStrategy),providedIn:"root"})}return LocationStrategy2})(),APP_BASE_HREF=new InjectionToken(""),PathLocationStrategy=(()=>{class PathLocationStrategy2 extends LocationStrategy{_platformLocation;_baseHref;_removeListenerFns=[];constructor(_platformLocation,href){super(),this._platformLocation=_platformLocation,this._baseHref=href??this._platformLocation.getBaseHrefFromDOM()??inject2(DOCUMENT).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(fn){this._removeListenerFns.push(this._platformLocation.onPopState(fn),this._platformLocation.onHashChange(fn))}getBaseHref(){return this._baseHref}prepareExternalUrl(internal){return joinWithSlash(this._baseHref,internal)}path(includeHash=!1){let pathname=this._platformLocation.pathname+normalizeQueryParams(this._platformLocation.search),hash=this._platformLocation.hash;return hash&&includeHash?`${pathname}${hash}`:pathname}pushState(state2,title,url,queryParams){let externalUrl=this.prepareExternalUrl(url+normalizeQueryParams(queryParams));this._platformLocation.pushState(state2,title,externalUrl)}replaceState(state2,title,url,queryParams){let externalUrl=this.prepareExternalUrl(url+normalizeQueryParams(queryParams));this._platformLocation.replaceState(state2,title,externalUrl)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(relativePosition=0){this._platformLocation.historyGo?.(relativePosition)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PathLocationStrategy2)(\u0275\u0275inject(PlatformLocation),\u0275\u0275inject(APP_BASE_HREF,8))};static \u0275prov=\u0275\u0275defineInjectable({token:PathLocationStrategy2,factory:PathLocationStrategy2.\u0275fac,providedIn:"root"})}return PathLocationStrategy2})(),Location=(()=>{class Location2{_subject=new Subject;_basePath;_locationStrategy;_urlChangeListeners=[];_urlChangeSubscription=null;constructor(locationStrategy){this._locationStrategy=locationStrategy;let baseHref=this._locationStrategy.getBaseHref();this._basePath=_stripOrigin(stripTrailingSlash(_stripIndexHtml(baseHref))),this._locationStrategy.onPopState(ev=>{this._subject.next({url:this.path(!0),pop:!0,state:ev.state,type:ev.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(includeHash=!1){return this.normalize(this._locationStrategy.path(includeHash))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(path,query2=""){return this.path()==this.normalize(path+normalizeQueryParams(query2))}normalize(url){return Location2.stripTrailingSlash(_stripBasePath(this._basePath,_stripIndexHtml(url)))}prepareExternalUrl(url){return url&&url[0]!=="/"&&(url="/"+url),this._locationStrategy.prepareExternalUrl(url)}go(path,query2="",state2=null){this._locationStrategy.pushState(state2,"",path,query2),this._notifyUrlChangeListeners(this.prepareExternalUrl(path+normalizeQueryParams(query2)),state2)}replaceState(path,query2="",state2=null){this._locationStrategy.replaceState(state2,"",path,query2),this._notifyUrlChangeListeners(this.prepareExternalUrl(path+normalizeQueryParams(query2)),state2)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(relativePosition=0){this._locationStrategy.historyGo?.(relativePosition)}onUrlChange(fn){return this._urlChangeListeners.push(fn),this._urlChangeSubscription??=this.subscribe(v=>{this._notifyUrlChangeListeners(v.url,v.state)}),()=>{let fnIndex=this._urlChangeListeners.indexOf(fn);this._urlChangeListeners.splice(fnIndex,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(url="",state2){this._urlChangeListeners.forEach(fn=>fn(url,state2))}subscribe(onNext,onThrow,onReturn){return this._subject.subscribe({next:onNext,error:onThrow??void 0,complete:onReturn??void 0})}static normalizeQueryParams=normalizeQueryParams;static joinWithSlash=joinWithSlash;static stripTrailingSlash=stripTrailingSlash;static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Location2)(\u0275\u0275inject(LocationStrategy))};static \u0275prov=\u0275\u0275defineInjectable({token:Location2,factory:()=>createLocation(),providedIn:"root"})}return Location2})();function createLocation(){return new Location(\u0275\u0275inject(LocationStrategy))}function _stripBasePath(basePath,url){if(!basePath||!url.startsWith(basePath))return url;let strippedUrl=url.substring(basePath.length);return strippedUrl===""||["/",";","?","#"].includes(strippedUrl[0])?strippedUrl:url}function _stripIndexHtml(url){return url.replace(/\/index.html$/,"")}function _stripOrigin(baseHref){if(new RegExp("^(https?:)?//").test(baseHref)){let[,pathname]=baseHref.split(/\/\/[^\/]+/);return pathname}return baseHref}var HashLocationStrategy=(()=>{class HashLocationStrategy2 extends LocationStrategy{_platformLocation;_baseHref="";_removeListenerFns=[];constructor(_platformLocation,_baseHref){super(),this._platformLocation=_platformLocation,_baseHref!=null&&(this._baseHref=_baseHref)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(fn){this._removeListenerFns.push(this._platformLocation.onPopState(fn),this._platformLocation.onHashChange(fn))}getBaseHref(){return this._baseHref}path(includeHash=!1){let path=this._platformLocation.hash??"#";return path.length>0?path.substring(1):path}prepareExternalUrl(internal){let url=joinWithSlash(this._baseHref,internal);return url.length>0?"#"+url:url}pushState(state2,title,path,queryParams){let url=this.prepareExternalUrl(path+normalizeQueryParams(queryParams))||this._platformLocation.pathname;this._platformLocation.pushState(state2,title,url)}replaceState(state2,title,path,queryParams){let url=this.prepareExternalUrl(path+normalizeQueryParams(queryParams))||this._platformLocation.pathname;this._platformLocation.replaceState(state2,title,url)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(relativePosition=0){this._platformLocation.historyGo?.(relativePosition)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||HashLocationStrategy2)(\u0275\u0275inject(PlatformLocation),\u0275\u0275inject(APP_BASE_HREF,8))};static \u0275prov=\u0275\u0275defineInjectable({token:HashLocationStrategy2,factory:HashLocationStrategy2.\u0275fac})}return HashLocationStrategy2})();var WS_REGEXP=/\s+/,EMPTY_ARRAY2=[],NgClass=(()=>{class NgClass2{_ngEl;_renderer;initialClasses=EMPTY_ARRAY2;rawClass;stateMap=new Map;constructor(_ngEl,_renderer){this._ngEl=_ngEl,this._renderer=_renderer}set klass(value){this.initialClasses=value!=null?value.trim().split(WS_REGEXP):EMPTY_ARRAY2}set ngClass(value){this.rawClass=typeof value=="string"?value.trim().split(WS_REGEXP):value}ngDoCheck(){for(let klass of this.initialClasses)this._updateState(klass,!0);let rawClass=this.rawClass;if(Array.isArray(rawClass)||rawClass instanceof Set)for(let klass of rawClass)this._updateState(klass,!0);else if(rawClass!=null)for(let klass of Object.keys(rawClass))this._updateState(klass,!!rawClass[klass]);this._applyStateDiff()}_updateState(klass,nextEnabled){let state2=this.stateMap.get(klass);state2!==void 0?(state2.enabled!==nextEnabled&&(state2.changed=!0,state2.enabled=nextEnabled),state2.touched=!0):this.stateMap.set(klass,{enabled:nextEnabled,changed:!0,touched:!0})}_applyStateDiff(){for(let stateEntry of this.stateMap){let klass=stateEntry[0],state2=stateEntry[1];state2.changed?(this._toggleClass(klass,state2.enabled),state2.changed=!1):state2.touched||(state2.enabled&&this._toggleClass(klass,!1),this.stateMap.delete(klass)),state2.touched=!1}}_toggleClass(klass,enabled){klass=klass.trim(),klass.length>0&&klass.split(WS_REGEXP).forEach(klass2=>{enabled?this._renderer.addClass(this._ngEl.nativeElement,klass2):this._renderer.removeClass(this._ngEl.nativeElement,klass2)})}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgClass2)(\u0275\u0275directiveInject(ElementRef),\u0275\u0275directiveInject(Renderer2))};static \u0275dir=\u0275\u0275defineDirective({type:NgClass2,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"}})}return NgClass2})();var NgForOfContext=class{$implicit;ngForOf;index;count;constructor($implicit,ngForOf,index,count){this.$implicit=$implicit,this.ngForOf=ngForOf,this.index=index,this.count=count}get first(){return this.index===0}get last(){return this.index===this.count-1}get even(){return this.index%2===0}get odd(){return!this.even}},NgForOf=(()=>{class NgForOf2{_viewContainer;_template;_differs;set ngForOf(ngForOf){this._ngForOf=ngForOf,this._ngForOfDirty=!0}set ngForTrackBy(fn){this._trackByFn=fn}get ngForTrackBy(){return this._trackByFn}_ngForOf=null;_ngForOfDirty=!0;_differ=null;_trackByFn;constructor(_viewContainer,_template,_differs){this._viewContainer=_viewContainer,this._template=_template,this._differs=_differs}set ngForTemplate(value){value&&(this._template=value)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;let value=this._ngForOf;!this._differ&&value&&(this._differ=this._differs.find(value).create(this.ngForTrackBy))}if(this._differ){let changes=this._differ.diff(this._ngForOf);changes&&this._applyChanges(changes)}}_applyChanges(changes){let viewContainer=this._viewContainer;changes.forEachOperation((item,adjustedPreviousIndex,currentIndex)=>{if(item.previousIndex==null)viewContainer.createEmbeddedView(this._template,new NgForOfContext(item.item,this._ngForOf,-1,-1),currentIndex===null?void 0:currentIndex);else if(currentIndex==null)viewContainer.remove(adjustedPreviousIndex===null?void 0:adjustedPreviousIndex);else if(adjustedPreviousIndex!==null){let view=viewContainer.get(adjustedPreviousIndex);viewContainer.move(view,currentIndex),applyViewChange(view,item)}});for(let i=0,ilen=viewContainer.length;i<ilen;i++){let context2=viewContainer.get(i).context;context2.index=i,context2.count=ilen,context2.ngForOf=this._ngForOf}changes.forEachIdentityChange(record=>{let viewRef=viewContainer.get(record.currentIndex);applyViewChange(viewRef,record)})}static ngTemplateContextGuard(dir,ctx){return!0}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgForOf2)(\u0275\u0275directiveInject(ViewContainerRef),\u0275\u0275directiveInject(TemplateRef),\u0275\u0275directiveInject(IterableDiffers))};static \u0275dir=\u0275\u0275defineDirective({type:NgForOf2,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}})}return NgForOf2})();function applyViewChange(view,record){view.context.$implicit=record.item}var NgIf=(()=>{class NgIf2{_viewContainer;_context=new NgIfContext;_thenTemplateRef=null;_elseTemplateRef=null;_thenViewRef=null;_elseViewRef=null;constructor(_viewContainer,templateRef){this._viewContainer=_viewContainer,this._thenTemplateRef=templateRef}set ngIf(condition){this._context.$implicit=this._context.ngIf=condition,this._updateView()}set ngIfThen(templateRef){assertTemplate(templateRef,!1),this._thenTemplateRef=templateRef,this._thenViewRef=null,this._updateView()}set ngIfElse(templateRef){assertTemplate(templateRef,!1),this._elseTemplateRef=templateRef,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 ngIfUseIfTypeGuard;static ngTemplateGuard_ngIf;static ngTemplateContextGuard(dir,ctx){return!0}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgIf2)(\u0275\u0275directiveInject(ViewContainerRef),\u0275\u0275directiveInject(TemplateRef))};static \u0275dir=\u0275\u0275defineDirective({type:NgIf2,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}})}return NgIf2})(),NgIfContext=class{$implicit=null;ngIf=null};function assertTemplate(templateRef,property){if(templateRef&&!templateRef.createEmbeddedView)throw new RuntimeError(2020,!1)}var NgStyle=(()=>{class NgStyle2{_ngEl;_differs;_renderer;_ngStyle=null;_differ=null;constructor(_ngEl,_differs,_renderer){this._ngEl=_ngEl,this._differs=_differs,this._renderer=_renderer}set ngStyle(values){this._ngStyle=values,!this._differ&&values&&(this._differ=this._differs.find(values).create())}ngDoCheck(){if(this._differ){let changes=this._differ.diff(this._ngStyle);changes&&this._applyChanges(changes)}}_setStyle(nameAndUnit,value){let[name,unit]=nameAndUnit.split("."),flags=name.indexOf("-")===-1?void 0:RendererStyleFlags2.DashCase;value!=null?this._renderer.setStyle(this._ngEl.nativeElement,name,unit?`${value}${unit}`:value,flags):this._renderer.removeStyle(this._ngEl.nativeElement,name,flags)}_applyChanges(changes){changes.forEachRemovedItem(record=>this._setStyle(record.key,null)),changes.forEachAddedItem(record=>this._setStyle(record.key,record.currentValue)),changes.forEachChangedItem(record=>this._setStyle(record.key,record.currentValue))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgStyle2)(\u0275\u0275directiveInject(ElementRef),\u0275\u0275directiveInject(KeyValueDiffers),\u0275\u0275directiveInject(Renderer2))};static \u0275dir=\u0275\u0275defineDirective({type:NgStyle2,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}})}return NgStyle2})(),NgTemplateOutlet=(()=>{class NgTemplateOutlet2{_viewContainerRef;_viewRef=null;ngTemplateOutletContext=null;ngTemplateOutlet=null;ngTemplateOutletInjector=null;constructor(_viewContainerRef){this._viewContainerRef=_viewContainerRef}ngOnChanges(changes){if(this._shouldRecreateView(changes)){let viewContainerRef=this._viewContainerRef;if(this._viewRef&&viewContainerRef.remove(viewContainerRef.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}let viewContext=this._createContextForwardProxy();this._viewRef=viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,viewContext,{injector:this.ngTemplateOutletInjector??void 0})}}_shouldRecreateView(changes){return!!changes.ngTemplateOutlet||!!changes.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(_target,prop,newValue)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,prop,newValue):!1,get:(_target,prop,receiver)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,prop,receiver)}})}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgTemplateOutlet2)(\u0275\u0275directiveInject(ViewContainerRef))};static \u0275dir=\u0275\u0275defineDirective({type:NgTemplateOutlet2,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},features:[\u0275\u0275NgOnChangesFeature]})}return NgTemplateOutlet2})();function invalidPipeArgumentError(type2,value){return new RuntimeError(2100,!1)}var SubscribableStrategy=class{createSubscription(async2,updateLatestValue,onError){return untracked2(()=>async2.subscribe({next:updateLatestValue,error:onError}))}dispose(subscription){untracked2(()=>subscription.unsubscribe())}},PromiseStrategy=class{createSubscription(async2,updateLatestValue,onError){return async2.then(v=>updateLatestValue?.(v),e=>onError?.(e)),{unsubscribe:()=>{updateLatestValue=null,onError=null}}}dispose(subscription){subscription.unsubscribe()}},_promiseStrategy=new PromiseStrategy,_subscribableStrategy=new SubscribableStrategy,AsyncPipe=(()=>{class AsyncPipe2{_ref;_latestValue=null;markForCheckOnValueUpdate=!0;_subscription=null;_obj=null;_strategy=null;applicationErrorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);constructor(ref){this._ref=ref}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(obj){if(!this._obj){if(obj)try{this.markForCheckOnValueUpdate=!1,this._subscribe(obj)}finally{this.markForCheckOnValueUpdate=!0}return this._latestValue}return obj!==this._obj?(this._dispose(),this.transform(obj)):this._latestValue}_subscribe(obj){this._obj=obj,this._strategy=this._selectStrategy(obj),this._subscription=this._strategy.createSubscription(obj,value=>this._updateLatestValue(obj,value),e=>this.applicationErrorHandler(e))}_selectStrategy(obj){if(isPromise2(obj))return _promiseStrategy;if(isSubscribable(obj))return _subscribableStrategy;throw invalidPipeArgumentError(AsyncPipe2,obj)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(async2,value){async2===this._obj&&(this._latestValue=value,this.markForCheckOnValueUpdate&&this._ref?.markForCheck())}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||AsyncPipe2)(\u0275\u0275directiveInject(ChangeDetectorRef,16))};static \u0275pipe=\u0275\u0275definePipe({name:"async",type:AsyncPipe2,pure:!1})}return AsyncPipe2})(),LowerCasePipe=(()=>{class LowerCasePipe2{transform(value){if(value==null)return null;if(typeof value!="string")throw invalidPipeArgumentError(LowerCasePipe2,value);return value.toLowerCase()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||LowerCasePipe2)};static \u0275pipe=\u0275\u0275definePipe({name:"lowercase",type:LowerCasePipe2,pure:!0})}return LowerCasePipe2})(),unicodeWordMatch=/(?:[0-9A-Za-z\xAA\xB5\xBA\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\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\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\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\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\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\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\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\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\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\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\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\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\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\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]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\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]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])\S*/g,TitleCasePipe=(()=>{class TitleCasePipe2{transform(value){if(value==null)return null;if(typeof value!="string")throw invalidPipeArgumentError(TitleCasePipe2,value);return value.replace(unicodeWordMatch,txt=>txt[0].toUpperCase()+txt.slice(1).toLowerCase())}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||TitleCasePipe2)};static \u0275pipe=\u0275\u0275definePipe({name:"titlecase",type:TitleCasePipe2,pure:!0})}return TitleCasePipe2})();var CommonModule=(()=>{class CommonModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CommonModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:CommonModule2});static \u0275inj=\u0275\u0275defineInjector({})}return CommonModule2})();function parseCookieValue(cookieStr,name){name=encodeURIComponent(name);for(let cookie of cookieStr.split(";")){let eqIndex=cookie.indexOf("="),[cookieName,cookieValue]=eqIndex==-1?[cookie,""]:[cookie.slice(0,eqIndex),cookie.slice(eqIndex+1)];if(cookieName.trim()===name)return decodeURIComponent(cookieValue)}return null}var XhrFactory=class{};var PLATFORM_BROWSER_ID="browser",PLATFORM_SERVER_ID="server";function isPlatformBrowser(platformId){return platformId===PLATFORM_BROWSER_ID}function isPlatformServer(platformId){return platformId===PLATFORM_SERVER_ID}var ViewportScroller=(()=>{class ViewportScroller2{static \u0275prov=\u0275\u0275defineInjectable({token:ViewportScroller2,providedIn:"root",factory:()=>new BrowserViewportScroller(inject2(DOCUMENT),window)})}return ViewportScroller2})(),BrowserViewportScroller=class{document;window;offset=()=>[0,0];constructor(document2,window2){this.document=document2,this.window=window2}setOffset(offset){Array.isArray(offset)?this.offset=()=>offset:this.offset=offset}getScrollPosition(){return[this.window.scrollX,this.window.scrollY]}scrollToPosition(position,options){this.window.scrollTo(__spreadProps(__spreadValues({},options),{left:position[0],top:position[1]}))}scrollToAnchor(target,options){let elSelected=findAnchorFromDocument(this.document,target);elSelected&&(this.scrollToElement(elSelected,options),elSelected.focus())}setHistoryScrollRestoration(scrollRestoration){try{this.window.history.scrollRestoration=scrollRestoration}catch{console.warn(formatRuntimeError(2400,!1))}}scrollToElement(el,options){let rect=el.getBoundingClientRect(),left=rect.left+this.window.pageXOffset,top=rect.top+this.window.pageYOffset,offset=this.offset();this.window.scrollTo(__spreadProps(__spreadValues({},options),{left:left-offset[0],top:top-offset[1]}))}};function findAnchorFromDocument(document2,target){let documentResult=document2.getElementById(target)||document2.getElementsByName(target)[0];if(documentResult)return documentResult;if(typeof document2.createTreeWalker=="function"&&document2.body&&typeof document2.body.attachShadow=="function"){let treeWalker=document2.createTreeWalker(document2.body,NodeFilter.SHOW_ELEMENT),currentNode=treeWalker.currentNode;for(;currentNode;){let shadowRoot=currentNode.shadowRoot;if(shadowRoot){let result=shadowRoot.getElementById(target)||shadowRoot.querySelector(`[name="${target}"]`);if(result)return result}currentNode=treeWalker.nextNode()}}return null}var EVENT_MANAGER_PLUGINS=new InjectionToken(""),EventManager=(()=>{class EventManager2{_zone;_plugins;_eventNameToPlugin=new Map;constructor(plugins,_zone){this._zone=_zone,plugins.forEach(plugin=>{plugin.manager=this}),this._plugins=plugins.slice().reverse()}addEventListener(element,eventName,handler,options){return this._findPluginFor(eventName).addEventListener(element,eventName,handler,options)}getZone(){return this._zone}_findPluginFor(eventName){let plugin=this._eventNameToPlugin.get(eventName);if(plugin)return plugin;if(plugin=this._plugins.find(plugin2=>plugin2.supports(eventName)),!plugin)throw new RuntimeError(5101,!1);return this._eventNameToPlugin.set(eventName,plugin),plugin}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||EventManager2)(\u0275\u0275inject(EVENT_MANAGER_PLUGINS),\u0275\u0275inject(NgZone))};static \u0275prov=\u0275\u0275defineInjectable({token:EventManager2,factory:EventManager2.\u0275fac})}return EventManager2})(),EventManagerPlugin=class{_doc;constructor(_doc){this._doc=_doc}manager},APP_ID_ATTRIBUTE_NAME="ng-app-id";function removeElements(elements){for(let element of elements)element.remove()}function createStyleElement(style2,doc){let styleElement=doc.createElement("style");return styleElement.textContent=style2,styleElement}function addServerStyles(doc,appId,inline,external){let elements=doc.head?.querySelectorAll(`style[${APP_ID_ATTRIBUTE_NAME}="${appId}"],link[${APP_ID_ATTRIBUTE_NAME}="${appId}"]`);if(elements)for(let styleElement of elements)styleElement.removeAttribute(APP_ID_ATTRIBUTE_NAME),styleElement instanceof HTMLLinkElement?external.set(styleElement.href.slice(styleElement.href.lastIndexOf("/")+1),{usage:0,elements:[styleElement]}):styleElement.textContent&&inline.set(styleElement.textContent,{usage:0,elements:[styleElement]})}function createLinkElement(url,doc){let linkElement=doc.createElement("link");return linkElement.setAttribute("rel","stylesheet"),linkElement.setAttribute("href",url),linkElement}var SharedStylesHost=(()=>{class SharedStylesHost2{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;constructor(doc,appId,nonce,platformId={}){this.doc=doc,this.appId=appId,this.nonce=nonce,addServerStyles(doc,appId,this.inline,this.external),this.hosts.add(doc.head)}addStyles(styles,urls){for(let value of styles)this.addUsage(value,this.inline,createStyleElement);urls?.forEach(value=>this.addUsage(value,this.external,createLinkElement))}removeStyles(styles,urls){for(let value of styles)this.removeUsage(value,this.inline);urls?.forEach(value=>this.removeUsage(value,this.external))}addUsage(value,usages,creator){let record=usages.get(value);record?record.usage++:usages.set(value,{usage:1,elements:[...this.hosts].map(host=>this.addElement(host,creator(value,this.doc)))})}removeUsage(value,usages){let record=usages.get(value);record&&(record.usage--,record.usage<=0&&(removeElements(record.elements),usages.delete(value)))}ngOnDestroy(){for(let[,{elements}]of[...this.inline,...this.external])removeElements(elements);this.hosts.clear()}addHost(hostNode){this.hosts.add(hostNode);for(let[style2,{elements}]of this.inline)elements.push(this.addElement(hostNode,createStyleElement(style2,this.doc)));for(let[url,{elements}]of this.external)elements.push(this.addElement(hostNode,createLinkElement(url,this.doc)))}removeHost(hostNode){this.hosts.delete(hostNode)}addElement(host,element){return this.nonce&&element.setAttribute("nonce",this.nonce),host.appendChild(element)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SharedStylesHost2)(\u0275\u0275inject(DOCUMENT),\u0275\u0275inject(APP_ID),\u0275\u0275inject(CSP_NONCE,8),\u0275\u0275inject(PLATFORM_ID))};static \u0275prov=\u0275\u0275defineInjectable({token:SharedStylesHost2,factory:SharedStylesHost2.\u0275fac})}return SharedStylesHost2})(),NAMESPACE_URIS={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/",math:"http://www.w3.org/1998/Math/MathML"},COMPONENT_REGEX=/%COMP%/g;var COMPONENT_VARIABLE="%COMP%",HOST_ATTR=`_nghost-${COMPONENT_VARIABLE}`,CONTENT_ATTR=`_ngcontent-${COMPONENT_VARIABLE}`,REMOVE_STYLES_ON_COMPONENT_DESTROY_DEFAULT=!0,REMOVE_STYLES_ON_COMPONENT_DESTROY=new InjectionToken("",{providedIn:"root",factory:()=>REMOVE_STYLES_ON_COMPONENT_DESTROY_DEFAULT});function shimContentAttribute(componentShortId){return CONTENT_ATTR.replace(COMPONENT_REGEX,componentShortId)}function shimHostAttribute(componentShortId){return HOST_ATTR.replace(COMPONENT_REGEX,componentShortId)}function shimStylesContent(compId,styles){return styles.map(s=>s.replace(COMPONENT_REGEX,compId))}var DomRendererFactory2=(()=>{class DomRendererFactory22{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;platformId;ngZone;nonce;animationDisabled;maxAnimationTimeout;tracingService;rendererByCompId=new Map;defaultRenderer;platformIsServer;registry;constructor(eventManager,sharedStylesHost,appId,removeStylesOnCompDestroy,doc,platformId,ngZone,nonce=null,animationDisabled,maxAnimationTimeout,tracingService=null){this.eventManager=eventManager,this.sharedStylesHost=sharedStylesHost,this.appId=appId,this.removeStylesOnCompDestroy=removeStylesOnCompDestroy,this.doc=doc,this.platformId=platformId,this.ngZone=ngZone,this.nonce=nonce,this.animationDisabled=animationDisabled,this.maxAnimationTimeout=maxAnimationTimeout,this.tracingService=tracingService,this.platformIsServer=!1,this.defaultRenderer=new DefaultDomRenderer2(eventManager,doc,ngZone,this.platformIsServer,this.tracingService,this.registry=getAnimationElementRemovalRegistry(),this.maxAnimationTimeout)}createRenderer(element,type2){if(!element||!type2)return this.defaultRenderer;let renderer=this.getOrCreateRenderer(element,type2);return renderer instanceof EmulatedEncapsulationDomRenderer2?renderer.applyToHost(element):renderer instanceof NoneEncapsulationDomRenderer&&renderer.applyStyles(),renderer}getOrCreateRenderer(element,type2){let rendererByCompId=this.rendererByCompId,renderer=rendererByCompId.get(type2.id);if(!renderer){let doc=this.doc,ngZone=this.ngZone,eventManager=this.eventManager,sharedStylesHost=this.sharedStylesHost,removeStylesOnCompDestroy=this.removeStylesOnCompDestroy,platformIsServer=this.platformIsServer,tracingService=this.tracingService;switch(type2.encapsulation){case ViewEncapsulation.Emulated:renderer=new EmulatedEncapsulationDomRenderer2(eventManager,sharedStylesHost,type2,this.appId,removeStylesOnCompDestroy,doc,ngZone,platformIsServer,tracingService,this.registry,this.animationDisabled,this.maxAnimationTimeout);break;case ViewEncapsulation.ShadowDom:return new ShadowDomRenderer(eventManager,sharedStylesHost,element,type2,doc,ngZone,this.nonce,platformIsServer,tracingService,this.registry,this.maxAnimationTimeout);default:renderer=new NoneEncapsulationDomRenderer(eventManager,sharedStylesHost,type2,removeStylesOnCompDestroy,doc,ngZone,platformIsServer,tracingService,this.registry,this.animationDisabled,this.maxAnimationTimeout);break}rendererByCompId.set(type2.id,renderer)}return renderer}ngOnDestroy(){this.rendererByCompId.clear()}componentReplaced(componentId){this.rendererByCompId.delete(componentId)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DomRendererFactory22)(\u0275\u0275inject(EventManager),\u0275\u0275inject(SharedStylesHost),\u0275\u0275inject(APP_ID),\u0275\u0275inject(REMOVE_STYLES_ON_COMPONENT_DESTROY),\u0275\u0275inject(DOCUMENT),\u0275\u0275inject(PLATFORM_ID),\u0275\u0275inject(NgZone),\u0275\u0275inject(CSP_NONCE),\u0275\u0275inject(ANIMATIONS_DISABLED),\u0275\u0275inject(MAX_ANIMATION_TIMEOUT),\u0275\u0275inject(TracingService,8))};static \u0275prov=\u0275\u0275defineInjectable({token:DomRendererFactory22,factory:DomRendererFactory22.\u0275fac})}return DomRendererFactory22})(),DefaultDomRenderer2=class{eventManager;doc;ngZone;platformIsServer;tracingService;registry;maxAnimationTimeout;data=Object.create(null);throwOnSyntheticProps=!0;constructor(eventManager,doc,ngZone,platformIsServer,tracingService,registry2,maxAnimationTimeout){this.eventManager=eventManager,this.doc=doc,this.ngZone=ngZone,this.platformIsServer=platformIsServer,this.tracingService=tracingService,this.registry=registry2,this.maxAnimationTimeout=maxAnimationTimeout}destroy(){}destroyNode=null;createElement(name,namespace){return namespace?this.doc.createElementNS(NAMESPACE_URIS[namespace]||namespace,name):this.doc.createElement(name)}createComment(value){return this.doc.createComment(value)}createText(value){return this.doc.createTextNode(value)}appendChild(parent,newChild){(isTemplateNode(parent)?parent.content:parent).appendChild(newChild)}insertBefore(parent,newChild,refChild){parent&&(isTemplateNode(parent)?parent.content:parent).insertBefore(newChild,refChild)}removeChild(_parent,oldChild){let{elements}=this.registry;if(elements){elements.animate(oldChild,()=>oldChild.remove(),this.maxAnimationTimeout);return}oldChild.remove()}selectRootElement(selectorOrNode,preserveContent){let el=typeof selectorOrNode=="string"?this.doc.querySelector(selectorOrNode):selectorOrNode;if(!el)throw new RuntimeError(-5104,!1);return preserveContent||(el.textContent=""),el}parentNode(node){return node.parentNode}nextSibling(node){return node.nextSibling}setAttribute(el,name,value,namespace){if(namespace){name=namespace+":"+name;let namespaceUri=NAMESPACE_URIS[namespace];namespaceUri?el.setAttributeNS(namespaceUri,name,value):el.setAttribute(name,value)}else el.setAttribute(name,value)}removeAttribute(el,name,namespace){if(namespace){let namespaceUri=NAMESPACE_URIS[namespace];namespaceUri?el.removeAttributeNS(namespaceUri,name):el.removeAttribute(`${namespace}:${name}`)}else el.removeAttribute(name)}addClass(el,name){el.classList.add(name)}removeClass(el,name){el.classList.remove(name)}setStyle(el,style2,value,flags){flags&(RendererStyleFlags2.DashCase|RendererStyleFlags2.Important)?el.style.setProperty(style2,value,flags&RendererStyleFlags2.Important?"important":""):el.style[style2]=value}removeStyle(el,style2,flags){flags&RendererStyleFlags2.DashCase?el.style.removeProperty(style2):el.style[style2]=""}setProperty(el,name,value){el!=null&&(el[name]=value)}setValue(node,value){node.nodeValue=value}listen(target,event,callback,options){if(typeof target=="string"&&(target=getDOM().getGlobalEventTarget(this.doc,target),!target))throw new RuntimeError(5102,!1);let wrappedCallback=this.decoratePreventDefault(callback);return this.tracingService?.wrapEventListener&&(wrappedCallback=this.tracingService.wrapEventListener(target,event,wrappedCallback)),this.eventManager.addEventListener(target,event,wrappedCallback,options)}decoratePreventDefault(eventHandler){return event=>{if(event==="__ngUnwrap__")return eventHandler;eventHandler(event)===!1&&event.preventDefault()}}};function isTemplateNode(node){return node.tagName==="TEMPLATE"&&node.content!==void 0}var ShadowDomRenderer=class extends DefaultDomRenderer2{sharedStylesHost;hostEl;shadowRoot;constructor(eventManager,sharedStylesHost,hostEl,component,doc,ngZone,nonce,platformIsServer,tracingService,registry2,maxAnimationTimeout){super(eventManager,doc,ngZone,platformIsServer,tracingService,registry2,maxAnimationTimeout),this.sharedStylesHost=sharedStylesHost,this.hostEl=hostEl,this.shadowRoot=hostEl.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let styles=component.styles;styles=shimStylesContent(component.id,styles);for(let style2 of styles){let styleEl=document.createElement("style");nonce&&styleEl.setAttribute("nonce",nonce),styleEl.textContent=style2,this.shadowRoot.appendChild(styleEl)}let styleUrls=component.getExternalStyles?.();if(styleUrls)for(let styleUrl of styleUrls){let linkEl=createLinkElement(styleUrl,doc);nonce&&linkEl.setAttribute("nonce",nonce),this.shadowRoot.appendChild(linkEl)}}nodeOrShadowRoot(node){return node===this.hostEl?this.shadowRoot:node}appendChild(parent,newChild){return super.appendChild(this.nodeOrShadowRoot(parent),newChild)}insertBefore(parent,newChild,refChild){return super.insertBefore(this.nodeOrShadowRoot(parent),newChild,refChild)}removeChild(_parent,oldChild){return super.removeChild(null,oldChild)}parentNode(node){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(node)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},NoneEncapsulationDomRenderer=class extends DefaultDomRenderer2{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;_animationDisabled;constructor(eventManager,sharedStylesHost,component,removeStylesOnCompDestroy,doc,ngZone,platformIsServer,tracingService,registry2,animationDisabled,maxAnimationTimeout,compId){super(eventManager,doc,ngZone,platformIsServer,tracingService,registry2,maxAnimationTimeout),this.sharedStylesHost=sharedStylesHost,this.removeStylesOnCompDestroy=removeStylesOnCompDestroy,this._animationDisabled=animationDisabled;let styles=component.styles;this.styles=compId?shimStylesContent(compId,styles):styles,this.styleUrls=component.getExternalStyles?.(compId)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){if(this.removeStylesOnCompDestroy){if(!this._animationDisabled&&this.registry.elements){this.ngZone.runOutsideAngular(()=>{setTimeout(()=>{this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)},this.maxAnimationTimeout)});return}this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}}},EmulatedEncapsulationDomRenderer2=class extends NoneEncapsulationDomRenderer{contentAttr;hostAttr;constructor(eventManager,sharedStylesHost,component,appId,removeStylesOnCompDestroy,doc,ngZone,platformIsServer,tracingService,registry2,animationDisabled,maxAnimationTimeout){let compId=appId+"-"+component.id;super(eventManager,sharedStylesHost,component,removeStylesOnCompDestroy,doc,ngZone,platformIsServer,tracingService,registry2,animationDisabled,maxAnimationTimeout,compId),this.contentAttr=shimContentAttribute(compId),this.hostAttr=shimHostAttribute(compId)}applyToHost(element){this.applyStyles(),this.setAttribute(element,this.hostAttr,"")}createElement(parent,name){let el=super.createElement(parent,name);return super.setAttribute(el,this.contentAttr,""),el}};var BrowserDomAdapter=class _BrowserDomAdapter extends DomAdapter{supportsDOMEvents=!0;static makeCurrent(){setRootDomAdapter(new _BrowserDomAdapter)}onAndCancel(el,evt,listener,options){return el.addEventListener(evt,listener,options),()=>{el.removeEventListener(evt,listener,options)}}dispatchEvent(el,evt){el.dispatchEvent(evt)}remove(node){node.remove()}createElement(tagName,doc){return doc=doc||this.getDefaultDocument(),doc.createElement(tagName)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(node){return node.nodeType===Node.ELEMENT_NODE}isShadowRoot(node){return node instanceof DocumentFragment}getGlobalEventTarget(doc,target){return target==="window"?window:target==="document"?doc:target==="body"?doc.body:null}getBaseHref(doc){let href=getBaseElementHref();return href==null?null:relativePath(href)}resetBaseElement(){baseElement=null}getUserAgent(){return window.navigator.userAgent}getCookie(name){return parseCookieValue(document.cookie,name)}},baseElement=null;function getBaseElementHref(){return baseElement=baseElement||document.head.querySelector("base"),baseElement?baseElement.getAttribute("href"):null}function relativePath(url){return new URL(url,document.baseURI).pathname}var BrowserGetTestability=class{addToWindow(registry2){_global.getAngularTestability=(elem,findInAncestors=!0)=>{let testability=registry2.findTestabilityInTree(elem,findInAncestors);if(testability==null)throw new RuntimeError(5103,!1);return testability},_global.getAllAngularTestabilities=()=>registry2.getAllTestabilities(),_global.getAllAngularRootElements=()=>registry2.getAllRootElements();let whenAllStable=callback=>{let testabilities=_global.getAllAngularTestabilities(),count=testabilities.length,decrement=function(){count--,count==0&&callback()};testabilities.forEach(testability=>{testability.whenStable(decrement)})};_global.frameworkStabilizers||(_global.frameworkStabilizers=[]),_global.frameworkStabilizers.push(whenAllStable)}findTestabilityInTree(registry2,elem,findInAncestors){if(elem==null)return null;let t=registry2.getTestability(elem);return t??(findInAncestors?getDOM().isShadowRoot(elem)?this.findTestabilityInTree(registry2,elem.host,!0):this.findTestabilityInTree(registry2,elem.parentElement,!0):null)}},BrowserXhr=(()=>{class BrowserXhr2{build(){return new XMLHttpRequest}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||BrowserXhr2)};static \u0275prov=\u0275\u0275defineInjectable({token:BrowserXhr2,factory:BrowserXhr2.\u0275fac})}return BrowserXhr2})(),DomEventsPlugin=(()=>{class DomEventsPlugin2 extends EventManagerPlugin{constructor(doc){super(doc)}supports(eventName){return!0}addEventListener(element,eventName,handler,options){return element.addEventListener(eventName,handler,options),()=>this.removeEventListener(element,eventName,handler,options)}removeEventListener(target,eventName,callback,options){return target.removeEventListener(eventName,callback,options)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DomEventsPlugin2)(\u0275\u0275inject(DOCUMENT))};static \u0275prov=\u0275\u0275defineInjectable({token:DomEventsPlugin2,factory:DomEventsPlugin2.\u0275fac})}return DomEventsPlugin2})(),MODIFIER_KEYS=["alt","control","meta","shift"],_keyMap={"\b":"Backspace"," ":"Tab","\x7F":"Delete","\x1B":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},MODIFIER_KEY_GETTERS={alt:event=>event.altKey,control:event=>event.ctrlKey,meta:event=>event.metaKey,shift:event=>event.shiftKey},KeyEventsPlugin=(()=>{class KeyEventsPlugin2 extends EventManagerPlugin{constructor(doc){super(doc)}supports(eventName){return KeyEventsPlugin2.parseEventName(eventName)!=null}addEventListener(element,eventName,handler,options){let parsedEvent=KeyEventsPlugin2.parseEventName(eventName),outsideHandler=KeyEventsPlugin2.eventCallback(parsedEvent.fullKey,handler,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>getDOM().onAndCancel(element,parsedEvent.domEventName,outsideHandler,options))}static parseEventName(eventName){let parts=eventName.toLowerCase().split("."),domEventName=parts.shift();if(parts.length===0||!(domEventName==="keydown"||domEventName==="keyup"))return null;let key=KeyEventsPlugin2._normalizeKey(parts.pop()),fullKey="",codeIX=parts.indexOf("code");if(codeIX>-1&&(parts.splice(codeIX,1),fullKey="code."),MODIFIER_KEYS.forEach(modifierName=>{let index=parts.indexOf(modifierName);index>-1&&(parts.splice(index,1),fullKey+=modifierName+".")}),fullKey+=key,parts.length!=0||key.length===0)return null;let result={};return result.domEventName=domEventName,result.fullKey=fullKey,result}static matchEventFullKeyCode(event,fullKeyCode){let keycode=_keyMap[event.key]||event.key,key="";return fullKeyCode.indexOf("code.")>-1&&(keycode=event.code,key="code."),keycode==null||!keycode?!1:(keycode=keycode.toLowerCase(),keycode===" "?keycode="space":keycode==="."&&(keycode="dot"),MODIFIER_KEYS.forEach(modifierName=>{if(modifierName!==keycode){let modifierGetter=MODIFIER_KEY_GETTERS[modifierName];modifierGetter(event)&&(key+=modifierName+".")}}),key+=keycode,key===fullKeyCode)}static eventCallback(fullKey,handler,zone){return event=>{KeyEventsPlugin2.matchEventFullKeyCode(event,fullKey)&&zone.runGuarded(()=>handler(event))}}static _normalizeKey(keyName){return keyName==="esc"?"escape":keyName}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||KeyEventsPlugin2)(\u0275\u0275inject(DOCUMENT))};static \u0275prov=\u0275\u0275defineInjectable({token:KeyEventsPlugin2,factory:KeyEventsPlugin2.\u0275fac})}return KeyEventsPlugin2})();function initDomAdapter(){BrowserDomAdapter.makeCurrent()}function errorHandler(){return new ErrorHandler}function _document(){return setDocument(document),document}var INTERNAL_BROWSER_PLATFORM_PROVIDERS=[{provide:PLATFORM_ID,useValue:PLATFORM_BROWSER_ID},{provide:PLATFORM_INITIALIZER,useValue:initDomAdapter,multi:!0},{provide:DOCUMENT,useFactory:_document}],platformBrowser=createPlatformFactory(platformCore,"browser",INTERNAL_BROWSER_PLATFORM_PROVIDERS);var TESTABILITY_PROVIDERS=[{provide:TESTABILITY_GETTER,useClass:BrowserGetTestability},{provide:TESTABILITY,useClass:Testability,deps:[NgZone,TestabilityRegistry,TESTABILITY_GETTER]},{provide:Testability,useClass:Testability,deps:[NgZone,TestabilityRegistry,TESTABILITY_GETTER]}],BROWSER_MODULE_PROVIDERS=[{provide:INJECTOR_SCOPE,useValue:"root"},{provide:ErrorHandler,useFactory:errorHandler},{provide:EVENT_MANAGER_PLUGINS,useClass:DomEventsPlugin,multi:!0,deps:[DOCUMENT]},{provide:EVENT_MANAGER_PLUGINS,useClass:KeyEventsPlugin,multi:!0,deps:[DOCUMENT]},DomRendererFactory2,SharedStylesHost,EventManager,{provide:RendererFactory2,useExisting:DomRendererFactory2},{provide:XhrFactory,useClass:BrowserXhr},[]],BrowserModule=(()=>{class BrowserModule2{constructor(){}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||BrowserModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:BrowserModule2});static \u0275inj=\u0275\u0275defineInjector({providers:[...BROWSER_MODULE_PROVIDERS,...TESTABILITY_PROVIDERS],imports:[CommonModule,ApplicationModule]})}return BrowserModule2})();var HttpHandler=class{},HttpBackend=class{},HttpHeaders=class _HttpHeaders{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(headers){headers?typeof headers=="string"?this.lazyInit=()=>{this.headers=new Map,headers.split(`
|
|
12
12
|
`).forEach(line=>{let index=line.indexOf(":");if(index>0){let name=line.slice(0,index),value=line.slice(index+1).trim();this.addHeaderEntry(name,value)}})}:typeof Headers<"u"&&headers instanceof Headers?(this.headers=new Map,headers.forEach((value,name)=>{this.addHeaderEntry(name,value)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(headers).forEach(([name,values])=>{this.setHeaderEntries(name,values)})}:this.headers=new Map}has(name){return this.init(),this.headers.has(name.toLowerCase())}get(name){this.init();let values=this.headers.get(name.toLowerCase());return values&&values.length>0?values[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(name){return this.init(),this.headers.get(name.toLowerCase())||null}append(name,value){return this.clone({name,value,op:"a"})}set(name,value){return this.clone({name,value,op:"s"})}delete(name,value){return this.clone({name,value,op:"d"})}maybeSetNormalizedName(name,lcName){this.normalizedNames.has(lcName)||this.normalizedNames.set(lcName,name)}init(){this.lazyInit&&(this.lazyInit instanceof _HttpHeaders?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(update3=>this.applyUpdate(update3)),this.lazyUpdate=null))}copyFrom(other){other.init(),Array.from(other.headers.keys()).forEach(key=>{this.headers.set(key,other.headers.get(key)),this.normalizedNames.set(key,other.normalizedNames.get(key))})}clone(update3){let clone=new _HttpHeaders;return clone.lazyInit=this.lazyInit&&this.lazyInit instanceof _HttpHeaders?this.lazyInit:this,clone.lazyUpdate=(this.lazyUpdate||[]).concat([update3]),clone}applyUpdate(update3){let key=update3.name.toLowerCase();switch(update3.op){case"a":case"s":let value=update3.value;if(typeof value=="string"&&(value=[value]),value.length===0)return;this.maybeSetNormalizedName(update3.name,key);let base=(update3.op==="a"?this.headers.get(key):void 0)||[];base.push(...value),this.headers.set(key,base);break;case"d":let toDelete=update3.value;if(!toDelete)this.headers.delete(key),this.normalizedNames.delete(key);else{let existing=this.headers.get(key);if(!existing)return;existing=existing.filter(value2=>toDelete.indexOf(value2)===-1),existing.length===0?(this.headers.delete(key),this.normalizedNames.delete(key)):this.headers.set(key,existing)}break}}addHeaderEntry(name,value){let key=name.toLowerCase();this.maybeSetNormalizedName(name,key),this.headers.has(key)?this.headers.get(key).push(value):this.headers.set(key,[value])}setHeaderEntries(name,values){let headerValues=(Array.isArray(values)?values:[values]).map(value=>value.toString()),key=name.toLowerCase();this.headers.set(key,headerValues),this.maybeSetNormalizedName(name,key)}forEach(fn){this.init(),Array.from(this.normalizedNames.keys()).forEach(key=>fn(this.normalizedNames.get(key),this.headers.get(key)))}};var HttpUrlEncodingCodec=class{encodeKey(key){return standardEncoding(key)}encodeValue(value){return standardEncoding(value)}decodeKey(key){return decodeURIComponent(key)}decodeValue(value){return decodeURIComponent(value)}};function paramParser(rawParams,codec){let map2=new Map;return rawParams.length>0&&rawParams.replace(/^\?/,"").split("&").forEach(param=>{let eqIdx=param.indexOf("="),[key,val]=eqIdx==-1?[codec.decodeKey(param),""]:[codec.decodeKey(param.slice(0,eqIdx)),codec.decodeValue(param.slice(eqIdx+1))],list=map2.get(key)||[];list.push(val),map2.set(key,list)}),map2}var STANDARD_ENCODING_REGEX=/%(\d[a-f0-9])/gi,STANDARD_ENCODING_REPLACEMENTS={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function standardEncoding(v){return encodeURIComponent(v).replace(STANDARD_ENCODING_REGEX,(s,t)=>STANDARD_ENCODING_REPLACEMENTS[t]??s)}function valueToString(value){return`${value}`}var HttpParams=class _HttpParams{map;encoder;updates=null;cloneFrom=null;constructor(options={}){if(this.encoder=options.encoder||new HttpUrlEncodingCodec,options.fromString){if(options.fromObject)throw new RuntimeError(2805,!1);this.map=paramParser(options.fromString,this.encoder)}else options.fromObject?(this.map=new Map,Object.keys(options.fromObject).forEach(key=>{let value=options.fromObject[key],values=Array.isArray(value)?value.map(valueToString):[valueToString(value)];this.map.set(key,values)})):this.map=null}has(param){return this.init(),this.map.has(param)}get(param){this.init();let res=this.map.get(param);return res?res[0]:null}getAll(param){return this.init(),this.map.get(param)||null}keys(){return this.init(),Array.from(this.map.keys())}append(param,value){return this.clone({param,value,op:"a"})}appendAll(params){let updates=[];return Object.keys(params).forEach(param=>{let value=params[param];Array.isArray(value)?value.forEach(_value=>{updates.push({param,value:_value,op:"a"})}):updates.push({param,value,op:"a"})}),this.clone(updates)}set(param,value){return this.clone({param,value,op:"s"})}delete(param,value){return this.clone({param,value,op:"d"})}toString(){return this.init(),this.keys().map(key=>{let eKey=this.encoder.encodeKey(key);return this.map.get(key).map(value=>eKey+"="+this.encoder.encodeValue(value)).join("&")}).filter(param=>param!=="").join("&")}clone(update3){let clone=new _HttpParams({encoder:this.encoder});return clone.cloneFrom=this.cloneFrom||this,clone.updates=(this.updates||[]).concat(update3),clone}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(key=>this.map.set(key,this.cloneFrom.map.get(key))),this.updates.forEach(update3=>{switch(update3.op){case"a":case"s":let base=(update3.op==="a"?this.map.get(update3.param):void 0)||[];base.push(valueToString(update3.value)),this.map.set(update3.param,base);break;case"d":if(update3.value!==void 0){let base2=this.map.get(update3.param)||[],idx=base2.indexOf(valueToString(update3.value));idx!==-1&&base2.splice(idx,1),base2.length>0?this.map.set(update3.param,base2):this.map.delete(update3.param)}else{this.map.delete(update3.param);break}}}),this.cloneFrom=this.updates=null)}},HttpContextToken=class{defaultValue;constructor(defaultValue){this.defaultValue=defaultValue}},HttpContext=class{map=new Map;set(token,value){return this.map.set(token,value),this}get(token){return this.map.has(token)||this.map.set(token,token.defaultValue()),this.map.get(token)}delete(token){return this.map.delete(token),this}has(token){return this.map.has(token)}keys(){return this.map.keys()}};function mightHaveBody(method){switch(method){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function isArrayBuffer(value){return typeof ArrayBuffer<"u"&&value instanceof ArrayBuffer}function isBlob(value){return typeof Blob<"u"&&value instanceof Blob}function isFormData(value){return typeof FormData<"u"&&value instanceof FormData}function isUrlSearchParams(value){return typeof URLSearchParams<"u"&&value instanceof URLSearchParams}var CONTENT_TYPE_HEADER="Content-Type",ACCEPT_HEADER="Accept",X_REQUEST_URL_HEADER="X-Request-URL",TEXT_CONTENT_TYPE="text/plain",JSON_CONTENT_TYPE="application/json",ACCEPT_HEADER_VALUE=`${JSON_CONTENT_TYPE}, ${TEXT_CONTENT_TYPE}, */*`,HttpRequest=class _HttpRequest{url;body=null;headers;context;reportProgress=!1;withCredentials=!1;credentials;keepalive=!1;cache;priority;mode;redirect;referrer;integrity;responseType="json";method;params;urlWithParams;transferCache;timeout;constructor(method,url,third,fourth){this.url=url,this.method=method.toUpperCase();let options;if(mightHaveBody(this.method)||fourth?(this.body=third!==void 0?third:null,options=fourth):options=third,options){if(this.reportProgress=!!options.reportProgress,this.withCredentials=!!options.withCredentials,this.keepalive=!!options.keepalive,options.responseType&&(this.responseType=options.responseType),options.headers&&(this.headers=options.headers),options.context&&(this.context=options.context),options.params&&(this.params=options.params),options.priority&&(this.priority=options.priority),options.cache&&(this.cache=options.cache),options.credentials&&(this.credentials=options.credentials),typeof options.timeout=="number"){if(options.timeout<1||!Number.isInteger(options.timeout))throw new RuntimeError(2822,"");this.timeout=options.timeout}options.mode&&(this.mode=options.mode),options.redirect&&(this.redirect=options.redirect),options.integrity&&(this.integrity=options.integrity),options.referrer&&(this.referrer=options.referrer),this.transferCache=options.transferCache}if(this.headers??=new HttpHeaders,this.context??=new HttpContext,!this.params)this.params=new HttpParams,this.urlWithParams=url;else{let params=this.params.toString();if(params.length===0)this.urlWithParams=url;else{let qIdx=url.indexOf("?"),sep=qIdx===-1?"?":qIdx<url.length-1?"&":"";this.urlWithParams=url+sep+params}}}serializeBody(){return this.body===null?null:typeof this.body=="string"||isArrayBuffer(this.body)||isBlob(this.body)||isFormData(this.body)||isUrlSearchParams(this.body)?this.body:this.body instanceof HttpParams?this.body.toString():typeof this.body=="object"||typeof this.body=="boolean"||Array.isArray(this.body)?JSON.stringify(this.body):this.body.toString()}detectContentTypeHeader(){return this.body===null||isFormData(this.body)?null:isBlob(this.body)?this.body.type||null:isArrayBuffer(this.body)?null:typeof this.body=="string"?TEXT_CONTENT_TYPE:this.body instanceof HttpParams?"application/x-www-form-urlencoded;charset=UTF-8":typeof this.body=="object"||typeof this.body=="number"||typeof this.body=="boolean"?JSON_CONTENT_TYPE:null}clone(update3={}){let method=update3.method||this.method,url=update3.url||this.url,responseType=update3.responseType||this.responseType,keepalive=update3.keepalive??this.keepalive,priority=update3.priority||this.priority,cache=update3.cache||this.cache,mode=update3.mode||this.mode,redirect=update3.redirect||this.redirect,credentials=update3.credentials||this.credentials,referrer=update3.referrer||this.referrer,integrity=update3.integrity||this.integrity,transferCache=update3.transferCache??this.transferCache,timeout2=update3.timeout??this.timeout,body=update3.body!==void 0?update3.body:this.body,withCredentials=update3.withCredentials??this.withCredentials,reportProgress=update3.reportProgress??this.reportProgress,headers=update3.headers||this.headers,params=update3.params||this.params,context2=update3.context??this.context;return update3.setHeaders!==void 0&&(headers=Object.keys(update3.setHeaders).reduce((headers2,name)=>headers2.set(name,update3.setHeaders[name]),headers)),update3.setParams&&(params=Object.keys(update3.setParams).reduce((params2,param)=>params2.set(param,update3.setParams[param]),params)),new _HttpRequest(method,url,body,{params,headers,context:context2,reportProgress,responseType,withCredentials,transferCache,keepalive,cache,priority,timeout:timeout2,mode,redirect,credentials,referrer,integrity})}},HttpEventType=(function(HttpEventType2){return HttpEventType2[HttpEventType2.Sent=0]="Sent",HttpEventType2[HttpEventType2.UploadProgress=1]="UploadProgress",HttpEventType2[HttpEventType2.ResponseHeader=2]="ResponseHeader",HttpEventType2[HttpEventType2.DownloadProgress=3]="DownloadProgress",HttpEventType2[HttpEventType2.Response=4]="Response",HttpEventType2[HttpEventType2.User=5]="User",HttpEventType2})(HttpEventType||{}),HttpResponseBase=class{headers;status;statusText;url;ok;type;redirected;constructor(init,defaultStatus=200,defaultStatusText="OK"){this.headers=init.headers||new HttpHeaders,this.status=init.status!==void 0?init.status:defaultStatus,this.statusText=init.statusText||defaultStatusText,this.url=init.url||null,this.redirected=init.redirected,this.ok=this.status>=200&&this.status<300}},HttpHeaderResponse=class _HttpHeaderResponse extends HttpResponseBase{constructor(init={}){super(init)}type=HttpEventType.ResponseHeader;clone(update3={}){return new _HttpHeaderResponse({headers:update3.headers||this.headers,status:update3.status!==void 0?update3.status:this.status,statusText:update3.statusText||this.statusText,url:update3.url||this.url||void 0})}},HttpResponse=class _HttpResponse extends HttpResponseBase{body;constructor(init={}){super(init),this.body=init.body!==void 0?init.body:null}type=HttpEventType.Response;clone(update3={}){return new _HttpResponse({body:update3.body!==void 0?update3.body:this.body,headers:update3.headers||this.headers,status:update3.status!==void 0?update3.status:this.status,statusText:update3.statusText||this.statusText,url:update3.url||this.url||void 0,redirected:update3.redirected??this.redirected})}},HttpErrorResponse=class extends HttpResponseBase{name="HttpErrorResponse";message;error;ok=!1;constructor(init){super(init,0,"Unknown Error"),this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${init.url||"(unknown url)"}`:this.message=`Http failure response for ${init.url||"(unknown url)"}: ${init.status} ${init.statusText}`,this.error=init.error||null}},HTTP_STATUS_CODE_OK=200,HTTP_STATUS_CODE_NO_CONTENT=204;function addBody(options,body){return{body,headers:options.headers,context:options.context,observe:options.observe,params:options.params,reportProgress:options.reportProgress,responseType:options.responseType,withCredentials:options.withCredentials,credentials:options.credentials,transferCache:options.transferCache,timeout:options.timeout,keepalive:options.keepalive,priority:options.priority,cache:options.cache,mode:options.mode,redirect:options.redirect,integrity:options.integrity,referrer:options.referrer}}var HttpClient=(()=>{class HttpClient2{handler;constructor(handler){this.handler=handler}request(first2,url,options={}){let req;if(first2 instanceof HttpRequest)req=first2;else{let headers;options.headers instanceof HttpHeaders?headers=options.headers:headers=new HttpHeaders(options.headers);let params;options.params&&(options.params instanceof HttpParams?params=options.params:params=new HttpParams({fromObject:options.params})),req=new HttpRequest(first2,url,options.body!==void 0?options.body:null,{headers,context:options.context,params,reportProgress:options.reportProgress,responseType:options.responseType||"json",withCredentials:options.withCredentials,transferCache:options.transferCache,keepalive:options.keepalive,priority:options.priority,cache:options.cache,mode:options.mode,redirect:options.redirect,credentials:options.credentials,referrer:options.referrer,integrity:options.integrity,timeout:options.timeout})}let events$=of(req).pipe(concatMap(req2=>this.handler.handle(req2)));if(first2 instanceof HttpRequest||options.observe==="events")return events$;let res$=events$.pipe(filter(event=>event instanceof HttpResponse));switch(options.observe||"body"){case"body":switch(req.responseType){case"arraybuffer":return res$.pipe(map(res=>{if(res.body!==null&&!(res.body instanceof ArrayBuffer))throw new RuntimeError(2806,!1);return res.body}));case"blob":return res$.pipe(map(res=>{if(res.body!==null&&!(res.body instanceof Blob))throw new RuntimeError(2807,!1);return res.body}));case"text":return res$.pipe(map(res=>{if(res.body!==null&&typeof res.body!="string")throw new RuntimeError(2808,!1);return res.body}));case"json":default:return res$.pipe(map(res=>res.body))}case"response":return res$;default:throw new RuntimeError(2809,!1)}}delete(url,options={}){return this.request("DELETE",url,options)}get(url,options={}){return this.request("GET",url,options)}head(url,options={}){return this.request("HEAD",url,options)}jsonp(url,callbackParam){return this.request("JSONP",url,{params:new HttpParams().append(callbackParam,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(url,options={}){return this.request("OPTIONS",url,options)}patch(url,body,options={}){return this.request("PATCH",url,addBody(options,body))}post(url,body,options={}){return this.request("POST",url,addBody(options,body))}put(url,body,options={}){return this.request("PUT",url,addBody(options,body))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||HttpClient2)(\u0275\u0275inject(HttpHandler))};static \u0275prov=\u0275\u0275defineInjectable({token:HttpClient2,factory:HttpClient2.\u0275fac})}return HttpClient2})();var FETCH_BACKEND=new InjectionToken("");function interceptorChainEndFn(req,finalHandlerFn){return finalHandlerFn(req)}function adaptLegacyInterceptorToChain(chainTailFn,interceptor){return(initialRequest,finalHandlerFn)=>interceptor.intercept(initialRequest,{handle:downstreamRequest=>chainTailFn(downstreamRequest,finalHandlerFn)})}function chainedInterceptorFn(chainTailFn,interceptorFn,injector){return(initialRequest,finalHandlerFn)=>runInInjectionContext(injector,()=>interceptorFn(initialRequest,downstreamRequest=>chainTailFn(downstreamRequest,finalHandlerFn)))}var HTTP_INTERCEPTORS=new InjectionToken(""),HTTP_INTERCEPTOR_FNS=new InjectionToken(""),HTTP_ROOT_INTERCEPTOR_FNS=new InjectionToken(""),REQUESTS_CONTRIBUTE_TO_STABILITY=new InjectionToken("",{providedIn:"root",factory:()=>!0});function legacyInterceptorFnFactory(){let chain=null;return(req,handler)=>{chain===null&&(chain=(inject2(HTTP_INTERCEPTORS,{optional:!0})??[]).reduceRight(adaptLegacyInterceptorToChain,interceptorChainEndFn));let pendingTasks=inject2(PendingTasks);if(inject2(REQUESTS_CONTRIBUTE_TO_STABILITY)){let removeTask=pendingTasks.add();return chain(req,handler).pipe(finalize(removeTask))}else return chain(req,handler)}}var HttpInterceptorHandler=(()=>{class HttpInterceptorHandler2 extends HttpHandler{backend;injector;chain=null;pendingTasks=inject2(PendingTasks);contributeToStability=inject2(REQUESTS_CONTRIBUTE_TO_STABILITY);constructor(backend,injector){super(),this.backend=backend,this.injector=injector}handle(initialRequest){if(this.chain===null){let dedupedInterceptorFns=Array.from(new Set([...this.injector.get(HTTP_INTERCEPTOR_FNS),...this.injector.get(HTTP_ROOT_INTERCEPTOR_FNS,[])]));this.chain=dedupedInterceptorFns.reduceRight((nextSequencedFn,interceptorFn)=>chainedInterceptorFn(nextSequencedFn,interceptorFn,this.injector),interceptorChainEndFn)}if(this.contributeToStability){let removeTask=this.pendingTasks.add();return this.chain(initialRequest,downstreamRequest=>this.backend.handle(downstreamRequest)).pipe(finalize(removeTask))}else return this.chain(initialRequest,downstreamRequest=>this.backend.handle(downstreamRequest))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||HttpInterceptorHandler2)(\u0275\u0275inject(HttpBackend),\u0275\u0275inject(EnvironmentInjector))};static \u0275prov=\u0275\u0275defineInjectable({token:HttpInterceptorHandler2,factory:HttpInterceptorHandler2.\u0275fac})}return HttpInterceptorHandler2})();var XSSI_PREFIX=/^\)\]\}',?\n/,X_REQUEST_URL_REGEXP=RegExp(`^${X_REQUEST_URL_HEADER}:`,"m");function getResponseUrl(xhr){return"responseURL"in xhr&&xhr.responseURL?xhr.responseURL:X_REQUEST_URL_REGEXP.test(xhr.getAllResponseHeaders())?xhr.getResponseHeader(X_REQUEST_URL_HEADER):null}var HttpXhrBackend=(()=>{class HttpXhrBackend2{xhrFactory;constructor(xhrFactory){this.xhrFactory=xhrFactory}handle(req){if(req.method==="JSONP")throw new RuntimeError(-2800,!1);let xhrFactory=this.xhrFactory;return of(null).pipe(switchMap(()=>new Observable(observer=>{let xhr=xhrFactory.build();if(xhr.open(req.method,req.urlWithParams),req.withCredentials&&(xhr.withCredentials=!0),req.headers.forEach((name,values)=>xhr.setRequestHeader(name,values.join(","))),req.headers.has(ACCEPT_HEADER)||xhr.setRequestHeader(ACCEPT_HEADER,ACCEPT_HEADER_VALUE),!req.headers.has(CONTENT_TYPE_HEADER)){let detectedType=req.detectContentTypeHeader();detectedType!==null&&xhr.setRequestHeader(CONTENT_TYPE_HEADER,detectedType)}if(req.timeout&&(xhr.timeout=req.timeout),req.responseType){let responseType=req.responseType.toLowerCase();xhr.responseType=responseType!=="json"?responseType:"text"}let reqBody=req.serializeBody(),headerResponse=null,partialFromXhr=()=>{if(headerResponse!==null)return headerResponse;let statusText=xhr.statusText||"OK",headers=new HttpHeaders(xhr.getAllResponseHeaders()),url=getResponseUrl(xhr)||req.url;return headerResponse=new HttpHeaderResponse({headers,status:xhr.status,statusText,url}),headerResponse},onLoad=()=>{let{headers,status,statusText,url}=partialFromXhr(),body=null;status!==HTTP_STATUS_CODE_NO_CONTENT&&(body=typeof xhr.response>"u"?xhr.responseText:xhr.response),status===0&&(status=body?HTTP_STATUS_CODE_OK:0);let ok=status>=200&&status<300;if(req.responseType==="json"&&typeof body=="string"){let originalBody=body;body=body.replace(XSSI_PREFIX,"");try{body=body!==""?JSON.parse(body):null}catch(error){body=originalBody,ok&&(ok=!1,body={error,text:body})}}ok?(observer.next(new HttpResponse({body,headers,status,statusText,url:url||void 0})),observer.complete()):observer.error(new HttpErrorResponse({error:body,headers,status,statusText,url:url||void 0}))},onError=error=>{let{url}=partialFromXhr(),res=new HttpErrorResponse({error,status:xhr.status||0,statusText:xhr.statusText||"Unknown Error",url:url||void 0});observer.error(res)},onTimeout=onError;req.timeout&&(onTimeout=_=>{let{url}=partialFromXhr(),res=new HttpErrorResponse({error:new DOMException("Request timed out","TimeoutError"),status:xhr.status||0,statusText:xhr.statusText||"Request timeout",url:url||void 0});observer.error(res)});let sentHeaders=!1,onDownProgress=event=>{sentHeaders||(observer.next(partialFromXhr()),sentHeaders=!0);let progressEvent={type:HttpEventType.DownloadProgress,loaded:event.loaded};event.lengthComputable&&(progressEvent.total=event.total),req.responseType==="text"&&xhr.responseText&&(progressEvent.partialText=xhr.responseText),observer.next(progressEvent)},onUpProgress=event=>{let progress={type:HttpEventType.UploadProgress,loaded:event.loaded};event.lengthComputable&&(progress.total=event.total),observer.next(progress)};return xhr.addEventListener("load",onLoad),xhr.addEventListener("error",onError),xhr.addEventListener("timeout",onTimeout),xhr.addEventListener("abort",onError),req.reportProgress&&(xhr.addEventListener("progress",onDownProgress),reqBody!==null&&xhr.upload&&xhr.upload.addEventListener("progress",onUpProgress)),xhr.send(reqBody),observer.next({type:HttpEventType.Sent}),()=>{xhr.removeEventListener("error",onError),xhr.removeEventListener("abort",onError),xhr.removeEventListener("load",onLoad),xhr.removeEventListener("timeout",onTimeout),req.reportProgress&&(xhr.removeEventListener("progress",onDownProgress),reqBody!==null&&xhr.upload&&xhr.upload.removeEventListener("progress",onUpProgress)),xhr.readyState!==xhr.DONE&&xhr.abort()}})))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||HttpXhrBackend2)(\u0275\u0275inject(XhrFactory))};static \u0275prov=\u0275\u0275defineInjectable({token:HttpXhrBackend2,factory:HttpXhrBackend2.\u0275fac})}return HttpXhrBackend2})(),XSRF_ENABLED=new InjectionToken(""),XSRF_DEFAULT_COOKIE_NAME="XSRF-TOKEN",XSRF_COOKIE_NAME=new InjectionToken("",{providedIn:"root",factory:()=>XSRF_DEFAULT_COOKIE_NAME}),XSRF_DEFAULT_HEADER_NAME="X-XSRF-TOKEN",XSRF_HEADER_NAME=new InjectionToken("",{providedIn:"root",factory:()=>XSRF_DEFAULT_HEADER_NAME}),HttpXsrfTokenExtractor=class{},HttpXsrfCookieExtractor=(()=>{class HttpXsrfCookieExtractor2{doc;cookieName;lastCookieString="";lastToken=null;parseCount=0;constructor(doc,cookieName){this.doc=doc,this.cookieName=cookieName}getToken(){let cookieString=this.doc.cookie||"";return cookieString!==this.lastCookieString&&(this.parseCount++,this.lastToken=parseCookieValue(cookieString,this.cookieName),this.lastCookieString=cookieString),this.lastToken}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||HttpXsrfCookieExtractor2)(\u0275\u0275inject(DOCUMENT),\u0275\u0275inject(XSRF_COOKIE_NAME))};static \u0275prov=\u0275\u0275defineInjectable({token:HttpXsrfCookieExtractor2,factory:HttpXsrfCookieExtractor2.\u0275fac})}return HttpXsrfCookieExtractor2})();function xsrfInterceptorFn(req,next){let lcUrl=req.url.toLowerCase();if(!inject2(XSRF_ENABLED)||req.method==="GET"||req.method==="HEAD"||lcUrl.startsWith("http://")||lcUrl.startsWith("https://"))return next(req);let token=inject2(HttpXsrfTokenExtractor).getToken(),headerName=inject2(XSRF_HEADER_NAME);return token!=null&&!req.headers.has(headerName)&&(req=req.clone({headers:req.headers.set(headerName,token)})),next(req)}var HttpFeatureKind=(function(HttpFeatureKind2){return HttpFeatureKind2[HttpFeatureKind2.Interceptors=0]="Interceptors",HttpFeatureKind2[HttpFeatureKind2.LegacyInterceptors=1]="LegacyInterceptors",HttpFeatureKind2[HttpFeatureKind2.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",HttpFeatureKind2[HttpFeatureKind2.NoXsrfProtection=3]="NoXsrfProtection",HttpFeatureKind2[HttpFeatureKind2.JsonpSupport=4]="JsonpSupport",HttpFeatureKind2[HttpFeatureKind2.RequestsMadeViaParent=5]="RequestsMadeViaParent",HttpFeatureKind2[HttpFeatureKind2.Fetch=6]="Fetch",HttpFeatureKind2})(HttpFeatureKind||{});function makeHttpFeature(kind,providers){return{\u0275kind:kind,\u0275providers:providers}}function provideHttpClient(...features){let providers=[HttpClient,HttpXhrBackend,HttpInterceptorHandler,{provide:HttpHandler,useExisting:HttpInterceptorHandler},{provide:HttpBackend,useFactory:()=>inject2(FETCH_BACKEND,{optional:!0})??inject2(HttpXhrBackend)},{provide:HTTP_INTERCEPTOR_FNS,useValue:xsrfInterceptorFn,multi:!0},{provide:XSRF_ENABLED,useValue:!0},{provide:HttpXsrfTokenExtractor,useClass:HttpXsrfCookieExtractor}];for(let feature3 of features)providers.push(...feature3.\u0275providers);return makeEnvironmentProviders(providers)}var LEGACY_INTERCEPTOR_FN=new InjectionToken("");function withInterceptorsFromDi(){return makeHttpFeature(HttpFeatureKind.LegacyInterceptors,[{provide:LEGACY_INTERCEPTOR_FN,useFactory:legacyInterceptorFnFactory},{provide:HTTP_INTERCEPTOR_FNS,useExisting:LEGACY_INTERCEPTOR_FN,multi:!0}])}var Meta=(()=>{class Meta2{_doc;_dom;constructor(_doc){this._doc=_doc,this._dom=getDOM()}addTag(tag,forceCreation=!1){return tag?this._getOrCreateElement(tag,forceCreation):null}addTags(tags,forceCreation=!1){return tags?tags.reduce((result,tag)=>(tag&&result.push(this._getOrCreateElement(tag,forceCreation)),result),[]):[]}getTag(attrSelector){return attrSelector&&this._doc.querySelector(`meta[${attrSelector}]`)||null}getTags(attrSelector){if(!attrSelector)return[];let list=this._doc.querySelectorAll(`meta[${attrSelector}]`);return list?[].slice.call(list):[]}updateTag(tag,selector){if(!tag)return null;selector=selector||this._parseSelector(tag);let meta=this.getTag(selector);return meta?this._setMetaElementAttributes(tag,meta):this._getOrCreateElement(tag,!0)}removeTag(attrSelector){this.removeTagElement(this.getTag(attrSelector))}removeTagElement(meta){meta&&this._dom.remove(meta)}_getOrCreateElement(meta,forceCreation=!1){if(!forceCreation){let selector=this._parseSelector(meta),elem=this.getTags(selector).filter(elem2=>this._containsAttributes(meta,elem2))[0];if(elem!==void 0)return elem}let element=this._dom.createElement("meta");return this._setMetaElementAttributes(meta,element),this._doc.getElementsByTagName("head")[0].appendChild(element),element}_setMetaElementAttributes(tag,el){return Object.keys(tag).forEach(prop=>el.setAttribute(this._getMetaKeyMap(prop),tag[prop])),el}_parseSelector(tag){let attr=tag.name?"name":"property";return`${attr}="${tag[attr]}"`}_containsAttributes(tag,elem){return Object.keys(tag).every(key=>elem.getAttribute(this._getMetaKeyMap(key))===tag[key])}_getMetaKeyMap(prop){return META_KEYS_MAP[prop]||prop}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Meta2)(\u0275\u0275inject(DOCUMENT))};static \u0275prov=\u0275\u0275defineInjectable({token:Meta2,factory:Meta2.\u0275fac,providedIn:"root"})}return Meta2})(),META_KEYS_MAP={httpEquiv:"http-equiv"},Title=(()=>{class Title2{_doc;constructor(_doc){this._doc=_doc}getTitle(){return this._doc.title}setTitle(newTitle){this._doc.title=newTitle||""}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Title2)(\u0275\u0275inject(DOCUMENT))};static \u0275prov=\u0275\u0275defineInjectable({token:Title2,factory:Title2.\u0275fac,providedIn:"root"})}return Title2})();var DomSanitizer=(()=>{class DomSanitizer2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DomSanitizer2)};static \u0275prov=\u0275\u0275defineInjectable({token:DomSanitizer2,factory:function(__ngFactoryType__){let __ngConditionalFactory__=null;return __ngFactoryType__?__ngConditionalFactory__=new(__ngFactoryType__||DomSanitizer2):__ngConditionalFactory__=\u0275\u0275inject(DomSanitizerImpl),__ngConditionalFactory__},providedIn:"root"})}return DomSanitizer2})(),DomSanitizerImpl=(()=>{class DomSanitizerImpl2 extends DomSanitizer{_doc;constructor(_doc){super(),this._doc=_doc}sanitize(ctx,value){if(value==null)return null;switch(ctx){case SecurityContext.NONE:return value;case SecurityContext.HTML:return allowSanitizationBypassAndThrow(value,"HTML")?unwrapSafeValue(value):_sanitizeHtml(this._doc,String(value)).toString();case SecurityContext.STYLE:return allowSanitizationBypassAndThrow(value,"Style")?unwrapSafeValue(value):value;case SecurityContext.SCRIPT:if(allowSanitizationBypassAndThrow(value,"Script"))return unwrapSafeValue(value);throw new RuntimeError(5200,!1);case SecurityContext.URL:return allowSanitizationBypassAndThrow(value,"URL")?unwrapSafeValue(value):_sanitizeUrl(String(value));case SecurityContext.RESOURCE_URL:if(allowSanitizationBypassAndThrow(value,"ResourceURL"))return unwrapSafeValue(value);throw new RuntimeError(5201,!1);default:throw new RuntimeError(5202,!1)}}bypassSecurityTrustHtml(value){return bypassSanitizationTrustHtml(value)}bypassSecurityTrustStyle(value){return bypassSanitizationTrustStyle(value)}bypassSecurityTrustScript(value){return bypassSanitizationTrustScript(value)}bypassSecurityTrustUrl(value){return bypassSanitizationTrustUrl(value)}bypassSecurityTrustResourceUrl(value){return bypassSanitizationTrustResourceUrl(value)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DomSanitizerImpl2)(\u0275\u0275inject(DOCUMENT))};static \u0275prov=\u0275\u0275defineInjectable({token:DomSanitizerImpl2,factory:DomSanitizerImpl2.\u0275fac,providedIn:"root"})}return DomSanitizerImpl2})();var PRIMARY_OUTLET="primary",RouteTitleKey=Symbol("RouteTitle"),ParamsAsMap=class{params;constructor(params){this.params=params||{}}has(name){return Object.prototype.hasOwnProperty.call(this.params,name)}get(name){if(this.has(name)){let v=this.params[name];return Array.isArray(v)?v[0]:v}return null}getAll(name){if(this.has(name)){let v=this.params[name];return Array.isArray(v)?v:[v]}return[]}get keys(){return Object.keys(this.params)}};function convertToParamMap(params){return new ParamsAsMap(params)}function defaultUrlMatcher(segments,segmentGroup,route){let parts=route.path.split("/");if(parts.length>segments.length||route.pathMatch==="full"&&(segmentGroup.hasChildren()||parts.length<segments.length))return null;let posParams={};for(let index=0;index<parts.length;index++){let part=parts[index],segment=segments[index];if(part[0]===":")posParams[part.substring(1)]=segment;else if(part!==segment.path)return null}return{consumed:segments.slice(0,parts.length),posParams}}function shallowEqualArrays(a,b){if(a.length!==b.length)return!1;for(let i=0;i<a.length;++i)if(!shallowEqual(a[i],b[i]))return!1;return!0}function shallowEqual(a,b){let k1=a?getDataKeys(a):void 0,k2=b?getDataKeys(b):void 0;if(!k1||!k2||k1.length!=k2.length)return!1;let key;for(let i=0;i<k1.length;i++)if(key=k1[i],!equalArraysOrString(a[key],b[key]))return!1;return!0}function getDataKeys(obj){return[...Object.keys(obj),...Object.getOwnPropertySymbols(obj)]}function equalArraysOrString(a,b){if(Array.isArray(a)&&Array.isArray(b)){if(a.length!==b.length)return!1;let aSorted=[...a].sort(),bSorted=[...b].sort();return aSorted.every((val,index)=>bSorted[index]===val)}else return a===b}function last3(a){return a.length>0?a[a.length-1]:null}function wrapIntoObservable(value){return isObservable(value)?value:isPromise2(value)?from(Promise.resolve(value)):of(value)}var pathCompareMap={exact:equalSegmentGroups,subset:containsSegmentGroup},paramCompareMap={exact:equalParams,subset:containsParams,ignored:()=>!0};function containsTree(container,containee,options){return pathCompareMap[options.paths](container.root,containee.root,options.matrixParams)&¶mCompareMap[options.queryParams](container.queryParams,containee.queryParams)&&!(options.fragment==="exact"&&container.fragment!==containee.fragment)}function equalParams(container,containee){return shallowEqual(container,containee)}function equalSegmentGroups(container,containee,matrixParams){if(!equalPath(container.segments,containee.segments)||!matrixParamsMatch(container.segments,containee.segments,matrixParams)||container.numberOfChildren!==containee.numberOfChildren)return!1;for(let c in containee.children)if(!container.children[c]||!equalSegmentGroups(container.children[c],containee.children[c],matrixParams))return!1;return!0}function containsParams(container,containee){return Object.keys(containee).length<=Object.keys(container).length&&Object.keys(containee).every(key=>equalArraysOrString(container[key],containee[key]))}function containsSegmentGroup(container,containee,matrixParams){return containsSegmentGroupHelper(container,containee,containee.segments,matrixParams)}function containsSegmentGroupHelper(container,containee,containeePaths,matrixParams){if(container.segments.length>containeePaths.length){let current=container.segments.slice(0,containeePaths.length);return!(!equalPath(current,containeePaths)||containee.hasChildren()||!matrixParamsMatch(current,containeePaths,matrixParams))}else if(container.segments.length===containeePaths.length){if(!equalPath(container.segments,containeePaths)||!matrixParamsMatch(container.segments,containeePaths,matrixParams))return!1;for(let c in containee.children)if(!container.children[c]||!containsSegmentGroup(container.children[c],containee.children[c],matrixParams))return!1;return!0}else{let current=containeePaths.slice(0,container.segments.length),next=containeePaths.slice(container.segments.length);return!equalPath(container.segments,current)||!matrixParamsMatch(container.segments,current,matrixParams)||!container.children[PRIMARY_OUTLET]?!1:containsSegmentGroupHelper(container.children[PRIMARY_OUTLET],containee,next,matrixParams)}}function matrixParamsMatch(containerPaths,containeePaths,options){return containeePaths.every((containeeSegment,i)=>paramCompareMap[options](containerPaths[i].parameters,containeeSegment.parameters))}var UrlTree=class{root;queryParams;fragment;_queryParamMap;constructor(root=new UrlSegmentGroup([],{}),queryParams={},fragment=null){this.root=root,this.queryParams=queryParams,this.fragment=fragment}get queryParamMap(){return this._queryParamMap??=convertToParamMap(this.queryParams),this._queryParamMap}toString(){return DEFAULT_SERIALIZER.serialize(this)}},UrlSegmentGroup=class{segments;children;parent=null;constructor(segments,children){this.segments=segments,this.children=children,Object.values(children).forEach(v=>v.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return serializePaths(this)}},UrlSegment=class{path;parameters;_parameterMap;constructor(path,parameters){this.path=path,this.parameters=parameters}get parameterMap(){return this._parameterMap??=convertToParamMap(this.parameters),this._parameterMap}toString(){return serializePath(this)}};function equalSegments(as,bs){return equalPath(as,bs)&&as.every((a,i)=>shallowEqual(a.parameters,bs[i].parameters))}function equalPath(as,bs){return as.length!==bs.length?!1:as.every((a,i)=>a.path===bs[i].path)}function mapChildrenIntoArray(segment,fn){let res=[];return Object.entries(segment.children).forEach(([childOutlet,child])=>{childOutlet===PRIMARY_OUTLET&&(res=res.concat(fn(child,childOutlet)))}),Object.entries(segment.children).forEach(([childOutlet,child])=>{childOutlet!==PRIMARY_OUTLET&&(res=res.concat(fn(child,childOutlet)))}),res}var UrlSerializer=(()=>{class UrlSerializer2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||UrlSerializer2)};static \u0275prov=\u0275\u0275defineInjectable({token:UrlSerializer2,factory:()=>new DefaultUrlSerializer,providedIn:"root"})}return UrlSerializer2})(),DefaultUrlSerializer=class{parse(url){let p=new UrlParser(url);return new UrlTree(p.parseRootSegment(),p.parseQueryParams(),p.parseFragment())}serialize(tree2){let segment=`/${serializeSegment(tree2.root,!0)}`,query2=serializeQueryParams(tree2.queryParams),fragment=typeof tree2.fragment=="string"?`#${encodeUriFragment(tree2.fragment)}`:"";return`${segment}${query2}${fragment}`}},DEFAULT_SERIALIZER=new DefaultUrlSerializer;function serializePaths(segment){return segment.segments.map(p=>serializePath(p)).join("/")}function serializeSegment(segment,root){if(!segment.hasChildren())return serializePaths(segment);if(root){let primary=segment.children[PRIMARY_OUTLET]?serializeSegment(segment.children[PRIMARY_OUTLET],!1):"",children=[];return Object.entries(segment.children).forEach(([k,v])=>{k!==PRIMARY_OUTLET&&children.push(`${k}:${serializeSegment(v,!1)}`)}),children.length>0?`${primary}(${children.join("//")})`:primary}else{let children=mapChildrenIntoArray(segment,(v,k)=>k===PRIMARY_OUTLET?[serializeSegment(segment.children[PRIMARY_OUTLET],!1)]:[`${k}:${serializeSegment(v,!1)}`]);return Object.keys(segment.children).length===1&&segment.children[PRIMARY_OUTLET]!=null?`${serializePaths(segment)}/${children[0]}`:`${serializePaths(segment)}/(${children.join("//")})`}}function encodeUriString(s){return encodeURIComponent(s).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function encodeUriQuery(s){return encodeUriString(s).replace(/%3B/gi,";")}function encodeUriFragment(s){return encodeURI(s)}function encodeUriSegment(s){return encodeUriString(s).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function decode(s){return decodeURIComponent(s)}function decodeQuery(s){return decode(s.replace(/\+/g,"%20"))}function serializePath(path){return`${encodeUriSegment(path.path)}${serializeMatrixParams(path.parameters)}`}function serializeMatrixParams(params){return Object.entries(params).map(([key,value])=>`;${encodeUriSegment(key)}=${encodeUriSegment(value)}`).join("")}function serializeQueryParams(params){let strParams=Object.entries(params).map(([name,value])=>Array.isArray(value)?value.map(v=>`${encodeUriQuery(name)}=${encodeUriQuery(v)}`).join("&"):`${encodeUriQuery(name)}=${encodeUriQuery(value)}`).filter(s=>s);return strParams.length?`?${strParams.join("&")}`:""}var SEGMENT_RE=/^[^\/()?;#]+/;function matchSegments(str){let match2=str.match(SEGMENT_RE);return match2?match2[0]:""}var MATRIX_PARAM_SEGMENT_RE=/^[^\/()?;=#]+/;function matchMatrixKeySegments(str){let match2=str.match(MATRIX_PARAM_SEGMENT_RE);return match2?match2[0]:""}var QUERY_PARAM_RE=/^[^=?&#]+/;function matchQueryParams(str){let match2=str.match(QUERY_PARAM_RE);return match2?match2[0]:""}var QUERY_PARAM_VALUE_RE=/^[^&#]+/;function matchUrlQueryParamValue(str){let match2=str.match(QUERY_PARAM_VALUE_RE);return match2?match2[0]:""}var UrlParser=class{url;remaining;constructor(url){this.url=url,this.remaining=url}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new UrlSegmentGroup([],{}):new UrlSegmentGroup([],this.parseChildren())}parseQueryParams(){let params={};if(this.consumeOptional("?"))do this.parseQueryParam(params);while(this.consumeOptional("&"));return params}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(this.remaining==="")return{};this.consumeOptional("/");let segments=[];for(this.peekStartsWith("(")||segments.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),segments.push(this.parseSegment());let children={};this.peekStartsWith("/(")&&(this.capture("/"),children=this.parseParens(!0));let res={};return this.peekStartsWith("(")&&(res=this.parseParens(!1)),(segments.length>0||Object.keys(children).length>0)&&(res[PRIMARY_OUTLET]=new UrlSegmentGroup(segments,children)),res}parseSegment(){let path=matchSegments(this.remaining);if(path===""&&this.peekStartsWith(";"))throw new RuntimeError(4009,!1);return this.capture(path),new UrlSegment(decode(path),this.parseMatrixParams())}parseMatrixParams(){let params={};for(;this.consumeOptional(";");)this.parseParam(params);return params}parseParam(params){let key=matchMatrixKeySegments(this.remaining);if(!key)return;this.capture(key);let value="";if(this.consumeOptional("=")){let valueMatch=matchSegments(this.remaining);valueMatch&&(value=valueMatch,this.capture(value))}params[decode(key)]=decode(value)}parseQueryParam(params){let key=matchQueryParams(this.remaining);if(!key)return;this.capture(key);let value="";if(this.consumeOptional("=")){let valueMatch=matchUrlQueryParamValue(this.remaining);valueMatch&&(value=valueMatch,this.capture(value))}let decodedKey=decodeQuery(key),decodedVal=decodeQuery(value);if(params.hasOwnProperty(decodedKey)){let currentVal=params[decodedKey];Array.isArray(currentVal)||(currentVal=[currentVal],params[decodedKey]=currentVal),currentVal.push(decodedVal)}else params[decodedKey]=decodedVal}parseParens(allowPrimary){let segments={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let path=matchSegments(this.remaining),next=this.remaining[path.length];if(next!=="/"&&next!==")"&&next!==";")throw new RuntimeError(4010,!1);let outletName;path.indexOf(":")>-1?(outletName=path.slice(0,path.indexOf(":")),this.capture(outletName),this.capture(":")):allowPrimary&&(outletName=PRIMARY_OUTLET);let children=this.parseChildren();segments[outletName]=Object.keys(children).length===1?children[PRIMARY_OUTLET]:new UrlSegmentGroup([],children),this.consumeOptional("//")}return segments}peekStartsWith(str){return this.remaining.startsWith(str)}consumeOptional(str){return this.peekStartsWith(str)?(this.remaining=this.remaining.substring(str.length),!0):!1}capture(str){if(!this.consumeOptional(str))throw new RuntimeError(4011,!1)}};function createRoot(rootCandidate){return rootCandidate.segments.length>0?new UrlSegmentGroup([],{[PRIMARY_OUTLET]:rootCandidate}):rootCandidate}function squashSegmentGroup(segmentGroup){let newChildren={};for(let[childOutlet,child]of Object.entries(segmentGroup.children)){let childCandidate=squashSegmentGroup(child);if(childOutlet===PRIMARY_OUTLET&&childCandidate.segments.length===0&&childCandidate.hasChildren())for(let[grandChildOutlet,grandChild]of Object.entries(childCandidate.children))newChildren[grandChildOutlet]=grandChild;else(childCandidate.segments.length>0||childCandidate.hasChildren())&&(newChildren[childOutlet]=childCandidate)}let s=new UrlSegmentGroup(segmentGroup.segments,newChildren);return mergeTrivialChildren(s)}function mergeTrivialChildren(s){if(s.numberOfChildren===1&&s.children[PRIMARY_OUTLET]){let c=s.children[PRIMARY_OUTLET];return new UrlSegmentGroup(s.segments.concat(c.segments),c.children)}return s}function isUrlTree(v){return v instanceof UrlTree}function createUrlTreeFromSnapshot(relativeTo,commands,queryParams=null,fragment=null){let relativeToUrlSegmentGroup=createSegmentGroupFromRoute(relativeTo);return createUrlTreeFromSegmentGroup(relativeToUrlSegmentGroup,commands,queryParams,fragment)}function createSegmentGroupFromRoute(route){let targetGroup;function createSegmentGroupFromRouteRecursive(currentRoute){let childOutlets={};for(let childSnapshot of currentRoute.children){let root=createSegmentGroupFromRouteRecursive(childSnapshot);childOutlets[childSnapshot.outlet]=root}let segmentGroup=new UrlSegmentGroup(currentRoute.url,childOutlets);return currentRoute===route&&(targetGroup=segmentGroup),segmentGroup}let rootCandidate=createSegmentGroupFromRouteRecursive(route.root),rootSegmentGroup=createRoot(rootCandidate);return targetGroup??rootSegmentGroup}function createUrlTreeFromSegmentGroup(relativeTo,commands,queryParams,fragment){let root=relativeTo;for(;root.parent;)root=root.parent;if(commands.length===0)return tree(root,root,root,queryParams,fragment);let nav=computeNavigation(commands);if(nav.toRoot())return tree(root,root,new UrlSegmentGroup([],{}),queryParams,fragment);let position=findStartingPositionForTargetGroup(nav,root,relativeTo),newSegmentGroup=position.processChildren?updateSegmentGroupChildren(position.segmentGroup,position.index,nav.commands):updateSegmentGroup(position.segmentGroup,position.index,nav.commands);return tree(root,position.segmentGroup,newSegmentGroup,queryParams,fragment)}function isMatrixParams(command){return typeof command=="object"&&command!=null&&!command.outlets&&!command.segmentPath}function isCommandWithOutlets(command){return typeof command=="object"&&command!=null&&command.outlets}function tree(oldRoot,oldSegmentGroup,newSegmentGroup,queryParams,fragment){let qp={};queryParams&&Object.entries(queryParams).forEach(([name,value])=>{qp[name]=Array.isArray(value)?value.map(v=>`${v}`):`${value}`});let rootCandidate;oldRoot===oldSegmentGroup?rootCandidate=newSegmentGroup:rootCandidate=replaceSegment(oldRoot,oldSegmentGroup,newSegmentGroup);let newRoot=createRoot(squashSegmentGroup(rootCandidate));return new UrlTree(newRoot,qp,fragment)}function replaceSegment(current,oldSegment,newSegment){let children={};return Object.entries(current.children).forEach(([outletName,c])=>{c===oldSegment?children[outletName]=newSegment:children[outletName]=replaceSegment(c,oldSegment,newSegment)}),new UrlSegmentGroup(current.segments,children)}var Navigation=class{isAbsolute;numberOfDoubleDots;commands;constructor(isAbsolute,numberOfDoubleDots,commands){if(this.isAbsolute=isAbsolute,this.numberOfDoubleDots=numberOfDoubleDots,this.commands=commands,isAbsolute&&commands.length>0&&isMatrixParams(commands[0]))throw new RuntimeError(4003,!1);let cmdWithOutlet=commands.find(isCommandWithOutlets);if(cmdWithOutlet&&cmdWithOutlet!==last3(commands))throw new RuntimeError(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function computeNavigation(commands){if(typeof commands[0]=="string"&&commands.length===1&&commands[0]==="/")return new Navigation(!0,0,commands);let numberOfDoubleDots=0,isAbsolute=!1,res=commands.reduce((res2,cmd,cmdIdx)=>{if(typeof cmd=="object"&&cmd!=null){if(cmd.outlets){let outlets={};return Object.entries(cmd.outlets).forEach(([name,commands2])=>{outlets[name]=typeof commands2=="string"?commands2.split("/"):commands2}),[...res2,{outlets}]}if(cmd.segmentPath)return[...res2,cmd.segmentPath]}return typeof cmd!="string"?[...res2,cmd]:cmdIdx===0?(cmd.split("/").forEach((urlPart,partIndex)=>{partIndex==0&&urlPart==="."||(partIndex==0&&urlPart===""?isAbsolute=!0:urlPart===".."?numberOfDoubleDots++:urlPart!=""&&res2.push(urlPart))}),res2):[...res2,cmd]},[]);return new Navigation(isAbsolute,numberOfDoubleDots,res)}var Position=class{segmentGroup;processChildren;index;constructor(segmentGroup,processChildren,index){this.segmentGroup=segmentGroup,this.processChildren=processChildren,this.index=index}};function findStartingPositionForTargetGroup(nav,root,target){if(nav.isAbsolute)return new Position(root,!0,0);if(!target)return new Position(root,!1,NaN);if(target.parent===null)return new Position(target,!0,0);let modifier=isMatrixParams(nav.commands[0])?0:1,index=target.segments.length-1+modifier;return createPositionApplyingDoubleDots(target,index,nav.numberOfDoubleDots)}function createPositionApplyingDoubleDots(group2,index,numberOfDoubleDots){let g=group2,ci=index,dd=numberOfDoubleDots;for(;dd>ci;){if(dd-=ci,g=g.parent,!g)throw new RuntimeError(4005,!1);ci=g.segments.length}return new Position(g,!1,ci-dd)}function getOutlets(commands){return isCommandWithOutlets(commands[0])?commands[0].outlets:{[PRIMARY_OUTLET]:commands}}function updateSegmentGroup(segmentGroup,startIndex,commands){if(segmentGroup??=new UrlSegmentGroup([],{}),segmentGroup.segments.length===0&&segmentGroup.hasChildren())return updateSegmentGroupChildren(segmentGroup,startIndex,commands);let m=prefixedWith(segmentGroup,startIndex,commands),slicedCommands=commands.slice(m.commandIndex);if(m.match&&m.pathIndex<segmentGroup.segments.length){let g=new UrlSegmentGroup(segmentGroup.segments.slice(0,m.pathIndex),{});return g.children[PRIMARY_OUTLET]=new UrlSegmentGroup(segmentGroup.segments.slice(m.pathIndex),segmentGroup.children),updateSegmentGroupChildren(g,0,slicedCommands)}else return m.match&&slicedCommands.length===0?new UrlSegmentGroup(segmentGroup.segments,{}):m.match&&!segmentGroup.hasChildren()?createNewSegmentGroup(segmentGroup,startIndex,commands):m.match?updateSegmentGroupChildren(segmentGroup,0,slicedCommands):createNewSegmentGroup(segmentGroup,startIndex,commands)}function updateSegmentGroupChildren(segmentGroup,startIndex,commands){if(commands.length===0)return new UrlSegmentGroup(segmentGroup.segments,{});{let outlets=getOutlets(commands),children={};if(Object.keys(outlets).some(o=>o!==PRIMARY_OUTLET)&&segmentGroup.children[PRIMARY_OUTLET]&&segmentGroup.numberOfChildren===1&&segmentGroup.children[PRIMARY_OUTLET].segments.length===0){let childrenOfEmptyChild=updateSegmentGroupChildren(segmentGroup.children[PRIMARY_OUTLET],startIndex,commands);return new UrlSegmentGroup(segmentGroup.segments,childrenOfEmptyChild.children)}return Object.entries(outlets).forEach(([outlet,commands2])=>{typeof commands2=="string"&&(commands2=[commands2]),commands2!==null&&(children[outlet]=updateSegmentGroup(segmentGroup.children[outlet],startIndex,commands2))}),Object.entries(segmentGroup.children).forEach(([childOutlet,child])=>{outlets[childOutlet]===void 0&&(children[childOutlet]=child)}),new UrlSegmentGroup(segmentGroup.segments,children)}}function prefixedWith(segmentGroup,startIndex,commands){let currentCommandIndex=0,currentPathIndex=startIndex,noMatch2={match:!1,pathIndex:0,commandIndex:0};for(;currentPathIndex<segmentGroup.segments.length;){if(currentCommandIndex>=commands.length)return noMatch2;let path=segmentGroup.segments[currentPathIndex],command=commands[currentCommandIndex];if(isCommandWithOutlets(command))break;let curr=`${command}`,next=currentCommandIndex<commands.length-1?commands[currentCommandIndex+1]:null;if(currentPathIndex>0&&curr===void 0)break;if(curr&&next&&typeof next=="object"&&next.outlets===void 0){if(!compare(curr,next,path))return noMatch2;currentCommandIndex+=2}else{if(!compare(curr,{},path))return noMatch2;currentCommandIndex++}currentPathIndex++}return{match:!0,pathIndex:currentPathIndex,commandIndex:currentCommandIndex}}function createNewSegmentGroup(segmentGroup,startIndex,commands){let paths=segmentGroup.segments.slice(0,startIndex),i=0;for(;i<commands.length;){let command=commands[i];if(isCommandWithOutlets(command)){let children=createNewSegmentChildren(command.outlets);return new UrlSegmentGroup(paths,children)}if(i===0&&isMatrixParams(commands[0])){let p=segmentGroup.segments[startIndex];paths.push(new UrlSegment(p.path,stringify2(commands[0]))),i++;continue}let curr=isCommandWithOutlets(command)?command.outlets[PRIMARY_OUTLET]:`${command}`,next=i<commands.length-1?commands[i+1]:null;curr&&next&&isMatrixParams(next)?(paths.push(new UrlSegment(curr,stringify2(next))),i+=2):(paths.push(new UrlSegment(curr,{})),i++)}return new UrlSegmentGroup(paths,{})}function createNewSegmentChildren(outlets){let children={};return Object.entries(outlets).forEach(([outlet,commands])=>{typeof commands=="string"&&(commands=[commands]),commands!==null&&(children[outlet]=createNewSegmentGroup(new UrlSegmentGroup([],{}),0,commands))}),children}function stringify2(params){let res={};return Object.entries(params).forEach(([k,v])=>res[k]=`${v}`),res}function compare(path,params,segment){return path==segment.path&&shallowEqual(params,segment.parameters)}var IMPERATIVE_NAVIGATION="imperative",EventType=(function(EventType2){return EventType2[EventType2.NavigationStart=0]="NavigationStart",EventType2[EventType2.NavigationEnd=1]="NavigationEnd",EventType2[EventType2.NavigationCancel=2]="NavigationCancel",EventType2[EventType2.NavigationError=3]="NavigationError",EventType2[EventType2.RoutesRecognized=4]="RoutesRecognized",EventType2[EventType2.ResolveStart=5]="ResolveStart",EventType2[EventType2.ResolveEnd=6]="ResolveEnd",EventType2[EventType2.GuardsCheckStart=7]="GuardsCheckStart",EventType2[EventType2.GuardsCheckEnd=8]="GuardsCheckEnd",EventType2[EventType2.RouteConfigLoadStart=9]="RouteConfigLoadStart",EventType2[EventType2.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",EventType2[EventType2.ChildActivationStart=11]="ChildActivationStart",EventType2[EventType2.ChildActivationEnd=12]="ChildActivationEnd",EventType2[EventType2.ActivationStart=13]="ActivationStart",EventType2[EventType2.ActivationEnd=14]="ActivationEnd",EventType2[EventType2.Scroll=15]="Scroll",EventType2[EventType2.NavigationSkipped=16]="NavigationSkipped",EventType2})(EventType||{}),RouterEvent=class{id;url;constructor(id,url){this.id=id,this.url=url}},NavigationStart=class extends RouterEvent{type=EventType.NavigationStart;navigationTrigger;restoredState;constructor(id,url,navigationTrigger="imperative",restoredState=null){super(id,url),this.navigationTrigger=navigationTrigger,this.restoredState=restoredState}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},NavigationEnd=class extends RouterEvent{urlAfterRedirects;type=EventType.NavigationEnd;constructor(id,url,urlAfterRedirects){super(id,url),this.urlAfterRedirects=urlAfterRedirects}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},NavigationCancellationCode=(function(NavigationCancellationCode2){return NavigationCancellationCode2[NavigationCancellationCode2.Redirect=0]="Redirect",NavigationCancellationCode2[NavigationCancellationCode2.SupersededByNewNavigation=1]="SupersededByNewNavigation",NavigationCancellationCode2[NavigationCancellationCode2.NoDataFromResolver=2]="NoDataFromResolver",NavigationCancellationCode2[NavigationCancellationCode2.GuardRejected=3]="GuardRejected",NavigationCancellationCode2[NavigationCancellationCode2.Aborted=4]="Aborted",NavigationCancellationCode2})(NavigationCancellationCode||{}),NavigationSkippedCode=(function(NavigationSkippedCode2){return NavigationSkippedCode2[NavigationSkippedCode2.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",NavigationSkippedCode2[NavigationSkippedCode2.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",NavigationSkippedCode2})(NavigationSkippedCode||{}),NavigationCancel=class extends RouterEvent{reason;code;type=EventType.NavigationCancel;constructor(id,url,reason,code){super(id,url),this.reason=reason,this.code=code}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},NavigationSkipped=class extends RouterEvent{reason;code;type=EventType.NavigationSkipped;constructor(id,url,reason,code){super(id,url),this.reason=reason,this.code=code}},NavigationError=class extends RouterEvent{error;target;type=EventType.NavigationError;constructor(id,url,error,target){super(id,url),this.error=error,this.target=target}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},RoutesRecognized=class extends RouterEvent{urlAfterRedirects;state;type=EventType.RoutesRecognized;constructor(id,url,urlAfterRedirects,state2){super(id,url),this.urlAfterRedirects=urlAfterRedirects,this.state=state2}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},GuardsCheckStart=class extends RouterEvent{urlAfterRedirects;state;type=EventType.GuardsCheckStart;constructor(id,url,urlAfterRedirects,state2){super(id,url),this.urlAfterRedirects=urlAfterRedirects,this.state=state2}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},GuardsCheckEnd=class extends RouterEvent{urlAfterRedirects;state;shouldActivate;type=EventType.GuardsCheckEnd;constructor(id,url,urlAfterRedirects,state2,shouldActivate){super(id,url),this.urlAfterRedirects=urlAfterRedirects,this.state=state2,this.shouldActivate=shouldActivate}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},ResolveStart=class extends RouterEvent{urlAfterRedirects;state;type=EventType.ResolveStart;constructor(id,url,urlAfterRedirects,state2){super(id,url),this.urlAfterRedirects=urlAfterRedirects,this.state=state2}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},ResolveEnd=class extends RouterEvent{urlAfterRedirects;state;type=EventType.ResolveEnd;constructor(id,url,urlAfterRedirects,state2){super(id,url),this.urlAfterRedirects=urlAfterRedirects,this.state=state2}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},RouteConfigLoadStart=class{route;type=EventType.RouteConfigLoadStart;constructor(route){this.route=route}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},RouteConfigLoadEnd=class{route;type=EventType.RouteConfigLoadEnd;constructor(route){this.route=route}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},ChildActivationStart=class{snapshot;type=EventType.ChildActivationStart;constructor(snapshot){this.snapshot=snapshot}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},ChildActivationEnd=class{snapshot;type=EventType.ChildActivationEnd;constructor(snapshot){this.snapshot=snapshot}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},ActivationStart=class{snapshot;type=EventType.ActivationStart;constructor(snapshot){this.snapshot=snapshot}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},ActivationEnd=class{snapshot;type=EventType.ActivationEnd;constructor(snapshot){this.snapshot=snapshot}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Scroll=class{routerEvent;position;anchor;type=EventType.Scroll;constructor(routerEvent,position,anchor){this.routerEvent=routerEvent,this.position=position,this.anchor=anchor}toString(){let pos=this.position?`${this.position[0]}, ${this.position[1]}`:null;return`Scroll(anchor: '${this.anchor}', position: '${pos}')`}},BeforeActivateRoutes=class{},RedirectRequest=class{url;navigationBehaviorOptions;constructor(url,navigationBehaviorOptions){this.url=url,this.navigationBehaviorOptions=navigationBehaviorOptions}};function isPublicRouterEvent(e){return!(e instanceof BeforeActivateRoutes)&&!(e instanceof RedirectRequest)}function getOrCreateRouteInjectorIfNeeded(route,currentInjector){return route.providers&&!route._injector&&(route._injector=createEnvironmentInjector(route.providers,currentInjector,`Route: ${route.path}`)),route._injector??currentInjector}function getOutlet(route){return route.outlet||PRIMARY_OUTLET}function sortByMatchingOutlets(routes2,outletName){let sortedConfig=routes2.filter(r=>getOutlet(r)===outletName);return sortedConfig.push(...routes2.filter(r=>getOutlet(r)!==outletName)),sortedConfig}function getClosestRouteInjector(snapshot){if(!snapshot)return null;if(snapshot.routeConfig?._injector)return snapshot.routeConfig._injector;for(let s=snapshot.parent;s;s=s.parent){let route=s.routeConfig;if(route?._loadedInjector)return route._loadedInjector;if(route?._injector)return route._injector}return null}var OutletContext=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return getClosestRouteInjector(this.route?.snapshot)??this.rootInjector}constructor(rootInjector){this.rootInjector=rootInjector,this.children=new ChildrenOutletContexts(this.rootInjector)}},ChildrenOutletContexts=(()=>{class ChildrenOutletContexts2{rootInjector;contexts=new Map;constructor(rootInjector){this.rootInjector=rootInjector}onChildOutletCreated(childName,outlet){let context2=this.getOrCreateContext(childName);context2.outlet=outlet,this.contexts.set(childName,context2)}onChildOutletDestroyed(childName){let context2=this.getContext(childName);context2&&(context2.outlet=null,context2.attachRef=null)}onOutletDeactivated(){let contexts=this.contexts;return this.contexts=new Map,contexts}onOutletReAttached(contexts){this.contexts=contexts}getOrCreateContext(childName){let context2=this.getContext(childName);return context2||(context2=new OutletContext(this.rootInjector),this.contexts.set(childName,context2)),context2}getContext(childName){return this.contexts.get(childName)||null}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ChildrenOutletContexts2)(\u0275\u0275inject(EnvironmentInjector))};static \u0275prov=\u0275\u0275defineInjectable({token:ChildrenOutletContexts2,factory:ChildrenOutletContexts2.\u0275fac,providedIn:"root"})}return ChildrenOutletContexts2})(),Tree=class{_root;constructor(root){this._root=root}get root(){return this._root.value}parent(t){let p=this.pathFromRoot(t);return p.length>1?p[p.length-2]:null}children(t){let n=findNode(t,this._root);return n?n.children.map(t2=>t2.value):[]}firstChild(t){let n=findNode(t,this._root);return n&&n.children.length>0?n.children[0].value:null}siblings(t){let p=findPath(t,this._root);return p.length<2?[]:p[p.length-2].children.map(c2=>c2.value).filter(cc=>cc!==t)}pathFromRoot(t){return findPath(t,this._root).map(s=>s.value)}};function findNode(value,node){if(value===node.value)return node;for(let child of node.children){let node2=findNode(value,child);if(node2)return node2}return null}function findPath(value,node){if(value===node.value)return[node];for(let child of node.children){let path=findPath(value,child);if(path.length)return path.unshift(node),path}return[]}var TreeNode=class{value;children;constructor(value,children){this.value=value,this.children=children}toString(){return`TreeNode(${this.value})`}};function nodeChildrenAsMap(node){let map2={};return node&&node.children.forEach(child=>map2[child.value.outlet]=child),map2}var RouterState=class extends Tree{snapshot;constructor(root,snapshot){super(root),this.snapshot=snapshot,setRouterState(this,root)}toString(){return this.snapshot.toString()}};function createEmptyState(rootComponent){let snapshot=createEmptyStateSnapshot(rootComponent),emptyUrl=new BehaviorSubject([new UrlSegment("",{})]),emptyParams=new BehaviorSubject({}),emptyData=new BehaviorSubject({}),emptyQueryParams=new BehaviorSubject({}),fragment=new BehaviorSubject(""),activated=new ActivatedRoute(emptyUrl,emptyParams,emptyQueryParams,fragment,emptyData,PRIMARY_OUTLET,rootComponent,snapshot.root);return activated.snapshot=snapshot.root,new RouterState(new TreeNode(activated,[]),snapshot)}function createEmptyStateSnapshot(rootComponent){let emptyParams={},emptyData={},emptyQueryParams={},activated=new ActivatedRouteSnapshot([],emptyParams,emptyQueryParams,"",emptyData,PRIMARY_OUTLET,rootComponent,null,{});return new RouterStateSnapshot("",new TreeNode(activated,[]))}var ActivatedRoute=class{urlSubject;paramsSubject;queryParamsSubject;fragmentSubject;dataSubject;outlet;component;snapshot;_futureSnapshot;_routerState;_paramMap;_queryParamMap;title;url;params;queryParams;fragment;data;constructor(urlSubject,paramsSubject,queryParamsSubject,fragmentSubject,dataSubject,outlet,component,futureSnapshot){this.urlSubject=urlSubject,this.paramsSubject=paramsSubject,this.queryParamsSubject=queryParamsSubject,this.fragmentSubject=fragmentSubject,this.dataSubject=dataSubject,this.outlet=outlet,this.component=component,this._futureSnapshot=futureSnapshot,this.title=this.dataSubject?.pipe(map(d=>d[RouteTitleKey]))??of(void 0),this.url=urlSubject,this.params=paramsSubject,this.queryParams=queryParamsSubject,this.fragment=fragmentSubject,this.data=dataSubject}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(map(p=>convertToParamMap(p))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(map(p=>convertToParamMap(p))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function getInherited(route,parent,paramsInheritanceStrategy="emptyOnly"){let inherited,{routeConfig}=route;return parent!==null&&(paramsInheritanceStrategy==="always"||routeConfig?.path===""||!parent.component&&!parent.routeConfig?.loadComponent)?inherited={params:__spreadValues(__spreadValues({},parent.params),route.params),data:__spreadValues(__spreadValues({},parent.data),route.data),resolve:__spreadValues(__spreadValues(__spreadValues(__spreadValues({},route.data),parent.data),routeConfig?.data),route._resolvedData)}:inherited={params:__spreadValues({},route.params),data:__spreadValues({},route.data),resolve:__spreadValues(__spreadValues({},route.data),route._resolvedData??{})},routeConfig&&hasStaticTitle(routeConfig)&&(inherited.resolve[RouteTitleKey]=routeConfig.title),inherited}var ActivatedRouteSnapshot=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;get title(){return this.data?.[RouteTitleKey]}constructor(url,params,queryParams,fragment,data,outlet,component,routeConfig,resolve){this.url=url,this.params=params,this.queryParams=queryParams,this.fragment=fragment,this.data=data,this.outlet=outlet,this.component=component,this.routeConfig=routeConfig,this._resolve=resolve}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=convertToParamMap(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=convertToParamMap(this.queryParams),this._queryParamMap}toString(){let url=this.url.map(segment=>segment.toString()).join("/"),matched=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${url}', path:'${matched}')`}},RouterStateSnapshot=class extends Tree{url;constructor(url,root){super(root),this.url=url,setRouterState(this,root)}toString(){return serializeNode(this._root)}};function setRouterState(state2,node){node.value._routerState=state2,node.children.forEach(c=>setRouterState(state2,c))}function serializeNode(node){let c=node.children.length>0?` { ${node.children.map(serializeNode).join(", ")} } `:"";return`${node.value}${c}`}function advanceActivatedRoute(route){if(route.snapshot){let currentSnapshot=route.snapshot,nextSnapshot=route._futureSnapshot;route.snapshot=nextSnapshot,shallowEqual(currentSnapshot.queryParams,nextSnapshot.queryParams)||route.queryParamsSubject.next(nextSnapshot.queryParams),currentSnapshot.fragment!==nextSnapshot.fragment&&route.fragmentSubject.next(nextSnapshot.fragment),shallowEqual(currentSnapshot.params,nextSnapshot.params)||route.paramsSubject.next(nextSnapshot.params),shallowEqualArrays(currentSnapshot.url,nextSnapshot.url)||route.urlSubject.next(nextSnapshot.url),shallowEqual(currentSnapshot.data,nextSnapshot.data)||route.dataSubject.next(nextSnapshot.data)}else route.snapshot=route._futureSnapshot,route.dataSubject.next(route._futureSnapshot.data)}function equalParamsAndUrlSegments(a,b){let equalUrlParams=shallowEqual(a.params,b.params)&&equalSegments(a.url,b.url),parentsMismatch=!a.parent!=!b.parent;return equalUrlParams&&!parentsMismatch&&(!a.parent||equalParamsAndUrlSegments(a.parent,b.parent))}function hasStaticTitle(config2){return typeof config2.title=="string"||config2.title===null}var ROUTER_OUTLET_DATA=new InjectionToken(""),RouterOutlet=(()=>{class RouterOutlet2{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=PRIMARY_OUTLET;activateEvents=new EventEmitter;deactivateEvents=new EventEmitter;attachEvents=new EventEmitter;detachEvents=new EventEmitter;routerOutletData=input(void 0);parentContexts=inject2(ChildrenOutletContexts);location=inject2(ViewContainerRef);changeDetector=inject2(ChangeDetectorRef);inputBinder=inject2(INPUT_BINDER,{optional:!0});supportsBindingToComponentInputs=!0;ngOnChanges(changes){if(changes.name){let{firstChange,previousValue}=changes.name;if(firstChange)return;this.isTrackedInParentContexts(previousValue)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(previousValue)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(outletName){return this.parentContexts.getContext(outletName)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let context2=this.parentContexts.getContext(this.name);context2?.route&&(context2.attachRef?this.attach(context2.attachRef,context2.route):this.activateWith(context2.route,context2.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new RuntimeError(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new RuntimeError(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new RuntimeError(4012,!1);this.location.detach();let cmp=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(cmp.instance),cmp}attach(ref,activatedRoute){this.activated=ref,this._activatedRoute=activatedRoute,this.location.insert(ref.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(ref.instance)}deactivate(){if(this.activated){let c=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(c)}}activateWith(activatedRoute,environmentInjector){if(this.isActivated)throw new RuntimeError(4013,!1);this._activatedRoute=activatedRoute;let location2=this.location,component=activatedRoute.snapshot.component,childContexts=this.parentContexts.getOrCreateContext(this.name).children,injector=new OutletInjector(activatedRoute,childContexts,location2.injector,this.routerOutletData);this.activated=location2.createComponent(component,{index:location2.length,injector,environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||RouterOutlet2)};static \u0275dir=\u0275\u0275defineDirective({type:RouterOutlet2,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[\u0275\u0275NgOnChangesFeature]})}return RouterOutlet2})(),OutletInjector=class{route;childContexts;parent;outletData;constructor(route,childContexts,parent,outletData){this.route=route,this.childContexts=childContexts,this.parent=parent,this.outletData=outletData}get(token,notFoundValue){return token===ActivatedRoute?this.route:token===ChildrenOutletContexts?this.childContexts:token===ROUTER_OUTLET_DATA?this.outletData:this.parent.get(token,notFoundValue)}},INPUT_BINDER=new InjectionToken(""),RoutedComponentInputBinder=(()=>{class RoutedComponentInputBinder2{outletDataSubscriptions=new Map;bindActivatedRouteToOutletComponent(outlet){this.unsubscribeFromRouteData(outlet),this.subscribeToRouteData(outlet)}unsubscribeFromRouteData(outlet){this.outletDataSubscriptions.get(outlet)?.unsubscribe(),this.outletDataSubscriptions.delete(outlet)}subscribeToRouteData(outlet){let{activatedRoute}=outlet,dataSubscription=combineLatest([activatedRoute.queryParams,activatedRoute.params,activatedRoute.data]).pipe(switchMap(([queryParams,params,data],index)=>(data=__spreadValues(__spreadValues(__spreadValues({},queryParams),params),data),index===0?of(data):Promise.resolve(data)))).subscribe(data=>{if(!outlet.isActivated||!outlet.activatedComponentRef||outlet.activatedRoute!==activatedRoute||activatedRoute.component===null){this.unsubscribeFromRouteData(outlet);return}let mirror=reflectComponentType(activatedRoute.component);if(!mirror){this.unsubscribeFromRouteData(outlet);return}for(let{templateName}of mirror.inputs)outlet.activatedComponentRef.setInput(templateName,data[templateName])});this.outletDataSubscriptions.set(outlet,dataSubscription)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||RoutedComponentInputBinder2)};static \u0275prov=\u0275\u0275defineInjectable({token:RoutedComponentInputBinder2,factory:RoutedComponentInputBinder2.\u0275fac})}return RoutedComponentInputBinder2})(),\u0275EmptyOutletComponent=(()=>{class \u0275EmptyOutletComponent2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||\u0275EmptyOutletComponent2)};static \u0275cmp=\u0275\u0275defineComponent({type:\u0275EmptyOutletComponent2,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(rf,ctx){rf&1&&\u0275\u0275element(0,"router-outlet")},dependencies:[RouterOutlet],encapsulation:2})}return \u0275EmptyOutletComponent2})();function standardizeConfig(r){let children=r.children&&r.children.map(standardizeConfig),c=children?__spreadProps(__spreadValues({},r),{children}):__spreadValues({},r);return!c.component&&!c.loadComponent&&(children||c.loadChildren)&&c.outlet&&c.outlet!==PRIMARY_OUTLET&&(c.component=\u0275EmptyOutletComponent),c}function createRouterState(routeReuseStrategy,curr,prevState){let root=createNode(routeReuseStrategy,curr._root,prevState?prevState._root:void 0);return new RouterState(root,curr)}function createNode(routeReuseStrategy,curr,prevState){if(prevState&&routeReuseStrategy.shouldReuseRoute(curr.value,prevState.value.snapshot)){let value=prevState.value;value._futureSnapshot=curr.value;let children=createOrReuseChildren(routeReuseStrategy,curr,prevState);return new TreeNode(value,children)}else{if(routeReuseStrategy.shouldAttach(curr.value)){let detachedRouteHandle=routeReuseStrategy.retrieve(curr.value);if(detachedRouteHandle!==null){let tree2=detachedRouteHandle.route;return tree2.value._futureSnapshot=curr.value,tree2.children=curr.children.map(c=>createNode(routeReuseStrategy,c)),tree2}}let value=createActivatedRoute(curr.value),children=curr.children.map(c=>createNode(routeReuseStrategy,c));return new TreeNode(value,children)}}function createOrReuseChildren(routeReuseStrategy,curr,prevState){return curr.children.map(child=>{for(let p of prevState.children)if(routeReuseStrategy.shouldReuseRoute(child.value,p.value.snapshot))return createNode(routeReuseStrategy,child,p);return createNode(routeReuseStrategy,child)})}function createActivatedRoute(c){return new ActivatedRoute(new BehaviorSubject(c.url),new BehaviorSubject(c.params),new BehaviorSubject(c.queryParams),new BehaviorSubject(c.fragment),new BehaviorSubject(c.data),c.outlet,c.component,c)}var RedirectCommand=class{redirectTo;navigationBehaviorOptions;constructor(redirectTo,navigationBehaviorOptions){this.redirectTo=redirectTo,this.navigationBehaviorOptions=navigationBehaviorOptions}},NAVIGATION_CANCELING_ERROR="ngNavigationCancelingError";function redirectingNavigationError(urlSerializer,redirect){let{redirectTo,navigationBehaviorOptions}=isUrlTree(redirect)?{redirectTo:redirect,navigationBehaviorOptions:void 0}:redirect,error=navigationCancelingError(!1,NavigationCancellationCode.Redirect);return error.url=redirectTo,error.navigationBehaviorOptions=navigationBehaviorOptions,error}function navigationCancelingError(message,code){let error=new Error(`NavigationCancelingError: ${message||""}`);return error[NAVIGATION_CANCELING_ERROR]=!0,error.cancellationCode=code,error}function isRedirectingNavigationCancelingError(error){return isNavigationCancelingError(error)&&isUrlTree(error.url)}function isNavigationCancelingError(error){return!!error&&error[NAVIGATION_CANCELING_ERROR]}var activateRoutes=(rootContexts,routeReuseStrategy,forwardEvent,inputBindingEnabled)=>map(t=>(new ActivateRoutes(routeReuseStrategy,t.targetRouterState,t.currentRouterState,forwardEvent,inputBindingEnabled).activate(rootContexts),t)),ActivateRoutes=class{routeReuseStrategy;futureState;currState;forwardEvent;inputBindingEnabled;constructor(routeReuseStrategy,futureState,currState,forwardEvent,inputBindingEnabled){this.routeReuseStrategy=routeReuseStrategy,this.futureState=futureState,this.currState=currState,this.forwardEvent=forwardEvent,this.inputBindingEnabled=inputBindingEnabled}activate(parentContexts){let futureRoot=this.futureState._root,currRoot=this.currState?this.currState._root:null;this.deactivateChildRoutes(futureRoot,currRoot,parentContexts),advanceActivatedRoute(this.futureState.root),this.activateChildRoutes(futureRoot,currRoot,parentContexts)}deactivateChildRoutes(futureNode,currNode,contexts){let children=nodeChildrenAsMap(currNode);futureNode.children.forEach(futureChild=>{let childOutletName=futureChild.value.outlet;this.deactivateRoutes(futureChild,children[childOutletName],contexts),delete children[childOutletName]}),Object.values(children).forEach(v=>{this.deactivateRouteAndItsChildren(v,contexts)})}deactivateRoutes(futureNode,currNode,parentContext){let future=futureNode.value,curr=currNode?currNode.value:null;if(future===curr)if(future.component){let context2=parentContext.getContext(future.outlet);context2&&this.deactivateChildRoutes(futureNode,currNode,context2.children)}else this.deactivateChildRoutes(futureNode,currNode,parentContext);else curr&&this.deactivateRouteAndItsChildren(currNode,parentContext)}deactivateRouteAndItsChildren(route,parentContexts){route.value.component&&this.routeReuseStrategy.shouldDetach(route.value.snapshot)?this.detachAndStoreRouteSubtree(route,parentContexts):this.deactivateRouteAndOutlet(route,parentContexts)}detachAndStoreRouteSubtree(route,parentContexts){let context2=parentContexts.getContext(route.value.outlet),contexts=context2&&route.value.component?context2.children:parentContexts,children=nodeChildrenAsMap(route);for(let treeNode of Object.values(children))this.deactivateRouteAndItsChildren(treeNode,contexts);if(context2&&context2.outlet){let componentRef=context2.outlet.detach(),contexts2=context2.children.onOutletDeactivated();this.routeReuseStrategy.store(route.value.snapshot,{componentRef,route,contexts:contexts2})}}deactivateRouteAndOutlet(route,parentContexts){let context2=parentContexts.getContext(route.value.outlet),contexts=context2&&route.value.component?context2.children:parentContexts,children=nodeChildrenAsMap(route);for(let treeNode of Object.values(children))this.deactivateRouteAndItsChildren(treeNode,contexts);context2&&(context2.outlet&&(context2.outlet.deactivate(),context2.children.onOutletDeactivated()),context2.attachRef=null,context2.route=null)}activateChildRoutes(futureNode,currNode,contexts){let children=nodeChildrenAsMap(currNode);futureNode.children.forEach(c=>{this.activateRoutes(c,children[c.value.outlet],contexts),this.forwardEvent(new ActivationEnd(c.value.snapshot))}),futureNode.children.length&&this.forwardEvent(new ChildActivationEnd(futureNode.value.snapshot))}activateRoutes(futureNode,currNode,parentContexts){let future=futureNode.value,curr=currNode?currNode.value:null;if(advanceActivatedRoute(future),future===curr)if(future.component){let context2=parentContexts.getOrCreateContext(future.outlet);this.activateChildRoutes(futureNode,currNode,context2.children)}else this.activateChildRoutes(futureNode,currNode,parentContexts);else if(future.component){let context2=parentContexts.getOrCreateContext(future.outlet);if(this.routeReuseStrategy.shouldAttach(future.snapshot)){let stored=this.routeReuseStrategy.retrieve(future.snapshot);this.routeReuseStrategy.store(future.snapshot,null),context2.children.onOutletReAttached(stored.contexts),context2.attachRef=stored.componentRef,context2.route=stored.route.value,context2.outlet&&context2.outlet.attach(stored.componentRef,stored.route.value),advanceActivatedRoute(stored.route.value),this.activateChildRoutes(futureNode,null,context2.children)}else context2.attachRef=null,context2.route=future,context2.outlet&&context2.outlet.activateWith(future,context2.injector),this.activateChildRoutes(futureNode,null,context2.children)}else this.activateChildRoutes(futureNode,null,parentContexts)}},CanActivate=class{path;route;constructor(path){this.path=path,this.route=this.path[this.path.length-1]}},CanDeactivate=class{component;route;constructor(component,route){this.component=component,this.route=route}};function getAllRouteGuards(future,curr,parentContexts){let futureRoot=future._root,currRoot=curr?curr._root:null;return getChildRouteGuards(futureRoot,currRoot,parentContexts,[futureRoot.value])}function getCanActivateChild(p){let canActivateChild=p.routeConfig?p.routeConfig.canActivateChild:null;return!canActivateChild||canActivateChild.length===0?null:{node:p,guards:canActivateChild}}function getTokenOrFunctionIdentity(tokenOrFunction,injector){let NOT_FOUND3=Symbol(),result=injector.get(tokenOrFunction,NOT_FOUND3);return result===NOT_FOUND3?typeof tokenOrFunction=="function"&&!isInjectable(tokenOrFunction)?tokenOrFunction:injector.get(tokenOrFunction):result}function getChildRouteGuards(futureNode,currNode,contexts,futurePath,checks={canDeactivateChecks:[],canActivateChecks:[]}){let prevChildren=nodeChildrenAsMap(currNode);return futureNode.children.forEach(c=>{getRouteGuards(c,prevChildren[c.value.outlet],contexts,futurePath.concat([c.value]),checks),delete prevChildren[c.value.outlet]}),Object.entries(prevChildren).forEach(([k,v])=>deactivateRouteAndItsChildren(v,contexts.getContext(k),checks)),checks}function getRouteGuards(futureNode,currNode,parentContexts,futurePath,checks={canDeactivateChecks:[],canActivateChecks:[]}){let future=futureNode.value,curr=currNode?currNode.value:null,context2=parentContexts?parentContexts.getContext(futureNode.value.outlet):null;if(curr&&future.routeConfig===curr.routeConfig){let shouldRun=shouldRunGuardsAndResolvers(curr,future,future.routeConfig.runGuardsAndResolvers);shouldRun?checks.canActivateChecks.push(new CanActivate(futurePath)):(future.data=curr.data,future._resolvedData=curr._resolvedData),future.component?getChildRouteGuards(futureNode,currNode,context2?context2.children:null,futurePath,checks):getChildRouteGuards(futureNode,currNode,parentContexts,futurePath,checks),shouldRun&&context2&&context2.outlet&&context2.outlet.isActivated&&checks.canDeactivateChecks.push(new CanDeactivate(context2.outlet.component,curr))}else curr&&deactivateRouteAndItsChildren(currNode,context2,checks),checks.canActivateChecks.push(new CanActivate(futurePath)),future.component?getChildRouteGuards(futureNode,null,context2?context2.children:null,futurePath,checks):getChildRouteGuards(futureNode,null,parentContexts,futurePath,checks);return checks}function shouldRunGuardsAndResolvers(curr,future,mode){if(typeof mode=="function")return mode(curr,future);switch(mode){case"pathParamsChange":return!equalPath(curr.url,future.url);case"pathParamsOrQueryParamsChange":return!equalPath(curr.url,future.url)||!shallowEqual(curr.queryParams,future.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!equalParamsAndUrlSegments(curr,future)||!shallowEqual(curr.queryParams,future.queryParams);case"paramsChange":default:return!equalParamsAndUrlSegments(curr,future)}}function deactivateRouteAndItsChildren(route,context2,checks){let children=nodeChildrenAsMap(route),r=route.value;Object.entries(children).forEach(([childName,node])=>{r.component?context2?deactivateRouteAndItsChildren(node,context2.children.getContext(childName),checks):deactivateRouteAndItsChildren(node,null,checks):deactivateRouteAndItsChildren(node,context2,checks)}),r.component?context2&&context2.outlet&&context2.outlet.isActivated?checks.canDeactivateChecks.push(new CanDeactivate(context2.outlet.component,r)):checks.canDeactivateChecks.push(new CanDeactivate(null,r)):checks.canDeactivateChecks.push(new CanDeactivate(null,r))}function isFunction2(v){return typeof v=="function"}function isBoolean(v){return typeof v=="boolean"}function isCanLoad(guard){return guard&&isFunction2(guard.canLoad)}function isCanActivate(guard){return guard&&isFunction2(guard.canActivate)}function isCanActivateChild(guard){return guard&&isFunction2(guard.canActivateChild)}function isCanDeactivate(guard){return guard&&isFunction2(guard.canDeactivate)}function isCanMatch(guard){return guard&&isFunction2(guard.canMatch)}function isEmptyError(e){return e instanceof EmptyError||e?.name==="EmptyError"}var INITIAL_VALUE=Symbol("INITIAL_VALUE");function prioritizedGuardValue(){return switchMap(obs=>combineLatest(obs.map(o=>o.pipe(take(1),startWith(INITIAL_VALUE)))).pipe(map(results=>{for(let result of results)if(result!==!0){if(result===INITIAL_VALUE)return INITIAL_VALUE;if(result===!1||isRedirect(result))return result}return!0}),filter(item=>item!==INITIAL_VALUE),take(1)))}function isRedirect(val){return isUrlTree(val)||val instanceof RedirectCommand}function checkGuards(injector,forwardEvent){return mergeMap(t=>{let{targetSnapshot,currentSnapshot,guards:{canActivateChecks,canDeactivateChecks}}=t;return canDeactivateChecks.length===0&&canActivateChecks.length===0?of(__spreadProps(__spreadValues({},t),{guardsResult:!0})):runCanDeactivateChecks(canDeactivateChecks,targetSnapshot,currentSnapshot,injector).pipe(mergeMap(canDeactivate=>canDeactivate&&isBoolean(canDeactivate)?runCanActivateChecks(targetSnapshot,canActivateChecks,injector,forwardEvent):of(canDeactivate)),map(guardsResult=>__spreadProps(__spreadValues({},t),{guardsResult})))})}function runCanDeactivateChecks(checks,futureRSS,currRSS,injector){return from(checks).pipe(mergeMap(check=>runCanDeactivate(check.component,check.route,currRSS,futureRSS,injector)),first(result=>result!==!0,!0))}function runCanActivateChecks(futureSnapshot,checks,injector,forwardEvent){return from(checks).pipe(concatMap(check=>concat(fireChildActivationStart(check.route.parent,forwardEvent),fireActivationStart(check.route,forwardEvent),runCanActivateChild(futureSnapshot,check.path,injector),runCanActivate(futureSnapshot,check.route,injector))),first(result=>result!==!0,!0))}function fireActivationStart(snapshot,forwardEvent){return snapshot!==null&&forwardEvent&&forwardEvent(new ActivationStart(snapshot)),of(!0)}function fireChildActivationStart(snapshot,forwardEvent){return snapshot!==null&&forwardEvent&&forwardEvent(new ChildActivationStart(snapshot)),of(!0)}function runCanActivate(futureRSS,futureARS,injector){let canActivate=futureARS.routeConfig?futureARS.routeConfig.canActivate:null;if(!canActivate||canActivate.length===0)return of(!0);let canActivateObservables=canActivate.map(canActivate2=>defer(()=>{let closestInjector=getClosestRouteInjector(futureARS)??injector,guard=getTokenOrFunctionIdentity(canActivate2,closestInjector),guardVal=isCanActivate(guard)?guard.canActivate(futureARS,futureRSS):runInInjectionContext(closestInjector,()=>guard(futureARS,futureRSS));return wrapIntoObservable(guardVal).pipe(first())}));return of(canActivateObservables).pipe(prioritizedGuardValue())}function runCanActivateChild(futureRSS,path,injector){let futureARS=path[path.length-1],canActivateChildGuardsMapped=path.slice(0,path.length-1).reverse().map(p=>getCanActivateChild(p)).filter(_=>_!==null).map(d=>defer(()=>{let guardsMapped=d.guards.map(canActivateChild=>{let closestInjector=getClosestRouteInjector(d.node)??injector,guard=getTokenOrFunctionIdentity(canActivateChild,closestInjector),guardVal=isCanActivateChild(guard)?guard.canActivateChild(futureARS,futureRSS):runInInjectionContext(closestInjector,()=>guard(futureARS,futureRSS));return wrapIntoObservable(guardVal).pipe(first())});return of(guardsMapped).pipe(prioritizedGuardValue())}));return of(canActivateChildGuardsMapped).pipe(prioritizedGuardValue())}function runCanDeactivate(component,currARS,currRSS,futureRSS,injector){let canDeactivate=currARS&&currARS.routeConfig?currARS.routeConfig.canDeactivate:null;if(!canDeactivate||canDeactivate.length===0)return of(!0);let canDeactivateObservables=canDeactivate.map(c=>{let closestInjector=getClosestRouteInjector(currARS)??injector,guard=getTokenOrFunctionIdentity(c,closestInjector),guardVal=isCanDeactivate(guard)?guard.canDeactivate(component,currARS,currRSS,futureRSS):runInInjectionContext(closestInjector,()=>guard(component,currARS,currRSS,futureRSS));return wrapIntoObservable(guardVal).pipe(first())});return of(canDeactivateObservables).pipe(prioritizedGuardValue())}function runCanLoadGuards(injector,route,segments,urlSerializer){let canLoad=route.canLoad;if(canLoad===void 0||canLoad.length===0)return of(!0);let canLoadObservables=canLoad.map(injectionToken=>{let guard=getTokenOrFunctionIdentity(injectionToken,injector),guardVal=isCanLoad(guard)?guard.canLoad(route,segments):runInInjectionContext(injector,()=>guard(route,segments));return wrapIntoObservable(guardVal)});return of(canLoadObservables).pipe(prioritizedGuardValue(),redirectIfUrlTree(urlSerializer))}function redirectIfUrlTree(urlSerializer){return pipe(tap(result=>{if(typeof result!="boolean")throw redirectingNavigationError(urlSerializer,result)}),map(result=>result===!0))}function runCanMatchGuards(injector,route,segments,urlSerializer){let canMatch=route.canMatch;if(!canMatch||canMatch.length===0)return of(!0);let canMatchObservables=canMatch.map(injectionToken=>{let guard=getTokenOrFunctionIdentity(injectionToken,injector),guardVal=isCanMatch(guard)?guard.canMatch(route,segments):runInInjectionContext(injector,()=>guard(route,segments));return wrapIntoObservable(guardVal)});return of(canMatchObservables).pipe(prioritizedGuardValue(),redirectIfUrlTree(urlSerializer))}var NoMatch=class{segmentGroup;constructor(segmentGroup){this.segmentGroup=segmentGroup||null}},AbsoluteRedirect=class extends Error{urlTree;constructor(urlTree){super(),this.urlTree=urlTree}};function noMatch$1(segmentGroup){return throwError(new NoMatch(segmentGroup))}function namedOutletsRedirect(redirectTo){return throwError(new RuntimeError(4e3,!1))}function canLoadFails(route){return throwError(navigationCancelingError(!1,NavigationCancellationCode.GuardRejected))}var ApplyRedirects=class{urlSerializer;urlTree;constructor(urlSerializer,urlTree){this.urlSerializer=urlSerializer,this.urlTree=urlTree}lineralizeSegments(route,urlTree){let res=[],c=urlTree.root;for(;;){if(res=res.concat(c.segments),c.numberOfChildren===0)return of(res);if(c.numberOfChildren>1||!c.children[PRIMARY_OUTLET])return namedOutletsRedirect(`${route.redirectTo}`);c=c.children[PRIMARY_OUTLET]}}applyRedirectCommands(segments,redirectTo,posParams,currentSnapshot,injector){return getRedirectResult(redirectTo,currentSnapshot,injector).pipe(map(redirect=>{if(redirect instanceof UrlTree)throw new AbsoluteRedirect(redirect);let newTree=this.applyRedirectCreateUrlTree(redirect,this.urlSerializer.parse(redirect),segments,posParams);if(redirect[0]==="/")throw new AbsoluteRedirect(newTree);return newTree}))}applyRedirectCreateUrlTree(redirectTo,urlTree,segments,posParams){let newRoot=this.createSegmentGroup(redirectTo,urlTree.root,segments,posParams);return new UrlTree(newRoot,this.createQueryParams(urlTree.queryParams,this.urlTree.queryParams),urlTree.fragment)}createQueryParams(redirectToParams,actualParams){let res={};return Object.entries(redirectToParams).forEach(([k,v])=>{if(typeof v=="string"&&v[0]===":"){let sourceName=v.substring(1);res[k]=actualParams[sourceName]}else res[k]=v}),res}createSegmentGroup(redirectTo,group2,segments,posParams){let updatedSegments=this.createSegments(redirectTo,group2.segments,segments,posParams),children={};return Object.entries(group2.children).forEach(([name,child])=>{children[name]=this.createSegmentGroup(redirectTo,child,segments,posParams)}),new UrlSegmentGroup(updatedSegments,children)}createSegments(redirectTo,redirectToSegments,actualSegments,posParams){return redirectToSegments.map(s=>s.path[0]===":"?this.findPosParam(redirectTo,s,posParams):this.findOrReturn(s,actualSegments))}findPosParam(redirectTo,redirectToUrlSegment,posParams){let pos=posParams[redirectToUrlSegment.path.substring(1)];if(!pos)throw new RuntimeError(4001,!1);return pos}findOrReturn(redirectToUrlSegment,actualSegments){let idx=0;for(let s of actualSegments){if(s.path===redirectToUrlSegment.path)return actualSegments.splice(idx),s;idx++}return redirectToUrlSegment}};function getRedirectResult(redirectTo,currentSnapshot,injector){if(typeof redirectTo=="string")return of(redirectTo);let redirectToFn=redirectTo,{queryParams,fragment,routeConfig,url,outlet,params,data,title}=currentSnapshot;return wrapIntoObservable(runInInjectionContext(injector,()=>redirectToFn({params,data,queryParams,fragment,routeConfig,url,outlet,title})))}var noMatch={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function matchWithChecks(segmentGroup,route,segments,injector,urlSerializer){let result=match(segmentGroup,route,segments);return result.matched?(injector=getOrCreateRouteInjectorIfNeeded(route,injector),runCanMatchGuards(injector,route,segments,urlSerializer).pipe(map(v=>v===!0?result:__spreadValues({},noMatch)))):of(result)}function match(segmentGroup,route,segments){if(route.path==="**")return createWildcardMatchResult(segments);if(route.path==="")return route.pathMatch==="full"&&(segmentGroup.hasChildren()||segments.length>0)?__spreadValues({},noMatch):{matched:!0,consumedSegments:[],remainingSegments:segments,parameters:{},positionalParamSegments:{}};let res=(route.matcher||defaultUrlMatcher)(segments,segmentGroup,route);if(!res)return __spreadValues({},noMatch);let posParams={};Object.entries(res.posParams??{}).forEach(([k,v])=>{posParams[k]=v.path});let parameters=res.consumed.length>0?__spreadValues(__spreadValues({},posParams),res.consumed[res.consumed.length-1].parameters):posParams;return{matched:!0,consumedSegments:res.consumed,remainingSegments:segments.slice(res.consumed.length),parameters,positionalParamSegments:res.posParams??{}}}function createWildcardMatchResult(segments){return{matched:!0,parameters:segments.length>0?last3(segments).parameters:{},consumedSegments:segments,remainingSegments:[],positionalParamSegments:{}}}function split(segmentGroup,consumedSegments,slicedSegments,config2){return slicedSegments.length>0&&containsEmptyPathMatchesWithNamedOutlets(segmentGroup,slicedSegments,config2)?{segmentGroup:new UrlSegmentGroup(consumedSegments,createChildrenForEmptyPaths(config2,new UrlSegmentGroup(slicedSegments,segmentGroup.children))),slicedSegments:[]}:slicedSegments.length===0&&containsEmptyPathMatches(segmentGroup,slicedSegments,config2)?{segmentGroup:new UrlSegmentGroup(segmentGroup.segments,addEmptyPathsToChildrenIfNeeded(segmentGroup,slicedSegments,config2,segmentGroup.children)),slicedSegments}:{segmentGroup:new UrlSegmentGroup(segmentGroup.segments,segmentGroup.children),slicedSegments}}function addEmptyPathsToChildrenIfNeeded(segmentGroup,slicedSegments,routes2,children){let res={};for(let r of routes2)if(emptyPathMatch(segmentGroup,slicedSegments,r)&&!children[getOutlet(r)]){let s=new UrlSegmentGroup([],{});res[getOutlet(r)]=s}return __spreadValues(__spreadValues({},children),res)}function createChildrenForEmptyPaths(routes2,primarySegment){let res={};res[PRIMARY_OUTLET]=primarySegment;for(let r of routes2)if(r.path===""&&getOutlet(r)!==PRIMARY_OUTLET){let s=new UrlSegmentGroup([],{});res[getOutlet(r)]=s}return res}function containsEmptyPathMatchesWithNamedOutlets(segmentGroup,slicedSegments,routes2){return routes2.some(r=>emptyPathMatch(segmentGroup,slicedSegments,r)&&getOutlet(r)!==PRIMARY_OUTLET)}function containsEmptyPathMatches(segmentGroup,slicedSegments,routes2){return routes2.some(r=>emptyPathMatch(segmentGroup,slicedSegments,r))}function emptyPathMatch(segmentGroup,slicedSegments,r){return(segmentGroup.hasChildren()||slicedSegments.length>0)&&r.pathMatch==="full"?!1:r.path===""}function noLeftoversInUrl(segmentGroup,segments,outlet){return segments.length===0&&!segmentGroup.children[outlet]}var NoLeftoversInUrl=class{};function recognize$1(injector,configLoader,rootComponentType,config2,urlTree,urlSerializer,paramsInheritanceStrategy="emptyOnly"){return new Recognizer(injector,configLoader,rootComponentType,config2,urlTree,paramsInheritanceStrategy,urlSerializer).recognize()}var MAX_ALLOWED_REDIRECTS=31,Recognizer=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(injector,configLoader,rootComponentType,config2,urlTree,paramsInheritanceStrategy,urlSerializer){this.injector=injector,this.configLoader=configLoader,this.rootComponentType=rootComponentType,this.config=config2,this.urlTree=urlTree,this.paramsInheritanceStrategy=paramsInheritanceStrategy,this.urlSerializer=urlSerializer,this.applyRedirects=new ApplyRedirects(this.urlSerializer,this.urlTree)}noMatchError(e){return new RuntimeError(4002,`'${e.segmentGroup}'`)}recognize(){let rootSegmentGroup=split(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(rootSegmentGroup).pipe(map(({children,rootSnapshot})=>{let rootNode=new TreeNode(rootSnapshot,children),routeState=new RouterStateSnapshot("",rootNode),tree2=createUrlTreeFromSnapshot(rootSnapshot,[],this.urlTree.queryParams,this.urlTree.fragment);return tree2.queryParams=this.urlTree.queryParams,routeState.url=this.urlSerializer.serialize(tree2),{state:routeState,tree:tree2}}))}match(rootSegmentGroup){let rootSnapshot=new ActivatedRouteSnapshot([],Object.freeze({}),Object.freeze(__spreadValues({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),PRIMARY_OUTLET,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,rootSegmentGroup,PRIMARY_OUTLET,rootSnapshot).pipe(map(children=>({children,rootSnapshot})),catchError(e=>{if(e instanceof AbsoluteRedirect)return this.urlTree=e.urlTree,this.match(e.urlTree.root);throw e instanceof NoMatch?this.noMatchError(e):e}))}processSegmentGroup(injector,config2,segmentGroup,outlet,parentRoute){return segmentGroup.segments.length===0&&segmentGroup.hasChildren()?this.processChildren(injector,config2,segmentGroup,parentRoute):this.processSegment(injector,config2,segmentGroup,segmentGroup.segments,outlet,!0,parentRoute).pipe(map(child=>child instanceof TreeNode?[child]:[]))}processChildren(injector,config2,segmentGroup,parentRoute){let childOutlets=[];for(let child of Object.keys(segmentGroup.children))child==="primary"?childOutlets.unshift(child):childOutlets.push(child);return from(childOutlets).pipe(concatMap(childOutlet=>{let child=segmentGroup.children[childOutlet],sortedConfig=sortByMatchingOutlets(config2,childOutlet);return this.processSegmentGroup(injector,sortedConfig,child,childOutlet,parentRoute)}),scan((children,outletChildren)=>(children.push(...outletChildren),children)),defaultIfEmpty(null),last2(),mergeMap(children=>{if(children===null)return noMatch$1(segmentGroup);let mergedChildren=mergeEmptyPathMatches(children);return sortActivatedRouteSnapshots(mergedChildren),of(mergedChildren)}))}processSegment(injector,routes2,segmentGroup,segments,outlet,allowRedirects,parentRoute){return from(routes2).pipe(concatMap(r=>this.processSegmentAgainstRoute(r._injector??injector,routes2,r,segmentGroup,segments,outlet,allowRedirects,parentRoute).pipe(catchError(e=>{if(e instanceof NoMatch)return of(null);throw e}))),first(x=>!!x),catchError(e=>{if(isEmptyError(e))return noLeftoversInUrl(segmentGroup,segments,outlet)?of(new NoLeftoversInUrl):noMatch$1(segmentGroup);throw e}))}processSegmentAgainstRoute(injector,routes2,route,rawSegment,segments,outlet,allowRedirects,parentRoute){return getOutlet(route)!==outlet&&(outlet===PRIMARY_OUTLET||!emptyPathMatch(rawSegment,segments,route))?noMatch$1(rawSegment):route.redirectTo===void 0?this.matchSegmentAgainstRoute(injector,rawSegment,route,segments,outlet,parentRoute):this.allowRedirects&&allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(injector,rawSegment,routes2,route,segments,outlet,parentRoute):noMatch$1(rawSegment)}expandSegmentAgainstRouteUsingRedirect(injector,segmentGroup,routes2,route,segments,outlet,parentRoute){let{matched,parameters,consumedSegments,positionalParamSegments,remainingSegments}=match(segmentGroup,route,segments);if(!matched)return noMatch$1(segmentGroup);typeof route.redirectTo=="string"&&route.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>MAX_ALLOWED_REDIRECTS&&(this.allowRedirects=!1));let currentSnapshot=new ActivatedRouteSnapshot(segments,parameters,Object.freeze(__spreadValues({},this.urlTree.queryParams)),this.urlTree.fragment,getData(route),getOutlet(route),route.component??route._loadedComponent??null,route,getResolve(route)),inherited=getInherited(currentSnapshot,parentRoute,this.paramsInheritanceStrategy);return currentSnapshot.params=Object.freeze(inherited.params),currentSnapshot.data=Object.freeze(inherited.data),this.applyRedirects.applyRedirectCommands(consumedSegments,route.redirectTo,positionalParamSegments,currentSnapshot,injector).pipe(switchMap(newTree=>this.applyRedirects.lineralizeSegments(route,newTree)),mergeMap(newSegments=>this.processSegment(injector,routes2,segmentGroup,newSegments.concat(remainingSegments),outlet,!1,parentRoute)))}matchSegmentAgainstRoute(injector,rawSegment,route,segments,outlet,parentRoute){let matchResult=matchWithChecks(rawSegment,route,segments,injector,this.urlSerializer);return route.path==="**"&&(rawSegment.children={}),matchResult.pipe(switchMap(result=>result.matched?(injector=route._injector??injector,this.getChildConfig(injector,route,segments).pipe(switchMap(({routes:childConfig})=>{let childInjector=route._loadedInjector??injector,{parameters,consumedSegments,remainingSegments}=result,snapshot=new ActivatedRouteSnapshot(consumedSegments,parameters,Object.freeze(__spreadValues({},this.urlTree.queryParams)),this.urlTree.fragment,getData(route),getOutlet(route),route.component??route._loadedComponent??null,route,getResolve(route)),inherited=getInherited(snapshot,parentRoute,this.paramsInheritanceStrategy);snapshot.params=Object.freeze(inherited.params),snapshot.data=Object.freeze(inherited.data);let{segmentGroup,slicedSegments}=split(rawSegment,consumedSegments,remainingSegments,childConfig);if(slicedSegments.length===0&&segmentGroup.hasChildren())return this.processChildren(childInjector,childConfig,segmentGroup,snapshot).pipe(map(children=>new TreeNode(snapshot,children)));if(childConfig.length===0&&slicedSegments.length===0)return of(new TreeNode(snapshot,[]));let matchedOnOutlet=getOutlet(route)===outlet;return this.processSegment(childInjector,childConfig,segmentGroup,slicedSegments,matchedOnOutlet?PRIMARY_OUTLET:outlet,!0,snapshot).pipe(map(child=>new TreeNode(snapshot,child instanceof TreeNode?[child]:[])))}))):noMatch$1(rawSegment)))}getChildConfig(injector,route,segments){return route.children?of({routes:route.children,injector}):route.loadChildren?route._loadedRoutes!==void 0?of({routes:route._loadedRoutes,injector:route._loadedInjector}):runCanLoadGuards(injector,route,segments,this.urlSerializer).pipe(mergeMap(shouldLoadResult=>shouldLoadResult?this.configLoader.loadChildren(injector,route).pipe(tap(cfg=>{route._loadedRoutes=cfg.routes,route._loadedInjector=cfg.injector})):canLoadFails(route))):of({routes:[],injector})}};function sortActivatedRouteSnapshots(nodes){nodes.sort((a,b)=>a.value.outlet===PRIMARY_OUTLET?-1:b.value.outlet===PRIMARY_OUTLET?1:a.value.outlet.localeCompare(b.value.outlet))}function hasEmptyPathConfig(node){let config2=node.value.routeConfig;return config2&&config2.path===""}function mergeEmptyPathMatches(nodes){let result=[],mergedNodes=new Set;for(let node of nodes){if(!hasEmptyPathConfig(node)){result.push(node);continue}let duplicateEmptyPathNode=result.find(resultNode=>node.value.routeConfig===resultNode.value.routeConfig);duplicateEmptyPathNode!==void 0?(duplicateEmptyPathNode.children.push(...node.children),mergedNodes.add(duplicateEmptyPathNode)):result.push(node)}for(let mergedNode of mergedNodes){let mergedChildren=mergeEmptyPathMatches(mergedNode.children);result.push(new TreeNode(mergedNode.value,mergedChildren))}return result.filter(n=>!mergedNodes.has(n))}function getData(route){return route.data||{}}function getResolve(route){return route.resolve||{}}function recognize(injector,configLoader,rootComponentType,config2,serializer,paramsInheritanceStrategy){return mergeMap(t=>recognize$1(injector,configLoader,rootComponentType,config2,t.extractedUrl,serializer,paramsInheritanceStrategy).pipe(map(({state:targetSnapshot,tree:urlAfterRedirects})=>__spreadProps(__spreadValues({},t),{targetSnapshot,urlAfterRedirects}))))}function resolveData(paramsInheritanceStrategy,injector){return mergeMap(t=>{let{targetSnapshot,guards:{canActivateChecks}}=t;if(!canActivateChecks.length)return of(t);let routesWithResolversToRun=new Set(canActivateChecks.map(check=>check.route)),routesNeedingDataUpdates=new Set;for(let route of routesWithResolversToRun)if(!routesNeedingDataUpdates.has(route))for(let newRoute of flattenRouteTree(route))routesNeedingDataUpdates.add(newRoute);let routesProcessed=0;return from(routesNeedingDataUpdates).pipe(concatMap(route=>routesWithResolversToRun.has(route)?runResolve(route,targetSnapshot,paramsInheritanceStrategy,injector):(route.data=getInherited(route,route.parent,paramsInheritanceStrategy).resolve,of(void 0))),tap(()=>routesProcessed++),takeLast(1),mergeMap(_=>routesProcessed===routesNeedingDataUpdates.size?of(t):EMPTY))})}function flattenRouteTree(route){let descendants=route.children.map(child=>flattenRouteTree(child)).flat();return[route,...descendants]}function runResolve(futureARS,futureRSS,paramsInheritanceStrategy,injector){let config2=futureARS.routeConfig,resolve=futureARS._resolve;return config2?.title!==void 0&&!hasStaticTitle(config2)&&(resolve[RouteTitleKey]=config2.title),defer(()=>(futureARS.data=getInherited(futureARS,futureARS.parent,paramsInheritanceStrategy).resolve,resolveNode(resolve,futureARS,futureRSS,injector).pipe(map(resolvedData=>(futureARS._resolvedData=resolvedData,futureARS.data=__spreadValues(__spreadValues({},futureARS.data),resolvedData),null)))))}function resolveNode(resolve,futureARS,futureRSS,injector){let keys=getDataKeys(resolve);if(keys.length===0)return of({});let data={};return from(keys).pipe(mergeMap(key=>getResolver(resolve[key],futureARS,futureRSS,injector).pipe(first(),tap(value=>{if(value instanceof RedirectCommand)throw redirectingNavigationError(new DefaultUrlSerializer,value);data[key]=value}))),takeLast(1),map(()=>data),catchError(e=>isEmptyError(e)?EMPTY:throwError(e)))}function getResolver(injectionToken,futureARS,futureRSS,injector){let closestInjector=getClosestRouteInjector(futureARS)??injector,resolver=getTokenOrFunctionIdentity(injectionToken,closestInjector),resolverValue=resolver.resolve?resolver.resolve(futureARS,futureRSS):runInInjectionContext(closestInjector,()=>resolver(futureARS,futureRSS));return wrapIntoObservable(resolverValue)}function switchTap(next){return switchMap(v=>{let nextResult=next(v);return nextResult?from(nextResult).pipe(map(()=>v)):of(v)})}var TitleStrategy=(()=>{class TitleStrategy2{buildTitle(snapshot){let pageTitle,route=snapshot.root;for(;route!==void 0;)pageTitle=this.getResolvedTitleForRoute(route)??pageTitle,route=route.children.find(child=>child.outlet===PRIMARY_OUTLET);return pageTitle}getResolvedTitleForRoute(snapshot){return snapshot.data[RouteTitleKey]}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||TitleStrategy2)};static \u0275prov=\u0275\u0275defineInjectable({token:TitleStrategy2,factory:()=>inject2(DefaultTitleStrategy),providedIn:"root"})}return TitleStrategy2})(),DefaultTitleStrategy=(()=>{class DefaultTitleStrategy2 extends TitleStrategy{title;constructor(title){super(),this.title=title}updateTitle(snapshot){let title=this.buildTitle(snapshot);title!==void 0&&this.title.setTitle(title)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DefaultTitleStrategy2)(\u0275\u0275inject(Title))};static \u0275prov=\u0275\u0275defineInjectable({token:DefaultTitleStrategy2,factory:DefaultTitleStrategy2.\u0275fac,providedIn:"root"})}return DefaultTitleStrategy2})(),ROUTER_CONFIGURATION=new InjectionToken("",{providedIn:"root",factory:()=>({})}),ROUTES=new InjectionToken(""),RouterConfigLoader=(()=>{class RouterConfigLoader2{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=inject2(Compiler);loadComponent(injector,route){if(this.componentLoaders.get(route))return this.componentLoaders.get(route);if(route._loadedComponent)return of(route._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(route);let loadRunner=wrapIntoObservable(runInInjectionContext(injector,()=>route.loadComponent())).pipe(map(maybeUnwrapDefaultExport),switchMap(maybeResolveResources),tap(component=>{this.onLoadEndListener&&this.onLoadEndListener(route),route._loadedComponent=component}),finalize(()=>{this.componentLoaders.delete(route)})),loader=new ConnectableObservable(loadRunner,()=>new Subject).pipe(refCount());return this.componentLoaders.set(route,loader),loader}loadChildren(parentInjector,route){if(this.childrenLoaders.get(route))return this.childrenLoaders.get(route);if(route._loadedRoutes)return of({routes:route._loadedRoutes,injector:route._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(route);let loadRunner=loadChildren(route,this.compiler,parentInjector,this.onLoadEndListener).pipe(finalize(()=>{this.childrenLoaders.delete(route)})),loader=new ConnectableObservable(loadRunner,()=>new Subject).pipe(refCount());return this.childrenLoaders.set(route,loader),loader}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||RouterConfigLoader2)};static \u0275prov=\u0275\u0275defineInjectable({token:RouterConfigLoader2,factory:RouterConfigLoader2.\u0275fac,providedIn:"root"})}return RouterConfigLoader2})();function loadChildren(route,compiler,parentInjector,onLoadEndListener){return wrapIntoObservable(runInInjectionContext(parentInjector,()=>route.loadChildren())).pipe(map(maybeUnwrapDefaultExport),switchMap(maybeResolveResources),mergeMap(t=>t instanceof NgModuleFactory$1||Array.isArray(t)?of(t):from(compiler.compileModuleAsync(t))),map(factoryOrRoutes=>{onLoadEndListener&&onLoadEndListener(route);let injector,rawRoutes,requireStandaloneComponents=!1;return Array.isArray(factoryOrRoutes)?(rawRoutes=factoryOrRoutes,requireStandaloneComponents=!0):(injector=factoryOrRoutes.create(parentInjector).injector,rawRoutes=injector.get(ROUTES,[],{optional:!0,self:!0}).flat()),{routes:rawRoutes.map(standardizeConfig),injector}}))}function isWrappedDefaultExport(value){return value&&typeof value=="object"&&"default"in value}function maybeUnwrapDefaultExport(input2){return isWrappedDefaultExport(input2)?input2.default:input2}function maybeResolveResources(value){return of(value)}var UrlHandlingStrategy=(()=>{class UrlHandlingStrategy2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||UrlHandlingStrategy2)};static \u0275prov=\u0275\u0275defineInjectable({token:UrlHandlingStrategy2,factory:()=>inject2(DefaultUrlHandlingStrategy),providedIn:"root"})}return UrlHandlingStrategy2})(),DefaultUrlHandlingStrategy=(()=>{class DefaultUrlHandlingStrategy2{shouldProcessUrl(url){return!0}extract(url){return url}merge(newUrlPart,wholeUrl){return newUrlPart}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DefaultUrlHandlingStrategy2)};static \u0275prov=\u0275\u0275defineInjectable({token:DefaultUrlHandlingStrategy2,factory:DefaultUrlHandlingStrategy2.\u0275fac,providedIn:"root"})}return DefaultUrlHandlingStrategy2})(),CREATE_VIEW_TRANSITION=new InjectionToken(""),VIEW_TRANSITION_OPTIONS=new InjectionToken("");function createViewTransition(injector,from3,to){let transitionOptions=injector.get(VIEW_TRANSITION_OPTIONS),document2=injector.get(DOCUMENT);if(!document2.startViewTransition||transitionOptions.skipNextTransition)return transitionOptions.skipNextTransition=!1,new Promise(resolve=>setTimeout(resolve));let resolveViewTransitionStarted,viewTransitionStarted=new Promise(resolve=>{resolveViewTransitionStarted=resolve}),transition2=document2.startViewTransition(()=>(resolveViewTransitionStarted(),createRenderPromise(injector)));transition2.ready.catch(error=>{});let{onViewTransitionCreated}=transitionOptions;return onViewTransitionCreated&&runInInjectionContext(injector,()=>onViewTransitionCreated({transition:transition2,from:from3,to})),viewTransitionStarted}function createRenderPromise(injector){return new Promise(resolve=>{afterNextRender({read:()=>setTimeout(resolve)},{injector})})}var NAVIGATION_ERROR_HANDLER=new InjectionToken(""),NavigationTransitions=(()=>{class NavigationTransitions2{currentNavigation=signal(null,{equal:()=>!1});currentTransition=null;lastSuccessfulNavigation=null;events=new Subject;transitionAbortWithErrorSubject=new Subject;configLoader=inject2(RouterConfigLoader);environmentInjector=inject2(EnvironmentInjector);destroyRef=inject2(DestroyRef);urlSerializer=inject2(UrlSerializer);rootContexts=inject2(ChildrenOutletContexts);location=inject2(Location);inputBindingEnabled=inject2(INPUT_BINDER,{optional:!0})!==null;titleStrategy=inject2(TitleStrategy);options=inject2(ROUTER_CONFIGURATION,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly";urlHandlingStrategy=inject2(UrlHandlingStrategy);createViewTransition=inject2(CREATE_VIEW_TRANSITION,{optional:!0});navigationErrorHandler=inject2(NAVIGATION_ERROR_HANDLER,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>of(void 0);rootComponentType=null;destroyed=!1;constructor(){let onLoadStart=r=>this.events.next(new RouteConfigLoadStart(r)),onLoadEnd=r=>this.events.next(new RouteConfigLoadEnd(r));this.configLoader.onLoadEndListener=onLoadEnd,this.configLoader.onLoadStartListener=onLoadStart,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}complete(){this.transitions?.complete()}handleNavigationRequest(request){let id=++this.navigationId;untracked2(()=>{this.transitions?.next(__spreadProps(__spreadValues({},request),{extractedUrl:this.urlHandlingStrategy.extract(request.rawUrl),targetSnapshot:null,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null,abortController:new AbortController,id}))})}setupNavigations(router){return this.transitions=new BehaviorSubject(null),this.transitions.pipe(filter(t=>t!==null),switchMap(overallTransitionState=>{let completedOrAborted=!1;return of(overallTransitionState).pipe(switchMap(t=>{if(this.navigationId>overallTransitionState.id)return this.cancelNavigationTransition(overallTransitionState,"",NavigationCancellationCode.SupersededByNewNavigation),EMPTY;this.currentTransition=overallTransitionState,this.currentNavigation.set({id:t.id,initialUrl:t.rawUrl,extractedUrl:t.extractedUrl,targetBrowserUrl:typeof t.extras.browserUrl=="string"?this.urlSerializer.parse(t.extras.browserUrl):t.extras.browserUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?__spreadProps(__spreadValues({},this.lastSuccessfulNavigation),{previousNavigation:null}):null,abort:()=>t.abortController.abort()});let urlTransition=!router.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),onSameUrlNavigation=t.extras.onSameUrlNavigation??router.onSameUrlNavigation;if(!urlTransition&&onSameUrlNavigation!=="reload")return this.events.next(new NavigationSkipped(t.id,this.urlSerializer.serialize(t.rawUrl),"",NavigationSkippedCode.IgnoredSameUrlNavigation)),t.resolve(!1),EMPTY;if(this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return of(t).pipe(switchMap(t2=>(this.events.next(new NavigationStart(t2.id,this.urlSerializer.serialize(t2.extractedUrl),t2.source,t2.restoredState)),t2.id!==this.navigationId?EMPTY:Promise.resolve(t2))),recognize(this.environmentInjector,this.configLoader,this.rootComponentType,router.config,this.urlSerializer,this.paramsInheritanceStrategy),tap(t2=>{overallTransitionState.targetSnapshot=t2.targetSnapshot,overallTransitionState.urlAfterRedirects=t2.urlAfterRedirects,this.currentNavigation.update(nav=>(nav.finalUrl=t2.urlAfterRedirects,nav));let routesRecognized=new RoutesRecognized(t2.id,this.urlSerializer.serialize(t2.extractedUrl),this.urlSerializer.serialize(t2.urlAfterRedirects),t2.targetSnapshot);this.events.next(routesRecognized)}));if(urlTransition&&this.urlHandlingStrategy.shouldProcessUrl(t.currentRawUrl)){let{id,extractedUrl,source,restoredState,extras}=t,navStart=new NavigationStart(id,this.urlSerializer.serialize(extractedUrl),source,restoredState);this.events.next(navStart);let targetSnapshot=createEmptyState(this.rootComponentType).snapshot;return this.currentTransition=overallTransitionState=__spreadProps(__spreadValues({},t),{targetSnapshot,urlAfterRedirects:extractedUrl,extras:__spreadProps(__spreadValues({},extras),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.update(nav=>(nav.finalUrl=extractedUrl,nav)),of(overallTransitionState)}else return this.events.next(new NavigationSkipped(t.id,this.urlSerializer.serialize(t.extractedUrl),"",NavigationSkippedCode.IgnoredByUrlHandlingStrategy)),t.resolve(!1),EMPTY}),tap(t=>{let guardsStart=new GuardsCheckStart(t.id,this.urlSerializer.serialize(t.extractedUrl),this.urlSerializer.serialize(t.urlAfterRedirects),t.targetSnapshot);this.events.next(guardsStart)}),map(t=>(this.currentTransition=overallTransitionState=__spreadProps(__spreadValues({},t),{guards:getAllRouteGuards(t.targetSnapshot,t.currentSnapshot,this.rootContexts)}),overallTransitionState)),checkGuards(this.environmentInjector,evt=>this.events.next(evt)),tap(t=>{if(overallTransitionState.guardsResult=t.guardsResult,t.guardsResult&&typeof t.guardsResult!="boolean")throw redirectingNavigationError(this.urlSerializer,t.guardsResult);let guardsEnd=new GuardsCheckEnd(t.id,this.urlSerializer.serialize(t.extractedUrl),this.urlSerializer.serialize(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.events.next(guardsEnd)}),filter(t=>t.guardsResult?!0:(this.cancelNavigationTransition(t,"",NavigationCancellationCode.GuardRejected),!1)),switchTap(t=>{if(t.guards.canActivateChecks.length!==0)return of(t).pipe(tap(t2=>{let resolveStart=new ResolveStart(t2.id,this.urlSerializer.serialize(t2.extractedUrl),this.urlSerializer.serialize(t2.urlAfterRedirects),t2.targetSnapshot);this.events.next(resolveStart)}),switchMap(t2=>{let dataResolved=!1;return of(t2).pipe(resolveData(this.paramsInheritanceStrategy,this.environmentInjector),tap({next:()=>dataResolved=!0,complete:()=>{dataResolved||this.cancelNavigationTransition(t2,"",NavigationCancellationCode.NoDataFromResolver)}}))}),tap(t2=>{let resolveEnd=new ResolveEnd(t2.id,this.urlSerializer.serialize(t2.extractedUrl),this.urlSerializer.serialize(t2.urlAfterRedirects),t2.targetSnapshot);this.events.next(resolveEnd)}))}),switchTap(t=>{let loadComponents=route=>{let loaders=[];if(route.routeConfig?.loadComponent){let injector=getClosestRouteInjector(route)??this.environmentInjector;loaders.push(this.configLoader.loadComponent(injector,route.routeConfig).pipe(tap(loadedComponent=>{route.component=loadedComponent}),map(()=>{})))}for(let child of route.children)loaders.push(...loadComponents(child));return loaders};return combineLatest(loadComponents(t.targetSnapshot.root)).pipe(defaultIfEmpty(null),take(1))}),switchTap(()=>this.afterPreactivation()),switchMap(()=>{let{currentSnapshot,targetSnapshot}=overallTransitionState,viewTransitionStarted=this.createViewTransition?.(this.environmentInjector,currentSnapshot.root,targetSnapshot.root);return viewTransitionStarted?from(viewTransitionStarted).pipe(map(()=>overallTransitionState)):of(overallTransitionState)}),map(t=>{let targetRouterState=createRouterState(router.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return this.currentTransition=overallTransitionState=__spreadProps(__spreadValues({},t),{targetRouterState}),this.currentNavigation.update(nav=>(nav.targetRouterState=targetRouterState,nav)),overallTransitionState}),tap(()=>{this.events.next(new BeforeActivateRoutes)}),activateRoutes(this.rootContexts,router.routeReuseStrategy,evt=>this.events.next(evt),this.inputBindingEnabled),take(1),takeUntil(new Observable(subscriber=>{let abortSignal=overallTransitionState.abortController.signal,handler=()=>subscriber.next();return abortSignal.addEventListener("abort",handler),()=>abortSignal.removeEventListener("abort",handler)}).pipe(filter(()=>!completedOrAborted&&!overallTransitionState.targetRouterState),tap(()=>{this.cancelNavigationTransition(overallTransitionState,overallTransitionState.abortController.signal.reason+"",NavigationCancellationCode.Aborted)}))),tap({next:t=>{completedOrAborted=!0,this.lastSuccessfulNavigation=untracked2(this.currentNavigation),this.events.next(new NavigationEnd(t.id,this.urlSerializer.serialize(t.extractedUrl),this.urlSerializer.serialize(t.urlAfterRedirects))),this.titleStrategy?.updateTitle(t.targetRouterState.snapshot),t.resolve(!0)},complete:()=>{completedOrAborted=!0}}),takeUntil(this.transitionAbortWithErrorSubject.pipe(tap(err=>{throw err}))),finalize(()=>{completedOrAborted||this.cancelNavigationTransition(overallTransitionState,"",NavigationCancellationCode.SupersededByNewNavigation),this.currentTransition?.id===overallTransitionState.id&&(this.currentNavigation.set(null),this.currentTransition=null)}),catchError(e=>{if(this.destroyed)return overallTransitionState.resolve(!1),EMPTY;if(completedOrAborted=!0,isNavigationCancelingError(e))this.events.next(new NavigationCancel(overallTransitionState.id,this.urlSerializer.serialize(overallTransitionState.extractedUrl),e.message,e.cancellationCode)),isRedirectingNavigationCancelingError(e)?this.events.next(new RedirectRequest(e.url,e.navigationBehaviorOptions)):overallTransitionState.resolve(!1);else{let navigationError=new NavigationError(overallTransitionState.id,this.urlSerializer.serialize(overallTransitionState.extractedUrl),e,overallTransitionState.targetSnapshot??void 0);try{let navigationErrorHandlerResult=runInInjectionContext(this.environmentInjector,()=>this.navigationErrorHandler?.(navigationError));if(navigationErrorHandlerResult instanceof RedirectCommand){let{message,cancellationCode}=redirectingNavigationError(this.urlSerializer,navigationErrorHandlerResult);this.events.next(new NavigationCancel(overallTransitionState.id,this.urlSerializer.serialize(overallTransitionState.extractedUrl),message,cancellationCode)),this.events.next(new RedirectRequest(navigationErrorHandlerResult.redirectTo,navigationErrorHandlerResult.navigationBehaviorOptions))}else throw this.events.next(navigationError),e}catch(ee){this.options.resolveNavigationPromiseOnError?overallTransitionState.resolve(!1):overallTransitionState.reject(ee)}}return EMPTY}))}))}cancelNavigationTransition(t,reason,code){let navCancel=new NavigationCancel(t.id,this.urlSerializer.serialize(t.extractedUrl),reason,code);this.events.next(navCancel),t.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let currentBrowserUrl=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),currentNavigation=untracked2(this.currentNavigation),targetBrowserUrl=currentNavigation?.targetBrowserUrl??currentNavigation?.extractedUrl;return currentBrowserUrl.toString()!==targetBrowserUrl?.toString()&&!currentNavigation?.extras.skipLocationChange}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NavigationTransitions2)};static \u0275prov=\u0275\u0275defineInjectable({token:NavigationTransitions2,factory:NavigationTransitions2.\u0275fac,providedIn:"root"})}return NavigationTransitions2})();function isBrowserTriggeredNavigation(source){return source!==IMPERATIVE_NAVIGATION}var RouteReuseStrategy=(()=>{class RouteReuseStrategy2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||RouteReuseStrategy2)};static \u0275prov=\u0275\u0275defineInjectable({token:RouteReuseStrategy2,factory:()=>inject2(DefaultRouteReuseStrategy),providedIn:"root"})}return RouteReuseStrategy2})(),BaseRouteReuseStrategy=class{shouldDetach(route){return!1}store(route,detachedTree){}shouldAttach(route){return!1}retrieve(route){return null}shouldReuseRoute(future,curr){return future.routeConfig===curr.routeConfig}},DefaultRouteReuseStrategy=(()=>{class DefaultRouteReuseStrategy2 extends BaseRouteReuseStrategy{static \u0275fac=(()=>{let \u0275DefaultRouteReuseStrategy_BaseFactory;return function(__ngFactoryType__){return(\u0275DefaultRouteReuseStrategy_BaseFactory||(\u0275DefaultRouteReuseStrategy_BaseFactory=\u0275\u0275getInheritedFactory(DefaultRouteReuseStrategy2)))(__ngFactoryType__||DefaultRouteReuseStrategy2)}})();static \u0275prov=\u0275\u0275defineInjectable({token:DefaultRouteReuseStrategy2,factory:DefaultRouteReuseStrategy2.\u0275fac,providedIn:"root"})}return DefaultRouteReuseStrategy2})(),StateManager=(()=>{class StateManager2{urlSerializer=inject2(UrlSerializer);options=inject2(ROUTER_CONFIGURATION,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=inject2(Location);urlHandlingStrategy=inject2(UrlHandlingStrategy);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new UrlTree;getCurrentUrlTree(){return this.currentUrlTree}rawUrlTree=this.currentUrlTree;getRawUrlTree(){return this.rawUrlTree}createBrowserPath({finalUrl,initialUrl,targetBrowserUrl}){let rawUrl=finalUrl!==void 0?this.urlHandlingStrategy.merge(finalUrl,initialUrl):initialUrl,url=targetBrowserUrl??rawUrl;return url instanceof UrlTree?this.urlSerializer.serialize(url):url}commitTransition({targetRouterState,finalUrl,initialUrl}){finalUrl&&targetRouterState?(this.currentUrlTree=finalUrl,this.rawUrlTree=this.urlHandlingStrategy.merge(finalUrl,initialUrl),this.routerState=targetRouterState):this.rawUrlTree=initialUrl}routerState=createEmptyState(null);getRouterState(){return this.routerState}stateMemento=this.createStateMemento();updateStateMemento(){this.stateMemento=this.createStateMemento()}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}resetInternalState({finalUrl}){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,finalUrl??this.rawUrlTree)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||StateManager2)};static \u0275prov=\u0275\u0275defineInjectable({token:StateManager2,factory:()=>inject2(HistoryStateManager),providedIn:"root"})}return StateManager2})(),HistoryStateManager=(()=>{class HistoryStateManager2 extends StateManager{currentPageId=0;lastSuccessfulId=-1;restoredState(){return this.location.getState()}get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}registerNonRouterCurrentEntryChangeListener(listener){return this.location.subscribe(event=>{event.type==="popstate"&&setTimeout(()=>{listener(event.url,event.state,"popstate")})})}handleRouterEvent(e,currentTransition){e instanceof NavigationStart?this.updateStateMemento():e instanceof NavigationSkipped?this.commitTransition(currentTransition):e instanceof RoutesRecognized?this.urlUpdateStrategy==="eager"&&(currentTransition.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(currentTransition),currentTransition)):e instanceof BeforeActivateRoutes?(this.commitTransition(currentTransition),this.urlUpdateStrategy==="deferred"&&!currentTransition.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(currentTransition),currentTransition)):e instanceof NavigationCancel&&e.code!==NavigationCancellationCode.SupersededByNewNavigation&&e.code!==NavigationCancellationCode.Redirect?this.restoreHistory(currentTransition):e instanceof NavigationError?this.restoreHistory(currentTransition,!0):e instanceof NavigationEnd&&(this.lastSuccessfulId=e.id,this.currentPageId=this.browserPageId)}setBrowserUrl(path,{extras,id}){let{replaceUrl,state:state2}=extras;if(this.location.isCurrentPathEqualTo(path)||replaceUrl){let currentBrowserPageId=this.browserPageId,newState=__spreadValues(__spreadValues({},state2),this.generateNgRouterState(id,currentBrowserPageId));this.location.replaceState(path,"",newState)}else{let newState=__spreadValues(__spreadValues({},state2),this.generateNgRouterState(id,this.browserPageId+1));this.location.go(path,"",newState)}}restoreHistory(navigation,restoringFromCaughtError=!1){if(this.canceledNavigationResolution==="computed"){let currentBrowserPageId=this.browserPageId,targetPagePosition=this.currentPageId-currentBrowserPageId;targetPagePosition!==0?this.location.historyGo(targetPagePosition):this.getCurrentUrlTree()===navigation.finalUrl&&targetPagePosition===0&&(this.resetInternalState(navigation),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(restoringFromCaughtError&&this.resetInternalState(navigation),this.resetUrlToCurrentUrlTree())}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.getRawUrlTree()),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(navigationId,routerPageId){return this.canceledNavigationResolution==="computed"?{navigationId,\u0275routerPageId:routerPageId}:{navigationId}}static \u0275fac=(()=>{let \u0275HistoryStateManager_BaseFactory;return function(__ngFactoryType__){return(\u0275HistoryStateManager_BaseFactory||(\u0275HistoryStateManager_BaseFactory=\u0275\u0275getInheritedFactory(HistoryStateManager2)))(__ngFactoryType__||HistoryStateManager2)}})();static \u0275prov=\u0275\u0275defineInjectable({token:HistoryStateManager2,factory:HistoryStateManager2.\u0275fac,providedIn:"root"})}return HistoryStateManager2})();function afterNextNavigation(router,action){router.events.pipe(filter(e=>e instanceof NavigationEnd||e instanceof NavigationCancel||e instanceof NavigationError||e instanceof NavigationSkipped),map(e=>e instanceof NavigationEnd||e instanceof NavigationSkipped?0:(e instanceof NavigationCancel?e.code===NavigationCancellationCode.Redirect||e.code===NavigationCancellationCode.SupersededByNewNavigation:!1)?2:1),filter(result=>result!==2),take(1)).subscribe(()=>{action()})}var exactMatchOptions={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},subsetMatchOptions={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},Router=(()=>{class Router2{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=inject2(Console);stateManager=inject2(StateManager);options=inject2(ROUTER_CONFIGURATION,{optional:!0})||{};pendingTasks=inject2(PendingTasksInternal);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=inject2(NavigationTransitions);urlSerializer=inject2(UrlSerializer);location=inject2(Location);urlHandlingStrategy=inject2(UrlHandlingStrategy);injector=inject2(EnvironmentInjector);_events=new Subject;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=inject2(RouteReuseStrategy);onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=inject2(ROUTES,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!inject2(INPUT_BINDER,{optional:!0});currentNavigation=this.navigationTransitions.currentNavigation.asReadonly();constructor(){this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this).subscribe({error:e=>{this.console.warn(e)}}),this.subscribeToNavigationEvents()}eventsSubscription=new Subscription;subscribeToNavigationEvents(){let subscription=this.navigationTransitions.events.subscribe(e=>{try{let currentTransition=this.navigationTransitions.currentTransition,currentNavigation=untracked2(this.navigationTransitions.currentNavigation);if(currentTransition!==null&¤tNavigation!==null){if(this.stateManager.handleRouterEvent(e,currentNavigation),e instanceof NavigationCancel&&e.code!==NavigationCancellationCode.Redirect&&e.code!==NavigationCancellationCode.SupersededByNewNavigation)this.navigated=!0;else if(e instanceof NavigationEnd)this.navigated=!0;else if(e instanceof RedirectRequest){let opts=e.navigationBehaviorOptions,mergedTree=this.urlHandlingStrategy.merge(e.url,currentTransition.currentRawUrl),extras=__spreadValues({browserUrl:currentTransition.extras.browserUrl,info:currentTransition.extras.info,skipLocationChange:currentTransition.extras.skipLocationChange,replaceUrl:currentTransition.extras.replaceUrl||this.urlUpdateStrategy==="eager"||isBrowserTriggeredNavigation(currentTransition.source)},opts);this.scheduleNavigation(mergedTree,IMPERATIVE_NAVIGATION,null,extras,{resolve:currentTransition.resolve,reject:currentTransition.reject,promise:currentTransition.promise})}}isPublicRouterEvent(e)&&this._events.next(e)}catch(e2){this.navigationTransitions.transitionAbortWithErrorSubject.next(e2)}});this.eventsSubscription.add(subscription)}resetRootComponentType(rootComponentType){this.routerState.root.component=rootComponentType,this.navigationTransitions.rootComponentType=rootComponentType}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),IMPERATIVE_NAVIGATION,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((url,state2,source)=>{this.navigateToSyncWithBrowser(url,source,state2)})}navigateToSyncWithBrowser(url,source,state2){let extras={replaceUrl:!0},restoredState=state2?.navigationId?state2:null;if(state2){let stateCopy=__spreadValues({},state2);delete stateCopy.navigationId,delete stateCopy.\u0275routerPageId,Object.keys(stateCopy).length!==0&&(extras.state=stateCopy)}let urlTree=this.parseUrl(url);this.scheduleNavigation(urlTree,source,restoredState,extras).catch(e=>{this.disposed||this.injector.get(INTERNAL_APPLICATION_ERROR_HANDLER)(e)})}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return untracked2(this.navigationTransitions.currentNavigation)}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(config2){this.config=config2.map(standardizeConfig),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this._events.unsubscribe(),this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription&&(this.nonRouterCurrentEntryChangeSubscription.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(commands,navigationExtras={}){let{relativeTo,queryParams,fragment,queryParamsHandling,preserveFragment}=navigationExtras,f=preserveFragment?this.currentUrlTree.fragment:fragment,q=null;switch(queryParamsHandling??this.options.defaultQueryParamsHandling){case"merge":q=__spreadValues(__spreadValues({},this.currentUrlTree.queryParams),queryParams);break;case"preserve":q=this.currentUrlTree.queryParams;break;default:q=queryParams||null}q!==null&&(q=this.removeEmptyProps(q));let relativeToUrlSegmentGroup;try{let relativeToSnapshot=relativeTo?relativeTo.snapshot:this.routerState.snapshot.root;relativeToUrlSegmentGroup=createSegmentGroupFromRoute(relativeToSnapshot)}catch{(typeof commands[0]!="string"||commands[0][0]!=="/")&&(commands=[]),relativeToUrlSegmentGroup=this.currentUrlTree.root}return createUrlTreeFromSegmentGroup(relativeToUrlSegmentGroup,commands,q,f??null)}navigateByUrl(url,extras={skipLocationChange:!1}){let urlTree=isUrlTree(url)?url:this.parseUrl(url),mergedTree=this.urlHandlingStrategy.merge(urlTree,this.rawUrlTree);return this.scheduleNavigation(mergedTree,IMPERATIVE_NAVIGATION,null,extras)}navigate(commands,extras={skipLocationChange:!1}){return validateCommands(commands),this.navigateByUrl(this.createUrlTree(commands,extras),extras)}serializeUrl(url){return this.urlSerializer.serialize(url)}parseUrl(url){try{return this.urlSerializer.parse(url)}catch{return this.urlSerializer.parse("/")}}isActive(url,matchOptions){let options;if(matchOptions===!0?options=__spreadValues({},exactMatchOptions):matchOptions===!1?options=__spreadValues({},subsetMatchOptions):options=matchOptions,isUrlTree(url))return containsTree(this.currentUrlTree,url,options);let urlTree=this.parseUrl(url);return containsTree(this.currentUrlTree,urlTree,options)}removeEmptyProps(params){return Object.entries(params).reduce((result,[key,value])=>(value!=null&&(result[key]=value),result),{})}scheduleNavigation(rawUrl,source,restoredState,extras,priorPromise){if(this.disposed)return Promise.resolve(!1);let resolve,reject,promise;priorPromise?(resolve=priorPromise.resolve,reject=priorPromise.reject,promise=priorPromise.promise):promise=new Promise((res,rej)=>{resolve=res,reject=rej});let taskId=this.pendingTasks.add();return afterNextNavigation(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(taskId))}),this.navigationTransitions.handleNavigationRequest({source,restoredState,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl,extras,resolve,reject,promise,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),promise.catch(e=>Promise.reject(e))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Router2)};static \u0275prov=\u0275\u0275defineInjectable({token:Router2,factory:Router2.\u0275fac,providedIn:"root"})}return Router2})();function validateCommands(commands){for(let i=0;i<commands.length;i++)if(commands[i]==null)throw new RuntimeError(4008,!1)}var RouterLink=(()=>{class RouterLink2{router;route;tabIndexAttribute;renderer;el;locationStrategy;reactiveHref=signal(null);get href(){return untracked2(this.reactiveHref)}set href(value){this.reactiveHref.set(value)}target;queryParams;fragment;queryParamsHandling;state;info;relativeTo;isAnchorElement;subscription;onChanges=new Subject;applicationErrorHandler=inject2(INTERNAL_APPLICATION_ERROR_HANDLER);options=inject2(ROUTER_CONFIGURATION,{optional:!0});constructor(router,route,tabIndexAttribute,renderer,el,locationStrategy){this.router=router,this.route=route,this.tabIndexAttribute=tabIndexAttribute,this.renderer=renderer,this.el=el,this.locationStrategy=locationStrategy,this.reactiveHref.set(inject2(new HostAttributeToken("href"),{optional:!0}));let tagName=el.nativeElement.tagName?.toLowerCase();this.isAnchorElement=tagName==="a"||tagName==="area"||!!(typeof customElements=="object"&&customElements.get(tagName)?.observedAttributes?.includes?.("href")),this.isAnchorElement?this.setTabIndexIfNotOnNativeEl("0"):this.subscribeToNavigationEventsIfNecessary()}subscribeToNavigationEventsIfNecessary(){if(this.subscription!==void 0||!this.isAnchorElement)return;let createSubcription=this.preserveFragment,dependsOnRouterState=handling=>handling==="merge"||handling==="preserve";createSubcription||=dependsOnRouterState(this.queryParamsHandling),createSubcription||=!this.queryParamsHandling&&!dependsOnRouterState(this.options?.defaultQueryParamsHandling),createSubcription&&(this.subscription=this.router.events.subscribe(s=>{s instanceof NavigationEnd&&this.updateHref()}))}preserveFragment=!1;skipLocationChange=!1;replaceUrl=!1;setTabIndexIfNotOnNativeEl(newTabIndex){this.tabIndexAttribute!=null||this.isAnchorElement||this.applyAttributeValue("tabindex",newTabIndex)}ngOnChanges(changes){this.isAnchorElement&&(this.updateHref(),this.subscribeToNavigationEventsIfNecessary()),this.onChanges.next(this)}routerLinkInput=null;set routerLink(commandsOrUrlTree){commandsOrUrlTree==null?(this.routerLinkInput=null,this.setTabIndexIfNotOnNativeEl(null)):(isUrlTree(commandsOrUrlTree)?this.routerLinkInput=commandsOrUrlTree:this.routerLinkInput=Array.isArray(commandsOrUrlTree)?commandsOrUrlTree:[commandsOrUrlTree],this.setTabIndexIfNotOnNativeEl("0"))}onClick(button,ctrlKey,shiftKey,altKey,metaKey){let urlTree=this.urlTree;if(urlTree===null||this.isAnchorElement&&(button!==0||ctrlKey||shiftKey||altKey||metaKey||typeof this.target=="string"&&this.target!="_self"))return!0;let extras={skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state,info:this.info};return this.router.navigateByUrl(urlTree,extras)?.catch(e=>{this.applicationErrorHandler(e)}),!this.isAnchorElement}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){let urlTree=this.urlTree;this.reactiveHref.set(urlTree!==null&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(urlTree))??"":null)}applyAttributeValue(attrName,attrValue){let renderer=this.renderer,nativeElement=this.el.nativeElement;attrValue!==null?renderer.setAttribute(nativeElement,attrName,attrValue):renderer.removeAttribute(nativeElement,attrName)}get urlTree(){return this.routerLinkInput===null?null:isUrlTree(this.routerLinkInput)?this.routerLinkInput:this.router.createUrlTree(this.routerLinkInput,{relativeTo:this.relativeTo!==void 0?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||RouterLink2)(\u0275\u0275directiveInject(Router),\u0275\u0275directiveInject(ActivatedRoute),\u0275\u0275injectAttribute("tabindex"),\u0275\u0275directiveInject(Renderer2),\u0275\u0275directiveInject(ElementRef),\u0275\u0275directiveInject(LocationStrategy))};static \u0275dir=\u0275\u0275defineDirective({type:RouterLink2,selectors:[["","routerLink",""]],hostVars:2,hostBindings:function(rf,ctx){rf&1&&\u0275\u0275listener("click",function($event){return ctx.onClick($event.button,$event.ctrlKey,$event.shiftKey,$event.altKey,$event.metaKey)}),rf&2&&\u0275\u0275attribute("href",ctx.reactiveHref(),\u0275\u0275sanitizeUrlOrResourceUrl)("target",ctx.target)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",info:"info",relativeTo:"relativeTo",preserveFragment:[2,"preserveFragment","preserveFragment",booleanAttribute],skipLocationChange:[2,"skipLocationChange","skipLocationChange",booleanAttribute],replaceUrl:[2,"replaceUrl","replaceUrl",booleanAttribute],routerLink:"routerLink"},features:[\u0275\u0275NgOnChangesFeature]})}return RouterLink2})(),RouterLinkActive=(()=>{class RouterLinkActive2{router;element;renderer;cdr;link;links;classes=[];routerEventsSubscription;linkInputChangesSubscription;_isActive=!1;get isActive(){return this._isActive}routerLinkActiveOptions={exact:!1};ariaCurrentWhenActive;isActiveChange=new EventEmitter;constructor(router,element,renderer,cdr,link){this.router=router,this.element=element,this.renderer=renderer,this.cdr=cdr,this.link=link,this.routerEventsSubscription=router.events.subscribe(s=>{s instanceof NavigationEnd&&this.update()})}ngAfterContentInit(){of(this.links.changes,of(null)).pipe(mergeAll()).subscribe(_=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();let allLinkChanges=[...this.links.toArray(),this.link].filter(link=>!!link).map(link=>link.onChanges);this.linkInputChangesSubscription=from(allLinkChanges).pipe(mergeAll()).subscribe(link=>{this._isActive!==this.isLinkActive(this.router)(link)&&this.update()})}set routerLinkActive(data){let classes=Array.isArray(data)?data:data.split(" ");this.classes=classes.filter(c=>!!c)}ngOnChanges(changes){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{let hasActiveLinks=this.hasActiveLinks();this.classes.forEach(c=>{hasActiveLinks?this.renderer.addClass(this.element.nativeElement,c):this.renderer.removeClass(this.element.nativeElement,c)}),hasActiveLinks&&this.ariaCurrentWhenActive!==void 0?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this._isActive!==hasActiveLinks&&(this._isActive=hasActiveLinks,this.cdr.markForCheck(),this.isActiveChange.emit(hasActiveLinks))})}isLinkActive(router){let options=isActiveMatchOptions(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return link=>{let urlTree=link.urlTree;return urlTree?router.isActive(urlTree,options):!1}}hasActiveLinks(){let isActiveCheckFn=this.isLinkActive(this.router);return this.link&&isActiveCheckFn(this.link)||this.links.some(isActiveCheckFn)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||RouterLinkActive2)(\u0275\u0275directiveInject(Router),\u0275\u0275directiveInject(ElementRef),\u0275\u0275directiveInject(Renderer2),\u0275\u0275directiveInject(ChangeDetectorRef),\u0275\u0275directiveInject(RouterLink,8))};static \u0275dir=\u0275\u0275defineDirective({type:RouterLinkActive2,selectors:[["","routerLinkActive",""]],contentQueries:function(rf,ctx,dirIndex){if(rf&1&&\u0275\u0275contentQuery(dirIndex,RouterLink,5),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx.links=_t)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],features:[\u0275\u0275NgOnChangesFeature]})}return RouterLinkActive2})();function isActiveMatchOptions(options){return!!options.paths}var PreloadingStrategy=class{};var RouterPreloader=(()=>{class RouterPreloader2{router;injector;preloadingStrategy;loader;subscription;constructor(router,injector,preloadingStrategy,loader){this.router=router,this.injector=injector,this.preloadingStrategy=preloadingStrategy,this.loader=loader}setUpPreloading(){this.subscription=this.router.events.pipe(filter(e=>e instanceof NavigationEnd),concatMap(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(injector,routes2){let res=[];for(let route of routes2){route.providers&&!route._injector&&(route._injector=createEnvironmentInjector(route.providers,injector,`Route: ${route.path}`));let injectorForCurrentRoute=route._injector??injector,injectorForChildren=route._loadedInjector??injectorForCurrentRoute;(route.loadChildren&&!route._loadedRoutes&&route.canLoad===void 0||route.loadComponent&&!route._loadedComponent)&&res.push(this.preloadConfig(injectorForCurrentRoute,route)),(route.children||route._loadedRoutes)&&res.push(this.processRoutes(injectorForChildren,route.children??route._loadedRoutes))}return from(res).pipe(mergeAll())}preloadConfig(injector,route){return this.preloadingStrategy.preload(route,()=>{let loadedChildren$;route.loadChildren&&route.canLoad===void 0?loadedChildren$=this.loader.loadChildren(injector,route):loadedChildren$=of(null);let recursiveLoadChildren$=loadedChildren$.pipe(mergeMap(config2=>config2===null?of(void 0):(route._loadedRoutes=config2.routes,route._loadedInjector=config2.injector,this.processRoutes(config2.injector??injector,config2.routes))));if(route.loadComponent&&!route._loadedComponent){let loadComponent$=this.loader.loadComponent(injector,route);return from([recursiveLoadChildren$,loadComponent$]).pipe(mergeAll())}else return recursiveLoadChildren$})}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||RouterPreloader2)(\u0275\u0275inject(Router),\u0275\u0275inject(EnvironmentInjector),\u0275\u0275inject(PreloadingStrategy),\u0275\u0275inject(RouterConfigLoader))};static \u0275prov=\u0275\u0275defineInjectable({token:RouterPreloader2,factory:RouterPreloader2.\u0275fac,providedIn:"root"})}return RouterPreloader2})(),ROUTER_SCROLLER=new InjectionToken(""),RouterScroller=(()=>{class RouterScroller2{urlSerializer;transitions;viewportScroller;zone;options;routerEventsSubscription;scrollEventsSubscription;lastId=0;lastSource=IMPERATIVE_NAVIGATION;restoredId=0;store={};constructor(urlSerializer,transitions,viewportScroller,zone,options={}){this.urlSerializer=urlSerializer,this.transitions=transitions,this.viewportScroller=viewportScroller,this.zone=zone,this.options=options,options.scrollPositionRestoration||="disabled",options.anchorScrolling||="disabled"}init(){this.options.scrollPositionRestoration!=="disabled"&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(e=>{e instanceof NavigationStart?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=e.navigationTrigger,this.restoredId=e.restoredState?e.restoredState.navigationId:0):e instanceof NavigationEnd?(this.lastId=e.id,this.scheduleScrollEvent(e,this.urlSerializer.parse(e.urlAfterRedirects).fragment)):e instanceof NavigationSkipped&&e.code===NavigationSkippedCode.IgnoredSameUrlNavigation&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(e,this.urlSerializer.parse(e.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(e=>{e instanceof Scroll&&(e.position?this.options.scrollPositionRestoration==="top"?this.viewportScroller.scrollToPosition([0,0]):this.options.scrollPositionRestoration==="enabled"&&this.viewportScroller.scrollToPosition(e.position):e.anchor&&this.options.anchorScrolling==="enabled"?this.viewportScroller.scrollToAnchor(e.anchor):this.options.scrollPositionRestoration!=="disabled"&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(routerEvent,anchor){this.zone.runOutsideAngular(()=>__async(this,null,function*(){yield new Promise(resolve=>{setTimeout(resolve),typeof requestAnimationFrame<"u"&&requestAnimationFrame(resolve)}),this.zone.run(()=>{this.transitions.events.next(new Scroll(routerEvent,this.lastSource==="popstate"?this.store[this.restoredId]:null,anchor))})}))}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}static \u0275fac=function(__ngFactoryType__){\u0275\u0275invalidFactory()};static \u0275prov=\u0275\u0275defineInjectable({token:RouterScroller2,factory:RouterScroller2.\u0275fac})}return RouterScroller2})();function rootRoute(router){return router.routerState.root}function routerFeature(kind,providers){return{\u0275kind:kind,\u0275providers:providers}}function getBootstrapListener(){let injector=inject2(Injector);return bootstrappedComponentRef=>{let ref=injector.get(ApplicationRef);if(bootstrappedComponentRef!==ref.components[0])return;let router=injector.get(Router),bootstrapDone=injector.get(BOOTSTRAP_DONE);injector.get(INITIAL_NAVIGATION)===1&&router.initialNavigation(),injector.get(ROUTER_PRELOADER,null,{optional:!0})?.setUpPreloading(),injector.get(ROUTER_SCROLLER,null,{optional:!0})?.init(),router.resetRootComponentType(ref.componentTypes[0]),bootstrapDone.closed||(bootstrapDone.next(),bootstrapDone.complete(),bootstrapDone.unsubscribe())}}var BOOTSTRAP_DONE=new InjectionToken("",{factory:()=>new Subject}),INITIAL_NAVIGATION=new InjectionToken("",{providedIn:"root",factory:()=>1});function withEnabledBlockingInitialNavigation(){let providers=[{provide:IS_ENABLED_BLOCKING_INITIAL_NAVIGATION,useValue:!0},{provide:INITIAL_NAVIGATION,useValue:0},provideAppInitializer(()=>{let injector=inject2(Injector);return injector.get(LOCATION_INITIALIZED,Promise.resolve()).then(()=>new Promise(resolve=>{let router=injector.get(Router),bootstrapDone=injector.get(BOOTSTRAP_DONE);afterNextNavigation(router,()=>{resolve(!0)}),injector.get(NavigationTransitions).afterPreactivation=()=>(resolve(!0),bootstrapDone.closed?of(void 0):bootstrapDone),router.initialNavigation()}))})];return routerFeature(2,providers)}function withDisabledInitialNavigation(){let providers=[provideAppInitializer(()=>{inject2(Router).setUpLocationChangeListener()}),{provide:INITIAL_NAVIGATION,useValue:2}];return routerFeature(3,providers)}var ROUTER_PRELOADER=new InjectionToken("");function withPreloading(preloadingStrategy){return routerFeature(0,[{provide:ROUTER_PRELOADER,useExisting:RouterPreloader},{provide:PreloadingStrategy,useExisting:preloadingStrategy}])}function withComponentInputBinding(){return routerFeature(8,[RoutedComponentInputBinder,{provide:INPUT_BINDER,useExisting:RoutedComponentInputBinder}])}function withViewTransitions(options){performanceMarkFeature("NgRouterViewTransitions");let providers=[{provide:CREATE_VIEW_TRANSITION,useValue:createViewTransition},{provide:VIEW_TRANSITION_OPTIONS,useValue:__spreadValues({skipNextTransition:!!options?.skipInitialTransition},options)}];return routerFeature(9,providers)}var ROUTER_PROVIDERS=[Location,{provide:UrlSerializer,useClass:DefaultUrlSerializer},Router,ChildrenOutletContexts,{provide:ActivatedRoute,useFactory:rootRoute,deps:[Router]},RouterConfigLoader,[]],RouterModule=(()=>{class RouterModule2{constructor(){}static forRoot(routes2,config2){return{ngModule:RouterModule2,providers:[ROUTER_PROVIDERS,[],{provide:ROUTES,multi:!0,useValue:routes2},[],config2?.errorHandler?{provide:NAVIGATION_ERROR_HANDLER,useValue:config2.errorHandler}:[],{provide:ROUTER_CONFIGURATION,useValue:config2||{}},config2?.useHash?provideHashLocationStrategy():providePathLocationStrategy(),provideRouterScroller(),config2?.preloadingStrategy?withPreloading(config2.preloadingStrategy).\u0275providers:[],config2?.initialNavigation?provideInitialNavigation(config2):[],config2?.bindToComponentInputs?withComponentInputBinding().\u0275providers:[],config2?.enableViewTransitions?withViewTransitions().\u0275providers:[],provideRouterInitializer()]}}static forChild(routes2){return{ngModule:RouterModule2,providers:[{provide:ROUTES,multi:!0,useValue:routes2}]}}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||RouterModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:RouterModule2});static \u0275inj=\u0275\u0275defineInjector({})}return RouterModule2})();function provideRouterScroller(){return{provide:ROUTER_SCROLLER,useFactory:()=>{let viewportScroller=inject2(ViewportScroller),zone=inject2(NgZone),config2=inject2(ROUTER_CONFIGURATION),transitions=inject2(NavigationTransitions),urlSerializer=inject2(UrlSerializer);return config2.scrollOffset&&viewportScroller.setOffset(config2.scrollOffset),new RouterScroller(urlSerializer,transitions,viewportScroller,zone,config2)}}}function provideHashLocationStrategy(){return{provide:LocationStrategy,useClass:HashLocationStrategy}}function providePathLocationStrategy(){return{provide:LocationStrategy,useClass:PathLocationStrategy}}function provideInitialNavigation(config2){return[config2.initialNavigation==="disabled"?withDisabledInitialNavigation().\u0275providers:[],config2.initialNavigation==="enabledBlocking"?withEnabledBlockingInitialNavigation().\u0275providers:[]]}var ROUTER_INITIALIZER=new InjectionToken("");function provideRouterInitializer(){return[{provide:ROUTER_INITIALIZER,useFactory:getBootstrapListener},{provide:APP_BOOTSTRAP_LISTENER,multi:!0,useExisting:ROUTER_INITIALIZER}]}function takeUntilDestroyed(destroyRef){destroyRef||(destroyRef=inject2(DestroyRef));let destroyed$=new Observable(subscriber=>{if(destroyRef.destroyed){subscriber.next();return}return destroyRef.onDestroy(subscriber.next.bind(subscriber))});return source=>source.pipe(takeUntil(destroyed$))}function toObservable(source,options){let injector=options?.injector??inject2(Injector),subject=new ReplaySubject(1),watcher=effect(()=>{let value;try{value=source()}catch(err){untracked2(()=>subject.error(err));return}untracked2(()=>subject.next(value))},{injector,manualCleanup:!0});return injector.get(DestroyRef).onDestroy(()=>{watcher.destroy(),subject.complete()}),subject.asObservable()}function toSignal(source,options){let cleanupRef=!options?.manualCleanup?options?.injector?.get(DestroyRef)??inject2(DestroyRef):null,equal=makeToSignalEqual(options?.equal),state2;options?.requireSync?state2=signal({kind:0},{equal}):state2=signal({kind:1,value:options?.initialValue},{equal});let destroyUnregisterFn,sub=source.subscribe({next:value=>state2.set({kind:1,value}),error:error=>{state2.set({kind:2,error}),destroyUnregisterFn?.()},complete:()=>{destroyUnregisterFn?.()}});if(options?.requireSync&&state2().kind===0)throw new RuntimeError(601,!1);return destroyUnregisterFn=cleanupRef?.onDestroy(sub.unsubscribe.bind(sub)),computed(()=>{let current=state2();switch(current.kind){case 1:return current.value;case 2:throw current.error;case 0:throw new RuntimeError(601,!1)}},{equal:options?.equal})}function makeToSignalEqual(userEquality=Object.is){return(a,b)=>a.kind===1&&b.kind===1&&userEquality(a.value,b.value)}var BaseControlValueAccessor=(()=>{class BaseControlValueAccessor2{_renderer;_elementRef;onChange=_=>{};onTouched=()=>{};constructor(_renderer,_elementRef){this._renderer=_renderer,this._elementRef=_elementRef}setProperty(key,value){this._renderer.setProperty(this._elementRef.nativeElement,key,value)}registerOnTouched(fn){this.onTouched=fn}registerOnChange(fn){this.onChange=fn}setDisabledState(isDisabled){this.setProperty("disabled",isDisabled)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||BaseControlValueAccessor2)(\u0275\u0275directiveInject(Renderer2),\u0275\u0275directiveInject(ElementRef))};static \u0275dir=\u0275\u0275defineDirective({type:BaseControlValueAccessor2})}return BaseControlValueAccessor2})(),BuiltInControlValueAccessor=(()=>{class BuiltInControlValueAccessor2 extends BaseControlValueAccessor{static \u0275fac=(()=>{let \u0275BuiltInControlValueAccessor_BaseFactory;return function(__ngFactoryType__){return(\u0275BuiltInControlValueAccessor_BaseFactory||(\u0275BuiltInControlValueAccessor_BaseFactory=\u0275\u0275getInheritedFactory(BuiltInControlValueAccessor2)))(__ngFactoryType__||BuiltInControlValueAccessor2)}})();static \u0275dir=\u0275\u0275defineDirective({type:BuiltInControlValueAccessor2,features:[\u0275\u0275InheritDefinitionFeature]})}return BuiltInControlValueAccessor2})(),NG_VALUE_ACCESSOR=new InjectionToken("");var DEFAULT_VALUE_ACCESSOR={provide:NG_VALUE_ACCESSOR,useExisting:forwardRef(()=>DefaultValueAccessor),multi:!0};function _isAndroid(){let userAgent=getDOM()?getDOM().getUserAgent():"";return/android (\d+)/.test(userAgent.toLowerCase())}var COMPOSITION_BUFFER_MODE=new InjectionToken(""),DefaultValueAccessor=(()=>{class DefaultValueAccessor2 extends BaseControlValueAccessor{_compositionMode;_composing=!1;constructor(renderer,elementRef,_compositionMode){super(renderer,elementRef),this._compositionMode=_compositionMode,this._compositionMode==null&&(this._compositionMode=!_isAndroid())}writeValue(value){let normalizedValue=value??"";this.setProperty("value",normalizedValue)}_handleInput(value){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(value)}_compositionStart(){this._composing=!0}_compositionEnd(value){this._composing=!1,this._compositionMode&&this.onChange(value)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DefaultValueAccessor2)(\u0275\u0275directiveInject(Renderer2),\u0275\u0275directiveInject(ElementRef),\u0275\u0275directiveInject(COMPOSITION_BUFFER_MODE,8))};static \u0275dir=\u0275\u0275defineDirective({type:DefaultValueAccessor2,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(rf,ctx){rf&1&&\u0275\u0275listener("input",function($event){return ctx._handleInput($event.target.value)})("blur",function(){return ctx.onTouched()})("compositionstart",function(){return ctx._compositionStart()})("compositionend",function($event){return ctx._compositionEnd($event.target.value)})},standalone:!1,features:[\u0275\u0275ProvidersFeature([DEFAULT_VALUE_ACCESSOR]),\u0275\u0275InheritDefinitionFeature]})}return DefaultValueAccessor2})();function isEmptyInputValue(value){return value==null||lengthOrSize(value)===0}function lengthOrSize(value){return value==null?null:Array.isArray(value)||typeof value=="string"?value.length:value instanceof Set?value.size:null}var NG_VALIDATORS=new InjectionToken(""),NG_ASYNC_VALIDATORS=new InjectionToken(""),EMAIL_REGEXP=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Validators=class{static min(min){return minValidator(min)}static max(max){return maxValidator(max)}static required(control){return requiredValidator(control)}static requiredTrue(control){return requiredTrueValidator(control)}static email(control){return emailValidator(control)}static minLength(minLength){return minLengthValidator(minLength)}static maxLength(maxLength){return maxLengthValidator(maxLength)}static pattern(pattern){return patternValidator(pattern)}static nullValidator(control){return nullValidator()}static compose(validators){return compose(validators)}static composeAsync(validators){return composeAsync(validators)}};function minValidator(min){return control=>{if(control.value==null||min==null)return null;let value=parseFloat(control.value);return!isNaN(value)&&value<min?{min:{min,actual:control.value}}:null}}function maxValidator(max){return control=>{if(control.value==null||max==null)return null;let value=parseFloat(control.value);return!isNaN(value)&&value>max?{max:{max,actual:control.value}}:null}}function requiredValidator(control){return isEmptyInputValue(control.value)?{required:!0}:null}function requiredTrueValidator(control){return control.value===!0?null:{required:!0}}function emailValidator(control){return isEmptyInputValue(control.value)||EMAIL_REGEXP.test(control.value)?null:{email:!0}}function minLengthValidator(minLength){return control=>{let length=control.value?.length??lengthOrSize(control.value);return length===null||length===0?null:length<minLength?{minlength:{requiredLength:minLength,actualLength:length}}:null}}function maxLengthValidator(maxLength){return control=>{let length=control.value?.length??lengthOrSize(control.value);return length!==null&&length>maxLength?{maxlength:{requiredLength:maxLength,actualLength:length}}:null}}function patternValidator(pattern){if(!pattern)return nullValidator;let regex,regexStr;return typeof pattern=="string"?(regexStr="",pattern.charAt(0)!=="^"&&(regexStr+="^"),regexStr+=pattern,pattern.charAt(pattern.length-1)!=="$"&&(regexStr+="$"),regex=new RegExp(regexStr)):(regexStr=pattern.toString(),regex=pattern),control=>{if(isEmptyInputValue(control.value))return null;let value=control.value;return regex.test(value)?null:{pattern:{requiredPattern:regexStr,actualValue:value}}}}function nullValidator(control){return null}function isPresent(o){return o!=null}function toObservable2(value){return isPromise2(value)?from(value):value}function mergeErrors(arrayOfErrors){let res={};return arrayOfErrors.forEach(errors=>{res=errors!=null?__spreadValues(__spreadValues({},res),errors):res}),Object.keys(res).length===0?null:res}function executeValidators(control,validators){return validators.map(validator=>validator(control))}function isValidatorFn(validator){return!validator.validate}function normalizeValidators(validators){return validators.map(validator=>isValidatorFn(validator)?validator:c=>validator.validate(c))}function compose(validators){if(!validators)return null;let presentValidators=validators.filter(isPresent);return presentValidators.length==0?null:function(control){return mergeErrors(executeValidators(control,presentValidators))}}function composeValidators(validators){return validators!=null?compose(normalizeValidators(validators)):null}function composeAsync(validators){if(!validators)return null;let presentValidators=validators.filter(isPresent);return presentValidators.length==0?null:function(control){let observables=executeValidators(control,presentValidators).map(toObservable2);return forkJoin(observables).pipe(map(mergeErrors))}}function composeAsyncValidators(validators){return validators!=null?composeAsync(normalizeValidators(validators)):null}function mergeValidators(controlValidators,dirValidator){return controlValidators===null?[dirValidator]:Array.isArray(controlValidators)?[...controlValidators,dirValidator]:[controlValidators,dirValidator]}function getControlValidators(control){return control._rawValidators}function getControlAsyncValidators(control){return control._rawAsyncValidators}function makeValidatorsArray(validators){return validators?Array.isArray(validators)?validators:[validators]:[]}function hasValidator(validators,validator){return Array.isArray(validators)?validators.includes(validator):validators===validator}function addValidators(validators,currentValidators){let current=makeValidatorsArray(currentValidators);return makeValidatorsArray(validators).forEach(v=>{hasValidator(current,v)||current.push(v)}),current}function removeValidators(validators,currentValidators){return makeValidatorsArray(currentValidators).filter(v=>!hasValidator(validators,v))}var AbstractControlDirective=class{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}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(validators){this._rawValidators=validators||[],this._composedValidatorFn=composeValidators(this._rawValidators)}_setAsyncValidators(validators){this._rawAsyncValidators=validators||[],this._composedAsyncValidatorFn=composeAsyncValidators(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(fn){this._onDestroyCallbacks.push(fn)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(fn=>fn()),this._onDestroyCallbacks=[]}reset(value=void 0){this.control&&this.control.reset(value)}hasError(errorCode,path){return this.control?this.control.hasError(errorCode,path):!1}getError(errorCode,path){return this.control?this.control.getError(errorCode,path):null}},ControlContainer=class extends AbstractControlDirective{name;get formDirective(){return null}get path(){return null}},NgControl=class extends AbstractControlDirective{_parent=null;name=null;valueAccessor=null},AbstractControlStatus=class{_cd;constructor(cd){this._cd=cd}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}},ngControlStatusHost={"[class.ng-untouched]":"isUntouched","[class.ng-touched]":"isTouched","[class.ng-pristine]":"isPristine","[class.ng-dirty]":"isDirty","[class.ng-valid]":"isValid","[class.ng-invalid]":"isInvalid","[class.ng-pending]":"isPending"},ngGroupStatusHost=__spreadProps(__spreadValues({},ngControlStatusHost),{"[class.ng-submitted]":"isSubmitted"}),NgControlStatus=(()=>{class NgControlStatus2 extends AbstractControlStatus{constructor(cd){super(cd)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgControlStatus2)(\u0275\u0275directiveInject(NgControl,2))};static \u0275dir=\u0275\u0275defineDirective({type:NgControlStatus2,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(rf,ctx){rf&2&&\u0275\u0275classProp("ng-untouched",ctx.isUntouched)("ng-touched",ctx.isTouched)("ng-pristine",ctx.isPristine)("ng-dirty",ctx.isDirty)("ng-valid",ctx.isValid)("ng-invalid",ctx.isInvalid)("ng-pending",ctx.isPending)},standalone:!1,features:[\u0275\u0275InheritDefinitionFeature]})}return NgControlStatus2})(),NgControlStatusGroup=(()=>{class NgControlStatusGroup2 extends AbstractControlStatus{constructor(cd){super(cd)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgControlStatusGroup2)(\u0275\u0275directiveInject(ControlContainer,10))};static \u0275dir=\u0275\u0275defineDirective({type:NgControlStatusGroup2,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(rf,ctx){rf&2&&\u0275\u0275classProp("ng-untouched",ctx.isUntouched)("ng-touched",ctx.isTouched)("ng-pristine",ctx.isPristine)("ng-dirty",ctx.isDirty)("ng-valid",ctx.isValid)("ng-invalid",ctx.isInvalid)("ng-pending",ctx.isPending)("ng-submitted",ctx.isSubmitted)},standalone:!1,features:[\u0275\u0275InheritDefinitionFeature]})}return NgControlStatusGroup2})();var VALID="VALID",INVALID="INVALID",PENDING="PENDING",DISABLED="DISABLED",ControlEvent=class{},ValueChangeEvent=class extends ControlEvent{value;source;constructor(value,source){super(),this.value=value,this.source=source}},PristineChangeEvent=class extends ControlEvent{pristine;source;constructor(pristine,source){super(),this.pristine=pristine,this.source=source}},TouchedChangeEvent=class extends ControlEvent{touched;source;constructor(touched,source){super(),this.touched=touched,this.source=source}},StatusChangeEvent=class extends ControlEvent{status;source;constructor(status,source){super(),this.status=status,this.source=source}},FormSubmittedEvent=class extends ControlEvent{source;constructor(source){super(),this.source=source}},FormResetEvent=class extends ControlEvent{source;constructor(source){super(),this.source=source}};function pickValidators(validatorOrOpts){return(isOptionsObj(validatorOrOpts)?validatorOrOpts.validators:validatorOrOpts)||null}function coerceToValidator(validator){return Array.isArray(validator)?composeValidators(validator):validator||null}function pickAsyncValidators(asyncValidator,validatorOrOpts){return(isOptionsObj(validatorOrOpts)?validatorOrOpts.asyncValidators:asyncValidator)||null}function coerceToAsyncValidator(asyncValidator){return Array.isArray(asyncValidator)?composeAsyncValidators(asyncValidator):asyncValidator||null}function isOptionsObj(validatorOrOpts){return validatorOrOpts!=null&&!Array.isArray(validatorOrOpts)&&typeof validatorOrOpts=="object"}function assertControlPresent(parent,isGroup,key){let controls=parent.controls;if(!(isGroup?Object.keys(controls):controls).length)throw new RuntimeError(1e3,"");if(!controls[key])throw new RuntimeError(1001,"")}function assertAllValuesPresent(control,isGroup,value){control._forEachChild((_,key)=>{if(value[key]===void 0)throw new RuntimeError(1002,"")})}var AbstractControl=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(validators,asyncValidators){this._assignValidators(validators),this._assignAsyncValidators(asyncValidators)}get validator(){return this._composedValidatorFn}set validator(validatorFn){this._rawValidators=this._composedValidatorFn=validatorFn}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(asyncValidatorFn){this._rawAsyncValidators=this._composedAsyncValidatorFn=asyncValidatorFn}get parent(){return this._parent}get status(){return untracked2(this.statusReactive)}set status(v){untracked2(()=>this.statusReactive.set(v))}_status=computed(()=>this.statusReactive());statusReactive=signal(void 0);get valid(){return this.status===VALID}get invalid(){return this.status===INVALID}get pending(){return this.status==PENDING}get disabled(){return this.status===DISABLED}get enabled(){return this.status!==DISABLED}errors;get pristine(){return untracked2(this.pristineReactive)}set pristine(v){untracked2(()=>this.pristineReactive.set(v))}_pristine=computed(()=>this.pristineReactive());pristineReactive=signal(!0);get dirty(){return!this.pristine}get touched(){return untracked2(this.touchedReactive)}set touched(v){untracked2(()=>this.touchedReactive.set(v))}_touched=computed(()=>this.touchedReactive());touchedReactive=signal(!1);get untouched(){return!this.touched}_events=new Subject;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(validators){this._assignValidators(validators)}setAsyncValidators(validators){this._assignAsyncValidators(validators)}addValidators(validators){this.setValidators(addValidators(validators,this._rawValidators))}addAsyncValidators(validators){this.setAsyncValidators(addValidators(validators,this._rawAsyncValidators))}removeValidators(validators){this.setValidators(removeValidators(validators,this._rawValidators))}removeAsyncValidators(validators){this.setAsyncValidators(removeValidators(validators,this._rawAsyncValidators))}hasValidator(validator){return hasValidator(this._rawValidators,validator)}hasAsyncValidator(validator){return hasValidator(this._rawAsyncValidators,validator)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(opts={}){let changed=this.touched===!1;this.touched=!0;let sourceControl=opts.sourceControl??this;this._parent&&!opts.onlySelf&&this._parent.markAsTouched(__spreadProps(__spreadValues({},opts),{sourceControl})),changed&&opts.emitEvent!==!1&&this._events.next(new TouchedChangeEvent(!0,sourceControl))}markAllAsDirty(opts={}){this.markAsDirty({onlySelf:!0,emitEvent:opts.emitEvent,sourceControl:this}),this._forEachChild(control=>control.markAllAsDirty(opts))}markAllAsTouched(opts={}){this.markAsTouched({onlySelf:!0,emitEvent:opts.emitEvent,sourceControl:this}),this._forEachChild(control=>control.markAllAsTouched(opts))}markAsUntouched(opts={}){let changed=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let sourceControl=opts.sourceControl??this;this._forEachChild(control=>{control.markAsUntouched({onlySelf:!0,emitEvent:opts.emitEvent,sourceControl})}),this._parent&&!opts.onlySelf&&this._parent._updateTouched(opts,sourceControl),changed&&opts.emitEvent!==!1&&this._events.next(new TouchedChangeEvent(!1,sourceControl))}markAsDirty(opts={}){let changed=this.pristine===!0;this.pristine=!1;let sourceControl=opts.sourceControl??this;this._parent&&!opts.onlySelf&&this._parent.markAsDirty(__spreadProps(__spreadValues({},opts),{sourceControl})),changed&&opts.emitEvent!==!1&&this._events.next(new PristineChangeEvent(!1,sourceControl))}markAsPristine(opts={}){let changed=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let sourceControl=opts.sourceControl??this;this._forEachChild(control=>{control.markAsPristine({onlySelf:!0,emitEvent:opts.emitEvent})}),this._parent&&!opts.onlySelf&&this._parent._updatePristine(opts,sourceControl),changed&&opts.emitEvent!==!1&&this._events.next(new PristineChangeEvent(!0,sourceControl))}markAsPending(opts={}){this.status=PENDING;let sourceControl=opts.sourceControl??this;opts.emitEvent!==!1&&(this._events.next(new StatusChangeEvent(this.status,sourceControl)),this.statusChanges.emit(this.status)),this._parent&&!opts.onlySelf&&this._parent.markAsPending(__spreadProps(__spreadValues({},opts),{sourceControl}))}disable(opts={}){let skipPristineCheck=this._parentMarkedDirty(opts.onlySelf);this.status=DISABLED,this.errors=null,this._forEachChild(control=>{control.disable(__spreadProps(__spreadValues({},opts),{onlySelf:!0}))}),this._updateValue();let sourceControl=opts.sourceControl??this;opts.emitEvent!==!1&&(this._events.next(new ValueChangeEvent(this.value,sourceControl)),this._events.next(new StatusChangeEvent(this.status,sourceControl)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(__spreadProps(__spreadValues({},opts),{skipPristineCheck}),this),this._onDisabledChange.forEach(changeFn=>changeFn(!0))}enable(opts={}){let skipPristineCheck=this._parentMarkedDirty(opts.onlySelf);this.status=VALID,this._forEachChild(control=>{control.enable(__spreadProps(__spreadValues({},opts),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:opts.emitEvent}),this._updateAncestors(__spreadProps(__spreadValues({},opts),{skipPristineCheck}),this),this._onDisabledChange.forEach(changeFn=>changeFn(!1))}_updateAncestors(opts,sourceControl){this._parent&&!opts.onlySelf&&(this._parent.updateValueAndValidity(opts),opts.skipPristineCheck||this._parent._updatePristine({},sourceControl),this._parent._updateTouched({},sourceControl))}setParent(parent){this._parent=parent}getRawValue(){return this.value}updateValueAndValidity(opts={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let shouldHaveEmitted=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===VALID||this.status===PENDING)&&this._runAsyncValidator(shouldHaveEmitted,opts.emitEvent)}let sourceControl=opts.sourceControl??this;opts.emitEvent!==!1&&(this._events.next(new ValueChangeEvent(this.value,sourceControl)),this._events.next(new StatusChangeEvent(this.status,sourceControl)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!opts.onlySelf&&this._parent.updateValueAndValidity(__spreadProps(__spreadValues({},opts),{sourceControl}))}_updateTreeValidity(opts={emitEvent:!0}){this._forEachChild(ctrl=>ctrl._updateTreeValidity(opts)),this.updateValueAndValidity({onlySelf:!0,emitEvent:opts.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?DISABLED:VALID}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(shouldHaveEmitted,emitEvent){if(this.asyncValidator){this.status=PENDING,this._hasOwnPendingAsyncValidator={emitEvent:emitEvent!==!1,shouldHaveEmitted:shouldHaveEmitted!==!1};let obs=toObservable2(this.asyncValidator(this));this._asyncValidationSubscription=obs.subscribe(errors=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(errors,{emitEvent,shouldHaveEmitted})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let shouldHaveEmitted=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,shouldHaveEmitted}return!1}setErrors(errors,opts={}){this.errors=errors,this._updateControlsErrors(opts.emitEvent!==!1,this,opts.shouldHaveEmitted)}get(path){let currPath=path;return currPath==null||(Array.isArray(currPath)||(currPath=currPath.split(".")),currPath.length===0)?null:currPath.reduce((control,name)=>control&&control._find(name),this)}getError(errorCode,path){let control=path?this.get(path):this;return control&&control.errors?control.errors[errorCode]:null}hasError(errorCode,path){return!!this.getError(errorCode,path)}get root(){let x=this;for(;x._parent;)x=x._parent;return x}_updateControlsErrors(emitEvent,changedControl,shouldHaveEmitted){this.status=this._calculateStatus(),emitEvent&&this.statusChanges.emit(this.status),(emitEvent||shouldHaveEmitted)&&this._events.next(new StatusChangeEvent(this.status,changedControl)),this._parent&&this._parent._updateControlsErrors(emitEvent,changedControl,shouldHaveEmitted)}_initObservables(){this.valueChanges=new EventEmitter,this.statusChanges=new EventEmitter}_calculateStatus(){return this._allControlsDisabled()?DISABLED:this.errors?INVALID:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(PENDING)?PENDING:this._anyControlsHaveStatus(INVALID)?INVALID:VALID}_anyControlsHaveStatus(status){return this._anyControls(control=>control.status===status)}_anyControlsDirty(){return this._anyControls(control=>control.dirty)}_anyControlsTouched(){return this._anyControls(control=>control.touched)}_updatePristine(opts,changedControl){let newPristine=!this._anyControlsDirty(),changed=this.pristine!==newPristine;this.pristine=newPristine,this._parent&&!opts.onlySelf&&this._parent._updatePristine(opts,changedControl),changed&&this._events.next(new PristineChangeEvent(this.pristine,changedControl))}_updateTouched(opts={},changedControl){this.touched=this._anyControlsTouched(),this._events.next(new TouchedChangeEvent(this.touched,changedControl)),this._parent&&!opts.onlySelf&&this._parent._updateTouched(opts,changedControl)}_onDisabledChange=[];_registerOnCollectionChange(fn){this._onCollectionChange=fn}_setUpdateStrategy(opts){isOptionsObj(opts)&&opts.updateOn!=null&&(this._updateOn=opts.updateOn)}_parentMarkedDirty(onlySelf){let parentDirty=this._parent&&this._parent.dirty;return!onlySelf&&!!parentDirty&&!this._parent._anyControlsDirty()}_find(name){return null}_assignValidators(validators){this._rawValidators=Array.isArray(validators)?validators.slice():validators,this._composedValidatorFn=coerceToValidator(this._rawValidators)}_assignAsyncValidators(validators){this._rawAsyncValidators=Array.isArray(validators)?validators.slice():validators,this._composedAsyncValidatorFn=coerceToAsyncValidator(this._rawAsyncValidators)}},FormGroup=class extends AbstractControl{constructor(controls,validatorOrOpts,asyncValidator){super(pickValidators(validatorOrOpts),pickAsyncValidators(asyncValidator,validatorOrOpts)),this.controls=controls,this._initObservables(),this._setUpdateStrategy(validatorOrOpts),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;registerControl(name,control){return this.controls[name]?this.controls[name]:(this.controls[name]=control,control.setParent(this),control._registerOnCollectionChange(this._onCollectionChange),control)}addControl(name,control,options={}){this.registerControl(name,control),this.updateValueAndValidity({emitEvent:options.emitEvent}),this._onCollectionChange()}removeControl(name,options={}){this.controls[name]&&this.controls[name]._registerOnCollectionChange(()=>{}),delete this.controls[name],this.updateValueAndValidity({emitEvent:options.emitEvent}),this._onCollectionChange()}setControl(name,control,options={}){this.controls[name]&&this.controls[name]._registerOnCollectionChange(()=>{}),delete this.controls[name],control&&this.registerControl(name,control),this.updateValueAndValidity({emitEvent:options.emitEvent}),this._onCollectionChange()}contains(controlName){return this.controls.hasOwnProperty(controlName)&&this.controls[controlName].enabled}setValue(value,options={}){assertAllValuesPresent(this,!0,value),Object.keys(value).forEach(name=>{assertControlPresent(this,!0,name),this.controls[name].setValue(value[name],{onlySelf:!0,emitEvent:options.emitEvent})}),this.updateValueAndValidity(options)}patchValue(value,options={}){value!=null&&(Object.keys(value).forEach(name=>{let control=this.controls[name];control&&control.patchValue(value[name],{onlySelf:!0,emitEvent:options.emitEvent})}),this.updateValueAndValidity(options))}reset(value={},options={}){this._forEachChild((control,name)=>{control.reset(value?value[name]:null,{onlySelf:!0,emitEvent:options.emitEvent})}),this._updatePristine(options,this),this._updateTouched(options,this),this.updateValueAndValidity(options)}getRawValue(){return this._reduceChildren({},(acc,control,name)=>(acc[name]=control.getRawValue(),acc))}_syncPendingControls(){let subtreeUpdated=this._reduceChildren(!1,(updated,child)=>child._syncPendingControls()?!0:updated);return subtreeUpdated&&this.updateValueAndValidity({onlySelf:!0}),subtreeUpdated}_forEachChild(cb){Object.keys(this.controls).forEach(key=>{let control=this.controls[key];control&&cb(control,key)})}_setUpControls(){this._forEachChild(control=>{control.setParent(this),control._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(condition){for(let[controlName,control]of Object.entries(this.controls))if(this.contains(controlName)&&condition(control))return!0;return!1}_reduceValue(){let acc={};return this._reduceChildren(acc,(acc2,control,name)=>((control.enabled||this.disabled)&&(acc2[name]=control.value),acc2))}_reduceChildren(initValue,fn){let res=initValue;return this._forEachChild((control,name)=>{res=fn(res,control,name)}),res}_allControlsDisabled(){for(let controlName of Object.keys(this.controls))if(this.controls[controlName].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(name){return this.controls.hasOwnProperty(name)?this.controls[name]:null}};var FormRecord=class extends FormGroup{};var CALL_SET_DISABLED_STATE=new InjectionToken("",{providedIn:"root",factory:()=>setDisabledStateDefault}),setDisabledStateDefault="always";function controlPath(name,parent){return[...parent.path,name]}function setUpControl(control,dir,callSetDisabledState=setDisabledStateDefault){setUpValidators(control,dir),dir.valueAccessor.writeValue(control.value),(control.disabled||callSetDisabledState==="always")&&dir.valueAccessor.setDisabledState?.(control.disabled),setUpViewChangePipeline(control,dir),setUpModelChangePipeline(control,dir),setUpBlurPipeline(control,dir),setUpDisabledChangeHandler(control,dir)}function cleanUpControl(control,dir,validateControlPresenceOnChange=!0){let noop3=()=>{};dir.valueAccessor&&(dir.valueAccessor.registerOnChange(noop3),dir.valueAccessor.registerOnTouched(noop3)),cleanUpValidators(control,dir),control&&(dir._invokeOnDestroyCallbacks(),control._registerOnCollectionChange(()=>{}))}function registerOnValidatorChange(validators,onChange){validators.forEach(validator=>{validator.registerOnValidatorChange&&validator.registerOnValidatorChange(onChange)})}function setUpDisabledChangeHandler(control,dir){if(dir.valueAccessor.setDisabledState){let onDisabledChange=isDisabled=>{dir.valueAccessor.setDisabledState(isDisabled)};control.registerOnDisabledChange(onDisabledChange),dir._registerOnDestroy(()=>{control._unregisterOnDisabledChange(onDisabledChange)})}}function setUpValidators(control,dir){let validators=getControlValidators(control);dir.validator!==null?control.setValidators(mergeValidators(validators,dir.validator)):typeof validators=="function"&&control.setValidators([validators]);let asyncValidators=getControlAsyncValidators(control);dir.asyncValidator!==null?control.setAsyncValidators(mergeValidators(asyncValidators,dir.asyncValidator)):typeof asyncValidators=="function"&&control.setAsyncValidators([asyncValidators]);let onValidatorChange=()=>control.updateValueAndValidity();registerOnValidatorChange(dir._rawValidators,onValidatorChange),registerOnValidatorChange(dir._rawAsyncValidators,onValidatorChange)}function cleanUpValidators(control,dir){let isControlUpdated=!1;if(control!==null){if(dir.validator!==null){let validators=getControlValidators(control);if(Array.isArray(validators)&&validators.length>0){let updatedValidators=validators.filter(validator=>validator!==dir.validator);updatedValidators.length!==validators.length&&(isControlUpdated=!0,control.setValidators(updatedValidators))}}if(dir.asyncValidator!==null){let asyncValidators=getControlAsyncValidators(control);if(Array.isArray(asyncValidators)&&asyncValidators.length>0){let updatedAsyncValidators=asyncValidators.filter(asyncValidator=>asyncValidator!==dir.asyncValidator);updatedAsyncValidators.length!==asyncValidators.length&&(isControlUpdated=!0,control.setAsyncValidators(updatedAsyncValidators))}}}let noop3=()=>{};return registerOnValidatorChange(dir._rawValidators,noop3),registerOnValidatorChange(dir._rawAsyncValidators,noop3),isControlUpdated}function setUpViewChangePipeline(control,dir){dir.valueAccessor.registerOnChange(newValue=>{control._pendingValue=newValue,control._pendingChange=!0,control._pendingDirty=!0,control.updateOn==="change"&&updateControl(control,dir)})}function setUpBlurPipeline(control,dir){dir.valueAccessor.registerOnTouched(()=>{control._pendingTouched=!0,control.updateOn==="blur"&&control._pendingChange&&updateControl(control,dir),control.updateOn!=="submit"&&control.markAsTouched()})}function updateControl(control,dir){control._pendingDirty&&control.markAsDirty(),control.setValue(control._pendingValue,{emitModelToViewChange:!1}),dir.viewToModelUpdate(control._pendingValue),control._pendingChange=!1}function setUpModelChangePipeline(control,dir){let onChange=(newValue,emitModelEvent)=>{dir.valueAccessor.writeValue(newValue),emitModelEvent&&dir.viewToModelUpdate(newValue)};control.registerOnChange(onChange),dir._registerOnDestroy(()=>{control._unregisterOnChange(onChange)})}function setUpFormContainer(control,dir){control==null,setUpValidators(control,dir)}function cleanUpFormContainer(control,dir){return cleanUpValidators(control,dir)}function isPropertyUpdated(changes,viewModel){if(!changes.hasOwnProperty("model"))return!1;let change=changes.model;return change.isFirstChange()?!0:!Object.is(viewModel,change.currentValue)}function isBuiltInAccessor(valueAccessor){return Object.getPrototypeOf(valueAccessor.constructor)===BuiltInControlValueAccessor}function syncPendingControls(form,directives){form._syncPendingControls(),directives.forEach(dir=>{let control=dir.control;control.updateOn==="submit"&&control._pendingChange&&(dir.viewToModelUpdate(control._pendingValue),control._pendingChange=!1)})}function selectValueAccessor(dir,valueAccessors){if(!valueAccessors)return null;Array.isArray(valueAccessors);let defaultAccessor,builtinAccessor,customAccessor;return valueAccessors.forEach(v=>{v.constructor===DefaultValueAccessor?defaultAccessor=v:isBuiltInAccessor(v)?builtinAccessor=v:customAccessor=v}),customAccessor||builtinAccessor||defaultAccessor||null}function removeListItem$1(list,el){let index=list.indexOf(el);index>-1&&list.splice(index,1)}var formDirectiveProvider$1={provide:ControlContainer,useExisting:forwardRef(()=>NgForm)},resolvedPromise$1=Promise.resolve(),NgForm=(()=>{class NgForm2 extends ControlContainer{callSetDisabledState;get submitted(){return untracked2(this.submittedReactive)}_submitted=computed(()=>this.submittedReactive());submittedReactive=signal(!1);_directives=new Set;form;ngSubmit=new EventEmitter;options;constructor(validators,asyncValidators,callSetDisabledState){super(),this.callSetDisabledState=callSetDisabledState,this.form=new FormGroup({},composeValidators(validators),composeAsyncValidators(asyncValidators))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(dir){resolvedPromise$1.then(()=>{let container=this._findContainer(dir.path);dir.control=container.registerControl(dir.name,dir.control),setUpControl(dir.control,dir,this.callSetDisabledState),dir.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(dir)})}getControl(dir){return this.form.get(dir.path)}removeControl(dir){resolvedPromise$1.then(()=>{let container=this._findContainer(dir.path);container&&container.removeControl(dir.name),this._directives.delete(dir)})}addFormGroup(dir){resolvedPromise$1.then(()=>{let container=this._findContainer(dir.path),group2=new FormGroup({});setUpFormContainer(group2,dir),container.registerControl(dir.name,group2),group2.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(dir){resolvedPromise$1.then(()=>{let container=this._findContainer(dir.path);container&&container.removeControl(dir.name)})}getFormGroup(dir){return this.form.get(dir.path)}updateModel(dir,value){resolvedPromise$1.then(()=>{this.form.get(dir.path).setValue(value)})}setValue(value){this.control.setValue(value)}onSubmit($event){return this.submittedReactive.set(!0),syncPendingControls(this.form,this._directives),this.ngSubmit.emit($event),this.form._events.next(new FormSubmittedEvent(this.control)),$event?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(value=void 0){this.form.reset(value),this.submittedReactive.set(!1),this.form._events.next(new FormResetEvent(this.form))}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(path){return path.pop(),path.length?this.form.get(path):this.form}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgForm2)(\u0275\u0275directiveInject(NG_VALIDATORS,10),\u0275\u0275directiveInject(NG_ASYNC_VALIDATORS,10),\u0275\u0275directiveInject(CALL_SET_DISABLED_STATE,8))};static \u0275dir=\u0275\u0275defineDirective({type:NgForm2,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(rf,ctx){rf&1&&\u0275\u0275listener("submit",function($event){return ctx.onSubmit($event)})("reset",function(){return ctx.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[\u0275\u0275ProvidersFeature([formDirectiveProvider$1]),\u0275\u0275InheritDefinitionFeature]})}return NgForm2})();function removeListItem(list,el){let index=list.indexOf(el);index>-1&&list.splice(index,1)}function isFormControlState(formState){return typeof formState=="object"&&formState!==null&&Object.keys(formState).length===2&&"value"in formState&&"disabled"in formState}var FormControl=class extends AbstractControl{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(formState=null,validatorOrOpts,asyncValidator){super(pickValidators(validatorOrOpts),pickAsyncValidators(asyncValidator,validatorOrOpts)),this._applyFormState(formState),this._setUpdateStrategy(validatorOrOpts),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),isOptionsObj(validatorOrOpts)&&(validatorOrOpts.nonNullable||validatorOrOpts.initialValueIsDefault)&&(isFormControlState(formState)?this.defaultValue=formState.value:this.defaultValue=formState)}setValue(value,options={}){this.value=this._pendingValue=value,this._onChange.length&&options.emitModelToViewChange!==!1&&this._onChange.forEach(changeFn=>changeFn(this.value,options.emitViewToModelChange!==!1)),this.updateValueAndValidity(options)}patchValue(value,options={}){this.setValue(value,options)}reset(formState=this.defaultValue,options={}){this._applyFormState(formState),this.markAsPristine(options),this.markAsUntouched(options),this.setValue(this.value,options),this._pendingChange=!1}_updateValue(){}_anyControls(condition){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(fn){this._onChange.push(fn)}_unregisterOnChange(fn){removeListItem(this._onChange,fn)}registerOnDisabledChange(fn){this._onDisabledChange.push(fn)}_unregisterOnDisabledChange(fn){removeListItem(this._onDisabledChange,fn)}_forEachChild(cb){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(formState){isFormControlState(formState)?(this.value=this._pendingValue=formState.value,formState.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=formState}};var isFormControl=control=>control instanceof FormControl,AbstractFormGroupDirective=(()=>{class AbstractFormGroupDirective2 extends ControlContainer{_parent;ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return controlPath(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}static \u0275fac=(()=>{let \u0275AbstractFormGroupDirective_BaseFactory;return function(__ngFactoryType__){return(\u0275AbstractFormGroupDirective_BaseFactory||(\u0275AbstractFormGroupDirective_BaseFactory=\u0275\u0275getInheritedFactory(AbstractFormGroupDirective2)))(__ngFactoryType__||AbstractFormGroupDirective2)}})();static \u0275dir=\u0275\u0275defineDirective({type:AbstractFormGroupDirective2,standalone:!1,features:[\u0275\u0275InheritDefinitionFeature]})}return AbstractFormGroupDirective2})();var formControlBinding$1={provide:NgControl,useExisting:forwardRef(()=>NgModel)},resolvedPromise=Promise.resolve(),NgModel=(()=>{class NgModel2 extends NgControl{_changeDetectorRef;callSetDisabledState;control=new FormControl;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new EventEmitter;constructor(parent,validators,asyncValidators,valueAccessors,_changeDetectorRef,callSetDisabledState){super(),this._changeDetectorRef=_changeDetectorRef,this.callSetDisabledState=callSetDisabledState,this._parent=parent,this._setValidators(validators),this._setAsyncValidators(asyncValidators),this.valueAccessor=selectValueAccessor(this,valueAccessors)}ngOnChanges(changes){if(this._checkForErrors(),!this._registered||"name"in changes){if(this._registered&&(this._checkName(),this.formDirective)){let oldName=changes.name.previousValue;this.formDirective.removeControl({name:oldName,path:this._getPath(oldName)})}this._setUpControl()}"isDisabled"in changes&&this._updateDisabled(changes),isPropertyUpdated(changes,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(newValue){this.viewModel=newValue,this.update.emit(newValue)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){setUpControl(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(value){resolvedPromise.then(()=>{this.control.setValue(value,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(changes){let disabledValue=changes.isDisabled.currentValue,isDisabled=disabledValue!==0&&booleanAttribute(disabledValue);resolvedPromise.then(()=>{isDisabled&&!this.control.disabled?this.control.disable():!isDisabled&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(controlName){return this._parent?controlPath(controlName,this._parent):[controlName]}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgModel2)(\u0275\u0275directiveInject(ControlContainer,9),\u0275\u0275directiveInject(NG_VALIDATORS,10),\u0275\u0275directiveInject(NG_ASYNC_VALIDATORS,10),\u0275\u0275directiveInject(NG_VALUE_ACCESSOR,10),\u0275\u0275directiveInject(ChangeDetectorRef,8),\u0275\u0275directiveInject(CALL_SET_DISABLED_STATE,8))};static \u0275dir=\u0275\u0275defineDirective({type:NgModel2,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[\u0275\u0275ProvidersFeature([formControlBinding$1]),\u0275\u0275InheritDefinitionFeature,\u0275\u0275NgOnChangesFeature]})}return NgModel2})();var \u0275NgNoValidate=(()=>{class \u0275NgNoValidate2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||\u0275NgNoValidate2)};static \u0275dir=\u0275\u0275defineDirective({type:\u0275NgNoValidate2,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""],standalone:!1})}return \u0275NgNoValidate2})(),NUMBER_VALUE_ACCESSOR={provide:NG_VALUE_ACCESSOR,useExisting:forwardRef(()=>NumberValueAccessor),multi:!0},NumberValueAccessor=(()=>{class NumberValueAccessor2 extends BuiltInControlValueAccessor{writeValue(value){let normalizedValue=value??"";this.setProperty("value",normalizedValue)}registerOnChange(fn){this.onChange=value=>{fn(value==""?null:parseFloat(value))}}static \u0275fac=(()=>{let \u0275NumberValueAccessor_BaseFactory;return function(__ngFactoryType__){return(\u0275NumberValueAccessor_BaseFactory||(\u0275NumberValueAccessor_BaseFactory=\u0275\u0275getInheritedFactory(NumberValueAccessor2)))(__ngFactoryType__||NumberValueAccessor2)}})();static \u0275dir=\u0275\u0275defineDirective({type:NumberValueAccessor2,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(rf,ctx){rf&1&&\u0275\u0275listener("input",function($event){return ctx.onChange($event.target.value)})("blur",function(){return ctx.onTouched()})},standalone:!1,features:[\u0275\u0275ProvidersFeature([NUMBER_VALUE_ACCESSOR]),\u0275\u0275InheritDefinitionFeature]})}return NumberValueAccessor2})();var NG_MODEL_WITH_FORM_CONTROL_WARNING=new InjectionToken(""),formControlBinding={provide:NgControl,useExisting:forwardRef(()=>FormControlDirective)},FormControlDirective=(()=>{class FormControlDirective2 extends NgControl{_ngModelWarningConfig;callSetDisabledState;viewModel;form;set isDisabled(isDisabled){}model;update=new EventEmitter;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(validators,asyncValidators,valueAccessors,_ngModelWarningConfig,callSetDisabledState){super(),this._ngModelWarningConfig=_ngModelWarningConfig,this.callSetDisabledState=callSetDisabledState,this._setValidators(validators),this._setAsyncValidators(asyncValidators),this.valueAccessor=selectValueAccessor(this,valueAccessors)}ngOnChanges(changes){if(this._isControlChanged(changes)){let previousForm=changes.form.previousValue;previousForm&&cleanUpControl(previousForm,this,!1),setUpControl(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}isPropertyUpdated(changes,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&cleanUpControl(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(newValue){this.viewModel=newValue,this.update.emit(newValue)}_isControlChanged(changes){return changes.hasOwnProperty("form")}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||FormControlDirective2)(\u0275\u0275directiveInject(NG_VALIDATORS,10),\u0275\u0275directiveInject(NG_ASYNC_VALIDATORS,10),\u0275\u0275directiveInject(NG_VALUE_ACCESSOR,10),\u0275\u0275directiveInject(NG_MODEL_WITH_FORM_CONTROL_WARNING,8),\u0275\u0275directiveInject(CALL_SET_DISABLED_STATE,8))};static \u0275dir=\u0275\u0275defineDirective({type:FormControlDirective2,selectors:[["","formControl",""]],inputs:{form:[0,"formControl","form"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],standalone:!1,features:[\u0275\u0275ProvidersFeature([formControlBinding]),\u0275\u0275InheritDefinitionFeature,\u0275\u0275NgOnChangesFeature]})}return FormControlDirective2})(),formDirectiveProvider={provide:ControlContainer,useExisting:forwardRef(()=>FormGroupDirective)},FormGroupDirective=(()=>{class FormGroupDirective2 extends ControlContainer{callSetDisabledState;get submitted(){return untracked2(this._submittedReactive)}set submitted(value){this._submittedReactive.set(value)}_submitted=computed(()=>this._submittedReactive());_submittedReactive=signal(!1);_oldForm;_onCollectionChange=()=>this._updateDomValue();directives=[];form=null;ngSubmit=new EventEmitter;constructor(validators,asyncValidators,callSetDisabledState){super(),this.callSetDisabledState=callSetDisabledState,this._setValidators(validators),this._setAsyncValidators(asyncValidators)}ngOnChanges(changes){changes.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(cleanUpValidators(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(dir){let ctrl=this.form.get(dir.path);return setUpControl(ctrl,dir,this.callSetDisabledState),ctrl.updateValueAndValidity({emitEvent:!1}),this.directives.push(dir),ctrl}getControl(dir){return this.form.get(dir.path)}removeControl(dir){cleanUpControl(dir.control||null,dir,!1),removeListItem$1(this.directives,dir)}addFormGroup(dir){this._setUpFormContainer(dir)}removeFormGroup(dir){this._cleanUpFormContainer(dir)}getFormGroup(dir){return this.form.get(dir.path)}addFormArray(dir){this._setUpFormContainer(dir)}removeFormArray(dir){this._cleanUpFormContainer(dir)}getFormArray(dir){return this.form.get(dir.path)}updateModel(dir,value){this.form.get(dir.path).setValue(value)}onSubmit($event){return this._submittedReactive.set(!0),syncPendingControls(this.form,this.directives),this.ngSubmit.emit($event),this.form._events.next(new FormSubmittedEvent(this.control)),$event?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(value=void 0,options={}){this.form.reset(value,options),this._submittedReactive.set(!1),options?.emitEvent!==!1&&this.form._events.next(new FormResetEvent(this.form))}_updateDomValue(){this.directives.forEach(dir=>{let oldCtrl=dir.control,newCtrl=this.form.get(dir.path);oldCtrl!==newCtrl&&(cleanUpControl(oldCtrl||null,dir),isFormControl(newCtrl)&&(setUpControl(newCtrl,dir,this.callSetDisabledState),dir.control=newCtrl))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(dir){let ctrl=this.form.get(dir.path);setUpFormContainer(ctrl,dir),ctrl.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(dir){if(this.form){let ctrl=this.form.get(dir.path);ctrl&&cleanUpFormContainer(ctrl,dir)&&ctrl.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){setUpValidators(this.form,this),this._oldForm&&cleanUpValidators(this._oldForm,this)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||FormGroupDirective2)(\u0275\u0275directiveInject(NG_VALIDATORS,10),\u0275\u0275directiveInject(NG_ASYNC_VALIDATORS,10),\u0275\u0275directiveInject(CALL_SET_DISABLED_STATE,8))};static \u0275dir=\u0275\u0275defineDirective({type:FormGroupDirective2,selectors:[["","formGroup",""]],hostBindings:function(rf,ctx){rf&1&&\u0275\u0275listener("submit",function($event){return ctx.onSubmit($event)})("reset",function(){return ctx.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[\u0275\u0275ProvidersFeature([formDirectiveProvider]),\u0275\u0275InheritDefinitionFeature,\u0275\u0275NgOnChangesFeature]})}return FormGroupDirective2})(),formGroupNameProvider={provide:ControlContainer,useExisting:forwardRef(()=>FormGroupName)},FormGroupName=(()=>{class FormGroupName2 extends AbstractFormGroupDirective{name=null;constructor(parent,validators,asyncValidators){super(),this._parent=parent,this._setValidators(validators),this._setAsyncValidators(asyncValidators)}_checkParentType(){hasInvalidParent(this._parent)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||FormGroupName2)(\u0275\u0275directiveInject(ControlContainer,13),\u0275\u0275directiveInject(NG_VALIDATORS,10),\u0275\u0275directiveInject(NG_ASYNC_VALIDATORS,10))};static \u0275dir=\u0275\u0275defineDirective({type:FormGroupName2,selectors:[["","formGroupName",""]],inputs:{name:[0,"formGroupName","name"]},standalone:!1,features:[\u0275\u0275ProvidersFeature([formGroupNameProvider]),\u0275\u0275InheritDefinitionFeature]})}return FormGroupName2})(),formArrayNameProvider={provide:ControlContainer,useExisting:forwardRef(()=>FormArrayName)},FormArrayName=(()=>{class FormArrayName2 extends ControlContainer{_parent;name=null;constructor(parent,validators,asyncValidators){super(),this._parent=parent,this._setValidators(validators),this._setAsyncValidators(asyncValidators)}ngOnInit(){hasInvalidParent(this._parent),this.formDirective.addFormArray(this)}ngOnDestroy(){this.formDirective?.removeFormArray(this)}get control(){return this.formDirective.getFormArray(this)}get formDirective(){return this._parent?this._parent.formDirective:null}get path(){return controlPath(this.name==null?this.name:this.name.toString(),this._parent)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||FormArrayName2)(\u0275\u0275directiveInject(ControlContainer,13),\u0275\u0275directiveInject(NG_VALIDATORS,10),\u0275\u0275directiveInject(NG_ASYNC_VALIDATORS,10))};static \u0275dir=\u0275\u0275defineDirective({type:FormArrayName2,selectors:[["","formArrayName",""]],inputs:{name:[0,"formArrayName","name"]},standalone:!1,features:[\u0275\u0275ProvidersFeature([formArrayNameProvider]),\u0275\u0275InheritDefinitionFeature]})}return FormArrayName2})();function hasInvalidParent(parent){return!(parent instanceof FormGroupName)&&!(parent instanceof FormGroupDirective)&&!(parent instanceof FormArrayName)}var controlNameBinding={provide:NgControl,useExisting:forwardRef(()=>FormControlName)},FormControlName=(()=>{class FormControlName2 extends NgControl{_ngModelWarningConfig;_added=!1;viewModel;control;name=null;set isDisabled(isDisabled){}model;update=new EventEmitter;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(parent,validators,asyncValidators,valueAccessors,_ngModelWarningConfig){super(),this._ngModelWarningConfig=_ngModelWarningConfig,this._parent=parent,this._setValidators(validators),this._setAsyncValidators(asyncValidators),this.valueAccessor=selectValueAccessor(this,valueAccessors)}ngOnChanges(changes){this._added||this._setUpControl(),isPropertyUpdated(changes,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(newValue){this.viewModel=newValue,this.update.emit(newValue)}get path(){return controlPath(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_setUpControl(){this.control=this.formDirective.addControl(this),this._added=!0}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||FormControlName2)(\u0275\u0275directiveInject(ControlContainer,13),\u0275\u0275directiveInject(NG_VALIDATORS,10),\u0275\u0275directiveInject(NG_ASYNC_VALIDATORS,10),\u0275\u0275directiveInject(NG_VALUE_ACCESSOR,10),\u0275\u0275directiveInject(NG_MODEL_WITH_FORM_CONTROL_WARNING,8))};static \u0275dir=\u0275\u0275defineDirective({type:FormControlName2,selectors:[["","formControlName",""]],inputs:{name:[0,"formControlName","name"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},standalone:!1,features:[\u0275\u0275ProvidersFeature([controlNameBinding]),\u0275\u0275InheritDefinitionFeature,\u0275\u0275NgOnChangesFeature]})}return FormControlName2})();var SELECT_VALUE_ACCESSOR={provide:NG_VALUE_ACCESSOR,useExisting:forwardRef(()=>SelectControlValueAccessor),multi:!0};function _buildValueString$1(id,value){return id==null?`${value}`:(value&&typeof value=="object"&&(value="Object"),`${id}: ${value}`.slice(0,50))}function _extractId$1(valueString){return valueString.split(":")[0]}var SelectControlValueAccessor=(()=>{class SelectControlValueAccessor2 extends BuiltInControlValueAccessor{value;_optionMap=new Map;_idCounter=0;set compareWith(fn){this._compareWith=fn}_compareWith=Object.is;appRefInjector=inject2(ApplicationRef).injector;destroyRef=inject2(DestroyRef);cdr=inject2(ChangeDetectorRef);_queuedWrite=!1;_writeValueAfterRender(){this._queuedWrite||this.appRefInjector.destroyed||(this._queuedWrite=!0,afterNextRender({write:()=>{this.destroyRef.destroyed||(this._queuedWrite=!1,this.writeValue(this.value))}},{injector:this.appRefInjector}))}writeValue(value){this.cdr.markForCheck(),this.value=value;let id=this._getOptionId(value),valueString=_buildValueString$1(id,value);this.setProperty("value",valueString)}registerOnChange(fn){this.onChange=valueString=>{this.value=this._getOptionValue(valueString),fn(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(value){for(let id of this._optionMap.keys())if(this._compareWith(this._optionMap.get(id),value))return id;return null}_getOptionValue(valueString){let id=_extractId$1(valueString);return this._optionMap.has(id)?this._optionMap.get(id):valueString}static \u0275fac=(()=>{let \u0275SelectControlValueAccessor_BaseFactory;return function(__ngFactoryType__){return(\u0275SelectControlValueAccessor_BaseFactory||(\u0275SelectControlValueAccessor_BaseFactory=\u0275\u0275getInheritedFactory(SelectControlValueAccessor2)))(__ngFactoryType__||SelectControlValueAccessor2)}})();static \u0275dir=\u0275\u0275defineDirective({type:SelectControlValueAccessor2,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(rf,ctx){rf&1&&\u0275\u0275listener("change",function($event){return ctx.onChange($event.target.value)})("blur",function(){return ctx.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[\u0275\u0275ProvidersFeature([SELECT_VALUE_ACCESSOR]),\u0275\u0275InheritDefinitionFeature]})}return SelectControlValueAccessor2})(),NgSelectOption=(()=>{class NgSelectOption2{_element;_renderer;_select;id;constructor(_element,_renderer,_select){this._element=_element,this._renderer=_renderer,this._select=_select,this._select&&(this.id=this._select._registerOption())}set ngValue(value){this._select!=null&&(this._select._optionMap.set(this.id,value),this._setElementValue(_buildValueString$1(this.id,value)),this._select._writeValueAfterRender())}set value(value){this._setElementValue(value),this._select&&this._select._writeValueAfterRender()}_setElementValue(value){this._renderer.setProperty(this._element.nativeElement,"value",value)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select._writeValueAfterRender())}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||NgSelectOption2)(\u0275\u0275directiveInject(ElementRef),\u0275\u0275directiveInject(Renderer2),\u0275\u0275directiveInject(SelectControlValueAccessor,9))};static \u0275dir=\u0275\u0275defineDirective({type:NgSelectOption2,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return NgSelectOption2})(),SELECT_MULTIPLE_VALUE_ACCESSOR={provide:NG_VALUE_ACCESSOR,useExisting:forwardRef(()=>SelectMultipleControlValueAccessor),multi:!0};function _buildValueString(id,value){return id==null?`${value}`:(typeof value=="string"&&(value=`'${value}'`),value&&typeof value=="object"&&(value="Object"),`${id}: ${value}`.slice(0,50))}function _extractId(valueString){return valueString.split(":")[0]}var SelectMultipleControlValueAccessor=(()=>{class SelectMultipleControlValueAccessor2 extends BuiltInControlValueAccessor{value;_optionMap=new Map;_idCounter=0;set compareWith(fn){this._compareWith=fn}_compareWith=Object.is;writeValue(value){this.value=value;let optionSelectedStateSetter;if(Array.isArray(value)){let ids=value.map(v=>this._getOptionId(v));optionSelectedStateSetter=(opt,o)=>{opt._setSelected(ids.indexOf(o.toString())>-1)}}else optionSelectedStateSetter=(opt,o)=>{opt._setSelected(!1)};this._optionMap.forEach(optionSelectedStateSetter)}registerOnChange(fn){this.onChange=element=>{let selected=[],selectedOptions=element.selectedOptions;if(selectedOptions!==void 0){let options=selectedOptions;for(let i=0;i<options.length;i++){let opt=options[i],val=this._getOptionValue(opt.value);selected.push(val)}}else{let options=element.options;for(let i=0;i<options.length;i++){let opt=options[i];if(opt.selected){let val=this._getOptionValue(opt.value);selected.push(val)}}}this.value=selected,fn(selected)}}_registerOption(value){let id=(this._idCounter++).toString();return this._optionMap.set(id,value),id}_getOptionId(value){for(let id of this._optionMap.keys())if(this._compareWith(this._optionMap.get(id)._value,value))return id;return null}_getOptionValue(valueString){let id=_extractId(valueString);return this._optionMap.has(id)?this._optionMap.get(id)._value:valueString}static \u0275fac=(()=>{let \u0275SelectMultipleControlValueAccessor_BaseFactory;return function(__ngFactoryType__){return(\u0275SelectMultipleControlValueAccessor_BaseFactory||(\u0275SelectMultipleControlValueAccessor_BaseFactory=\u0275\u0275getInheritedFactory(SelectMultipleControlValueAccessor2)))(__ngFactoryType__||SelectMultipleControlValueAccessor2)}})();static \u0275dir=\u0275\u0275defineDirective({type:SelectMultipleControlValueAccessor2,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(rf,ctx){rf&1&&\u0275\u0275listener("change",function($event){return ctx.onChange($event.target)})("blur",function(){return ctx.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[\u0275\u0275ProvidersFeature([SELECT_MULTIPLE_VALUE_ACCESSOR]),\u0275\u0275InheritDefinitionFeature]})}return SelectMultipleControlValueAccessor2})(),\u0275NgSelectMultipleOption=(()=>{class \u0275NgSelectMultipleOption2{_element;_renderer;_select;id;_value;constructor(_element,_renderer,_select){this._element=_element,this._renderer=_renderer,this._select=_select,this._select&&(this.id=this._select._registerOption(this))}set ngValue(value){this._select!=null&&(this._value=value,this._setElementValue(_buildValueString(this.id,value)),this._select.writeValue(this._select.value))}set value(value){this._select?(this._value=value,this._setElementValue(_buildValueString(this.id,value)),this._select.writeValue(this._select.value)):this._setElementValue(value)}_setElementValue(value){this._renderer.setProperty(this._element.nativeElement,"value",value)}_setSelected(selected){this._renderer.setProperty(this._element.nativeElement,"selected",selected)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||\u0275NgSelectMultipleOption2)(\u0275\u0275directiveInject(ElementRef),\u0275\u0275directiveInject(Renderer2),\u0275\u0275directiveInject(SelectMultipleControlValueAccessor,9))};static \u0275dir=\u0275\u0275defineDirective({type:\u0275NgSelectMultipleOption2,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return \u0275NgSelectMultipleOption2})();function toFloat(value){return typeof value=="number"?value:parseFloat(value)}var AbstractValidatorDirective=(()=>{class AbstractValidatorDirective2{_validator=nullValidator;_onChange;_enabled;ngOnChanges(changes){if(this.inputName in changes){let input2=this.normalizeInput(changes[this.inputName].currentValue);this._enabled=this.enabled(input2),this._validator=this._enabled?this.createValidator(input2):nullValidator,this._onChange&&this._onChange()}}validate(control){return this._validator(control)}registerOnValidatorChange(fn){this._onChange=fn}enabled(input2){return input2!=null}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||AbstractValidatorDirective2)};static \u0275dir=\u0275\u0275defineDirective({type:AbstractValidatorDirective2,features:[\u0275\u0275NgOnChangesFeature]})}return AbstractValidatorDirective2})();var MIN_VALIDATOR={provide:NG_VALIDATORS,useExisting:forwardRef(()=>MinValidator),multi:!0},MinValidator=(()=>{class MinValidator2 extends AbstractValidatorDirective{min;inputName="min";normalizeInput=input2=>toFloat(input2);createValidator=min=>minValidator(min);static \u0275fac=(()=>{let \u0275MinValidator_BaseFactory;return function(__ngFactoryType__){return(\u0275MinValidator_BaseFactory||(\u0275MinValidator_BaseFactory=\u0275\u0275getInheritedFactory(MinValidator2)))(__ngFactoryType__||MinValidator2)}})();static \u0275dir=\u0275\u0275defineDirective({type:MinValidator2,selectors:[["input","type","number","min","","formControlName",""],["input","type","number","min","","formControl",""],["input","type","number","min","","ngModel",""]],hostVars:1,hostBindings:function(rf,ctx){rf&2&&\u0275\u0275attribute("min",ctx._enabled?ctx.min:null)},inputs:{min:"min"},standalone:!1,features:[\u0275\u0275ProvidersFeature([MIN_VALIDATOR]),\u0275\u0275InheritDefinitionFeature]})}return MinValidator2})(),REQUIRED_VALIDATOR={provide:NG_VALIDATORS,useExisting:forwardRef(()=>RequiredValidator),multi:!0};var RequiredValidator=(()=>{class RequiredValidator2 extends AbstractValidatorDirective{required;inputName="required";normalizeInput=booleanAttribute;createValidator=input2=>requiredValidator;enabled(input2){return input2}static \u0275fac=(()=>{let \u0275RequiredValidator_BaseFactory;return function(__ngFactoryType__){return(\u0275RequiredValidator_BaseFactory||(\u0275RequiredValidator_BaseFactory=\u0275\u0275getInheritedFactory(RequiredValidator2)))(__ngFactoryType__||RequiredValidator2)}})();static \u0275dir=\u0275\u0275defineDirective({type:RequiredValidator2,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(rf,ctx){rf&2&&\u0275\u0275attribute("required",ctx._enabled?"":null)},inputs:{required:"required"},standalone:!1,features:[\u0275\u0275ProvidersFeature([REQUIRED_VALIDATOR]),\u0275\u0275InheritDefinitionFeature]})}return RequiredValidator2})();var \u0275InternalFormsSharedModule=(()=>{class \u0275InternalFormsSharedModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||\u0275InternalFormsSharedModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:\u0275InternalFormsSharedModule2});static \u0275inj=\u0275\u0275defineInjector({})}return \u0275InternalFormsSharedModule2})(),FormArray=class extends AbstractControl{constructor(controls,validatorOrOpts,asyncValidator){super(pickValidators(validatorOrOpts),pickAsyncValidators(asyncValidator,validatorOrOpts)),this.controls=controls,this._initObservables(),this._setUpdateStrategy(validatorOrOpts),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;at(index){return this.controls[this._adjustIndex(index)]}push(control,options={}){Array.isArray(control)?control.forEach(ctrl=>{this.controls.push(ctrl),this._registerControl(ctrl)}):(this.controls.push(control),this._registerControl(control)),this.updateValueAndValidity({emitEvent:options.emitEvent}),this._onCollectionChange()}insert(index,control,options={}){this.controls.splice(index,0,control),this._registerControl(control),this.updateValueAndValidity({emitEvent:options.emitEvent})}removeAt(index,options={}){let adjustedIndex=this._adjustIndex(index);adjustedIndex<0&&(adjustedIndex=0),this.controls[adjustedIndex]&&this.controls[adjustedIndex]._registerOnCollectionChange(()=>{}),this.controls.splice(adjustedIndex,1),this.updateValueAndValidity({emitEvent:options.emitEvent})}setControl(index,control,options={}){let adjustedIndex=this._adjustIndex(index);adjustedIndex<0&&(adjustedIndex=0),this.controls[adjustedIndex]&&this.controls[adjustedIndex]._registerOnCollectionChange(()=>{}),this.controls.splice(adjustedIndex,1),control&&(this.controls.splice(adjustedIndex,0,control),this._registerControl(control)),this.updateValueAndValidity({emitEvent:options.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(value,options={}){assertAllValuesPresent(this,!1,value),value.forEach((newValue,index)=>{assertControlPresent(this,!1,index),this.at(index).setValue(newValue,{onlySelf:!0,emitEvent:options.emitEvent})}),this.updateValueAndValidity(options)}patchValue(value,options={}){value!=null&&(value.forEach((newValue,index)=>{this.at(index)&&this.at(index).patchValue(newValue,{onlySelf:!0,emitEvent:options.emitEvent})}),this.updateValueAndValidity(options))}reset(value=[],options={}){this._forEachChild((control,index)=>{control.reset(value[index],{onlySelf:!0,emitEvent:options.emitEvent})}),this._updatePristine(options,this),this._updateTouched(options,this),this.updateValueAndValidity(options)}getRawValue(){return this.controls.map(control=>control.getRawValue())}clear(options={}){this.controls.length<1||(this._forEachChild(control=>control._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:options.emitEvent}))}_adjustIndex(index){return index<0?index+this.length:index}_syncPendingControls(){let subtreeUpdated=this.controls.reduce((updated,child)=>child._syncPendingControls()?!0:updated,!1);return subtreeUpdated&&this.updateValueAndValidity({onlySelf:!0}),subtreeUpdated}_forEachChild(cb){this.controls.forEach((control,index)=>{cb(control,index)})}_updateValue(){this.value=this.controls.filter(control=>control.enabled||this.disabled).map(control=>control.value)}_anyControls(condition){return this.controls.some(control=>control.enabled&&condition(control))}_setUpControls(){this._forEachChild(control=>this._registerControl(control))}_allControlsDisabled(){for(let control of this.controls)if(control.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(control){control.setParent(this),control._registerOnCollectionChange(this._onCollectionChange)}_find(name){return this.at(name)??null}};function isAbstractControlOptions(options){return!!options&&(options.asyncValidators!==void 0||options.validators!==void 0||options.updateOn!==void 0)}var FormBuilder=(()=>{class FormBuilder2{useNonNullable=!1;get nonNullable(){let nnfb=new FormBuilder2;return nnfb.useNonNullable=!0,nnfb}group(controls,options=null){let reducedControls=this._reduceControls(controls),newOptions={};return isAbstractControlOptions(options)?newOptions=options:options!==null&&(newOptions.validators=options.validator,newOptions.asyncValidators=options.asyncValidator),new FormGroup(reducedControls,newOptions)}record(controls,options=null){let reducedControls=this._reduceControls(controls);return new FormRecord(reducedControls,options)}control(formState,validatorOrOpts,asyncValidator){let newOptions={};return this.useNonNullable?(isAbstractControlOptions(validatorOrOpts)?newOptions=validatorOrOpts:(newOptions.validators=validatorOrOpts,newOptions.asyncValidators=asyncValidator),new FormControl(formState,__spreadProps(__spreadValues({},newOptions),{nonNullable:!0}))):new FormControl(formState,validatorOrOpts,asyncValidator)}array(controls,validatorOrOpts,asyncValidator){let createdControls=controls.map(c=>this._createControl(c));return new FormArray(createdControls,validatorOrOpts,asyncValidator)}_reduceControls(controls){let createdControls={};return Object.keys(controls).forEach(controlName=>{createdControls[controlName]=this._createControl(controls[controlName])}),createdControls}_createControl(controls){if(controls instanceof FormControl)return controls;if(controls instanceof AbstractControl)return controls;if(Array.isArray(controls)){let value=controls[0],validator=controls.length>1?controls[1]:null,asyncValidator=controls.length>2?controls[2]:null;return this.control(value,validator,asyncValidator)}else return this.control(controls)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||FormBuilder2)};static \u0275prov=\u0275\u0275defineInjectable({token:FormBuilder2,factory:FormBuilder2.\u0275fac,providedIn:"root"})}return FormBuilder2})();var FormsModule=(()=>{class FormsModule2{static withConfig(opts){return{ngModule:FormsModule2,providers:[{provide:CALL_SET_DISABLED_STATE,useValue:opts.callSetDisabledState??setDisabledStateDefault}]}}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||FormsModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:FormsModule2});static \u0275inj=\u0275\u0275defineInjector({imports:[\u0275InternalFormsSharedModule]})}return FormsModule2})(),ReactiveFormsModule=(()=>{class ReactiveFormsModule2{static withConfig(opts){return{ngModule:ReactiveFormsModule2,providers:[{provide:NG_MODEL_WITH_FORM_CONTROL_WARNING,useValue:opts.warnOnNgModelWithFormControl??"always"},{provide:CALL_SET_DISABLED_STATE,useValue:opts.callSetDisabledState??setDisabledStateDefault}]}}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ReactiveFormsModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:ReactiveFormsModule2});static \u0275inj=\u0275\u0275defineInjector({imports:[\u0275InternalFormsSharedModule]})}return ReactiveFormsModule2})();function isFakeMousedownFromScreenReader(event){return event.buttons===0||event.detail===0}function isFakeTouchstartFromScreenReader(event){let touch=event.touches&&event.touches[0]||event.changedTouches&&event.changedTouches[0];return!!touch&&touch.identifier===-1&&(touch.radiusX==null||touch.radiusX===1)&&(touch.radiusY==null||touch.radiusY===1)}var shadowDomIsSupported;function _supportsShadowDom(){if(shadowDomIsSupported==null){let head=typeof document<"u"?document.head:null;shadowDomIsSupported=!!(head&&(head.createShadowRoot||head.attachShadow))}return shadowDomIsSupported}function _getShadowRoot(element){if(_supportsShadowDom()){let rootNode=element.getRootNode?element.getRootNode():null;if(typeof ShadowRoot<"u"&&ShadowRoot&&rootNode instanceof ShadowRoot)return rootNode}return null}function _getFocusedElementPierceShadowDom(){let activeElement=typeof document<"u"&&document?document.activeElement:null;for(;activeElement&&activeElement.shadowRoot;){let newActiveElement=activeElement.shadowRoot.activeElement;if(newActiveElement===activeElement)break;activeElement=newActiveElement}return activeElement}function _getEventTarget(event){return event.composedPath?event.composedPath()[0]:event.target}var hasV8BreakIterator;try{hasV8BreakIterator=typeof Intl<"u"&&Intl.v8BreakIterator}catch{hasV8BreakIterator=!1}var Platform=(()=>{class Platform2{_platformId=inject2(PLATFORM_ID);isBrowser=this._platformId?isPlatformBrowser(this._platformId):typeof document=="object"&&!!document;EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent);TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent);BLINK=this.isBrowser&&!!(window.chrome||hasV8BreakIterator)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT;WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT;IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window);FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent);ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT;SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT;constructor(){}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Platform2)};static \u0275prov=\u0275\u0275defineInjectable({token:Platform2,factory:Platform2.\u0275fac,providedIn:"root"})}return Platform2})();var supportsPassiveEvents;function supportsPassiveEventListeners(){if(supportsPassiveEvents==null&&typeof window<"u")try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>supportsPassiveEvents=!0}))}finally{supportsPassiveEvents=supportsPassiveEvents||!1}return supportsPassiveEvents}function normalizePassiveListenerOptions(options){return supportsPassiveEventListeners()?options:!!options.capture}function coerceNumberProperty(value,fallbackValue=0){return _isNumberValue(value)?Number(value):arguments.length===2?fallbackValue:0}function _isNumberValue(value){return!isNaN(parseFloat(value))&&!isNaN(Number(value))}function coerceElement(elementOrRef){return elementOrRef instanceof ElementRef?elementOrRef.nativeElement:elementOrRef}var INPUT_MODALITY_DETECTOR_OPTIONS=new InjectionToken("cdk-input-modality-detector-options"),INPUT_MODALITY_DETECTOR_DEFAULT_OPTIONS={ignoreKeys:[18,17,224,91,16]},TOUCH_BUFFER_MS=650,modalityEventListenerOptions={passive:!0,capture:!0},InputModalityDetector=(()=>{class InputModalityDetector2{_platform=inject2(Platform);_listenerCleanups;modalityDetected;modalityChanged;get mostRecentModality(){return this._modality.value}_mostRecentTarget=null;_modality=new BehaviorSubject(null);_options;_lastTouchMs=0;_onKeydown=event=>{this._options?.ignoreKeys?.some(keyCode=>keyCode===event.keyCode)||(this._modality.next("keyboard"),this._mostRecentTarget=_getEventTarget(event))};_onMousedown=event=>{Date.now()-this._lastTouchMs<TOUCH_BUFFER_MS||(this._modality.next(isFakeMousedownFromScreenReader(event)?"keyboard":"mouse"),this._mostRecentTarget=_getEventTarget(event))};_onTouchstart=event=>{if(isFakeTouchstartFromScreenReader(event)){this._modality.next("keyboard");return}this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=_getEventTarget(event)};constructor(){let ngZone=inject2(NgZone),document2=inject2(DOCUMENT),options=inject2(INPUT_MODALITY_DETECTOR_OPTIONS,{optional:!0});if(this._options=__spreadValues(__spreadValues({},INPUT_MODALITY_DETECTOR_DEFAULT_OPTIONS),options),this.modalityDetected=this._modality.pipe(skip(1)),this.modalityChanged=this.modalityDetected.pipe(distinctUntilChanged()),this._platform.isBrowser){let renderer=inject2(RendererFactory2).createRenderer(null,null);this._listenerCleanups=ngZone.runOutsideAngular(()=>[renderer.listen(document2,"keydown",this._onKeydown,modalityEventListenerOptions),renderer.listen(document2,"mousedown",this._onMousedown,modalityEventListenerOptions),renderer.listen(document2,"touchstart",this._onTouchstart,modalityEventListenerOptions)])}}ngOnDestroy(){this._modality.complete(),this._listenerCleanups?.forEach(cleanup=>cleanup())}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||InputModalityDetector2)};static \u0275prov=\u0275\u0275defineInjectable({token:InputModalityDetector2,factory:InputModalityDetector2.\u0275fac,providedIn:"root"})}return InputModalityDetector2})(),FocusMonitorDetectionMode=(function(FocusMonitorDetectionMode2){return FocusMonitorDetectionMode2[FocusMonitorDetectionMode2.IMMEDIATE=0]="IMMEDIATE",FocusMonitorDetectionMode2[FocusMonitorDetectionMode2.EVENTUAL=1]="EVENTUAL",FocusMonitorDetectionMode2})(FocusMonitorDetectionMode||{}),FOCUS_MONITOR_DEFAULT_OPTIONS=new InjectionToken("cdk-focus-monitor-default-options"),captureEventListenerOptions=normalizePassiveListenerOptions({passive:!0,capture:!0}),FocusMonitor=(()=>{class FocusMonitor2{_ngZone=inject2(NgZone);_platform=inject2(Platform);_inputModalityDetector=inject2(InputModalityDetector);_origin=null;_lastFocusOrigin;_windowFocused=!1;_windowFocusTimeoutId;_originTimeoutId;_originFromTouchInteraction=!1;_elementInfo=new Map;_monitoredElementCount=0;_rootNodeFocusListenerCount=new Map;_detectionMode;_windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=setTimeout(()=>this._windowFocused=!1)};_document=inject2(DOCUMENT);_stopInputModalityDetector=new Subject;constructor(){let options=inject2(FOCUS_MONITOR_DEFAULT_OPTIONS,{optional:!0});this._detectionMode=options?.detectionMode||FocusMonitorDetectionMode.IMMEDIATE}_rootNodeFocusAndBlurListener=event=>{let target=_getEventTarget(event);for(let element=target;element;element=element.parentElement)event.type==="focus"?this._onFocus(event,element):this._onBlur(event,element)};monitor(element,checkChildren=!1){let nativeElement=coerceElement(element);if(!this._platform.isBrowser||nativeElement.nodeType!==1)return of();let rootNode=_getShadowRoot(nativeElement)||this._document,cachedInfo=this._elementInfo.get(nativeElement);if(cachedInfo)return checkChildren&&(cachedInfo.checkChildren=!0),cachedInfo.subject;let info={checkChildren,subject:new Subject,rootNode};return this._elementInfo.set(nativeElement,info),this._registerGlobalListeners(info),info.subject}stopMonitoring(element){let nativeElement=coerceElement(element),elementInfo=this._elementInfo.get(nativeElement);elementInfo&&(elementInfo.subject.complete(),this._setClasses(nativeElement),this._elementInfo.delete(nativeElement),this._removeGlobalListeners(elementInfo))}focusVia(element,origin,options){let nativeElement=coerceElement(element),focusedElement=this._document.activeElement;nativeElement===focusedElement?this._getClosestElementsInfo(nativeElement).forEach(([currentElement,info])=>this._originChanged(currentElement,origin,info)):(this._setOrigin(origin),typeof nativeElement.focus=="function"&&nativeElement.focus(options))}ngOnDestroy(){this._elementInfo.forEach((_info,element)=>this.stopMonitoring(element))}_getWindow(){return this._document.defaultView||window}_getFocusOrigin(focusEventTarget){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(focusEventTarget)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:focusEventTarget&&this._isLastInteractionFromInputLabel(focusEventTarget)?"mouse":"program"}_shouldBeAttributedToTouch(focusEventTarget){return this._detectionMode===FocusMonitorDetectionMode.EVENTUAL||!!focusEventTarget?.contains(this._inputModalityDetector._mostRecentTarget)}_setClasses(element,origin){element.classList.toggle("cdk-focused",!!origin),element.classList.toggle("cdk-touch-focused",origin==="touch"),element.classList.toggle("cdk-keyboard-focused",origin==="keyboard"),element.classList.toggle("cdk-mouse-focused",origin==="mouse"),element.classList.toggle("cdk-program-focused",origin==="program")}_setOrigin(origin,isFromInteraction=!1){this._ngZone.runOutsideAngular(()=>{if(this._origin=origin,this._originFromTouchInteraction=origin==="touch"&&isFromInteraction,this._detectionMode===FocusMonitorDetectionMode.IMMEDIATE){clearTimeout(this._originTimeoutId);let ms=this._originFromTouchInteraction?TOUCH_BUFFER_MS:1;this._originTimeoutId=setTimeout(()=>this._origin=null,ms)}})}_onFocus(event,element){let elementInfo=this._elementInfo.get(element),focusEventTarget=_getEventTarget(event);!elementInfo||!elementInfo.checkChildren&&element!==focusEventTarget||this._originChanged(element,this._getFocusOrigin(focusEventTarget),elementInfo)}_onBlur(event,element){let elementInfo=this._elementInfo.get(element);!elementInfo||elementInfo.checkChildren&&event.relatedTarget instanceof Node&&element.contains(event.relatedTarget)||(this._setClasses(element),this._emitOrigin(elementInfo,null))}_emitOrigin(info,origin){info.subject.observers.length&&this._ngZone.run(()=>info.subject.next(origin))}_registerGlobalListeners(elementInfo){if(!this._platform.isBrowser)return;let rootNode=elementInfo.rootNode,rootNodeFocusListeners=this._rootNodeFocusListenerCount.get(rootNode)||0;rootNodeFocusListeners||this._ngZone.runOutsideAngular(()=>{rootNode.addEventListener("focus",this._rootNodeFocusAndBlurListener,captureEventListenerOptions),rootNode.addEventListener("blur",this._rootNodeFocusAndBlurListener,captureEventListenerOptions)}),this._rootNodeFocusListenerCount.set(rootNode,rootNodeFocusListeners+1),++this._monitoredElementCount===1&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(takeUntil(this._stopInputModalityDetector)).subscribe(modality=>{this._setOrigin(modality,!0)}))}_removeGlobalListeners(elementInfo){let rootNode=elementInfo.rootNode;if(this._rootNodeFocusListenerCount.has(rootNode)){let rootNodeFocusListeners=this._rootNodeFocusListenerCount.get(rootNode);rootNodeFocusListeners>1?this._rootNodeFocusListenerCount.set(rootNode,rootNodeFocusListeners-1):(rootNode.removeEventListener("focus",this._rootNodeFocusAndBlurListener,captureEventListenerOptions),rootNode.removeEventListener("blur",this._rootNodeFocusAndBlurListener,captureEventListenerOptions),this._rootNodeFocusListenerCount.delete(rootNode))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(element,origin,elementInfo){this._setClasses(element,origin),this._emitOrigin(elementInfo,origin),this._lastFocusOrigin=origin}_getClosestElementsInfo(element){let results=[];return this._elementInfo.forEach((info,currentElement)=>{(currentElement===element||info.checkChildren&¤tElement.contains(element))&&results.push([currentElement,info])}),results}_isLastInteractionFromInputLabel(focusEventTarget){let{_mostRecentTarget:mostRecentTarget,mostRecentModality}=this._inputModalityDetector;if(mostRecentModality!=="mouse"||!mostRecentTarget||mostRecentTarget===focusEventTarget||focusEventTarget.nodeName!=="INPUT"&&focusEventTarget.nodeName!=="TEXTAREA"||focusEventTarget.disabled)return!1;let labels=focusEventTarget.labels;if(labels){for(let i=0;i<labels.length;i++)if(labels[i].contains(mostRecentTarget))return!0}return!1}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||FocusMonitor2)};static \u0275prov=\u0275\u0275defineInjectable({token:FocusMonitor2,factory:FocusMonitor2.\u0275fac,providedIn:"root"})}return FocusMonitor2})(),CdkMonitorFocus=(()=>{class CdkMonitorFocus2{_elementRef=inject2(ElementRef);_focusMonitor=inject2(FocusMonitor);_monitorSubscription;_focusOrigin=null;cdkFocusChange=new EventEmitter;constructor(){}get focusOrigin(){return this._focusOrigin}ngAfterViewInit(){let element=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(element,element.nodeType===1&&element.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(origin=>{this._focusOrigin=origin,this.cdkFocusChange.emit(origin)})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription&&this._monitorSubscription.unsubscribe()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkMonitorFocus2)};static \u0275dir=\u0275\u0275defineDirective({type:CdkMonitorFocus2,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"},exportAs:["cdkMonitorFocus"]})}return CdkMonitorFocus2})();var appsWithLoaders=new WeakMap,_CdkPrivateStyleLoader=(()=>{class _CdkPrivateStyleLoader2{_appRef;_injector=inject2(Injector);_environmentInjector=inject2(EnvironmentInjector);load(loader){let appRef=this._appRef=this._appRef||this._injector.get(ApplicationRef),data=appsWithLoaders.get(appRef);data||(data={loaders:new Set,refs:[]},appsWithLoaders.set(appRef,data),appRef.onDestroy(()=>{appsWithLoaders.get(appRef)?.refs.forEach(ref=>ref.destroy()),appsWithLoaders.delete(appRef)})),data.loaders.has(loader)||(data.loaders.add(loader),data.refs.push(createComponent(loader,{environmentInjector:this._environmentInjector})))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||_CdkPrivateStyleLoader2)};static \u0275prov=\u0275\u0275defineInjectable({token:_CdkPrivateStyleLoader2,factory:_CdkPrivateStyleLoader2.\u0275fac,providedIn:"root"})}return _CdkPrivateStyleLoader2})();var _VisuallyHiddenLoader=(()=>{class _VisuallyHiddenLoader2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||_VisuallyHiddenLoader2)};static \u0275cmp=\u0275\u0275defineComponent({type:_VisuallyHiddenLoader2,selectors:[["ng-component"]],exportAs:["cdkVisuallyHidden"],decls:0,vars:0,template:function(rf,ctx){},styles:[`.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl] .cdk-visually-hidden{left:auto;right:0}
|
|
13
13
|
`],encapsulation:2,changeDetection:0})}return _VisuallyHiddenLoader2})();function coerceArray(value){return Array.isArray(value)?value:[value]}var mediaQueriesForWebkitCompatibility=new Set,mediaQueryStyleNode,MediaMatcher=(()=>{class MediaMatcher2{_platform=inject2(Platform);_nonce=inject2(CSP_NONCE,{optional:!0});_matchMedia;constructor(){this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):noopMatchMedia}matchMedia(query2){return(this._platform.WEBKIT||this._platform.BLINK)&&createEmptyStyleRule(query2,this._nonce),this._matchMedia(query2)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MediaMatcher2)};static \u0275prov=\u0275\u0275defineInjectable({token:MediaMatcher2,factory:MediaMatcher2.\u0275fac,providedIn:"root"})}return MediaMatcher2})();function createEmptyStyleRule(query2,nonce){if(!mediaQueriesForWebkitCompatibility.has(query2))try{mediaQueryStyleNode||(mediaQueryStyleNode=document.createElement("style"),nonce&&mediaQueryStyleNode.setAttribute("nonce",nonce),mediaQueryStyleNode.setAttribute("type","text/css"),document.head.appendChild(mediaQueryStyleNode)),mediaQueryStyleNode.sheet&&(mediaQueryStyleNode.sheet.insertRule(`@media ${query2} {body{ }}`,0),mediaQueriesForWebkitCompatibility.add(query2))}catch(e){console.error(e)}}function noopMatchMedia(query2){return{matches:query2==="all"||query2==="",media:query2,addListener:()=>{},removeListener:()=>{}}}var BreakpointObserver=(()=>{class BreakpointObserver2{_mediaMatcher=inject2(MediaMatcher);_zone=inject2(NgZone);_queries=new Map;_destroySubject=new Subject;constructor(){}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(value){return splitQueries(coerceArray(value)).some(mediaQuery=>this._registerQuery(mediaQuery).mql.matches)}observe(value){let observables=splitQueries(coerceArray(value)).map(query2=>this._registerQuery(query2).observable),stateObservable=combineLatest(observables);return stateObservable=concat(stateObservable.pipe(take(1)),stateObservable.pipe(skip(1),debounceTime(0))),stateObservable.pipe(map(breakpointStates=>{let response={matches:!1,breakpoints:{}};return breakpointStates.forEach(({matches,query:query2})=>{response.matches=response.matches||matches,response.breakpoints[query2]=matches}),response}))}_registerQuery(query2){if(this._queries.has(query2))return this._queries.get(query2);let mql=this._mediaMatcher.matchMedia(query2),output2={observable:new Observable(observer=>{let handler=e=>this._zone.run(()=>observer.next(e));return mql.addListener(handler),()=>{mql.removeListener(handler)}}).pipe(startWith(mql),map(({matches})=>({query:query2,matches})),takeUntil(this._destroySubject)),mql};return this._queries.set(query2,output2),output2}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||BreakpointObserver2)};static \u0275prov=\u0275\u0275defineInjectable({token:BreakpointObserver2,factory:BreakpointObserver2.\u0275fac,providedIn:"root"})}return BreakpointObserver2})();function splitQueries(queries){return queries.map(query2=>query2.split(",")).reduce((a1,a2)=>a1.concat(a2)).map(query2=>query2.trim())}function shouldIgnoreRecord(record){if(record.type==="characterData"&&record.target instanceof Comment)return!0;if(record.type==="childList"){for(let i=0;i<record.addedNodes.length;i++)if(!(record.addedNodes[i]instanceof Comment))return!1;for(let i=0;i<record.removedNodes.length;i++)if(!(record.removedNodes[i]instanceof Comment))return!1;return!0}return!1}var MutationObserverFactory=(()=>{class MutationObserverFactory2{create(callback){return typeof MutationObserver>"u"?null:new MutationObserver(callback)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MutationObserverFactory2)};static \u0275prov=\u0275\u0275defineInjectable({token:MutationObserverFactory2,factory:MutationObserverFactory2.\u0275fac,providedIn:"root"})}return MutationObserverFactory2})(),ContentObserver=(()=>{class ContentObserver2{_mutationObserverFactory=inject2(MutationObserverFactory);_observedElements=new Map;_ngZone=inject2(NgZone);constructor(){}ngOnDestroy(){this._observedElements.forEach((_,element)=>this._cleanupObserver(element))}observe(elementOrRef){let element=coerceElement(elementOrRef);return new Observable(observer=>{let subscription=this._observeElement(element).pipe(map(records=>records.filter(record=>!shouldIgnoreRecord(record))),filter(records=>!!records.length)).subscribe(records=>{this._ngZone.run(()=>{observer.next(records)})});return()=>{subscription.unsubscribe(),this._unobserveElement(element)}})}_observeElement(element){return this._ngZone.runOutsideAngular(()=>{if(this._observedElements.has(element))this._observedElements.get(element).count++;else{let stream=new Subject,observer=this._mutationObserverFactory.create(mutations=>stream.next(mutations));observer&&observer.observe(element,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(element,{observer,stream,count:1})}return this._observedElements.get(element).stream})}_unobserveElement(element){this._observedElements.has(element)&&(this._observedElements.get(element).count--,this._observedElements.get(element).count||this._cleanupObserver(element))}_cleanupObserver(element){if(this._observedElements.has(element)){let{observer,stream}=this._observedElements.get(element);observer&&observer.disconnect(),stream.complete(),this._observedElements.delete(element)}}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ContentObserver2)};static \u0275prov=\u0275\u0275defineInjectable({token:ContentObserver2,factory:ContentObserver2.\u0275fac,providedIn:"root"})}return ContentObserver2})(),CdkObserveContent=(()=>{class CdkObserveContent2{_contentObserver=inject2(ContentObserver);_elementRef=inject2(ElementRef);event=new EventEmitter;get disabled(){return this._disabled}set disabled(value){this._disabled=value,this._disabled?this._unsubscribe():this._subscribe()}_disabled=!1;get debounce(){return this._debounce}set debounce(value){this._debounce=coerceNumberProperty(value),this._subscribe()}_debounce;_currentSubscription=null;constructor(){}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();let stream=this._contentObserver.observe(this._elementRef);this._currentSubscription=(this.debounce?stream.pipe(debounceTime(this.debounce)):stream).subscribe(this.event)}_unsubscribe(){this._currentSubscription?.unsubscribe()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkObserveContent2)};static \u0275dir=\u0275\u0275defineDirective({type:CdkObserveContent2,selectors:[["","cdkObserveContent",""]],inputs:{disabled:[2,"cdkObserveContentDisabled","disabled",booleanAttribute],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]})}return CdkObserveContent2})(),ObserversModule=(()=>{class ObserversModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ObserversModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:ObserversModule2});static \u0275inj=\u0275\u0275defineInjector({providers:[MutationObserverFactory]})}return ObserversModule2})();var InteractivityChecker=(()=>{class InteractivityChecker2{_platform=inject2(Platform);constructor(){}isDisabled(element){return element.hasAttribute("disabled")}isVisible(element){return hasGeometry(element)&&getComputedStyle(element).visibility==="visible"}isTabbable(element){if(!this._platform.isBrowser)return!1;let frameElement=getFrameElement(getWindow(element));if(frameElement&&(getTabIndexValue(frameElement)===-1||!this.isVisible(frameElement)))return!1;let nodeName=element.nodeName.toLowerCase(),tabIndexValue=getTabIndexValue(element);return element.hasAttribute("contenteditable")?tabIndexValue!==-1:nodeName==="iframe"||nodeName==="object"||this._platform.WEBKIT&&this._platform.IOS&&!isPotentiallyTabbableIOS(element)?!1:nodeName==="audio"?element.hasAttribute("controls")?tabIndexValue!==-1:!1:nodeName==="video"?tabIndexValue===-1?!1:tabIndexValue!==null?!0:this._platform.FIREFOX||element.hasAttribute("controls"):element.tabIndex>=0}isFocusable(element,config2){return isPotentiallyFocusable(element)&&!this.isDisabled(element)&&(config2?.ignoreVisibility||this.isVisible(element))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||InteractivityChecker2)};static \u0275prov=\u0275\u0275defineInjectable({token:InteractivityChecker2,factory:InteractivityChecker2.\u0275fac,providedIn:"root"})}return InteractivityChecker2})();function getFrameElement(window2){try{return window2.frameElement}catch{return null}}function hasGeometry(element){return!!(element.offsetWidth||element.offsetHeight||typeof element.getClientRects=="function"&&element.getClientRects().length)}function isNativeFormElement(element){let nodeName=element.nodeName.toLowerCase();return nodeName==="input"||nodeName==="select"||nodeName==="button"||nodeName==="textarea"}function isHiddenInput(element){return isInputElement(element)&&element.type=="hidden"}function isAnchorWithHref(element){return isAnchorElement(element)&&element.hasAttribute("href")}function isInputElement(element){return element.nodeName.toLowerCase()=="input"}function isAnchorElement(element){return element.nodeName.toLowerCase()=="a"}function hasValidTabIndex(element){if(!element.hasAttribute("tabindex")||element.tabIndex===void 0)return!1;let tabIndex=element.getAttribute("tabindex");return!!(tabIndex&&!isNaN(parseInt(tabIndex,10)))}function getTabIndexValue(element){if(!hasValidTabIndex(element))return null;let tabIndex=parseInt(element.getAttribute("tabindex")||"",10);return isNaN(tabIndex)?-1:tabIndex}function isPotentiallyTabbableIOS(element){let nodeName=element.nodeName.toLowerCase(),inputType=nodeName==="input"&&element.type;return inputType==="text"||inputType==="password"||nodeName==="select"||nodeName==="textarea"}function isPotentiallyFocusable(element){return isHiddenInput(element)?!1:isNativeFormElement(element)||isAnchorWithHref(element)||element.hasAttribute("contenteditable")||hasValidTabIndex(element)}function getWindow(node){return node.ownerDocument&&node.ownerDocument.defaultView||window}var FocusTrap=class{_element;_checker;_ngZone;_document;_injector;_startAnchor;_endAnchor;_hasAttached=!1;startAnchorListener=()=>this.focusLastTabbableElement();endAnchorListener=()=>this.focusFirstTabbableElement();get enabled(){return this._enabled}set enabled(value){this._enabled=value,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(value,this._startAnchor),this._toggleAnchorTabIndex(value,this._endAnchor))}_enabled=!0;constructor(_element,_checker,_ngZone,_document2,deferAnchors=!1,_injector){this._element=_element,this._checker=_checker,this._ngZone=_ngZone,this._document=_document2,this._injector=_injector,deferAnchors||this.attachAnchors()}destroy(){let startAnchor=this._startAnchor,endAnchor=this._endAnchor;startAnchor&&(startAnchor.removeEventListener("focus",this.startAnchorListener),startAnchor.remove()),endAnchor&&(endAnchor.removeEventListener("focus",this.endAnchorListener),endAnchor.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return this._hasAttached?!0:(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(options){return new Promise(resolve=>{this._executeOnStable(()=>resolve(this.focusInitialElement(options)))})}focusFirstTabbableElementWhenReady(options){return new Promise(resolve=>{this._executeOnStable(()=>resolve(this.focusFirstTabbableElement(options)))})}focusLastTabbableElementWhenReady(options){return new Promise(resolve=>{this._executeOnStable(()=>resolve(this.focusLastTabbableElement(options)))})}_getRegionBoundary(bound){let markers=this._element.querySelectorAll(`[cdk-focus-region-${bound}], [cdkFocusRegion${bound}], [cdk-focus-${bound}]`);return bound=="start"?markers.length?markers[0]:this._getFirstTabbableElement(this._element):markers.length?markers[markers.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(options){let redirectToElement=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(redirectToElement){if(!this._checker.isFocusable(redirectToElement)){let focusableChild=this._getFirstTabbableElement(redirectToElement);return focusableChild?.focus(options),!!focusableChild}return redirectToElement.focus(options),!0}return this.focusFirstTabbableElement(options)}focusFirstTabbableElement(options){let redirectToElement=this._getRegionBoundary("start");return redirectToElement&&redirectToElement.focus(options),!!redirectToElement}focusLastTabbableElement(options){let redirectToElement=this._getRegionBoundary("end");return redirectToElement&&redirectToElement.focus(options),!!redirectToElement}hasAttached(){return this._hasAttached}_getFirstTabbableElement(root){if(this._checker.isFocusable(root)&&this._checker.isTabbable(root))return root;let children=root.children;for(let i=0;i<children.length;i++){let tabbableChild=children[i].nodeType===this._document.ELEMENT_NODE?this._getFirstTabbableElement(children[i]):null;if(tabbableChild)return tabbableChild}return null}_getLastTabbableElement(root){if(this._checker.isFocusable(root)&&this._checker.isTabbable(root))return root;let children=root.children;for(let i=children.length-1;i>=0;i--){let tabbableChild=children[i].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(children[i]):null;if(tabbableChild)return tabbableChild}return null}_createAnchor(){let anchor=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,anchor),anchor.classList.add("cdk-visually-hidden"),anchor.classList.add("cdk-focus-trap-anchor"),anchor.setAttribute("aria-hidden","true"),anchor}_toggleAnchorTabIndex(isEnabled,anchor){isEnabled?anchor.setAttribute("tabindex","0"):anchor.removeAttribute("tabindex")}toggleAnchors(enabled){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(enabled,this._startAnchor),this._toggleAnchorTabIndex(enabled,this._endAnchor))}_executeOnStable(fn){this._injector?afterNextRender(fn,{injector:this._injector}):setTimeout(fn)}},FocusTrapFactory=(()=>{class FocusTrapFactory2{_checker=inject2(InteractivityChecker);_ngZone=inject2(NgZone);_document=inject2(DOCUMENT);_injector=inject2(Injector);constructor(){inject2(_CdkPrivateStyleLoader).load(_VisuallyHiddenLoader)}create(element,deferCaptureElements=!1){return new FocusTrap(element,this._checker,this._ngZone,this._document,deferCaptureElements,this._injector)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||FocusTrapFactory2)};static \u0275prov=\u0275\u0275defineInjectable({token:FocusTrapFactory2,factory:FocusTrapFactory2.\u0275fac,providedIn:"root"})}return FocusTrapFactory2})(),CdkTrapFocus=(()=>{class CdkTrapFocus2{_elementRef=inject2(ElementRef);_focusTrapFactory=inject2(FocusTrapFactory);focusTrap;_previouslyFocusedElement=null;get enabled(){return this.focusTrap?.enabled||!1}set enabled(value){this.focusTrap&&(this.focusTrap.enabled=value)}autoCapture;constructor(){inject2(Platform).isBrowser&&(this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0))}ngOnDestroy(){this.focusTrap?.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)}ngAfterContentInit(){this.focusTrap?.attachAnchors(),this.autoCapture&&this._captureFocus()}ngDoCheck(){this.focusTrap&&!this.focusTrap.hasAttached()&&this.focusTrap.attachAnchors()}ngOnChanges(changes){let autoCaptureChange=changes.autoCapture;autoCaptureChange&&!autoCaptureChange.firstChange&&this.autoCapture&&this.focusTrap?.hasAttached()&&this._captureFocus()}_captureFocus(){this._previouslyFocusedElement=_getFocusedElementPierceShadowDom(),this.focusTrap?.focusInitialElementWhenReady()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkTrapFocus2)};static \u0275dir=\u0275\u0275defineDirective({type:CdkTrapFocus2,selectors:[["","cdkTrapFocus",""]],inputs:{enabled:[2,"cdkTrapFocus","enabled",booleanAttribute],autoCapture:[2,"cdkTrapFocusAutoCapture","autoCapture",booleanAttribute]},exportAs:["cdkTrapFocus"],features:[\u0275\u0275NgOnChangesFeature]})}return CdkTrapFocus2})(),LIVE_ANNOUNCER_ELEMENT_TOKEN=new InjectionToken("liveAnnouncerElement",{providedIn:"root",factory:LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY});function LIVE_ANNOUNCER_ELEMENT_TOKEN_FACTORY(){return null}var LIVE_ANNOUNCER_DEFAULT_OPTIONS=new InjectionToken("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),uniqueIds=0,LiveAnnouncer=(()=>{class LiveAnnouncer2{_ngZone=inject2(NgZone);_defaultOptions=inject2(LIVE_ANNOUNCER_DEFAULT_OPTIONS,{optional:!0});_liveElement;_document=inject2(DOCUMENT);_previousTimeout;_currentPromise;_currentResolve;constructor(){let elementToken=inject2(LIVE_ANNOUNCER_ELEMENT_TOKEN,{optional:!0});this._liveElement=elementToken||this._createLiveElement()}announce(message,...args){let defaultOptions2=this._defaultOptions,politeness,duration;return args.length===1&&typeof args[0]=="number"?duration=args[0]:[politeness,duration]=args,this.clear(),clearTimeout(this._previousTimeout),politeness||(politeness=defaultOptions2&&defaultOptions2.politeness?defaultOptions2.politeness:"polite"),duration==null&&defaultOptions2&&(duration=defaultOptions2.duration),this._liveElement.setAttribute("aria-live",politeness),this._liveElement.id&&this._exposeAnnouncerToModals(this._liveElement.id),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(resolve=>this._currentResolve=resolve)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=message,typeof duration=="number"&&(this._previousTimeout=setTimeout(()=>this.clear(),duration)),this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement?.remove(),this._liveElement=null,this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){let elementClass="cdk-live-announcer-element",previousElements=this._document.getElementsByClassName(elementClass),liveEl=this._document.createElement("div");for(let i=0;i<previousElements.length;i++)previousElements[i].remove();return liveEl.classList.add(elementClass),liveEl.classList.add("cdk-visually-hidden"),liveEl.setAttribute("aria-atomic","true"),liveEl.setAttribute("aria-live","polite"),liveEl.id=`cdk-live-announcer-${uniqueIds++}`,this._document.body.appendChild(liveEl),liveEl}_exposeAnnouncerToModals(id){let modals=this._document.querySelectorAll('body > .cdk-overlay-container [aria-modal="true"]');for(let i=0;i<modals.length;i++){let modal=modals[i],ariaOwns=modal.getAttribute("aria-owns");ariaOwns?ariaOwns.indexOf(id)===-1&&modal.setAttribute("aria-owns",ariaOwns+" "+id):modal.setAttribute("aria-owns",id)}}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||LiveAnnouncer2)};static \u0275prov=\u0275\u0275defineInjectable({token:LiveAnnouncer2,factory:LiveAnnouncer2.\u0275fac,providedIn:"root"})}return LiveAnnouncer2})();var HighContrastMode=(function(HighContrastMode2){return HighContrastMode2[HighContrastMode2.NONE=0]="NONE",HighContrastMode2[HighContrastMode2.BLACK_ON_WHITE=1]="BLACK_ON_WHITE",HighContrastMode2[HighContrastMode2.WHITE_ON_BLACK=2]="WHITE_ON_BLACK",HighContrastMode2})(HighContrastMode||{}),BLACK_ON_WHITE_CSS_CLASS="cdk-high-contrast-black-on-white",WHITE_ON_BLACK_CSS_CLASS="cdk-high-contrast-white-on-black",HIGH_CONTRAST_MODE_ACTIVE_CSS_CLASS="cdk-high-contrast-active",HighContrastModeDetector=(()=>{class HighContrastModeDetector2{_platform=inject2(Platform);_hasCheckedHighContrastMode;_document=inject2(DOCUMENT);_breakpointSubscription;constructor(){this._breakpointSubscription=inject2(BreakpointObserver).observe("(forced-colors: active)").subscribe(()=>{this._hasCheckedHighContrastMode&&(this._hasCheckedHighContrastMode=!1,this._applyBodyHighContrastModeCssClasses())})}getHighContrastMode(){if(!this._platform.isBrowser)return HighContrastMode.NONE;let testElement=this._document.createElement("div");testElement.style.backgroundColor="rgb(1,2,3)",testElement.style.position="absolute",this._document.body.appendChild(testElement);let documentWindow=this._document.defaultView||window,computedStyle=documentWindow&&documentWindow.getComputedStyle?documentWindow.getComputedStyle(testElement):null,computedColor=(computedStyle&&computedStyle.backgroundColor||"").replace(/ /g,"");switch(testElement.remove(),computedColor){case"rgb(0,0,0)":case"rgb(45,50,54)":case"rgb(32,32,32)":return HighContrastMode.WHITE_ON_BLACK;case"rgb(255,255,255)":case"rgb(255,250,239)":return HighContrastMode.BLACK_ON_WHITE}return HighContrastMode.NONE}ngOnDestroy(){this._breakpointSubscription.unsubscribe()}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){let bodyClasses=this._document.body.classList;bodyClasses.remove(HIGH_CONTRAST_MODE_ACTIVE_CSS_CLASS,BLACK_ON_WHITE_CSS_CLASS,WHITE_ON_BLACK_CSS_CLASS),this._hasCheckedHighContrastMode=!0;let mode=this.getHighContrastMode();mode===HighContrastMode.BLACK_ON_WHITE?bodyClasses.add(HIGH_CONTRAST_MODE_ACTIVE_CSS_CLASS,BLACK_ON_WHITE_CSS_CLASS):mode===HighContrastMode.WHITE_ON_BLACK&&bodyClasses.add(HIGH_CONTRAST_MODE_ACTIVE_CSS_CLASS,WHITE_ON_BLACK_CSS_CLASS)}}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||HighContrastModeDetector2)};static \u0275prov=\u0275\u0275defineInjectable({token:HighContrastModeDetector2,factory:HighContrastModeDetector2.\u0275fac,providedIn:"root"})}return HighContrastModeDetector2})(),A11yModule=(()=>{class A11yModule2{constructor(){inject2(HighContrastModeDetector)._applyBodyHighContrastModeCssClasses()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||A11yModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:A11yModule2});static \u0275inj=\u0275\u0275defineInjector({imports:[ObserversModule]})}return A11yModule2})();var counters={},_IdGenerator=(()=>{class _IdGenerator2{_appId=inject2(APP_ID);getId(prefix){return this._appId!=="ng"&&(prefix+=this._appId),counters.hasOwnProperty(prefix)||(counters[prefix]=0),`${prefix}${counters[prefix]++}`}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||_IdGenerator2)};static \u0275prov=\u0275\u0275defineInjectable({token:_IdGenerator2,factory:_IdGenerator2.\u0275fac,providedIn:"root"})}return _IdGenerator2})();var DEFAULT_TYPEAHEAD_DEBOUNCE_INTERVAL_MS=200,Typeahead=class{_letterKeyStream=new Subject;_items=[];_selectedItemIndex=-1;_pressedLetters=[];_skipPredicateFn;_selectedItem=new Subject;selectedItem=this._selectedItem;constructor(initialItems,config2){let typeAheadInterval=typeof config2?.debounceInterval=="number"?config2.debounceInterval:DEFAULT_TYPEAHEAD_DEBOUNCE_INTERVAL_MS;config2?.skipPredicate&&(this._skipPredicateFn=config2.skipPredicate),this.setItems(initialItems),this._setupKeyHandler(typeAheadInterval)}destroy(){this._pressedLetters=[],this._letterKeyStream.complete(),this._selectedItem.complete()}setCurrentSelectedItemIndex(index){this._selectedItemIndex=index}setItems(items){this._items=items}handleKey(event){let keyCode=event.keyCode;event.key&&event.key.length===1?this._letterKeyStream.next(event.key.toLocaleUpperCase()):(keyCode>=65&&keyCode<=90||keyCode>=48&&keyCode<=57)&&this._letterKeyStream.next(String.fromCharCode(keyCode))}isTyping(){return this._pressedLetters.length>0}reset(){this._pressedLetters=[]}_setupKeyHandler(typeAheadInterval){this._letterKeyStream.pipe(tap(letter=>this._pressedLetters.push(letter)),debounceTime(typeAheadInterval),filter(()=>this._pressedLetters.length>0),map(()=>this._pressedLetters.join("").toLocaleUpperCase())).subscribe(inputString=>{for(let i=1;i<this._items.length+1;i++){let index=(this._selectedItemIndex+i)%this._items.length,item=this._items[index];if(!this._skipPredicateFn?.(item)&&item.getLabel?.().toLocaleUpperCase().trim().indexOf(inputString)===0){this._selectedItem.next(item);break}}this._pressedLetters=[]})}};function hasModifierKey(event,...modifiers){return modifiers.length?modifiers.some(modifier=>event[modifier]):event.altKey||event.shiftKey||event.ctrlKey||event.metaKey}var ListKeyManager=class{_items;_activeItemIndex=signal(-1);_activeItem=signal(null);_wrap=!1;_typeaheadSubscription=Subscription.EMPTY;_itemChangesSubscription;_vertical=!0;_horizontal;_allowedModifierKeys=[];_homeAndEnd=!1;_pageUpAndDown={enabled:!1,delta:10};_effectRef;_typeahead;_skipPredicateFn=item=>item.disabled;constructor(_items,injector){this._items=_items,_items instanceof QueryList?this._itemChangesSubscription=_items.changes.subscribe(newItems=>this._itemsChanged(newItems.toArray())):isSignal(_items)&&(this._effectRef=effect(()=>this._itemsChanged(_items()),{injector}))}tabOut=new Subject;change=new Subject;skipPredicate(predicate){return this._skipPredicateFn=predicate,this}withWrap(shouldWrap=!0){return this._wrap=shouldWrap,this}withVerticalOrientation(enabled=!0){return this._vertical=enabled,this}withHorizontalOrientation(direction){return this._horizontal=direction,this}withAllowedModifierKeys(keys){return this._allowedModifierKeys=keys,this}withTypeAhead(debounceInterval=200){this._typeaheadSubscription.unsubscribe();let items=this._getItemsArray();return this._typeahead=new Typeahead(items,{debounceInterval:typeof debounceInterval=="number"?debounceInterval:void 0,skipPredicate:item=>this._skipPredicateFn(item)}),this._typeaheadSubscription=this._typeahead.selectedItem.subscribe(item=>{this.setActiveItem(item)}),this}cancelTypeahead(){return this._typeahead?.reset(),this}withHomeAndEnd(enabled=!0){return this._homeAndEnd=enabled,this}withPageUpDown(enabled=!0,delta=10){return this._pageUpAndDown={enabled,delta},this}setActiveItem(item){let previousActiveItem=this._activeItem();this.updateActiveItem(item),this._activeItem()!==previousActiveItem&&this.change.next(this._activeItemIndex())}onKeydown(event){let keyCode=event.keyCode,isModifierAllowed=["altKey","ctrlKey","metaKey","shiftKey"].every(modifier=>!event[modifier]||this._allowedModifierKeys.indexOf(modifier)>-1);switch(keyCode){case 9:this.tabOut.next();return;case 40:if(this._vertical&&isModifierAllowed){this.setNextItemActive();break}else return;case 38:if(this._vertical&&isModifierAllowed){this.setPreviousItemActive();break}else return;case 39:if(this._horizontal&&isModifierAllowed){this._horizontal==="rtl"?this.setPreviousItemActive():this.setNextItemActive();break}else return;case 37:if(this._horizontal&&isModifierAllowed){this._horizontal==="rtl"?this.setNextItemActive():this.setPreviousItemActive();break}else return;case 36:if(this._homeAndEnd&&isModifierAllowed){this.setFirstItemActive();break}else return;case 35:if(this._homeAndEnd&&isModifierAllowed){this.setLastItemActive();break}else return;case 33:if(this._pageUpAndDown.enabled&&isModifierAllowed){let targetIndex=this._activeItemIndex()-this._pageUpAndDown.delta;this._setActiveItemByIndex(targetIndex>0?targetIndex:0,1);break}else return;case 34:if(this._pageUpAndDown.enabled&&isModifierAllowed){let targetIndex=this._activeItemIndex()+this._pageUpAndDown.delta,itemsLength=this._getItemsArray().length;this._setActiveItemByIndex(targetIndex<itemsLength?targetIndex:itemsLength-1,-1);break}else return;default:(isModifierAllowed||hasModifierKey(event,"shiftKey"))&&this._typeahead?.handleKey(event);return}this._typeahead?.reset(),event.preventDefault()}get activeItemIndex(){return this._activeItemIndex()}get activeItem(){return this._activeItem()}isTyping(){return!!this._typeahead&&this._typeahead.isTyping()}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._getItemsArray().length-1,-1)}setNextItemActive(){this._activeItemIndex()<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex()<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(item){let itemArray=this._getItemsArray(),index=typeof item=="number"?item:itemArray.indexOf(item),activeItem=itemArray[index];this._activeItem.set(activeItem??null),this._activeItemIndex.set(index),this._typeahead?.setCurrentSelectedItemIndex(index)}destroy(){this._typeaheadSubscription.unsubscribe(),this._itemChangesSubscription?.unsubscribe(),this._effectRef?.destroy(),this._typeahead?.destroy(),this.tabOut.complete(),this.change.complete()}_setActiveItemByDelta(delta){this._wrap?this._setActiveInWrapMode(delta):this._setActiveInDefaultMode(delta)}_setActiveInWrapMode(delta){let items=this._getItemsArray();for(let i=1;i<=items.length;i++){let index=(this._activeItemIndex()+delta*i+items.length)%items.length,item=items[index];if(!this._skipPredicateFn(item)){this.setActiveItem(index);return}}}_setActiveInDefaultMode(delta){this._setActiveItemByIndex(this._activeItemIndex()+delta,delta)}_setActiveItemByIndex(index,fallbackDelta){let items=this._getItemsArray();if(items[index]){for(;this._skipPredicateFn(items[index]);)if(index+=fallbackDelta,!items[index])return;this.setActiveItem(index)}}_getItemsArray(){return isSignal(this._items)?this._items():this._items instanceof QueryList?this._items.toArray():this._items}_itemsChanged(newItems){this._typeahead?.setItems(newItems);let activeItem=this._activeItem();if(activeItem){let newIndex=newItems.indexOf(activeItem);newIndex>-1&&newIndex!==this._activeItemIndex()&&(this._activeItemIndex.set(newIndex),this._typeahead?.setCurrentSelectedItemIndex(newIndex))}}};var ActiveDescendantKeyManager=class extends ListKeyManager{setActiveItem(index){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(index),this.activeItem&&this.activeItem.setActiveStyles()}};var FocusKeyManager=class extends ListKeyManager{_origin="program";setFocusOrigin(origin){return this._origin=origin,this}setActiveItem(item){super.setActiveItem(item),this.activeItem&&this.activeItem.focus(this._origin)}};var ID_DELIMITER=" ";function addAriaReferencedId(el,attr,id){let ids=getAriaReferenceIds(el,attr);id=id.trim(),!ids.some(existingId=>existingId.trim()===id)&&(ids.push(id),el.setAttribute(attr,ids.join(ID_DELIMITER)))}function removeAriaReferencedId(el,attr,id){let ids=getAriaReferenceIds(el,attr);id=id.trim();let filteredIds=ids.filter(val=>val!==id);filteredIds.length?el.setAttribute(attr,filteredIds.join(ID_DELIMITER)):el.removeAttribute(attr)}function getAriaReferenceIds(el,attr){return el.getAttribute(attr)?.match(/\S+/g)??[]}var CDK_DESCRIBEDBY_ID_PREFIX="cdk-describedby-message",CDK_DESCRIBEDBY_HOST_ATTRIBUTE="cdk-describedby-host",nextId=0,AriaDescriber=(()=>{class AriaDescriber2{_platform=inject2(Platform);_document=inject2(DOCUMENT);_messageRegistry=new Map;_messagesContainer=null;_id=`${nextId++}`;constructor(){inject2(_CdkPrivateStyleLoader).load(_VisuallyHiddenLoader),this._id=inject2(APP_ID)+"-"+nextId++}describe(hostElement,message,role){if(!this._canBeDescribed(hostElement,message))return;let key=getKey(message,role);typeof message!="string"?(setMessageId(message,this._id),this._messageRegistry.set(key,{messageElement:message,referenceCount:0})):this._messageRegistry.has(key)||this._createMessageElement(message,role),this._isElementDescribedByMessage(hostElement,key)||this._addMessageReference(hostElement,key)}removeDescription(hostElement,message,role){if(!message||!this._isElementNode(hostElement))return;let key=getKey(message,role);if(this._isElementDescribedByMessage(hostElement,key)&&this._removeMessageReference(hostElement,key),typeof message=="string"){let registeredMessage=this._messageRegistry.get(key);registeredMessage&®isteredMessage.referenceCount===0&&this._deleteMessageElement(key)}this._messagesContainer?.childNodes.length===0&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){let describedElements=this._document.querySelectorAll(`[${CDK_DESCRIBEDBY_HOST_ATTRIBUTE}="${this._id}"]`);for(let i=0;i<describedElements.length;i++)this._removeCdkDescribedByReferenceIds(describedElements[i]),describedElements[i].removeAttribute(CDK_DESCRIBEDBY_HOST_ATTRIBUTE);this._messagesContainer?.remove(),this._messagesContainer=null,this._messageRegistry.clear()}_createMessageElement(message,role){let messageElement=this._document.createElement("div");setMessageId(messageElement,this._id),messageElement.textContent=message,role&&messageElement.setAttribute("role",role),this._createMessagesContainer(),this._messagesContainer.appendChild(messageElement),this._messageRegistry.set(getKey(message,role),{messageElement,referenceCount:0})}_deleteMessageElement(key){this._messageRegistry.get(key)?.messageElement?.remove(),this._messageRegistry.delete(key)}_createMessagesContainer(){if(this._messagesContainer)return;let containerClassName="cdk-describedby-message-container",serverContainers=this._document.querySelectorAll(`.${containerClassName}[platform="server"]`);for(let i=0;i<serverContainers.length;i++)serverContainers[i].remove();let messagesContainer=this._document.createElement("div");messagesContainer.style.visibility="hidden",messagesContainer.classList.add(containerClassName),messagesContainer.classList.add("cdk-visually-hidden"),this._platform.isBrowser||messagesContainer.setAttribute("platform","server"),this._document.body.appendChild(messagesContainer),this._messagesContainer=messagesContainer}_removeCdkDescribedByReferenceIds(element){let originalReferenceIds=getAriaReferenceIds(element,"aria-describedby").filter(id=>id.indexOf(CDK_DESCRIBEDBY_ID_PREFIX)!=0);element.setAttribute("aria-describedby",originalReferenceIds.join(" "))}_addMessageReference(element,key){let registeredMessage=this._messageRegistry.get(key);addAriaReferencedId(element,"aria-describedby",registeredMessage.messageElement.id),element.setAttribute(CDK_DESCRIBEDBY_HOST_ATTRIBUTE,this._id),registeredMessage.referenceCount++}_removeMessageReference(element,key){let registeredMessage=this._messageRegistry.get(key);registeredMessage.referenceCount--,removeAriaReferencedId(element,"aria-describedby",registeredMessage.messageElement.id),element.removeAttribute(CDK_DESCRIBEDBY_HOST_ATTRIBUTE)}_isElementDescribedByMessage(element,key){let referenceIds=getAriaReferenceIds(element,"aria-describedby"),registeredMessage=this._messageRegistry.get(key),messageId=registeredMessage&®isteredMessage.messageElement.id;return!!messageId&&referenceIds.indexOf(messageId)!=-1}_canBeDescribed(element,message){if(!this._isElementNode(element))return!1;if(message&&typeof message=="object")return!0;let trimmedMessage=message==null?"":`${message}`.trim(),ariaLabel=element.getAttribute("aria-label");return trimmedMessage?!ariaLabel||ariaLabel.trim()!==trimmedMessage:!1}_isElementNode(element){return element.nodeType===this._document.ELEMENT_NODE}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||AriaDescriber2)};static \u0275prov=\u0275\u0275defineInjectable({token:AriaDescriber2,factory:AriaDescriber2.\u0275fac,providedIn:"root"})}return AriaDescriber2})();function getKey(message,role){return typeof message=="string"?`${role||""}/${message}`:message}function setMessageId(element,serviceId){element.id||(element.id=`${CDK_DESCRIBEDBY_ID_PREFIX}-${serviceId}-${nextId++}`)}var RtlScrollAxisType=(function(RtlScrollAxisType2){return RtlScrollAxisType2[RtlScrollAxisType2.NORMAL=0]="NORMAL",RtlScrollAxisType2[RtlScrollAxisType2.NEGATED=1]="NEGATED",RtlScrollAxisType2[RtlScrollAxisType2.INVERTED=2]="INVERTED",RtlScrollAxisType2})(RtlScrollAxisType||{}),rtlScrollAxisType,scrollBehaviorSupported;function supportsScrollBehavior(){if(scrollBehaviorSupported==null){if(typeof document!="object"||!document||typeof Element!="function"||!Element)return scrollBehaviorSupported=!1,scrollBehaviorSupported;if("scrollBehavior"in document.documentElement.style)scrollBehaviorSupported=!0;else{let scrollToFunction=Element.prototype.scrollTo;scrollToFunction?scrollBehaviorSupported=!/\{\s*\[native code\]\s*\}/.test(scrollToFunction.toString()):scrollBehaviorSupported=!1}}return scrollBehaviorSupported}function getRtlScrollAxisType(){if(typeof document!="object"||!document)return RtlScrollAxisType.NORMAL;if(rtlScrollAxisType==null){let scrollContainer=document.createElement("div"),containerStyle=scrollContainer.style;scrollContainer.dir="rtl",containerStyle.width="1px",containerStyle.overflow="auto",containerStyle.visibility="hidden",containerStyle.pointerEvents="none",containerStyle.position="absolute";let content=document.createElement("div"),contentStyle=content.style;contentStyle.width="2px",contentStyle.height="1px",scrollContainer.appendChild(content),document.body.appendChild(scrollContainer),rtlScrollAxisType=RtlScrollAxisType.NORMAL,scrollContainer.scrollLeft===0&&(scrollContainer.scrollLeft=1,rtlScrollAxisType=scrollContainer.scrollLeft===0?RtlScrollAxisType.NEGATED:RtlScrollAxisType.INVERTED),scrollContainer.remove()}return rtlScrollAxisType}function _isTestEnvironment(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}var supportedInputTypes,candidateInputTypes=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function getSupportedInputTypes(){if(supportedInputTypes)return supportedInputTypes;if(typeof document!="object"||!document)return supportedInputTypes=new Set(candidateInputTypes),supportedInputTypes;let featureTestInput=document.createElement("input");return supportedInputTypes=new Set(candidateInputTypes.filter(value=>(featureTestInput.setAttribute("type",value),featureTestInput.type===value))),supportedInputTypes}var LayoutModule=(()=>{class LayoutModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||LayoutModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:LayoutModule2});static \u0275inj=\u0275\u0275defineInjector({})}return LayoutModule2})(),Breakpoints={XSmall:"(max-width: 599.98px)",Small:"(min-width: 600px) and (max-width: 959.98px)",Medium:"(min-width: 960px) and (max-width: 1279.98px)",Large:"(min-width: 1280px) and (max-width: 1919.98px)",XLarge:"(min-width: 1920px)",Handset:"(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)",Tablet:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait), (min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",Web:"(min-width: 840px) and (orientation: portrait), (min-width: 1280px) and (orientation: landscape)",HandsetPortrait:"(max-width: 599.98px) and (orientation: portrait)",TabletPortrait:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait)",WebPortrait:"(min-width: 840px) and (orientation: portrait)",HandsetLandscape:"(max-width: 959.98px) and (orientation: landscape)",TabletLandscape:"(min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",WebLandscape:"(min-width: 1280px) and (orientation: landscape)"};var MATERIAL_ANIMATIONS=new InjectionToken("MATERIAL_ANIMATIONS");var reducedMotion=null;function _getAnimationsState(){return inject2(MATERIAL_ANIMATIONS,{optional:!0})?.animationsDisabled||inject2(ANIMATION_MODULE_TYPE,{optional:!0})==="NoopAnimations"?"di-disabled":(reducedMotion??=inject2(MediaMatcher).matchMedia("(prefers-reduced-motion)").matches,reducedMotion?"reduced-motion":"enabled")}function _animationsDisabled(){return _getAnimationsState()!=="enabled"}function coerceCssPixelValue(value){return value==null?"":typeof value=="string"?value:`${value}px`}function coerceBooleanProperty(value){return value!=null&&`${value}`!="false"}function coerceStringArray(value,separator=/\s+/){let result=[];if(value!=null){let sourceValues=Array.isArray(value)?value:`${value}`.split(separator);for(let sourceValue of sourceValues){let trimmedString=`${sourceValue}`.trim();trimmedString&&result.push(trimmedString)}}return result}var RippleState=(function(RippleState2){return RippleState2[RippleState2.FADING_IN=0]="FADING_IN",RippleState2[RippleState2.VISIBLE=1]="VISIBLE",RippleState2[RippleState2.FADING_OUT=2]="FADING_OUT",RippleState2[RippleState2.HIDDEN=3]="HIDDEN",RippleState2})(RippleState||{}),RippleRef=class{_renderer;element;config;_animationForciblyDisabledThroughCss;state=RippleState.HIDDEN;constructor(_renderer,element,config2,_animationForciblyDisabledThroughCss=!1){this._renderer=_renderer,this.element=element,this.config=config2,this._animationForciblyDisabledThroughCss=_animationForciblyDisabledThroughCss}fadeOut(){this._renderer.fadeOutRipple(this)}},passiveCapturingEventOptions$1=normalizePassiveListenerOptions({passive:!0,capture:!0}),RippleEventManager=class{_events=new Map;addHandler(ngZone,name,element,handler){let handlersForEvent=this._events.get(name);if(handlersForEvent){let handlersForElement=handlersForEvent.get(element);handlersForElement?handlersForElement.add(handler):handlersForEvent.set(element,new Set([handler]))}else this._events.set(name,new Map([[element,new Set([handler])]])),ngZone.runOutsideAngular(()=>{document.addEventListener(name,this._delegateEventHandler,passiveCapturingEventOptions$1)})}removeHandler(name,element,handler){let handlersForEvent=this._events.get(name);if(!handlersForEvent)return;let handlersForElement=handlersForEvent.get(element);handlersForElement&&(handlersForElement.delete(handler),handlersForElement.size===0&&handlersForEvent.delete(element),handlersForEvent.size===0&&(this._events.delete(name),document.removeEventListener(name,this._delegateEventHandler,passiveCapturingEventOptions$1)))}_delegateEventHandler=event=>{let target=_getEventTarget(event);target&&this._events.get(event.type)?.forEach((handlers,element)=>{(element===target||element.contains(target))&&handlers.forEach(handler=>handler.handleEvent(event))})}},defaultRippleAnimationConfig={enterDuration:225,exitDuration:150},ignoreMouseEventsTimeout=800,passiveCapturingEventOptions=normalizePassiveListenerOptions({passive:!0,capture:!0}),pointerDownEvents=["mousedown","touchstart"],pointerUpEvents=["mouseup","mouseleave","touchend","touchcancel"],_MatRippleStylesLoader=(()=>{class _MatRippleStylesLoader2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||_MatRippleStylesLoader2)};static \u0275cmp=\u0275\u0275defineComponent({type:_MatRippleStylesLoader2,selectors:[["ng-component"]],hostAttrs:["mat-ripple-style-loader",""],decls:0,vars:0,template:function(rf,ctx){},styles:[`.mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale3d(0, 0, 0);background-color:var(--mat-ripple-color, color-mix(in srgb, var(--mat-sys-on-surface) 10%, transparent))}@media(forced-colors: active){.mat-ripple-element{display:none}}.cdk-drag-preview .mat-ripple-element,.cdk-drag-placeholder .mat-ripple-element{display:none}
|
|
14
14
|
`],encapsulation:2,changeDetection:0})}return _MatRippleStylesLoader2})(),RippleRenderer=class _RippleRenderer{_target;_ngZone;_platform;_containerElement;_triggerElement;_isPointerDown=!1;_activeRipples=new Map;_mostRecentTransientRipple;_lastTouchStartEvent;_pointerUpEventsRegistered=!1;_containerRect;static _eventManager=new RippleEventManager;constructor(_target,_ngZone,elementOrElementRef,_platform,injector){this._target=_target,this._ngZone=_ngZone,this._platform=_platform,_platform.isBrowser&&(this._containerElement=coerceElement(elementOrElementRef)),injector&&injector.get(_CdkPrivateStyleLoader).load(_MatRippleStylesLoader)}fadeInRipple(x,y,config2={}){let containerRect=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),animationConfig=__spreadValues(__spreadValues({},defaultRippleAnimationConfig),config2.animation);config2.centered&&(x=containerRect.left+containerRect.width/2,y=containerRect.top+containerRect.height/2);let radius=config2.radius||distanceToFurthestCorner(x,y,containerRect),offsetX=x-containerRect.left,offsetY=y-containerRect.top,enterDuration=animationConfig.enterDuration,ripple=document.createElement("div");ripple.classList.add("mat-ripple-element"),ripple.style.left=`${offsetX-radius}px`,ripple.style.top=`${offsetY-radius}px`,ripple.style.height=`${radius*2}px`,ripple.style.width=`${radius*2}px`,config2.color!=null&&(ripple.style.backgroundColor=config2.color),ripple.style.transitionDuration=`${enterDuration}ms`,this._containerElement.appendChild(ripple);let computedStyles=window.getComputedStyle(ripple),userTransitionProperty=computedStyles.transitionProperty,userTransitionDuration=computedStyles.transitionDuration,animationForciblyDisabledThroughCss=userTransitionProperty==="none"||userTransitionDuration==="0s"||userTransitionDuration==="0s, 0s"||containerRect.width===0&&containerRect.height===0,rippleRef=new RippleRef(this,ripple,config2,animationForciblyDisabledThroughCss);ripple.style.transform="scale3d(1, 1, 1)",rippleRef.state=RippleState.FADING_IN,config2.persistent||(this._mostRecentTransientRipple=rippleRef);let eventListeners=null;return!animationForciblyDisabledThroughCss&&(enterDuration||animationConfig.exitDuration)&&this._ngZone.runOutsideAngular(()=>{let onTransitionEnd=()=>{eventListeners&&(eventListeners.fallbackTimer=null),clearTimeout(fallbackTimer),this._finishRippleTransition(rippleRef)},onTransitionCancel=()=>this._destroyRipple(rippleRef),fallbackTimer=setTimeout(onTransitionCancel,enterDuration+100);ripple.addEventListener("transitionend",onTransitionEnd),ripple.addEventListener("transitioncancel",onTransitionCancel),eventListeners={onTransitionEnd,onTransitionCancel,fallbackTimer}}),this._activeRipples.set(rippleRef,eventListeners),(animationForciblyDisabledThroughCss||!enterDuration)&&this._finishRippleTransition(rippleRef),rippleRef}fadeOutRipple(rippleRef){if(rippleRef.state===RippleState.FADING_OUT||rippleRef.state===RippleState.HIDDEN)return;let rippleEl=rippleRef.element,animationConfig=__spreadValues(__spreadValues({},defaultRippleAnimationConfig),rippleRef.config.animation);rippleEl.style.transitionDuration=`${animationConfig.exitDuration}ms`,rippleEl.style.opacity="0",rippleRef.state=RippleState.FADING_OUT,(rippleRef._animationForciblyDisabledThroughCss||!animationConfig.exitDuration)&&this._finishRippleTransition(rippleRef)}fadeOutAll(){this._getActiveRipples().forEach(ripple=>ripple.fadeOut())}fadeOutAllNonPersistent(){this._getActiveRipples().forEach(ripple=>{ripple.config.persistent||ripple.fadeOut()})}setupTriggerEvents(elementOrElementRef){let element=coerceElement(elementOrElementRef);!this._platform.isBrowser||!element||element===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=element,pointerDownEvents.forEach(type2=>{_RippleRenderer._eventManager.addHandler(this._ngZone,type2,element,this)}))}handleEvent(event){event.type==="mousedown"?this._onMousedown(event):event.type==="touchstart"?this._onTouchStart(event):this._onPointerUp(),this._pointerUpEventsRegistered||(this._ngZone.runOutsideAngular(()=>{pointerUpEvents.forEach(type2=>{this._triggerElement.addEventListener(type2,this,passiveCapturingEventOptions)})}),this._pointerUpEventsRegistered=!0)}_finishRippleTransition(rippleRef){rippleRef.state===RippleState.FADING_IN?this._startFadeOutTransition(rippleRef):rippleRef.state===RippleState.FADING_OUT&&this._destroyRipple(rippleRef)}_startFadeOutTransition(rippleRef){let isMostRecentTransientRipple=rippleRef===this._mostRecentTransientRipple,{persistent}=rippleRef.config;rippleRef.state=RippleState.VISIBLE,!persistent&&(!isMostRecentTransientRipple||!this._isPointerDown)&&rippleRef.fadeOut()}_destroyRipple(rippleRef){let eventListeners=this._activeRipples.get(rippleRef)??null;this._activeRipples.delete(rippleRef),this._activeRipples.size||(this._containerRect=null),rippleRef===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),rippleRef.state=RippleState.HIDDEN,eventListeners!==null&&(rippleRef.element.removeEventListener("transitionend",eventListeners.onTransitionEnd),rippleRef.element.removeEventListener("transitioncancel",eventListeners.onTransitionCancel),eventListeners.fallbackTimer!==null&&clearTimeout(eventListeners.fallbackTimer)),rippleRef.element.remove()}_onMousedown(event){let isFakeMousedown=isFakeMousedownFromScreenReader(event),isSyntheticEvent=this._lastTouchStartEvent&&Date.now()<this._lastTouchStartEvent+ignoreMouseEventsTimeout;!this._target.rippleDisabled&&!isFakeMousedown&&!isSyntheticEvent&&(this._isPointerDown=!0,this.fadeInRipple(event.clientX,event.clientY,this._target.rippleConfig))}_onTouchStart(event){if(!this._target.rippleDisabled&&!isFakeTouchstartFromScreenReader(event)){this._lastTouchStartEvent=Date.now(),this._isPointerDown=!0;let touches=event.changedTouches;if(touches)for(let i=0;i<touches.length;i++)this.fadeInRipple(touches[i].clientX,touches[i].clientY,this._target.rippleConfig)}}_onPointerUp(){this._isPointerDown&&(this._isPointerDown=!1,this._getActiveRipples().forEach(ripple=>{let isVisible=ripple.state===RippleState.VISIBLE||ripple.config.terminateOnPointerUp&&ripple.state===RippleState.FADING_IN;!ripple.config.persistent&&isVisible&&ripple.fadeOut()}))}_getActiveRipples(){return Array.from(this._activeRipples.keys())}_removeTriggerEvents(){let trigger2=this._triggerElement;trigger2&&(pointerDownEvents.forEach(type2=>_RippleRenderer._eventManager.removeHandler(type2,trigger2,this)),this._pointerUpEventsRegistered&&(pointerUpEvents.forEach(type2=>trigger2.removeEventListener(type2,this,passiveCapturingEventOptions)),this._pointerUpEventsRegistered=!1))}};function distanceToFurthestCorner(x,y,rect){let distX=Math.max(Math.abs(x-rect.left),Math.abs(x-rect.right)),distY=Math.max(Math.abs(y-rect.top),Math.abs(y-rect.bottom));return Math.sqrt(distX*distX+distY*distY)}var MAT_RIPPLE_GLOBAL_OPTIONS=new InjectionToken("mat-ripple-global-options"),MatRipple=(()=>{class MatRipple2{_elementRef=inject2(ElementRef);_animationsDisabled=_animationsDisabled();color;unbounded;centered;radius=0;animation;get disabled(){return this._disabled}set disabled(value){value&&this.fadeOutAllNonPersistent(),this._disabled=value,this._setupTriggerEventsIfEnabled()}_disabled=!1;get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(trigger2){this._trigger=trigger2,this._setupTriggerEventsIfEnabled()}_trigger;_rippleRenderer;_globalOptions;_isInitialized=!1;constructor(){let ngZone=inject2(NgZone),platform=inject2(Platform),globalOptions=inject2(MAT_RIPPLE_GLOBAL_OPTIONS,{optional:!0}),injector=inject2(Injector);this._globalOptions=globalOptions||{},this._rippleRenderer=new RippleRenderer(this,ngZone,this._elementRef,platform,injector)}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:__spreadValues(__spreadValues(__spreadValues({},this._globalOptions.animation),this._animationsDisabled?{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(configOrX,y=0,config2){return typeof configOrX=="number"?this._rippleRenderer.fadeInRipple(configOrX,y,__spreadValues(__spreadValues({},this.rippleConfig),config2)):this._rippleRenderer.fadeInRipple(0,0,__spreadValues(__spreadValues({},this.rippleConfig),configOrX))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatRipple2)};static \u0275dir=\u0275\u0275defineDirective({type:MatRipple2,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(rf,ctx){rf&2&&\u0275\u0275classProp("mat-ripple-unbounded",ctx.unbounded)},inputs:{color:[0,"matRippleColor","color"],unbounded:[0,"matRippleUnbounded","unbounded"],centered:[0,"matRippleCentered","centered"],radius:[0,"matRippleRadius","radius"],animation:[0,"matRippleAnimation","animation"],disabled:[0,"matRippleDisabled","disabled"],trigger:[0,"matRippleTrigger","trigger"]},exportAs:["matRipple"]})}return MatRipple2})();var eventListenerOptions={capture:!0},rippleInteractionEvents=["focus","mousedown","mouseenter","touchstart"],matRippleUninitialized="mat-ripple-loader-uninitialized",matRippleClassName="mat-ripple-loader-class-name",matRippleCentered="mat-ripple-loader-centered",matRippleDisabled="mat-ripple-loader-disabled",MatRippleLoader=(()=>{class MatRippleLoader2{_document=inject2(DOCUMENT);_animationsDisabled=_animationsDisabled();_globalRippleOptions=inject2(MAT_RIPPLE_GLOBAL_OPTIONS,{optional:!0});_platform=inject2(Platform);_ngZone=inject2(NgZone);_injector=inject2(Injector);_eventCleanups;_hosts=new Map;constructor(){let renderer=inject2(RendererFactory2).createRenderer(null,null);this._eventCleanups=this._ngZone.runOutsideAngular(()=>rippleInteractionEvents.map(name=>renderer.listen(this._document,name,this._onInteraction,eventListenerOptions)))}ngOnDestroy(){let hosts=this._hosts.keys();for(let host of hosts)this.destroyRipple(host);this._eventCleanups.forEach(cleanup=>cleanup())}configureRipple(host,config2){host.setAttribute(matRippleUninitialized,this._globalRippleOptions?.namespace??""),(config2.className||!host.hasAttribute(matRippleClassName))&&host.setAttribute(matRippleClassName,config2.className||""),config2.centered&&host.setAttribute(matRippleCentered,""),config2.disabled&&host.setAttribute(matRippleDisabled,"")}setDisabled(host,disabled){let ripple=this._hosts.get(host);ripple?(ripple.target.rippleDisabled=disabled,!disabled&&!ripple.hasSetUpEvents&&(ripple.hasSetUpEvents=!0,ripple.renderer.setupTriggerEvents(host))):disabled?host.setAttribute(matRippleDisabled,""):host.removeAttribute(matRippleDisabled)}_onInteraction=event=>{let eventTarget=_getEventTarget(event);if(eventTarget instanceof HTMLElement){let element=eventTarget.closest(`[${matRippleUninitialized}="${this._globalRippleOptions?.namespace??""}"]`);element&&this._createRipple(element)}};_createRipple(host){if(!this._document||this._hosts.has(host))return;host.querySelector(".mat-ripple")?.remove();let rippleEl=this._document.createElement("span");rippleEl.classList.add("mat-ripple",host.getAttribute(matRippleClassName)),host.append(rippleEl);let globalOptions=this._globalRippleOptions,enterDuration=this._animationsDisabled?0:globalOptions?.animation?.enterDuration??defaultRippleAnimationConfig.enterDuration,exitDuration=this._animationsDisabled?0:globalOptions?.animation?.exitDuration??defaultRippleAnimationConfig.exitDuration,target={rippleDisabled:this._animationsDisabled||globalOptions?.disabled||host.hasAttribute(matRippleDisabled),rippleConfig:{centered:host.hasAttribute(matRippleCentered),terminateOnPointerUp:globalOptions?.terminateOnPointerUp,animation:{enterDuration,exitDuration}}},renderer=new RippleRenderer(target,this._ngZone,rippleEl,this._platform,this._injector),hasSetUpEvents=!target.rippleDisabled;hasSetUpEvents&&renderer.setupTriggerEvents(host),this._hosts.set(host,{target,renderer,hasSetUpEvents}),host.removeAttribute(matRippleUninitialized)}destroyRipple(host){let ripple=this._hosts.get(host);ripple&&(ripple.renderer._removeTriggerEvents(),this._hosts.delete(host))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatRippleLoader2)};static \u0275prov=\u0275\u0275defineInjectable({token:MatRippleLoader2,factory:MatRippleLoader2.\u0275fac,providedIn:"root"})}return MatRippleLoader2})();var _StructuralStylesLoader=(()=>{class _StructuralStylesLoader2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||_StructuralStylesLoader2)};static \u0275cmp=\u0275\u0275defineComponent({type:_StructuralStylesLoader2,selectors:[["structural-styles"]],decls:0,vars:0,template:function(rf,ctx){},styles:[`.mat-focus-indicator{position:relative}.mat-focus-indicator::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-focus-indicator-display, none);border-width:var(--mat-focus-indicator-border-width, 3px);border-style:var(--mat-focus-indicator-border-style, solid);border-color:var(--mat-focus-indicator-border-color, transparent);border-radius:var(--mat-focus-indicator-border-radius, 4px)}.mat-focus-indicator:focus::before{content:""}@media(forced-colors: active){html{--mat-focus-indicator-display: block}}
|
|
@@ -71,7 +71,7 @@ ${errors.map((err,i)=>`${i+1}) ${err.toString()}`).join(`
|
|
|
71
71
|
`),SUBRESOURCE_PATH_TO_FEATURE_NAME=new Map([["category","pageComponentTemplateCategory"],["company","company"],["configuredVersion","pageComponentTemplateVersion"],["draft","pageComponentTemplateVersion"],["published","pageComponentTemplateVersion"]]),SUBRESOURCE_PATHS=[...SUBRESOURCE_PATH_TO_FEATURE_NAME.keys(),"backendComponent"];var PageComponentTemplateService=(()=>{class PageComponentTemplateService2{constructor(){this.api=inject2(IxApiService),this.http=inject2(HttpClient)}add(body){let url=this.api.url("PageComponentTemplateList"),context2=new HttpContext().set(REQUIRES_COMPANY,!0),headers=this.api.headers,options={context:context2,headers};return this.http.post(url,body,options)}getAll(fields,filters){return whileMoreAfter(moreAfter=>this.getList(fields,filters,moreAfter))}getAllForIntent(intent,fields){return this.getAll(fields,`listcontains(intent,"${intent}")`)}getList(fields,filters,pageAfter,pageSize){let url=this.api.url("PageComponentTemplateList"),context2=new HttpContext().set(REQUIRES_COMPANY,!0),headers=this.api.headers,params=new HttpParams({fromObject:__spreadValues(__spreadValues({fields:fields.join(",")},filters?{filters}:{}),getPageParams(pageAfter,pageSize))}),options={context:context2,headers,params};return this.http.get(url,options)}updateByPublicId(publicId,body){let url=this.api.url("PageComponentTemplate",{publicId}),context2=new HttpContext().set(REQUIRES_COMPANY,!0),headers=this.api.headers,options={context:context2,headers};return this.http.patch(url,body,options)}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PageComponentTemplateService2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:PageComponentTemplateService2,factory:PageComponentTemplateService2.\u0275fac,providedIn:"root"})}}return PageComponentTemplateService2})();var ResourceDataClientProxyEventType=(function(ResourceDataClientProxyEventType2){return ResourceDataClientProxyEventType2.Add="ayayot.resourcedata.add",ResourceDataClientProxyEventType2.Added="ayayot.resourcedata.added",ResourceDataClientProxyEventType2.Query="ayayot.resourcedata.query",ResourceDataClientProxyEventType2.Results="ayayot.resourcedata.results",ResourceDataClientProxyEventType2.Update="ayayot.resourcedata.update",ResourceDataClientProxyEventType2.Updated="ayayot.resourcedata.updated",ResourceDataClientProxyEventType2.Remove="ayayot.resourcedata.remove",ResourceDataClientProxyEventType2.Removed="ayayot.resourcedata.removed",ResourceDataClientProxyEventType2})(ResourceDataClientProxyEventType||{});var objectToString=Object.prototype.toString,isArray5=Array.isArray||function(object){return objectToString.call(object)==="[object Array]"};function isFunction6(object){return typeof object=="function"}function typeStr(obj){return isArray5(obj)?"array":typeof obj}function escapeRegExp(string){return string.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function hasProperty(obj,propName){return obj!=null&&typeof obj=="object"&&propName in obj}function primitiveHasOwnProperty(primitive,propName){return primitive!=null&&typeof primitive!="object"&&primitive.hasOwnProperty&&primitive.hasOwnProperty(propName)}var regExpTest=RegExp.prototype.test;function testRegExp(re,string){return regExpTest.call(re,string)}var nonSpaceRe=/\S/;function isWhitespace(string){return!testRegExp(nonSpaceRe,string)}var entityMap={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function escapeHtml(string){return String(string).replace(/[&<>"'`=\/]/g,function(s){return entityMap[s]})}var whiteRe=/\s*/,spaceRe=/\s+/,equalsRe=/\s*=/,curlyRe=/\s*\}/,tagRe=/#|\^|\/|>|\{|&|=|!/;function parseTemplate(template,tags){if(!template)return[];var lineHasNonSpace=!1,sections=[],tokens=[],spaces=[],hasTag=!1,nonSpace=!1,indentation="",tagIndex=0;function stripSpace(){if(hasTag&&!nonSpace)for(;spaces.length;)delete tokens[spaces.pop()];else spaces=[];hasTag=!1,nonSpace=!1}var openingTagRe,closingTagRe,closingCurlyRe;function compileTags(tagsToCompile){if(typeof tagsToCompile=="string"&&(tagsToCompile=tagsToCompile.split(spaceRe,2)),!isArray5(tagsToCompile)||tagsToCompile.length!==2)throw new Error("Invalid tags: "+tagsToCompile);openingTagRe=new RegExp(escapeRegExp(tagsToCompile[0])+"\\s*"),closingTagRe=new RegExp("\\s*"+escapeRegExp(tagsToCompile[1])),closingCurlyRe=new RegExp("\\s*"+escapeRegExp("}"+tagsToCompile[1]))}compileTags(tags||mustache.tags);for(var scanner=new Scanner(template),start,type2,value,chr,token,openSection;!scanner.eos();){if(start=scanner.pos,value=scanner.scanUntil(openingTagRe),value)for(var i=0,valueLength=value.length;i<valueLength;++i)chr=value.charAt(i),isWhitespace(chr)?(spaces.push(tokens.length),indentation+=chr):(nonSpace=!0,lineHasNonSpace=!0,indentation+=" "),tokens.push(["text",chr,start,start+1]),start+=1,chr===`
|
|
72
72
|
`&&(stripSpace(),indentation="",tagIndex=0,lineHasNonSpace=!1);if(!scanner.scan(openingTagRe))break;if(hasTag=!0,type2=scanner.scan(tagRe)||"name",scanner.scan(whiteRe),type2==="="?(value=scanner.scanUntil(equalsRe),scanner.scan(equalsRe),scanner.scanUntil(closingTagRe)):type2==="{"?(value=scanner.scanUntil(closingCurlyRe),scanner.scan(curlyRe),scanner.scanUntil(closingTagRe),type2="&"):value=scanner.scanUntil(closingTagRe),!scanner.scan(closingTagRe))throw new Error("Unclosed tag at "+scanner.pos);if(type2==">"?token=[type2,value,start,scanner.pos,indentation,tagIndex,lineHasNonSpace]:token=[type2,value,start,scanner.pos],tagIndex++,tokens.push(token),type2==="#"||type2==="^")sections.push(token);else if(type2==="/"){if(openSection=sections.pop(),!openSection)throw new Error('Unopened section "'+value+'" at '+start);if(openSection[1]!==value)throw new Error('Unclosed section "'+openSection[1]+'" at '+start)}else type2==="name"||type2==="{"||type2==="&"?nonSpace=!0:type2==="="&&compileTags(value)}if(stripSpace(),openSection=sections.pop(),openSection)throw new Error('Unclosed section "'+openSection[1]+'" at '+scanner.pos);return nestTokens(squashTokens(tokens))}function squashTokens(tokens){for(var squashedTokens=[],token,lastToken,i=0,numTokens=tokens.length;i<numTokens;++i)token=tokens[i],token&&(token[0]==="text"&&lastToken&&lastToken[0]==="text"?(lastToken[1]+=token[1],lastToken[3]=token[3]):(squashedTokens.push(token),lastToken=token));return squashedTokens}function nestTokens(tokens){for(var nestedTokens=[],collector=nestedTokens,sections=[],token,section,i=0,numTokens=tokens.length;i<numTokens;++i)switch(token=tokens[i],token[0]){case"#":case"^":collector.push(token),sections.push(token),collector=token[4]=[];break;case"/":section=sections.pop(),section[5]=token[2],collector=sections.length>0?sections[sections.length-1][4]:nestedTokens;break;default:collector.push(token)}return nestedTokens}function Scanner(string){this.string=string,this.tail=string,this.pos=0}Scanner.prototype.eos=function(){return this.tail===""};Scanner.prototype.scan=function(re){var match2=this.tail.match(re);if(!match2||match2.index!==0)return"";var string=match2[0];return this.tail=this.tail.substring(string.length),this.pos+=string.length,string};Scanner.prototype.scanUntil=function(re){var index=this.tail.search(re),match2;switch(index){case-1:match2=this.tail,this.tail="";break;case 0:match2="";break;default:match2=this.tail.substring(0,index),this.tail=this.tail.substring(index)}return this.pos+=match2.length,match2};function Context(view,parentContext){this.view=view,this.cache={".":this.view},this.parent=parentContext}Context.prototype.push=function(view){return new Context(view,this)};Context.prototype.lookup=function(name){var cache=this.cache,value;if(cache.hasOwnProperty(name))value=cache[name];else{for(var context2=this,intermediateValue,names,index,lookupHit=!1;context2;){if(name.indexOf(".")>0)for(intermediateValue=context2.view,names=name.split("."),index=0;intermediateValue!=null&&index<names.length;)index===names.length-1&&(lookupHit=hasProperty(intermediateValue,names[index])||primitiveHasOwnProperty(intermediateValue,names[index])),intermediateValue=intermediateValue[names[index++]];else intermediateValue=context2.view[name],lookupHit=hasProperty(context2.view,name);if(lookupHit){value=intermediateValue;break}context2=context2.parent}cache[name]=value}return isFunction6(value)&&(value=value.call(this.view)),value};function Writer(){this.templateCache={_cache:{},set:function(key,value){this._cache[key]=value},get:function(key){return this._cache[key]},clear:function(){this._cache={}}}}Writer.prototype.clearCache=function(){typeof this.templateCache<"u"&&this.templateCache.clear()};Writer.prototype.parse=function(template,tags){var cache=this.templateCache,cacheKey=template+":"+(tags||mustache.tags).join(":"),isCacheEnabled=typeof cache<"u",tokens=isCacheEnabled?cache.get(cacheKey):void 0;return tokens==null&&(tokens=parseTemplate(template,tags),isCacheEnabled&&cache.set(cacheKey,tokens)),tokens};Writer.prototype.render=function(template,view,partials,config2){var tags=this.getConfigTags(config2),tokens=this.parse(template,tags),context2=view instanceof Context?view:new Context(view,void 0);return this.renderTokens(tokens,context2,partials,template,config2)};Writer.prototype.renderTokens=function(tokens,context2,partials,originalTemplate,config2){for(var buffer2="",token,symbol,value,i=0,numTokens=tokens.length;i<numTokens;++i)value=void 0,token=tokens[i],symbol=token[0],symbol==="#"?value=this.renderSection(token,context2,partials,originalTemplate,config2):symbol==="^"?value=this.renderInverted(token,context2,partials,originalTemplate,config2):symbol===">"?value=this.renderPartial(token,context2,partials,config2):symbol==="&"?value=this.unescapedValue(token,context2):symbol==="name"?value=this.escapedValue(token,context2,config2):symbol==="text"&&(value=this.rawValue(token)),value!==void 0&&(buffer2+=value);return buffer2};Writer.prototype.renderSection=function(token,context2,partials,originalTemplate,config2){var self2=this,buffer2="",value=context2.lookup(token[1]);function subRender(template){return self2.render(template,context2,partials,config2)}if(value){if(isArray5(value))for(var j=0,valueLength=value.length;j<valueLength;++j)buffer2+=this.renderTokens(token[4],context2.push(value[j]),partials,originalTemplate,config2);else if(typeof value=="object"||typeof value=="string"||typeof value=="number")buffer2+=this.renderTokens(token[4],context2.push(value),partials,originalTemplate,config2);else if(isFunction6(value)){if(typeof originalTemplate!="string")throw new Error("Cannot use higher-order sections without the original template");value=value.call(context2.view,originalTemplate.slice(token[3],token[5]),subRender),value!=null&&(buffer2+=value)}else buffer2+=this.renderTokens(token[4],context2,partials,originalTemplate,config2);return buffer2}};Writer.prototype.renderInverted=function(token,context2,partials,originalTemplate,config2){var value=context2.lookup(token[1]);if(!value||isArray5(value)&&value.length===0)return this.renderTokens(token[4],context2,partials,originalTemplate,config2)};Writer.prototype.indentPartial=function(partial,indentation,lineHasNonSpace){for(var filteredIndentation=indentation.replace(/[^ \t]/g,""),partialByNl=partial.split(`
|
|
73
73
|
`),i=0;i<partialByNl.length;i++)partialByNl[i].length&&(i>0||!lineHasNonSpace)&&(partialByNl[i]=filteredIndentation+partialByNl[i]);return partialByNl.join(`
|
|
74
|
-
`)};Writer.prototype.renderPartial=function(token,context2,partials,config2){if(partials){var tags=this.getConfigTags(config2),value=isFunction6(partials)?partials(token[1]):partials[token[1]];if(value!=null){var lineHasNonSpace=token[6],tagIndex=token[5],indentation=token[4],indentedValue=value;tagIndex==0&&indentation&&(indentedValue=this.indentPartial(value,indentation,lineHasNonSpace));var tokens=this.parse(indentedValue,tags);return this.renderTokens(tokens,context2,partials,indentedValue,config2)}}};Writer.prototype.unescapedValue=function(token,context2){var value=context2.lookup(token[1]);if(value!=null)return value};Writer.prototype.escapedValue=function(token,context2,config2){var escape2=this.getConfigEscape(config2)||mustache.escape,value=context2.lookup(token[1]);if(value!=null)return typeof value=="number"&&escape2===mustache.escape?String(value):escape2(value)};Writer.prototype.rawValue=function(token){return token[1]};Writer.prototype.getConfigTags=function(config2){return isArray5(config2)?config2:config2&&typeof config2=="object"?config2.tags:void 0};Writer.prototype.getConfigEscape=function(config2){if(config2&&typeof config2=="object"&&!isArray5(config2))return config2.escape};var mustache={name:"mustache.js",version:"4.2.0",tags:["{{","}}"],clearCache:void 0,escape:void 0,parse:void 0,render:void 0,Scanner:void 0,Context:void 0,Writer:void 0,set templateCache(cache){defaultWriter.templateCache=cache},get templateCache(){return defaultWriter.templateCache}},defaultWriter=new Writer;mustache.clearCache=function(){return defaultWriter.clearCache()};mustache.parse=function(template,tags){return defaultWriter.parse(template,tags)};mustache.render=function(template,view,partials,config2){if(typeof template!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+typeStr(template)+'" was given as the first argument for mustache#render(template, view, partials)');return defaultWriter.render(template,view,partials,config2)};mustache.escape=escapeHtml;mustache.Scanner=Scanner;mustache.Context=Context;mustache.Writer=Writer;var mustache_default=mustache;function extractResourcesFromTemplate(template){let parsedTemplate;try{parsedTemplate=mustache_default.parse(template)}catch(error){return console.log("Template parsing error:",error.message),[]}return parsedTemplate.length>0?parsedTemplate.filter(keyValue=>["name","&"].includes(keyValue[0])).map(keyValue=>keyValue[1]).filter(field=>/agent|asset\./.test(field)).map(field=>{let customPattern=/(agent|asset)\.custom\.\S+/;return customPattern.test(field)?field.replace(customPattern,"$1.custom"):field}):[]}function extractResourcesFromTemplates(templates){return uniq_default(flatten_default(templates.map(extractResourcesFromTemplate)))}function resourceCustomizer(value,srcValue){if(isArray_default(value)&&isArray_default(srcValue)){if(!srcValue.length)return srcValue;if(has_default(value,"[0].publicId")&&has_default(srcValue,"[0].publicId"))return srcValue.map(item=>merge3({},value.find(({publicId})=>publicId===item.publicId),item));if(srcValue.length&&value.length)return srcValue}}function merge3(object,...otherArgs){return mergeWith_default(object,...otherArgs,resourceCustomizer)}function omitSubresources(object,paths){let data=object;if(paths.length){data=clone_default(object);for(let _path of paths){let path=_path.endsWith("[]")?_path.slice(0,-2):_path,result=get_default(object,path);if(isArray_default(result)){let subresourceList=result.map(o=>({publicId:o.publicId}));setWith_default(data,path,subresourceList,clone_default)}else if(isObject_default(result)&&result.publicId){let subresource={publicId:result.publicId};setWith_default(data,path,subresource,clone_default)}}}return data}function updateResource(object,...otherArgs){return merge3({},object,...otherArgs)}function mergeLoadedFields(id,loadedFields,fields){return __spreadProps(__spreadValues({},loadedFields),{[id]:loadedFields[id]?uniq_default([...loadedFields[id],...fields]):fields})}function mergeFields(fields1,fields2){return uniq_default([...fields1,...fields2])}function createResourceSelectorFactory(selector,map2=new Map([])){return function(fields){let mappings=[];return map2.forEach((featureName,subresourcePath)=>{let iterable=subresourcePath.endsWith("[]"),path=iterable?subresourcePath.slice(0,-2):subresourcePath;if(fields.some(field=>field==="*"||field.startsWith(`${path}.`))){let selector2=createFeatureSelector(featureName);mappings.push({iterable,path,selector:selector2})}}),createSelectorFactory(defaultMemoize)(selector,...mappings.map(s=>s.selector),(state2,...others)=>{let source=state2,selectorIsArray=isArray_default(state2),selectorIsObject=isObject_default(state2);others.length&&(source=(others.length===mappings.length+1?others.slice(0,-1):[...others]).reduce((combinedState,featureState,i)=>featureState===void 0?combinedState:selectorIsArray?combinedState.map(item=>_reduceCombinedState(item,featureState,mappings[i])):selectorIsObject?_reduceCombinedState(combinedState,featureState,mappings[i]):combinedState,state2));let iterablePaths=[...map2.keys()].filter(key=>key.endsWith("[]")),listPathMatcher=iterablePaths.length?new RegExp(iterablePaths.map(key=>`^${key.slice(0,-2)}.`).join("|"),"g"):null;return selectorIsArray?source.map(src=>setFields({},src,fields,listPathMatcher)):selectorIsObject?setFields({},source,fields,listPathMatcher):null})}}function mapResourceToSubResourceList(resource2,subResourcePath,subResourceReferencePath,subResourceReferenceName){if(has_default(resource2,subResourcePath)){let reference={publicId:resource2.publicId,reference:{name:subResourceReferenceName}};return get_default(resource2,subResourcePath,[]).map(item=>has_default(item,subResourceReferencePath)?item:__spreadProps(__spreadValues({},item),{[subResourceReferencePath]:reference}))}return[]}function _reduceCombinedState(item,entityState,mapping){if(!mapping||!has_default(item,mapping.path))return item;if(mapping.iterable){let list=sortSubResourceList(uniqBy_default(get_default(item,mapping.path,[]).map(r=>entityState.entities[r.publicId]||r),"publicId"));return setWith_default(clone_default(item),mapping.path,list,clone_default)}let entity=entityState.entities[get_default(item,`${mapping.path}.publicId`)];return entity!==void 0?setWith_default(clone_default(item),mapping.path,entity,clone_default):item}function sortSubResourceList(list){return hasField(list?.[0]??void 0,"name")?list.sort((a,b)=>sortByNameAndPublicIdComparer(a,b)):list=sortBy_default(list,["publicId"]),list}var nameCollator2=new Intl.Collator(JSON.parse(localStorage.getItem("ix-locale")??"{}").value,{caseFirst:"upper"});function sortByNameAndPublicIdComparer(a,b){return(a.name||b.name)&&sortByNameComparer(a,b)||sortByPublicIdComparer(a,b)}function sortByNameComparer(a,b){return a.name?nameCollator2.compare(a.name,b.name||""):-1}function sortByPublicIdComparer(a,b){return a.publicId<b.publicId?-1:a.publicId>b.publicId?1:0}function createClientRef(clientId,eventId,appId,scope){return`yot:rdc${typeof scope=="string"?`.s:${scope}`:""}${appId?`.a:${appId}`:""}.c:${clientId}.e:${eventId}`}function findAppIdInClientRef(ref){return ref.match(/\.a:([^.]+)/)?.[1]??void 0}function findAppId(target){if(target?._clientRef)return findAppIdInClientRef(target._clientRef)}var ResourceDataClient=class{constructor(id,scope,mode="view",backendComponentId){this.id=id,this.scope=scope,this.mode=mode,this.backendComponentId=backendComponentId,this._destroyed=!1,this._queryListenerRefs=[],this._addListenerRefs=[],this._updateListenerRefs=[],this._removeListenerRefs=[],this._uid=0,this._onAdded=this._onAdded.bind(this),this._onResults=this._onResults.bind(this),this._onUpdated=this._onUpdated.bind(this),this._onRemoved=this._onRemoved.bind(this),window.addEventListener(ResourceDataClientProxyEventType.Added,this._onAdded,!0),window.addEventListener(ResourceDataClientProxyEventType.Results,this._onResults,!0),window.addEventListener(ResourceDataClientProxyEventType.Updated,this._onUpdated,!0),window.addEventListener(ResourceDataClientProxyEventType.Removed,this._onRemoved,!0)}_destroy(){this._destroyed||window.removeEventListener(ResourceDataClientProxyEventType.Results,this._onResults,!0),this._destroyed=!0}_onRemoved(event){event.detail.scope===this.scope&&(this._removeListenerRefs.forEach(({clientRef,resolve})=>{clientRef===event.detail.remove._clientRef&&resolve()}),this._removeListenerRefs.splice(this._removeListenerRefs.findIndex(listener=>listener.clientRef===event.detail.remove._clientRef),1))}_onAdded(event){event.detail.scope===this.scope&&(this._addListenerRefs.forEach(({clientRef,resolve})=>{clientRef===event.detail.add._clientRef&&resolve()}),this._addListenerRefs.splice(this._addListenerRefs.findIndex(listener=>listener.clientRef===event.detail.add._clientRef),1))}_onResults(event){event.detail.scope===this.scope&&this._queryListenerRefs.forEach(({clientRefs,listener})=>{let results=event.detail.results.filter(resource2=>resource2.query._clientRef?(isArray_default(resource2.query._clientRef)?resource2.query._clientRef:[resource2.query._clientRef]).some(ref=>clientRefs.includes(ref)):!1);results.length&&listener(results)})}_onUpdated(event){event.detail.scope===this.scope&&(this._updateListenerRefs.forEach(({clientRef,resolve})=>{clientRef===event.detail.update._clientRef&&resolve()}),this._updateListenerRefs.splice(this._updateListenerRefs.findIndex(listener=>listener.clientRef===event.detail.update._clientRef),1))}add(addCall){return new Promise(resolve=>{let{backendComponentId,id,scope}=this,clientRef=createClientRef(id,this._uid++,backendComponentId,scope),add3=__spreadProps(__spreadValues({},addCall),{_clientRef:clientRef}),addListenerRef={clientRef,resolve};this._addListenerRefs.push(addListenerRef);let event=new CustomEvent(ResourceDataClientProxyEventType.Add,{detail:{add:add3,scope,backendComponentId:this.backendComponentId}});window.dispatchEvent(event)})}destroy(){this._destroy()}query(query2,listener){let{backendComponentId,id,scope}=this,clientRef=createClientRef(id,this._uid++,backendComponentId,scope),queries=(Array.isArray(query2)?query2:[query2]).map(q=>__spreadProps(__spreadValues({},q),{_clientRef:clientRef})),listenerRef={clientRefs:queries.map(q=>q._clientRef),listener};this._queryListenerRefs.push(listenerRef);let event=new CustomEvent(ResourceDataClientProxyEventType.Query,{detail:{queries,scope,backendComponentId:this.backendComponentId}});return window.dispatchEvent(event),()=>{this._queryListenerRefs.splice(this._queryListenerRefs.indexOf(listenerRef),1)}}remove(removeCall){return new Promise(resolve=>{let{backendComponentId,id,scope}=this,clientRef=createClientRef(id,this._uid++,backendComponentId,scope),remove3=__spreadProps(__spreadValues({},removeCall),{_clientRef:clientRef}),removeListenerRef={clientRef,resolve};this._removeListenerRefs.push(removeListenerRef);let event=new CustomEvent(ResourceDataClientProxyEventType.Remove,{detail:{remove:remove3,scope,backendComponentId:this.backendComponentId}});window.dispatchEvent(event)})}render(templates,listener){let fields=extractResourcesFromTemplates(templates.map(t=>t.template));this.mode==="edit"&&listener(templates.map(q=>q.template));let queries=[];return fields.some(f=>f.startsWith("agent."))&&queries.push({selector:"Agent",fields:fields.filter(f=>f.startsWith("agent.")).map(f=>f.slice(6))}),fields.some(f=>f.startsWith("asset."))&&queries.push({selector:"Asset",fields:fields.filter(f=>f.startsWith("asset.")).map(f=>f.slice(6))}),queries.length?this.query(queries,results=>{let params=results.reduce((acc,result)=>__spreadProps(__spreadValues({},acc),{[result.query.selector.toLowerCase()]:result.data}),{}),rendered=templates.map(templateQuery=>mustache_default.render(templateQuery.template,params));listener(rendered)}):(listener(templates.map(q=>q.template)),()=>{})}update(updateCall){return new Promise(resolve=>{let{backendComponentId,id,scope}=this,clientRef=createClientRef(id,this._uid++,backendComponentId,scope),update3=__spreadProps(__spreadValues({},updateCall),{_clientRef:clientRef}),updateListenerRef={clientRef,resolve};this._updateListenerRefs.push(updateListenerRef);let event=new CustomEvent(ResourceDataClientProxyEventType.Update,{detail:{update:update3,scope,backendComponentId:this.backendComponentId}});window.dispatchEvent(event)})}};var ResourceDataClientProxyService=(()=>{class ResourceDataClientProxyService2{constructor(){this.window=inject2(WINDOW)}emitAdd(add3,scope){let detail={scope,add:add3},event=new CustomEvent(ResourceDataClientProxyEventType.Added,{detail});this.window.dispatchEvent(event)}emitRemove(remove3,scope){let detail={scope,remove:remove3},event=new CustomEvent(ResourceDataClientProxyEventType.Removed,{detail});this.window.dispatchEvent(event)}emitResults(results,scope){let detail={results,scope},event=new CustomEvent(ResourceDataClientProxyEventType.Results,{detail});this.window.dispatchEvent(event)}emitUpdate(update3,scope){let detail={scope,update:update3},event=new CustomEvent(ResourceDataClientProxyEventType.Updated,{detail});this.window.dispatchEvent(event)}onAdd(scope){return fromEvent(this.window,ResourceDataClientProxyEventType.Add).pipe(filter(event=>scope===event.detail.scope),map(event=>event.detail))}onQuery(scope){return fromEvent(this.window,ResourceDataClientProxyEventType.Query).pipe(filter(event=>scope===event.detail.scope),map(event=>event.detail))}onRemove(scope){return fromEvent(this.window,ResourceDataClientProxyEventType.Remove).pipe(filter(event=>scope===event.detail.scope),map(event=>event.detail))}onUpdate(scope){return fromEvent(this.window,ResourceDataClientProxyEventType.Update).pipe(filter(event=>scope===event.detail.scope),map(event=>event.detail))}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ResourceDataClientProxyService2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:ResourceDataClientProxyService2,factory:ResourceDataClientProxyService2.\u0275fac,providedIn:"root"})}}return ResourceDataClientProxyService2})();var ResourceDataServiceFactory=(()=>{class ResourceDataServiceFactory2{create(config2){return new ResourceDataService(config2)}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ResourceDataServiceFactory2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:ResourceDataServiceFactory2,factory:ResourceDataServiceFactory2.\u0275fac,providedIn:"root"})}}return ResourceDataServiceFactory2})(),ResourceDataService=class{constructor(config2){this.config=config2,this.destroyed=new Subject}add(add3){let provider=this.config.addProviders.find(({selector})=>selector===add3.selector);return provider?provider.add(add3):(console.warn(`Add selector (${add3.selector}) cannot be matched to a resource-data provider.`),of(void 0))}update(update3){let provider=this.config.updateProviders.find(({selector})=>selector===update3.selector);return provider?provider.update(update3):(console.warn(`Update selector (${update3.selector}) cannot be matched to a resource-data provider.`),of(void 0))}remove(remove3){let provider=this.config.removeProviders.find(({selector})=>selector===remove3.selector);return provider?provider.remove(remove3):(console.warn(`Remove selector (${remove3.selector}) cannot be matched to a resource-data provider.`),of(void 0))}fetch(queries){return combineLatest(queries.map(query2=>{let provider=this.config.dataProviders.find(({selector})=>selector===query2.selector);return provider?(typeof provider.dataFeed=="function"?provider.dataFeed(query2):provider.dataFeed).pipe(filter(data=>provider.dataGuard?provider.dataGuard(query2,data):!0),map(data=>({query:query2,data:provider.dataReducer?provider.dataReducer(query2,data):data}))):(console.warn(`Query selector (${query2.selector}) cannot be matched to a resource-data provider.`),of({query:query2,data:null}))})).pipe(takeUntil(this.destroyed))}pledge(queries){return combineLatest(queries.map(query2=>{let provider=this.config.dataProviders.find(({selector})=>selector===query2.selector);return provider?(typeof provider.dataFeed=="function"?provider.dataFeed(query2):provider.dataFeed).pipe(take(1),map(data=>provider.dataPledge?provider.dataPledge(query2,data):!0)):of(!1)})).pipe(map(pledges=>pledges.every(pledge=>pledge)),takeUntil(this.destroyed))}destroy(){this.destroyed.next(),this.destroyed.complete()}};function createResourceAdapter(options){options===void 0&&(options={}),options.selectId===void 0&&(options.selectId=_selectPublicId);let _translate,_trimNamespace=value=>value.replace(/^__TRANSLATION__\./,""),adapter3=createEntityAdapter(options),_setAll=_setListFactory("setAll"),_upsertMany=_setListFactory("upsertMany");return __spreadProps(__spreadValues({},adapter3),{addOne,addMany,mutate,removeOne,removeMany,retranslate,setAll:_setAll,setMany:_setListFactory("setMany"),updateOne,updateMany:updateMany2,upsertOne,upsertMany,useTranslateService(translate){_translate=translate},getInitialState(state2){let initialState3=__spreadValues(__spreadProps(__spreadValues({},adapter3.getInitialState()),{ids:[],allLoaded:!1,allLoadedFields:[],allLoading:!1,allLoadingFields:[]}),(options?.translationPaths||[]).reduce((acc,path)=>__spreadProps(__spreadValues({},acc),{[`${path}TranslationKeys`]:{}}),{}));return state2?__spreadValues(__spreadValues({},initialState3),state2):initialState3},getSelectors(){return __spreadValues(__spreadProps(__spreadValues({},adapter3.getSelectors()),{selectAllLoading(state2){return state2.allLoading},selectAllLoadingFields(state2){return state2.allLoadingFields},selectAllLoaded(state2){return state2.allLoaded},selectAllLoadedFields(state2){return state2.allLoadedFields}}),(options?.translationPaths||[]).reduce((acc,path)=>{let keysProp=`${path}TranslationKeys`;return __spreadProps(__spreadValues({},acc),{[`select${upperFirst_default(keysProp)}`]:state2=>state2[keysProp]})},{}))}});function mutate(id,path,state2){let _resource=state2.entities[id];return{upsertOne:key=>{if(has_default(_resource,path)){let list=get_default(_resource,path);if(Array.isArray(list)&&list.every(entity=>entity.publicId!==key)){let data=[...list,{publicId:key}],changes=_setIn(path,data,_resource);return updateOne({id,changes},state2)}}return state2},removeOne:key=>{if(has_default(_resource,path)){let list=get_default(_resource,path);if(Array.isArray(list)&&list.some(entity=>entity.publicId===key)){let data=list.filter(r=>r.publicId!==key),changes=_setIn(path,data,_resource);return updateOne({id,changes},state2)}}return state2}}}function retranslate(state2){if(options?.translationPaths?.length&&_translate!==void 0){let updates=[];for(let path of options.translationPaths){let keysProp=`${path}TranslationKeys`;if(state2[keysProp])for(let id of Object.keys(state2[keysProp])){let index=updates.findIndex(u=>u.id===id);if(index!==-1){let changes={[path]:_trimNamespace(_translate?.instant(state2[keysProp][id]))};updates[index]=__spreadProps(__spreadValues({},updates[index]),{changes:__spreadValues(__spreadValues({},updates[index].changes),changes)})}else{let changes={[path]:_trimNamespace(_translate?.instant(state2[keysProp][id]))};updates.push({id,changes})}}}if(updates.length)return adapter3.updateMany(updates,state2)}return state2}function addOne(entity,state2){if(options?.subresourcePaths&&(entity=omitSubresources(entity,options.subresourcePaths)),options?.translationPaths?.length&&_translate){let _a=_translateEntity(entity,state2),{translated}=_a,translationKeys=__objRest(_a,["translated"]);return adapter3.addOne(translated,__spreadValues(__spreadValues({},state2),translationKeys))}return adapter3.addOne(entity,state2)}function addMany(entities,state2){return entities.reduce((next,entity)=>addOne(entity,next),state2)}function removeOne(key,state2){return removeMany([key],state2)}function removeMany(keysOrPredicate,state2){let keys=keysOrPredicate instanceof Array?keysOrPredicate:state2.ids.filter(key=>keysOrPredicate(state2.entities[key]));return options?.translationPaths?.length&&_translate?adapter3.removeMany(keys,options?.translationPaths?.reduce((_state,path)=>{let keysProp=`${path}TranslationKeys`;return keys.reduce((s,key)=>key in s[keysProp]?__spreadProps(__spreadValues({},s),{[keysProp]:omit_default(s[keysProp],key)}):s,_state)},state2)):adapter3.removeMany(keys,state2)}function updateOne(update3,state2){if(options?.mergeFn&&(update3.changes=options.mergeFn(state2.entities[update3.id],update3.changes)),options?.subresourcePaths&&(update3.changes=omitSubresources(update3.changes,options.subresourcePaths)),options?.translationPaths?.length&&_translate){let hasId=!!_selectPublicId(update3.changes),entity=hasId?update3.changes:__spreadProps(__spreadValues({},update3.changes),{publicId:update3.id}),_a=_translateEntity(entity,state2),{translated}=_a,translationKeys=__objRest(_a,["translated"]);return adapter3.updateOne(__spreadProps(__spreadValues({},update3),{changes:hasId?translated:omit_default(translated,["publicId"])}),__spreadValues(__spreadValues({},state2),translationKeys))}return adapter3.updateOne(update3,state2)}function updateMany2(updates,state2){return updates.reduce((next,update3)=>updateOne(update3,next),state2)}function upsertOne(entity,state2){return options?.selectId&&state2.entities[options.selectId(entity)]!==void 0?updateOne({id:options.selectId(entity),changes:entity},state2):addOne(entity,state2)}function upsertMany(entities,state2){return state2.ids.length?_upsertMany(entities,state2):_setAll(entities,state2)}function _selectPublicId(a){return a.publicId}function _setListFactory(method){return function(entities,state2){let list=entities;if(options?.subresourcePaths){let paths=options.subresourcePaths;list=entities.map(entity=>omitSubresources(entity,paths))}if(options?.translationPaths?.length&&_translate){let translatedEntities=[],translatedState=state2;return list.forEach(entity=>{let _a=_translateEntity(entity,translatedState),{translated}=_a,translationKeys=__objRest(_a,["translated"]);translatedEntities.push(translated),translatedState=__spreadValues(__spreadValues({},translatedState),translationKeys)}),adapter3[method](translatedEntities,translatedState)}return adapter3[method](list,state2)}}function _translateEntity(entity,state2){let publicId=_selectPublicId(entity);return(options?.translationPaths??[]).reduce((acc,path)=>{let keysProp=`${path}TranslationKeys`;if(has_default(entity,path)){if(entity[path]?.startsWith("__TRANSLATION__."))return __spreadProps(__spreadValues({},acc),{translated:__spreadProps(__spreadValues({},acc.translated),{[path]:_trimNamespace(_translate?.instant(acc.translated[path]))}),[keysProp]:__spreadProps(__spreadValues({},state2[keysProp]),{[publicId]:acc.translated[path]})});if(publicId in state2[keysProp])return __spreadProps(__spreadValues({},acc),{[keysProp]:omit_default(state2[keysProp],publicId)})}return acc},{translated:entity})}}var _setIn=curry_default((path,value,obj)=>setWith_default(clone_default(obj),path,value,clone_default));var loadHost=createAction("[App] Load Host Branding"),loadHostFailure=createAction("[IxApi] Load Host Branding Failure",props()),loadHostSuccess=createAction("[IxApi] Load Host Branding Success",props());var adapter2=createResourceAdapter({sortComparer:sortByNameAndPublicIdComparer,subresourcePaths:SUBRESOURCE_PATHS,mergeFn:updateResource}),initialState2=adapter2.getInitialState({allLoadedForIntents:[],allLoadingForIntents:[],persistentIds:[]}),reducer2=createReducer(initialState2,on(addSuccess,didAdd,(state2,{data})=>adapter2.upsertOne(data,state2)),on(reset,state2=>{let persistentTemplates=state2.persistentIds.map(id=>state2.entities[id]).filter(template=>!!template),persistentIds=persistentTemplates.map(template=>template.publicId);return adapter2.setAll(persistentTemplates,__spreadProps(__spreadValues({},initialState2),{persistentIds}))}),on(loadAll,state2=>__spreadProps(__spreadValues({},state2),{allLoading:!0})),on(loadAllFailure,state2=>__spreadProps(__spreadValues({},state2),{allLoading:!1})),on(loadAllSuccess,(state2,{data})=>adapter2.upsertMany(data,__spreadProps(__spreadValues({},state2),{allLoaded:!0,allLoading:!1}))),on(loadAllForIntent,(state2,{intent})=>__spreadProps(__spreadValues({},state2),{allLoadingForIntents:[...state2.allLoadingForIntents,intent]})),on(loadAllForIntentFailure,(state2,{intent})=>__spreadProps(__spreadValues({},state2),{allLoadingForIntents:state2.allLoadingForIntents.filter(i=>i!==intent)})),on(loadAllForIntentSuccess,(state2,{intent,data})=>adapter2.upsertMany(data,__spreadProps(__spreadValues({},state2),{allLoadingForIntents:state2.allLoadingForIntents.filter(i=>i!==intent),allLoadedForIntents:[...state2.allLoadedForIntents,intent]}))),on(updateSuccess,didUpdate,(state2,{data,publicId})=>adapter2.updateOne({id:publicId,changes:data},state2)),on(loadHostSuccess,(state2,{data})=>{let template=data.landingPageComponentTemplate;if(template){let persistentIds=uniq_default([...state2.persistentIds,template.publicId]);return adapter2.upsertOne(template,__spreadProps(__spreadValues({},state2),{persistentIds}))}return state2})),feature2=createFeature({name:FEATURE_NAME2,reducer:reducer2});var{selectAllLoadingForIntents,selectAllLoadedForIntents}=feature2,selectAll=createResourceSelectorFactory(createSelector(feature2.selectPageComponentTemplateState,adapter2.getSelectors().selectAll),SUBRESOURCE_PATH_TO_FEATURE_NAME)(FIELDS),selectEntity2=publicId=>createResourceSelectorFactory(createSelector(feature2.selectEntities,entities=>publicId?entities[publicId]:void 0),SUBRESOURCE_PATH_TO_FEATURE_NAME)(FIELDS),selectAllLoadingForIntent=intent=>createSelector(selectAllLoadingForIntents,loading=>loading.includes(intent)),selectAllLoadedForIntent=intent=>createSelector(selectAllLoadedForIntents,loaded=>loaded.includes(intent));var{selectAllLoading,selectAllLoaded,selectAllLoadedFields,selectEntities:selectEntities2}=feature2;var PageComponentTemplateEffects=(()=>{class PageComponentTemplateEffects2{constructor(){this.actions$=inject2(Actions),this.service=inject2(PageComponentTemplateService),this.store=inject2(Store),this.add$=createEffect(()=>this.actions$.pipe(ofType(add),mergeMap(({data})=>this.service.add(data).pipe(map(response=>addSuccess({publicId:response.data.publicId,data:__spreadValues(__spreadValues({},data),response.data)})),catchError(errorResponse=>of(addFailure({errors:errorResponse.error?.data??[]}))))))),this.ensureAll$=createEffect(()=>this.actions$.pipe(ofType(ensureAll),mergeMap(()=>combineLatest([this.store.select(selectAllLoading),this.store.select(selectAllLoaded)]).pipe(take(1),mergeMap(([loading,loaded])=>!loading&&!loaded?of(loadAll()):EMPTY))))),this.ensureAllForIntent$=createEffect(()=>this.actions$.pipe(ofType(ensureAllForIntent),mergeMap(({intent})=>combineLatest([this.store.select(selectAllLoadingForIntent(intent)),this.store.select(selectAllLoadedForIntent(intent))]).pipe(take(1),mergeMap(([loading,loaded])=>!loading&&!loaded?of(loadAllForIntent({intent})):EMPTY))))),this.loadAll$=createEffect(()=>this.actions$.pipe(ofType(loadAll),switchMap(()=>this.service.getAll(FIELDS).pipe(map(({data})=>loadAllSuccess({data})),catchError(errorResponse=>of(loadAllFailure({errors:errorResponse.error?.data??[]}))))))),this.loadAllForIntent$=createEffect(()=>this.actions$.pipe(ofType(loadAllForIntent),switchMap(({intent})=>this.service.getAllForIntent(intent,FIELDS).pipe(map(({data})=>loadAllForIntentSuccess({intent,data})),catchError(errorResponse=>of(loadAllForIntentFailure({intent,errors:errorResponse.error?.data??[]}))))))),this.update$=createEffect(()=>this.actions$.pipe(ofType(update),mergeMap(({data,publicId})=>this.service.updateByPublicId(publicId,data).pipe(map(()=>updateSuccess({data:__spreadProps(__spreadValues({},data),{publicId}),publicId})),catchError(errorResponse=>of(updateFailure({errors:errorResponse.error?.data??[]})))))))}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PageComponentTemplateEffects2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:PageComponentTemplateEffects2,factory:PageComponentTemplateEffects2.\u0275fac,providedIn:"root"})}}return PageComponentTemplateEffects2})();var environment={appName:"Simulator",name:"production",version:"cdk-1.21.0-next.1",build:"201581-2093508",production:!0};var PageComponentTemplatePrependBaseUrlInterceptor=(()=>{class PageComponentTemplatePrependBaseUrlInterceptor2{constructor(){this.document=inject2(DOCUMENT);let options=inject2(IXAPI_OPTIONS);this.options=__spreadValues(__spreadValues({},defaultOptions),options),this.baseUrl=this.getTemplateBaseUrl()}getTemplateBaseUrl(){let baseUrl=this.document.baseURI.slice(this.document.location.origin.length),appUrlPath=`/${kebabCase_default(environment.appName)}/`;return baseUrl.endsWith(appUrlPath)&&(baseUrl=baseUrl.slice(0,1-appUrlPath.length)),baseUrl}intercept(request,delegate){if(request.method==="GET"&&request.url===`${this.options.baseUrl}/page-component-templates`&&this.options.baseUrl){let fields=request.params.get("fields");if(fields?.includes("url")||fields?.includes("*"))return delegate.handle(request).pipe(map(response=>{if(response instanceof HttpResponse){let data=response.body.data.map(template=>template.url?.startsWith("/")&&this.baseUrl.endsWith("/")?__spreadProps(__spreadValues({},template),{url:this.baseUrl==="/"?template.url:`${this.baseUrl.slice(0,-1)}${template.url}`}):template),body=__spreadProps(__spreadValues({},response.body),{data});return response.clone({body})}return response}))}return delegate.handle(request)}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PageComponentTemplatePrependBaseUrlInterceptor2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:PageComponentTemplatePrependBaseUrlInterceptor2,factory:PageComponentTemplatePrependBaseUrlInterceptor2.\u0275fac})}}return PageComponentTemplatePrependBaseUrlInterceptor2})();var PageComponentTemplateModule=(()=>{class PageComponentTemplateModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PageComponentTemplateModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:PageComponentTemplateModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({providers:[{provide:HTTP_INTERCEPTORS,useClass:PageComponentTemplatePrependBaseUrlInterceptor,multi:!0}],imports:[IxApiModule,StoreModule.forFeature(feature2),EffectsModule.forFeature([PageComponentTemplateEffects])]})}}return PageComponentTemplateModule2})();var ComponentSettingsFacade=(()=>{class ComponentSettingsFacade2{constructor(){this.document=inject2(DOCUMENT),this.store=inject2(Store),this.http=inject2(HttpClient)}setTemplateUrl(url){this.http.get(mapTemplateUrlToManifestUrl(url)).subscribe(manifest=>{let publicId=mapTemplateUrlToPublicId(url),component=__spreadProps(__spreadValues({},PAGE_COMPONENT),{template:__spreadProps(__spreadValues({},PAGE_COMPONENT.template),{publicId})}),name=manifest.name||"";sessionStorage.setItem("pct-url",url),this.store.dispatch(loadAllSuccess({data:[{name,url,publicId}]})),this.store.dispatch(addSuccess2({publicId:component.publicId,data:__spreadProps(__spreadValues({},component),{inputs:mapPageComponentTemplateManifestToDefaultInputs(manifest)})}))})}unsetTemplateUrl(){let url=sessionStorage.getItem("pct-url");url&&(sessionStorage.removeItem("pct-url"),this.store.dispatch(reset()),this.store.dispatch(remove2({publicId:"component"})),this.document.getElementById(`pct-${mapTemplateUrlToPublicId(url)}`)?.remove())}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ComponentSettingsFacade2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:ComponentSettingsFacade2,factory:ComponentSettingsFacade2.\u0275fac,providedIn:"root"})}}return ComponentSettingsFacade2})();function PageComponentSettingsComponent_Conditional_10_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-error"),\u0275\u0275text(1,"Could not find a UI Component definition"),\u0275\u0275elementEnd())}function PageComponentSettingsComponent_Conditional_11_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-error"),\u0275\u0275text(1,"Invalid manifest file"),\u0275\u0275elementEnd())}function PageComponentSettingsComponent_Conditional_12_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-error"),\u0275\u0275text(1,"Could not find a manifest file"),\u0275\u0275elementEnd())}function PageComponentSettingsComponent_Conditional_13_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-error"),\u0275\u0275text(1,"Request failed"),\u0275\u0275elementEnd())}function PageComponentSettingsComponent_Conditional_14_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-error"),\u0275\u0275text(1,"Invalid URL"),\u0275\u0275elementEnd())}var PageComponentSettingsComponent=(()=>{class PageComponentSettingsComponent2{constructor(){this.componentForm=new FormGroup({url:new FormControl(sessionStorage.getItem("pct-url"),Validators.required,UrlValidator(inject2(ComponentTemplateValidatorService)))}),this.destroy=inject2(DestroyRef),this.facade=inject2(ComponentSettingsFacade)}ngOnInit(){this.componentForm.statusChanges.pipe(takeUntilDestroyed(this.destroy)).subscribe(status=>{status==="VALID"&&this.componentForm.controls.url.value?this.facade.setTemplateUrl(this.componentForm.controls.url.value):status==="INVALID"&&this.facade.unsetTemplateUrl()})}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PageComponentSettingsComponent2)}}static{this.\u0275cmp=\u0275\u0275defineComponent({type:PageComponentSettingsComponent2,selectors:[["ix-page-component-settings"]],decls:17,vars:8,consts:[["autocomplete","off",3,"formGroup"],["appearance","fill"],["matInput","","formControlName","url","data-testid","component-template-url",3,"required"],["matIconSuffix","",3,"hidden"]],template:function(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"section")(1,"h2"),\u0275\u0275text(2,"UI Component"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(3,"form",0)(4,"mat-form-field",1)(5,"mat-label"),\u0275\u0275text(6,"URL"),\u0275\u0275elementEnd(),\u0275\u0275element(7,"input",2),\u0275\u0275elementStart(8,"mat-icon",3),\u0275\u0275text(9,"check"),\u0275\u0275elementEnd(),\u0275\u0275conditionalCreate(10,PageComponentSettingsComponent_Conditional_10_Template,2,0,"mat-error"),\u0275\u0275conditionalCreate(11,PageComponentSettingsComponent_Conditional_11_Template,2,0,"mat-error"),\u0275\u0275conditionalCreate(12,PageComponentSettingsComponent_Conditional_12_Template,2,0,"mat-error"),\u0275\u0275conditionalCreate(13,PageComponentSettingsComponent_Conditional_13_Template,2,0,"mat-error"),\u0275\u0275conditionalCreate(14,PageComponentSettingsComponent_Conditional_14_Template,2,0,"mat-error"),\u0275\u0275elementStart(15,"mat-hint"),\u0275\u0275text(16,"Link to a JavaScript file that defines a UI Component"),\u0275\u0275elementEnd()()()()),rf&2&&(\u0275\u0275advance(3),\u0275\u0275property("formGroup",ctx.componentForm),\u0275\u0275advance(4),\u0275\u0275property("required",!0),\u0275\u0275advance(),\u0275\u0275property("hidden",ctx.componentForm.controls.url.invalid),\u0275\u0275advance(2),\u0275\u0275conditional(ctx.componentForm.controls.url.hasError("customElementDefMissing")?10:-1),\u0275\u0275advance(),\u0275\u0275conditional(ctx.componentForm.controls.url.hasError("manifestInvalid")?11:-1),\u0275\u0275advance(),\u0275\u0275conditional(ctx.componentForm.controls.url.hasError("manifestMissing")?12:-1),\u0275\u0275advance(),\u0275\u0275conditional(ctx.componentForm.controls.url.hasError("reqFailed")?13:-1),\u0275\u0275advance(),\u0275\u0275conditional(ctx.componentForm.controls.url.hasError("urlInvalid")?14:-1))},dependencies:[FlexModule,MatIconModule,MatIcon,MatFormFieldModule,MatFormField,MatLabel,MatHint,MatError,MatSuffix,MatInputModule,MatInput,MatOptionModule,MatRadioModule,MatSelectModule,MatButtonModule,ReactiveFormsModule,\u0275NgNoValidate,DefaultValueAccessor,NgControlStatus,NgControlStatusGroup,RequiredValidator,FormGroupDirective,FormControlName],styles:["[_nghost-%COMP%] section[_ngcontent-%COMP%]{margin-bottom:24px}[_nghost-%COMP%] section[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{font-family:var(--font-family);font-size:18px;font-weight:400;line-height:24px;margin:56px 0 10px}[_nghost-%COMP%] .mat-mdc-form-field[_ngcontent-%COMP%]{width:100%}"]})}}return PageComponentSettingsComponent2})();var ComponentSettingsComponent=(()=>{class ComponentSettingsComponent2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ComponentSettingsComponent2)}}static{this.\u0275cmp=\u0275\u0275defineComponent({type:ComponentSettingsComponent2,selectors:[["ix-component-settings"]],decls:2,vars:0,template:function(rf,ctx){rf&1&&\u0275\u0275element(0,"ix-page-component-settings")(1,"ix-backend-component-settings")},dependencies:[BackendComponentSettingsComponent,PageComponentSettingsComponent],encapsulation:2})}}return ComponentSettingsComponent2})();function deepCloneNode(node){let clone=node.cloneNode(!0),descendantsWithId=clone.querySelectorAll("[id]"),nodeName=node.nodeName.toLowerCase();clone.removeAttribute("id");for(let i=0;i<descendantsWithId.length;i++)descendantsWithId[i].removeAttribute("id");return nodeName==="canvas"?transferCanvasData(node,clone):(nodeName==="input"||nodeName==="select"||nodeName==="textarea")&&transferInputData(node,clone),transferData("canvas",node,clone,transferCanvasData),transferData("input, textarea, select",node,clone,transferInputData),clone}function transferData(selector,node,clone,callback){let descendantElements=node.querySelectorAll(selector);if(descendantElements.length){let cloneElements=clone.querySelectorAll(selector);for(let i=0;i<descendantElements.length;i++)callback(descendantElements[i],cloneElements[i])}}var cloneUniqueId=0;function transferInputData(source,clone){clone.type!=="file"&&(clone.value=source.value),clone.type==="radio"&&clone.name&&(clone.name=`mat-clone-${clone.name}-${cloneUniqueId++}`)}function transferCanvasData(source,clone){let context2=clone.getContext("2d");if(context2)try{context2.drawImage(source,0,0)}catch{}}function getMutableClientRect(element){let rect=element.getBoundingClientRect();return{top:rect.top,right:rect.right,bottom:rect.bottom,left:rect.left,width:rect.width,height:rect.height,x:rect.x,y:rect.y}}function isInsideClientRect(clientRect,x,y){let{top,bottom,left,right}=clientRect;return y>=top&&y<=bottom&&x>=left&&x<=right}function isOverflowingParent(parentRect,childRect){let isLeftOverflowing=childRect.left<parentRect.left,isRightOverflowing=childRect.left+childRect.width>parentRect.right,isTopOverflowing=childRect.top<parentRect.top,isBottomOverflowing=childRect.top+childRect.height>parentRect.bottom;return isLeftOverflowing||isRightOverflowing||isTopOverflowing||isBottomOverflowing}function adjustDomRect(domRect,top,left){domRect.top+=top,domRect.bottom=domRect.top+domRect.height,domRect.left+=left,domRect.right=domRect.left+domRect.width}function isPointerNearDomRect(rect,threshold,pointerX,pointerY){let{top,right,bottom,left,width,height}=rect,xThreshold=width*threshold,yThreshold=height*threshold;return pointerY>top-yThreshold&&pointerY<bottom+yThreshold&&pointerX>left-xThreshold&&pointerX<right+xThreshold}var ParentPositionTracker=class{_document;positions=new Map;constructor(_document2){this._document=_document2}clear(){this.positions.clear()}cache(elements){this.clear(),this.positions.set(this._document,{scrollPosition:this.getViewportScrollPosition()}),elements.forEach(element=>{this.positions.set(element,{scrollPosition:{top:element.scrollTop,left:element.scrollLeft},clientRect:getMutableClientRect(element)})})}handleScroll(event){let target=_getEventTarget(event),cachedPosition=this.positions.get(target);if(!cachedPosition)return null;let scrollPosition=cachedPosition.scrollPosition,newTop,newLeft;if(target===this._document){let viewportScrollPosition=this.getViewportScrollPosition();newTop=viewportScrollPosition.top,newLeft=viewportScrollPosition.left}else newTop=target.scrollTop,newLeft=target.scrollLeft;let topDifference=scrollPosition.top-newTop,leftDifference=scrollPosition.left-newLeft;return this.positions.forEach((position,node)=>{position.clientRect&&target!==node&&target.contains(node)&&adjustDomRect(position.clientRect,topDifference,leftDifference)}),scrollPosition.top=newTop,scrollPosition.left=newLeft,{top:topDifference,left:leftDifference}}getViewportScrollPosition(){return{top:window.scrollY,left:window.scrollX}}};function getRootNode(viewRef,_document2){let rootNodes=viewRef.rootNodes;if(rootNodes.length===1&&rootNodes[0].nodeType===_document2.ELEMENT_NODE)return rootNodes[0];let wrapper=_document2.createElement("div");return rootNodes.forEach(node=>wrapper.appendChild(node)),wrapper}function extendStyles2(dest,source,importantProperties2){for(let key in source)if(source.hasOwnProperty(key)){let value=source[key];value?dest.setProperty(key,value,importantProperties2?.has(key)?"important":""):dest.removeProperty(key)}return dest}function toggleNativeDragInteractions(element,enable){let userSelect=enable?"":"none";extendStyles2(element.style,{"touch-action":enable?"":"none","-webkit-user-drag":enable?"":"none","-webkit-tap-highlight-color":enable?"":"transparent","user-select":userSelect,"-ms-user-select":userSelect,"-webkit-user-select":userSelect,"-moz-user-select":userSelect})}function toggleVisibility(element,enable,importantProperties2){extendStyles2(element.style,{position:enable?"":"fixed",top:enable?"":"0",opacity:enable?"":"0",left:enable?"":"-999em"},importantProperties2)}function combineTransforms(transform,initialTransform){return initialTransform&&initialTransform!="none"?transform+" "+initialTransform:transform}function matchElementSize(target,sourceRect){target.style.width=`${sourceRect.width}px`,target.style.height=`${sourceRect.height}px`,target.style.transform=getTransform(sourceRect.left,sourceRect.top)}function getTransform(x,y){return`translate3d(${Math.round(x)}px, ${Math.round(y)}px, 0)`}function parseCssTimeUnitsToMs(value){let multiplier=value.toLowerCase().indexOf("ms")>-1?1:1e3;return parseFloat(value)*multiplier}function getTransformTransitionDurationInMs(element){let computedStyle=getComputedStyle(element),transitionedProperties=parseCssPropertyValue(computedStyle,"transition-property"),property=transitionedProperties.find(prop=>prop==="transform"||prop==="all");if(!property)return 0;let propertyIndex=transitionedProperties.indexOf(property),rawDurations=parseCssPropertyValue(computedStyle,"transition-duration"),rawDelays=parseCssPropertyValue(computedStyle,"transition-delay");return parseCssTimeUnitsToMs(rawDurations[propertyIndex])+parseCssTimeUnitsToMs(rawDelays[propertyIndex])}function parseCssPropertyValue(computedStyle,name){return computedStyle.getPropertyValue(name).split(",").map(part=>part.trim())}var importantProperties=new Set(["position"]),PreviewRef=class{_document;_rootElement;_direction;_initialDomRect;_previewTemplate;_previewClass;_pickupPositionOnPage;_initialTransform;_zIndex;_renderer;_previewEmbeddedView;_preview;get element(){return this._preview}constructor(_document2,_rootElement,_direction,_initialDomRect,_previewTemplate,_previewClass,_pickupPositionOnPage,_initialTransform,_zIndex,_renderer){this._document=_document2,this._rootElement=_rootElement,this._direction=_direction,this._initialDomRect=_initialDomRect,this._previewTemplate=_previewTemplate,this._previewClass=_previewClass,this._pickupPositionOnPage=_pickupPositionOnPage,this._initialTransform=_initialTransform,this._zIndex=_zIndex,this._renderer=_renderer}attach(parent){this._preview=this._createPreview(),parent.appendChild(this._preview),supportsPopover(this._preview)&&this._preview.showPopover()}destroy(){this._preview.remove(),this._previewEmbeddedView?.destroy(),this._preview=this._previewEmbeddedView=null}setTransform(value){this._preview.style.transform=value}getBoundingClientRect(){return this._preview.getBoundingClientRect()}addClass(className){this._preview.classList.add(className)}getTransitionDuration(){return getTransformTransitionDurationInMs(this._preview)}addEventListener(name,handler){return this._renderer.listen(this._preview,name,handler)}_createPreview(){let previewConfig=this._previewTemplate,previewClass=this._previewClass,previewTemplate=previewConfig?previewConfig.template:null,preview;if(previewTemplate&&previewConfig){let rootRect=previewConfig.matchSize?this._initialDomRect:null,viewRef=previewConfig.viewContainer.createEmbeddedView(previewTemplate,previewConfig.context);viewRef.detectChanges(),preview=getRootNode(viewRef,this._document),this._previewEmbeddedView=viewRef,previewConfig.matchSize?matchElementSize(preview,rootRect):preview.style.transform=getTransform(this._pickupPositionOnPage.x,this._pickupPositionOnPage.y)}else preview=deepCloneNode(this._rootElement),matchElementSize(preview,this._initialDomRect),this._initialTransform&&(preview.style.transform=this._initialTransform);return extendStyles2(preview.style,{"pointer-events":"none",margin:supportsPopover(preview)?"0 auto 0 0":"0",position:"fixed",top:"0",left:"0","z-index":this._zIndex+""},importantProperties),toggleNativeDragInteractions(preview,!1),preview.classList.add("cdk-drag-preview"),preview.setAttribute("popover","manual"),preview.setAttribute("dir",this._direction),previewClass&&(Array.isArray(previewClass)?previewClass.forEach(className=>preview.classList.add(className)):preview.classList.add(previewClass)),preview}};function supportsPopover(element){return"showPopover"in element}var passiveEventListenerOptions={passive:!0},activeEventListenerOptions={passive:!1},activeCapturingEventOptions$1={passive:!1,capture:!0},MOUSE_EVENT_IGNORE_TIME=800,PLACEHOLDER_CLASS="cdk-drag-placeholder",dragImportantProperties=new Set(["position"]),DragRef=class{_config;_document;_ngZone;_viewportRuler;_dragDropRegistry;_renderer;_rootElementCleanups;_cleanupShadowRootSelectStart;_preview;_previewContainer;_placeholderRef;_placeholder;_pickupPositionInElement;_pickupPositionOnPage;_marker;_anchor=null;_passiveTransform={x:0,y:0};_activeTransform={x:0,y:0};_initialTransform;_hasStartedDragging=signal(!1);_hasMoved;_initialContainer;_initialIndex;_parentPositions;_moveEvents=new Subject;_pointerDirectionDelta;_pointerPositionAtLastDirectionChange;_lastKnownPointerPosition;_rootElement;_ownerSVGElement;_rootElementTapHighlight;_pointerMoveSubscription=Subscription.EMPTY;_pointerUpSubscription=Subscription.EMPTY;_scrollSubscription=Subscription.EMPTY;_resizeSubscription=Subscription.EMPTY;_lastTouchEventTime;_dragStartTime;_boundaryElement=null;_nativeInteractionsEnabled=!0;_initialDomRect;_previewRect;_boundaryRect;_previewTemplate;_placeholderTemplate;_handles=[];_disabledHandles=new Set;_dropContainer;_direction="ltr";_parentDragRef;_cachedShadowRoot;lockAxis;dragStartDelay=0;previewClass;scale=1;get disabled(){return this._disabled||!!(this._dropContainer&&this._dropContainer.disabled)}set disabled(value){value!==this._disabled&&(this._disabled=value,this._toggleNativeDragInteractions(),this._handles.forEach(handle=>toggleNativeDragInteractions(handle,value)))}_disabled=!1;beforeStarted=new Subject;started=new Subject;released=new Subject;ended=new Subject;entered=new Subject;exited=new Subject;dropped=new Subject;moved=this._moveEvents;data;constrainPosition;constructor(element,_config,_document2,_ngZone,_viewportRuler,_dragDropRegistry,_renderer){this._config=_config,this._document=_document2,this._ngZone=_ngZone,this._viewportRuler=_viewportRuler,this._dragDropRegistry=_dragDropRegistry,this._renderer=_renderer,this.withRootElement(element).withParent(_config.parentDragRef||null),this._parentPositions=new ParentPositionTracker(_document2),_dragDropRegistry.registerDragItem(this)}getPlaceholderElement(){return this._placeholder}getRootElement(){return this._rootElement}getVisibleElement(){return this.isDragging()?this.getPlaceholderElement():this.getRootElement()}withHandles(handles){this._handles=handles.map(handle=>coerceElement(handle)),this._handles.forEach(handle=>toggleNativeDragInteractions(handle,this.disabled)),this._toggleNativeDragInteractions();let disabledHandles=new Set;return this._disabledHandles.forEach(handle=>{this._handles.indexOf(handle)>-1&&disabledHandles.add(handle)}),this._disabledHandles=disabledHandles,this}withPreviewTemplate(template){return this._previewTemplate=template,this}withPlaceholderTemplate(template){return this._placeholderTemplate=template,this}withRootElement(rootElement){let element=coerceElement(rootElement);if(element!==this._rootElement){this._removeRootElementListeners();let renderer=this._renderer;this._rootElementCleanups=this._ngZone.runOutsideAngular(()=>[renderer.listen(element,"mousedown",this._pointerDown,activeEventListenerOptions),renderer.listen(element,"touchstart",this._pointerDown,passiveEventListenerOptions),renderer.listen(element,"dragstart",this._nativeDragStart,activeEventListenerOptions)]),this._initialTransform=void 0,this._rootElement=element}return typeof SVGElement<"u"&&this._rootElement instanceof SVGElement&&(this._ownerSVGElement=this._rootElement.ownerSVGElement),this}withBoundaryElement(boundaryElement){return this._boundaryElement=boundaryElement?coerceElement(boundaryElement):null,this._resizeSubscription.unsubscribe(),boundaryElement&&(this._resizeSubscription=this._viewportRuler.change(10).subscribe(()=>this._containInsideBoundaryOnResize())),this}withParent(parent){return this._parentDragRef=parent,this}dispose(){this._removeRootElementListeners(),this.isDragging()&&this._rootElement?.remove(),this._marker?.remove(),this._destroyPreview(),this._destroyPlaceholder(),this._dragDropRegistry.removeDragItem(this),this._removeListeners(),this.beforeStarted.complete(),this.started.complete(),this.released.complete(),this.ended.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this._moveEvents.complete(),this._handles=[],this._disabledHandles.clear(),this._dropContainer=void 0,this._resizeSubscription.unsubscribe(),this._parentPositions.clear(),this._boundaryElement=this._rootElement=this._ownerSVGElement=this._placeholderTemplate=this._previewTemplate=this._marker=this._parentDragRef=null}isDragging(){return this._hasStartedDragging()&&this._dragDropRegistry.isDragging(this)}reset(){this._rootElement.style.transform=this._initialTransform||"",this._activeTransform={x:0,y:0},this._passiveTransform={x:0,y:0}}resetToBoundary(){if(this._boundaryElement&&this._rootElement&&isOverflowingParent(this._boundaryElement.getBoundingClientRect(),this._rootElement.getBoundingClientRect())){let parentRect=this._boundaryElement.getBoundingClientRect(),childRect=this._rootElement.getBoundingClientRect(),offsetX=0,offsetY=0;childRect.left<parentRect.left?offsetX=parentRect.left-childRect.left:childRect.right>parentRect.right&&(offsetX=parentRect.right-childRect.right),childRect.top<parentRect.top?offsetY=parentRect.top-childRect.top:childRect.bottom>parentRect.bottom&&(offsetY=parentRect.bottom-childRect.bottom);let currentLeft=this._activeTransform.x,currentTop=this._activeTransform.y,x=currentLeft+offsetX,y=currentTop+offsetY;this._rootElement.style.transform=getTransform(x,y),this._activeTransform={x,y},this._passiveTransform={x,y}}}disableHandle(handle){!this._disabledHandles.has(handle)&&this._handles.indexOf(handle)>-1&&(this._disabledHandles.add(handle),toggleNativeDragInteractions(handle,!0))}enableHandle(handle){this._disabledHandles.has(handle)&&(this._disabledHandles.delete(handle),toggleNativeDragInteractions(handle,this.disabled))}withDirection(direction){return this._direction=direction,this}_withDropContainer(container){this._dropContainer=container}getFreeDragPosition(){let position=this.isDragging()?this._activeTransform:this._passiveTransform;return{x:position.x,y:position.y}}setFreeDragPosition(value){return this._activeTransform={x:0,y:0},this._passiveTransform.x=value.x,this._passiveTransform.y=value.y,this._dropContainer||this._applyRootElementTransform(value.x,value.y),this}withPreviewContainer(value){return this._previewContainer=value,this}_sortFromLastPointerPosition(){let position=this._lastKnownPointerPosition;position&&this._dropContainer&&this._updateActiveDropContainer(this._getConstrainedPointerPosition(position),position)}_removeListeners(){this._pointerMoveSubscription.unsubscribe(),this._pointerUpSubscription.unsubscribe(),this._scrollSubscription.unsubscribe(),this._cleanupShadowRootSelectStart?.(),this._cleanupShadowRootSelectStart=void 0}_destroyPreview(){this._preview?.destroy(),this._preview=null}_destroyPlaceholder(){this._anchor?.remove(),this._placeholder?.remove(),this._placeholderRef?.destroy(),this._placeholder=this._anchor=this._placeholderRef=null}_pointerDown=event=>{if(this.beforeStarted.next(),this._handles.length){let targetHandle=this._getTargetHandle(event);targetHandle&&!this._disabledHandles.has(targetHandle)&&!this.disabled&&this._initializeDragSequence(targetHandle,event)}else this.disabled||this._initializeDragSequence(this._rootElement,event)};_pointerMove=event=>{let pointerPosition=this._getPointerPositionOnPage(event);if(!this._hasStartedDragging()){let distanceX=Math.abs(pointerPosition.x-this._pickupPositionOnPage.x),distanceY=Math.abs(pointerPosition.y-this._pickupPositionOnPage.y);if(distanceX+distanceY>=this._config.dragStartThreshold){let isDelayElapsed=Date.now()>=this._dragStartTime+this._getDragStartDelay(event),container=this._dropContainer;if(!isDelayElapsed){this._endDragSequence(event);return}(!container||!container.isDragging()&&!container.isReceiving())&&(event.cancelable&&event.preventDefault(),this._hasStartedDragging.set(!0),this._ngZone.run(()=>this._startDragSequence(event)))}return}event.cancelable&&event.preventDefault();let constrainedPointerPosition=this._getConstrainedPointerPosition(pointerPosition);if(this._hasMoved=!0,this._lastKnownPointerPosition=pointerPosition,this._updatePointerDirectionDelta(constrainedPointerPosition),this._dropContainer)this._updateActiveDropContainer(constrainedPointerPosition,pointerPosition);else{let offset=this.constrainPosition?this._initialDomRect:this._pickupPositionOnPage,activeTransform=this._activeTransform;activeTransform.x=constrainedPointerPosition.x-offset.x+this._passiveTransform.x,activeTransform.y=constrainedPointerPosition.y-offset.y+this._passiveTransform.y,this._applyRootElementTransform(activeTransform.x,activeTransform.y)}this._moveEvents.observers.length&&this._ngZone.run(()=>{this._moveEvents.next({source:this,pointerPosition:constrainedPointerPosition,event,distance:this._getDragDistance(constrainedPointerPosition),delta:this._pointerDirectionDelta})})};_pointerUp=event=>{this._endDragSequence(event)};_endDragSequence(event){if(this._dragDropRegistry.isDragging(this)&&(this._removeListeners(),this._dragDropRegistry.stopDragging(this),this._toggleNativeDragInteractions(),this._handles&&(this._rootElement.style.webkitTapHighlightColor=this._rootElementTapHighlight),!!this._hasStartedDragging()))if(this.released.next({source:this,event}),this._dropContainer)this._dropContainer._stopScrolling(),this._animatePreviewToPlaceholder().then(()=>{this._cleanupDragArtifacts(event),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)});else{this._passiveTransform.x=this._activeTransform.x;let pointerPosition=this._getPointerPositionOnPage(event);this._passiveTransform.y=this._activeTransform.y,this._ngZone.run(()=>{this.ended.next({source:this,distance:this._getDragDistance(pointerPosition),dropPoint:pointerPosition,event})}),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)}}_startDragSequence(event){isTouchEvent(event)&&(this._lastTouchEventTime=Date.now()),this._toggleNativeDragInteractions();let shadowRoot=this._getShadowRoot(),dropContainer=this._dropContainer;if(shadowRoot&&this._ngZone.runOutsideAngular(()=>{this._cleanupShadowRootSelectStart=this._renderer.listen(shadowRoot,"selectstart",shadowDomSelectStart,activeCapturingEventOptions$1)}),dropContainer){let element=this._rootElement,parent=element.parentNode,placeholder=this._placeholder=this._createPlaceholderElement(),marker=this._marker=this._marker||this._document.createComment("");parent.insertBefore(marker,element),this._initialTransform=element.style.transform||"",this._preview=new PreviewRef(this._document,this._rootElement,this._direction,this._initialDomRect,this._previewTemplate||null,this.previewClass||null,this._pickupPositionOnPage,this._initialTransform,this._config.zIndex||1e3,this._renderer),this._preview.attach(this._getPreviewInsertionPoint(parent,shadowRoot)),toggleVisibility(element,!1,dragImportantProperties),this._document.body.appendChild(parent.replaceChild(placeholder,element)),this.started.next({source:this,event}),dropContainer.start(),this._initialContainer=dropContainer,this._initialIndex=dropContainer.getItemIndex(this)}else this.started.next({source:this,event}),this._initialContainer=this._initialIndex=void 0;this._parentPositions.cache(dropContainer?dropContainer.getScrollableParents():[])}_initializeDragSequence(referenceElement,event){this._parentDragRef&&event.stopPropagation();let isDragging=this.isDragging(),isTouchSequence=isTouchEvent(event),isAuxiliaryMouseButton=!isTouchSequence&&event.button!==0,rootElement=this._rootElement,target=_getEventTarget(event),isSyntheticEvent=!isTouchSequence&&this._lastTouchEventTime&&this._lastTouchEventTime+MOUSE_EVENT_IGNORE_TIME>Date.now(),isFakeEvent=isTouchSequence?isFakeTouchstartFromScreenReader(event):isFakeMousedownFromScreenReader(event);if(target&&target.draggable&&event.type==="mousedown"&&event.preventDefault(),isDragging||isAuxiliaryMouseButton||isSyntheticEvent||isFakeEvent)return;if(this._handles.length){let rootStyles=rootElement.style;this._rootElementTapHighlight=rootStyles.webkitTapHighlightColor||"",rootStyles.webkitTapHighlightColor="transparent"}this._hasMoved=!1,this._hasStartedDragging.set(this._hasMoved),this._removeListeners(),this._initialDomRect=this._rootElement.getBoundingClientRect(),this._pointerMoveSubscription=this._dragDropRegistry.pointerMove.subscribe(this._pointerMove),this._pointerUpSubscription=this._dragDropRegistry.pointerUp.subscribe(this._pointerUp),this._scrollSubscription=this._dragDropRegistry.scrolled(this._getShadowRoot()).subscribe(scrollEvent=>this._updateOnScroll(scrollEvent)),this._boundaryElement&&(this._boundaryRect=getMutableClientRect(this._boundaryElement));let previewTemplate=this._previewTemplate;this._pickupPositionInElement=previewTemplate&&previewTemplate.template&&!previewTemplate.matchSize?{x:0,y:0}:this._getPointerPositionInElement(this._initialDomRect,referenceElement,event);let pointerPosition=this._pickupPositionOnPage=this._lastKnownPointerPosition=this._getPointerPositionOnPage(event);this._pointerDirectionDelta={x:0,y:0},this._pointerPositionAtLastDirectionChange={x:pointerPosition.x,y:pointerPosition.y},this._dragStartTime=Date.now(),this._dragDropRegistry.startDragging(this,event)}_cleanupDragArtifacts(event){toggleVisibility(this._rootElement,!0,dragImportantProperties),this._marker.parentNode.replaceChild(this._rootElement,this._marker),this._destroyPreview(),this._destroyPlaceholder(),this._initialDomRect=this._boundaryRect=this._previewRect=this._initialTransform=void 0,this._ngZone.run(()=>{let container=this._dropContainer,currentIndex=container.getItemIndex(this),pointerPosition=this._getPointerPositionOnPage(event),distance=this._getDragDistance(pointerPosition),isPointerOverContainer=container._isOverContainer(pointerPosition.x,pointerPosition.y);this.ended.next({source:this,distance,dropPoint:pointerPosition,event}),this.dropped.next({item:this,currentIndex,previousIndex:this._initialIndex,container,previousContainer:this._initialContainer,isPointerOverContainer,distance,dropPoint:pointerPosition,event}),container.drop(this,currentIndex,this._initialIndex,this._initialContainer,isPointerOverContainer,distance,pointerPosition,event),this._dropContainer=this._initialContainer})}_updateActiveDropContainer({x,y},{x:rawX,y:rawY}){let newContainer=this._initialContainer._getSiblingContainerFromPosition(this,x,y);!newContainer&&this._dropContainer!==this._initialContainer&&this._initialContainer._isOverContainer(x,y)&&(newContainer=this._initialContainer),newContainer&&newContainer!==this._dropContainer&&this._ngZone.run(()=>{let exitIndex=this._dropContainer.getItemIndex(this),nextItemElement=this._dropContainer.getItemAtIndex(exitIndex+1)?.getVisibleElement()||null;this.exited.next({item:this,container:this._dropContainer}),this._dropContainer.exit(this),this._conditionallyInsertAnchor(newContainer,this._dropContainer,nextItemElement),this._dropContainer=newContainer,this._dropContainer.enter(this,x,y,newContainer===this._initialContainer&&newContainer.sortingDisabled?this._initialIndex:void 0),this.entered.next({item:this,container:newContainer,currentIndex:newContainer.getItemIndex(this)})}),this.isDragging()&&(this._dropContainer._startScrollingIfNecessary(rawX,rawY),this._dropContainer._sortItem(this,x,y,this._pointerDirectionDelta),this.constrainPosition?this._applyPreviewTransform(x,y):this._applyPreviewTransform(x-this._pickupPositionInElement.x,y-this._pickupPositionInElement.y))}_animatePreviewToPlaceholder(){if(!this._hasMoved)return Promise.resolve();let placeholderRect=this._placeholder.getBoundingClientRect();this._preview.addClass("cdk-drag-animating"),this._applyPreviewTransform(placeholderRect.left,placeholderRect.top);let duration=this._preview.getTransitionDuration();return duration===0?Promise.resolve():this._ngZone.runOutsideAngular(()=>new Promise(resolve=>{let handler=event=>{(!event||this._preview&&_getEventTarget(event)===this._preview.element&&event.propertyName==="transform")&&(cleanupListener(),resolve(),clearTimeout(timeout2))},timeout2=setTimeout(handler,duration*1.5),cleanupListener=this._preview.addEventListener("transitionend",handler)}))}_createPlaceholderElement(){let placeholderConfig=this._placeholderTemplate,placeholderTemplate=placeholderConfig?placeholderConfig.template:null,placeholder;return placeholderTemplate?(this._placeholderRef=placeholderConfig.viewContainer.createEmbeddedView(placeholderTemplate,placeholderConfig.context),this._placeholderRef.detectChanges(),placeholder=getRootNode(this._placeholderRef,this._document)):placeholder=deepCloneNode(this._rootElement),placeholder.style.pointerEvents="none",placeholder.classList.add(PLACEHOLDER_CLASS),placeholder}_getPointerPositionInElement(elementRect,referenceElement,event){let handleElement=referenceElement===this._rootElement?null:referenceElement,referenceRect=handleElement?handleElement.getBoundingClientRect():elementRect,point=isTouchEvent(event)?event.targetTouches[0]:event,scrollPosition=this._getViewportScrollPosition(),x=point.pageX-referenceRect.left-scrollPosition.left,y=point.pageY-referenceRect.top-scrollPosition.top;return{x:referenceRect.left-elementRect.left+x,y:referenceRect.top-elementRect.top+y}}_getPointerPositionOnPage(event){let scrollPosition=this._getViewportScrollPosition(),point=isTouchEvent(event)?event.touches[0]||event.changedTouches[0]||{pageX:0,pageY:0}:event,x=point.pageX-scrollPosition.left,y=point.pageY-scrollPosition.top;if(this._ownerSVGElement){let svgMatrix=this._ownerSVGElement.getScreenCTM();if(svgMatrix){let svgPoint=this._ownerSVGElement.createSVGPoint();return svgPoint.x=x,svgPoint.y=y,svgPoint.matrixTransform(svgMatrix.inverse())}}return{x,y}}_getConstrainedPointerPosition(point){let dropContainerLock=this._dropContainer?this._dropContainer.lockAxis:null,{x,y}=this.constrainPosition?this.constrainPosition(point,this,this._initialDomRect,this._pickupPositionInElement):point;if(this.lockAxis==="x"||dropContainerLock==="x"?y=this._pickupPositionOnPage.y-(this.constrainPosition?this._pickupPositionInElement.y:0):(this.lockAxis==="y"||dropContainerLock==="y")&&(x=this._pickupPositionOnPage.x-(this.constrainPosition?this._pickupPositionInElement.x:0)),this._boundaryRect){let{x:pickupX,y:pickupY}=this.constrainPosition?{x:0,y:0}:this._pickupPositionInElement,boundaryRect=this._boundaryRect,{width:previewWidth,height:previewHeight}=this._getPreviewRect(),minY=boundaryRect.top+pickupY,maxY=boundaryRect.bottom-(previewHeight-pickupY),minX=boundaryRect.left+pickupX,maxX=boundaryRect.right-(previewWidth-pickupX);x=clamp$1(x,minX,maxX),y=clamp$1(y,minY,maxY)}return{x,y}}_updatePointerDirectionDelta(pointerPositionOnPage){let{x,y}=pointerPositionOnPage,delta=this._pointerDirectionDelta,positionSinceLastChange=this._pointerPositionAtLastDirectionChange,changeX=Math.abs(x-positionSinceLastChange.x),changeY=Math.abs(y-positionSinceLastChange.y);return changeX>this._config.pointerDirectionChangeThreshold&&(delta.x=x>positionSinceLastChange.x?1:-1,positionSinceLastChange.x=x),changeY>this._config.pointerDirectionChangeThreshold&&(delta.y=y>positionSinceLastChange.y?1:-1,positionSinceLastChange.y=y),delta}_toggleNativeDragInteractions(){if(!this._rootElement||!this._handles)return;let shouldEnable=this._handles.length>0||!this.isDragging();shouldEnable!==this._nativeInteractionsEnabled&&(this._nativeInteractionsEnabled=shouldEnable,toggleNativeDragInteractions(this._rootElement,shouldEnable))}_removeRootElementListeners(){this._rootElementCleanups?.forEach(cleanup=>cleanup()),this._rootElementCleanups=void 0}_applyRootElementTransform(x,y){let scale=1/this.scale,transform=getTransform(x*scale,y*scale),styles=this._rootElement.style;this._initialTransform==null&&(this._initialTransform=styles.transform&&styles.transform!="none"?styles.transform:""),styles.transform=combineTransforms(transform,this._initialTransform)}_applyPreviewTransform(x,y){let initialTransform=this._previewTemplate?.template?void 0:this._initialTransform,transform=getTransform(x,y);this._preview.setTransform(combineTransforms(transform,initialTransform))}_getDragDistance(currentPosition){let pickupPosition=this._pickupPositionOnPage;return pickupPosition?{x:currentPosition.x-pickupPosition.x,y:currentPosition.y-pickupPosition.y}:{x:0,y:0}}_cleanupCachedDimensions(){this._boundaryRect=this._previewRect=void 0,this._parentPositions.clear()}_containInsideBoundaryOnResize(){let{x,y}=this._passiveTransform;if(x===0&&y===0||this.isDragging()||!this._boundaryElement)return;let elementRect=this._rootElement.getBoundingClientRect(),boundaryRect=this._boundaryElement.getBoundingClientRect();if(boundaryRect.width===0&&boundaryRect.height===0||elementRect.width===0&&elementRect.height===0)return;let leftOverflow=boundaryRect.left-elementRect.left,rightOverflow=elementRect.right-boundaryRect.right,topOverflow=boundaryRect.top-elementRect.top,bottomOverflow=elementRect.bottom-boundaryRect.bottom;boundaryRect.width>elementRect.width?(leftOverflow>0&&(x+=leftOverflow),rightOverflow>0&&(x-=rightOverflow)):x=0,boundaryRect.height>elementRect.height?(topOverflow>0&&(y+=topOverflow),bottomOverflow>0&&(y-=bottomOverflow)):y=0,(x!==this._passiveTransform.x||y!==this._passiveTransform.y)&&this.setFreeDragPosition({y,x})}_getDragStartDelay(event){let value=this.dragStartDelay;return typeof value=="number"?value:isTouchEvent(event)?value.touch:value?value.mouse:0}_updateOnScroll(event){let scrollDifference=this._parentPositions.handleScroll(event);if(scrollDifference){let target=_getEventTarget(event);this._boundaryRect&&target!==this._boundaryElement&&target.contains(this._boundaryElement)&&adjustDomRect(this._boundaryRect,scrollDifference.top,scrollDifference.left),this._pickupPositionOnPage.x+=scrollDifference.left,this._pickupPositionOnPage.y+=scrollDifference.top,this._dropContainer||(this._activeTransform.x-=scrollDifference.left,this._activeTransform.y-=scrollDifference.top,this._applyRootElementTransform(this._activeTransform.x,this._activeTransform.y))}}_getViewportScrollPosition(){return this._parentPositions.positions.get(this._document)?.scrollPosition||this._parentPositions.getViewportScrollPosition()}_getShadowRoot(){return this._cachedShadowRoot===void 0&&(this._cachedShadowRoot=_getShadowRoot(this._rootElement)),this._cachedShadowRoot}_getPreviewInsertionPoint(initialParent,shadowRoot){let previewContainer=this._previewContainer||"global";if(previewContainer==="parent")return initialParent;if(previewContainer==="global"){let documentRef=this._document;return shadowRoot||documentRef.fullscreenElement||documentRef.webkitFullscreenElement||documentRef.mozFullScreenElement||documentRef.msFullscreenElement||documentRef.body}return coerceElement(previewContainer)}_getPreviewRect(){return(!this._previewRect||!this._previewRect.width&&!this._previewRect.height)&&(this._previewRect=this._preview?this._preview.getBoundingClientRect():this._initialDomRect),this._previewRect}_nativeDragStart=event=>{if(this._handles.length){let targetHandle=this._getTargetHandle(event);targetHandle&&!this._disabledHandles.has(targetHandle)&&!this.disabled&&event.preventDefault()}else this.disabled||event.preventDefault()};_getTargetHandle(event){return this._handles.find(handle=>event.target&&(event.target===handle||handle.contains(event.target)))}_conditionallyInsertAnchor(newContainer,exitContainer,nextItemElement){if(newContainer===this._initialContainer)this._anchor?.remove(),this._anchor=null;else if(exitContainer===this._initialContainer&&exitContainer.hasAnchor){let anchor=this._anchor??=deepCloneNode(this._placeholder);anchor.classList.remove(PLACEHOLDER_CLASS),anchor.classList.add("cdk-drag-anchor"),anchor.style.transform="",nextItemElement?nextItemElement.before(anchor):coerceElement(exitContainer.element).appendChild(anchor)}}};function clamp$1(value,min,max){return Math.max(min,Math.min(max,value))}function isTouchEvent(event){return event.type[0]==="t"}function shadowDomSelectStart(event){event.preventDefault()}function moveItemInArray(array,fromIndex,toIndex){let from3=clamp(fromIndex,array.length-1),to=clamp(toIndex,array.length-1);if(from3===to)return;let target=array[from3],delta=to<from3?-1:1;for(let i=from3;i!==to;i+=delta)array[i]=array[i+delta];array[to]=target}function clamp(value,max){return Math.max(0,Math.min(max,value))}var SingleAxisSortStrategy=class{_dragDropRegistry;_element;_sortPredicate;_itemPositions=[];_activeDraggables;orientation="vertical";direction;constructor(_dragDropRegistry){this._dragDropRegistry=_dragDropRegistry}_previousSwap={drag:null,delta:0,overlaps:!1};start(items){this.withItems(items)}sort(item,pointerX,pointerY,pointerDelta){let siblings=this._itemPositions,newIndex=this._getItemIndexFromPointerPosition(item,pointerX,pointerY,pointerDelta);if(newIndex===-1&&siblings.length>0)return null;let isHorizontal=this.orientation==="horizontal",currentIndex=siblings.findIndex(currentItem=>currentItem.drag===item),siblingAtNewPosition=siblings[newIndex],currentPosition=siblings[currentIndex].clientRect,newPosition=siblingAtNewPosition.clientRect,delta=currentIndex>newIndex?1:-1,itemOffset=this._getItemOffsetPx(currentPosition,newPosition,delta),siblingOffset=this._getSiblingOffsetPx(currentIndex,siblings,delta),oldOrder=siblings.slice();return moveItemInArray(siblings,currentIndex,newIndex),siblings.forEach((sibling,index)=>{if(oldOrder[index]===sibling)return;let isDraggedItem=sibling.drag===item,offset=isDraggedItem?itemOffset:siblingOffset,elementToOffset=isDraggedItem?item.getPlaceholderElement():sibling.drag.getRootElement();sibling.offset+=offset;let transformAmount=Math.round(sibling.offset*(1/sibling.drag.scale));isHorizontal?(elementToOffset.style.transform=combineTransforms(`translate3d(${transformAmount}px, 0, 0)`,sibling.initialTransform),adjustDomRect(sibling.clientRect,0,offset)):(elementToOffset.style.transform=combineTransforms(`translate3d(0, ${transformAmount}px, 0)`,sibling.initialTransform),adjustDomRect(sibling.clientRect,offset,0))}),this._previousSwap.overlaps=isInsideClientRect(newPosition,pointerX,pointerY),this._previousSwap.drag=siblingAtNewPosition.drag,this._previousSwap.delta=isHorizontal?pointerDelta.x:pointerDelta.y,{previousIndex:currentIndex,currentIndex:newIndex}}enter(item,pointerX,pointerY,index){let newIndex=index==null||index<0?this._getItemIndexFromPointerPosition(item,pointerX,pointerY):index,activeDraggables=this._activeDraggables,currentIndex=activeDraggables.indexOf(item),placeholder=item.getPlaceholderElement(),newPositionReference=activeDraggables[newIndex];if(newPositionReference===item&&(newPositionReference=activeDraggables[newIndex+1]),!newPositionReference&&(newIndex==null||newIndex===-1||newIndex<activeDraggables.length-1)&&this._shouldEnterAsFirstChild(pointerX,pointerY)&&(newPositionReference=activeDraggables[0]),currentIndex>-1&&activeDraggables.splice(currentIndex,1),newPositionReference&&!this._dragDropRegistry.isDragging(newPositionReference)){let element=newPositionReference.getRootElement();element.parentElement.insertBefore(placeholder,element),activeDraggables.splice(newIndex,0,item)}else this._element.appendChild(placeholder),activeDraggables.push(item);placeholder.style.transform="",this._cacheItemPositions()}withItems(items){this._activeDraggables=items.slice(),this._cacheItemPositions()}withSortPredicate(predicate){this._sortPredicate=predicate}reset(){this._activeDraggables?.forEach(item=>{let rootElement=item.getRootElement();if(rootElement){let initialTransform=this._itemPositions.find(p=>p.drag===item)?.initialTransform;rootElement.style.transform=initialTransform||""}}),this._itemPositions=[],this._activeDraggables=[],this._previousSwap.drag=null,this._previousSwap.delta=0,this._previousSwap.overlaps=!1}getActiveItemsSnapshot(){return this._activeDraggables}getItemIndex(item){return this._getVisualItemPositions().findIndex(currentItem=>currentItem.drag===item)}getItemAtIndex(index){return this._getVisualItemPositions()[index]?.drag||null}updateOnScroll(topDifference,leftDifference){this._itemPositions.forEach(({clientRect})=>{adjustDomRect(clientRect,topDifference,leftDifference)}),this._itemPositions.forEach(({drag})=>{this._dragDropRegistry.isDragging(drag)&&drag._sortFromLastPointerPosition()})}withElementContainer(container){this._element=container}_cacheItemPositions(){let isHorizontal=this.orientation==="horizontal";this._itemPositions=this._activeDraggables.map(drag=>{let elementToMeasure=drag.getVisibleElement();return{drag,offset:0,initialTransform:elementToMeasure.style.transform||"",clientRect:getMutableClientRect(elementToMeasure)}}).sort((a,b)=>isHorizontal?a.clientRect.left-b.clientRect.left:a.clientRect.top-b.clientRect.top)}_getVisualItemPositions(){return this.orientation==="horizontal"&&this.direction==="rtl"?this._itemPositions.slice().reverse():this._itemPositions}_getItemOffsetPx(currentPosition,newPosition,delta){let isHorizontal=this.orientation==="horizontal",itemOffset=isHorizontal?newPosition.left-currentPosition.left:newPosition.top-currentPosition.top;return delta===-1&&(itemOffset+=isHorizontal?newPosition.width-currentPosition.width:newPosition.height-currentPosition.height),itemOffset}_getSiblingOffsetPx(currentIndex,siblings,delta){let isHorizontal=this.orientation==="horizontal",currentPosition=siblings[currentIndex].clientRect,immediateSibling=siblings[currentIndex+delta*-1],siblingOffset=currentPosition[isHorizontal?"width":"height"]*delta;if(immediateSibling){let start=isHorizontal?"left":"top",end=isHorizontal?"right":"bottom";delta===-1?siblingOffset-=immediateSibling.clientRect[start]-currentPosition[end]:siblingOffset+=currentPosition[start]-immediateSibling.clientRect[end]}return siblingOffset}_shouldEnterAsFirstChild(pointerX,pointerY){if(!this._activeDraggables.length)return!1;let itemPositions=this._itemPositions,isHorizontal=this.orientation==="horizontal";if(itemPositions[0].drag!==this._activeDraggables[0]){let lastItemRect=itemPositions[itemPositions.length-1].clientRect;return isHorizontal?pointerX>=lastItemRect.right:pointerY>=lastItemRect.bottom}else{let firstItemRect=itemPositions[0].clientRect;return isHorizontal?pointerX<=firstItemRect.left:pointerY<=firstItemRect.top}}_getItemIndexFromPointerPosition(item,pointerX,pointerY,delta){let isHorizontal=this.orientation==="horizontal",index=this._itemPositions.findIndex(({drag,clientRect})=>{if(drag===item)return!1;if(delta){let direction=isHorizontal?delta.x:delta.y;if(drag===this._previousSwap.drag&&this._previousSwap.overlaps&&direction===this._previousSwap.delta)return!1}return isHorizontal?pointerX>=Math.floor(clientRect.left)&&pointerX<Math.floor(clientRect.right):pointerY>=Math.floor(clientRect.top)&&pointerY<Math.floor(clientRect.bottom)});return index===-1||!this._sortPredicate(index,item)?-1:index}},MixedSortStrategy=class{_document;_dragDropRegistry;_element;_sortPredicate;_rootNode;_activeItems;_previousSwap={drag:null,deltaX:0,deltaY:0,overlaps:!1};_relatedNodes=[];constructor(_document2,_dragDropRegistry){this._document=_document2,this._dragDropRegistry=_dragDropRegistry}start(items){let childNodes=this._element.childNodes;this._relatedNodes=[];for(let i=0;i<childNodes.length;i++){let node=childNodes[i];this._relatedNodes.push([node,node.nextSibling])}this.withItems(items)}sort(item,pointerX,pointerY,pointerDelta){let newIndex=this._getItemIndexFromPointerPosition(item,pointerX,pointerY),previousSwap=this._previousSwap;if(newIndex===-1||this._activeItems[newIndex]===item)return null;let toSwapWith=this._activeItems[newIndex];if(previousSwap.drag===toSwapWith&&previousSwap.overlaps&&previousSwap.deltaX===pointerDelta.x&&previousSwap.deltaY===pointerDelta.y)return null;let previousIndex=this.getItemIndex(item),current=item.getPlaceholderElement(),overlapElement=toSwapWith.getRootElement();newIndex>previousIndex?overlapElement.after(current):overlapElement.before(current),moveItemInArray(this._activeItems,previousIndex,newIndex);let newOverlapElement=this._getRootNode().elementFromPoint(pointerX,pointerY);return previousSwap.deltaX=pointerDelta.x,previousSwap.deltaY=pointerDelta.y,previousSwap.drag=toSwapWith,previousSwap.overlaps=overlapElement===newOverlapElement||overlapElement.contains(newOverlapElement),{previousIndex,currentIndex:newIndex}}enter(item,pointerX,pointerY,index){let currentIndex=this._activeItems.indexOf(item);currentIndex>-1&&this._activeItems.splice(currentIndex,1);let enterIndex=index==null||index<0?this._getItemIndexFromPointerPosition(item,pointerX,pointerY):index;enterIndex===-1&&(enterIndex=this._getClosestItemIndexToPointer(item,pointerX,pointerY));let targetItem=this._activeItems[enterIndex];targetItem&&!this._dragDropRegistry.isDragging(targetItem)?(this._activeItems.splice(enterIndex,0,item),targetItem.getRootElement().before(item.getPlaceholderElement())):(this._activeItems.push(item),this._element.appendChild(item.getPlaceholderElement()))}withItems(items){this._activeItems=items.slice()}withSortPredicate(predicate){this._sortPredicate=predicate}reset(){let root=this._element,previousSwap=this._previousSwap;for(let i=this._relatedNodes.length-1;i>-1;i--){let[node,nextSibling]=this._relatedNodes[i];node.parentNode===root&&node.nextSibling!==nextSibling&&(nextSibling===null?root.appendChild(node):nextSibling.parentNode===root&&root.insertBefore(node,nextSibling))}this._relatedNodes=[],this._activeItems=[],previousSwap.drag=null,previousSwap.deltaX=previousSwap.deltaY=0,previousSwap.overlaps=!1}getActiveItemsSnapshot(){return this._activeItems}getItemIndex(item){return this._activeItems.indexOf(item)}getItemAtIndex(index){return this._activeItems[index]||null}updateOnScroll(){this._activeItems.forEach(item=>{this._dragDropRegistry.isDragging(item)&&item._sortFromLastPointerPosition()})}withElementContainer(container){container!==this._element&&(this._element=container,this._rootNode=void 0)}_getItemIndexFromPointerPosition(item,pointerX,pointerY){let elementAtPoint=this._getRootNode().elementFromPoint(Math.floor(pointerX),Math.floor(pointerY)),index=elementAtPoint?this._activeItems.findIndex(item2=>{let root=item2.getRootElement();return elementAtPoint===root||root.contains(elementAtPoint)}):-1;return index===-1||!this._sortPredicate(index,item)?-1:index}_getRootNode(){return this._rootNode||(this._rootNode=_getShadowRoot(this._element)||this._document),this._rootNode}_getClosestItemIndexToPointer(item,pointerX,pointerY){if(this._activeItems.length===0)return-1;if(this._activeItems.length===1)return 0;let minDistance=1/0,minIndex=-1;for(let i=0;i<this._activeItems.length;i++){let current=this._activeItems[i];if(current!==item){let{x,y}=current.getRootElement().getBoundingClientRect(),distance=Math.hypot(pointerX-x,pointerY-y);distance<minDistance&&(minDistance=distance,minIndex=i)}}return minIndex}},DROP_PROXIMITY_THRESHOLD=.05,SCROLL_PROXIMITY_THRESHOLD=.05,AutoScrollVerticalDirection=(function(AutoScrollVerticalDirection2){return AutoScrollVerticalDirection2[AutoScrollVerticalDirection2.NONE=0]="NONE",AutoScrollVerticalDirection2[AutoScrollVerticalDirection2.UP=1]="UP",AutoScrollVerticalDirection2[AutoScrollVerticalDirection2.DOWN=2]="DOWN",AutoScrollVerticalDirection2})(AutoScrollVerticalDirection||{}),AutoScrollHorizontalDirection=(function(AutoScrollHorizontalDirection2){return AutoScrollHorizontalDirection2[AutoScrollHorizontalDirection2.NONE=0]="NONE",AutoScrollHorizontalDirection2[AutoScrollHorizontalDirection2.LEFT=1]="LEFT",AutoScrollHorizontalDirection2[AutoScrollHorizontalDirection2.RIGHT=2]="RIGHT",AutoScrollHorizontalDirection2})(AutoScrollHorizontalDirection||{}),DropListRef=class{_dragDropRegistry;_ngZone;_viewportRuler;element;disabled=!1;sortingDisabled=!1;lockAxis;autoScrollDisabled=!1;autoScrollStep=2;hasAnchor=!1;enterPredicate=()=>!0;sortPredicate=()=>!0;beforeStarted=new Subject;entered=new Subject;exited=new Subject;dropped=new Subject;sorted=new Subject;receivingStarted=new Subject;receivingStopped=new Subject;data;_container;_isDragging=!1;_parentPositions;_sortStrategy;_domRect;_draggables=[];_siblings=[];_activeSiblings=new Set;_viewportScrollSubscription=Subscription.EMPTY;_verticalScrollDirection=AutoScrollVerticalDirection.NONE;_horizontalScrollDirection=AutoScrollHorizontalDirection.NONE;_scrollNode;_stopScrollTimers=new Subject;_cachedShadowRoot=null;_document;_scrollableElements=[];_initialScrollSnap;_direction="ltr";constructor(element,_dragDropRegistry,_document2,_ngZone,_viewportRuler){this._dragDropRegistry=_dragDropRegistry,this._ngZone=_ngZone,this._viewportRuler=_viewportRuler;let coercedElement=this.element=coerceElement(element);this._document=_document2,this.withOrientation("vertical").withElementContainer(coercedElement),_dragDropRegistry.registerDropContainer(this),this._parentPositions=new ParentPositionTracker(_document2)}dispose(){this._stopScrolling(),this._stopScrollTimers.complete(),this._viewportScrollSubscription.unsubscribe(),this.beforeStarted.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this.sorted.complete(),this.receivingStarted.complete(),this.receivingStopped.complete(),this._activeSiblings.clear(),this._scrollNode=null,this._parentPositions.clear(),this._dragDropRegistry.removeDropContainer(this)}isDragging(){return this._isDragging}start(){this._draggingStarted(),this._notifyReceivingSiblings()}enter(item,pointerX,pointerY,index){this._draggingStarted(),index==null&&this.sortingDisabled&&(index=this._draggables.indexOf(item)),this._sortStrategy.enter(item,pointerX,pointerY,index),this._cacheParentPositions(),this._notifyReceivingSiblings(),this.entered.next({item,container:this,currentIndex:this.getItemIndex(item)})}exit(item){this._reset(),this.exited.next({item,container:this})}drop(item,currentIndex,previousIndex,previousContainer,isPointerOverContainer,distance,dropPoint,event={}){this._reset(),this.dropped.next({item,currentIndex,previousIndex,container:this,previousContainer,isPointerOverContainer,distance,dropPoint,event})}withItems(items){let previousItems=this._draggables;return this._draggables=items,items.forEach(item=>item._withDropContainer(this)),this.isDragging()&&(previousItems.filter(item=>item.isDragging()).every(item=>items.indexOf(item)===-1)?this._reset():this._sortStrategy.withItems(this._draggables)),this}withDirection(direction){return this._direction=direction,this._sortStrategy instanceof SingleAxisSortStrategy&&(this._sortStrategy.direction=direction),this}connectedTo(connectedTo){return this._siblings=connectedTo.slice(),this}withOrientation(orientation){if(orientation==="mixed")this._sortStrategy=new MixedSortStrategy(this._document,this._dragDropRegistry);else{let strategy=new SingleAxisSortStrategy(this._dragDropRegistry);strategy.direction=this._direction,strategy.orientation=orientation,this._sortStrategy=strategy}return this._sortStrategy.withElementContainer(this._container),this._sortStrategy.withSortPredicate((index,item)=>this.sortPredicate(index,item,this)),this}withScrollableParents(elements){let element=this._container;return this._scrollableElements=elements.indexOf(element)===-1?[element,...elements]:elements.slice(),this}withElementContainer(container){if(container===this._container)return this;let element=coerceElement(this.element),oldContainerIndex=this._scrollableElements.indexOf(this._container),newContainerIndex=this._scrollableElements.indexOf(container);return oldContainerIndex>-1&&this._scrollableElements.splice(oldContainerIndex,1),newContainerIndex>-1&&this._scrollableElements.splice(newContainerIndex,1),this._sortStrategy&&this._sortStrategy.withElementContainer(container),this._cachedShadowRoot=null,this._scrollableElements.unshift(container),this._container=container,this}getScrollableParents(){return this._scrollableElements}getItemIndex(item){return this._isDragging?this._sortStrategy.getItemIndex(item):this._draggables.indexOf(item)}getItemAtIndex(index){return this._isDragging?this._sortStrategy.getItemAtIndex(index):this._draggables[index]||null}isReceiving(){return this._activeSiblings.size>0}_sortItem(item,pointerX,pointerY,pointerDelta){if(this.sortingDisabled||!this._domRect||!isPointerNearDomRect(this._domRect,DROP_PROXIMITY_THRESHOLD,pointerX,pointerY))return;let result=this._sortStrategy.sort(item,pointerX,pointerY,pointerDelta);result&&this.sorted.next({previousIndex:result.previousIndex,currentIndex:result.currentIndex,container:this,item})}_startScrollingIfNecessary(pointerX,pointerY){if(this.autoScrollDisabled)return;let scrollNode,verticalScrollDirection=AutoScrollVerticalDirection.NONE,horizontalScrollDirection=AutoScrollHorizontalDirection.NONE;if(this._parentPositions.positions.forEach((position,element)=>{element===this._document||!position.clientRect||scrollNode||isPointerNearDomRect(position.clientRect,DROP_PROXIMITY_THRESHOLD,pointerX,pointerY)&&([verticalScrollDirection,horizontalScrollDirection]=getElementScrollDirections(element,position.clientRect,this._direction,pointerX,pointerY),(verticalScrollDirection||horizontalScrollDirection)&&(scrollNode=element))}),!verticalScrollDirection&&!horizontalScrollDirection){let{width,height}=this._viewportRuler.getViewportSize(),domRect={width,height,top:0,right:width,bottom:height,left:0};verticalScrollDirection=getVerticalScrollDirection(domRect,pointerY),horizontalScrollDirection=getHorizontalScrollDirection(domRect,pointerX),scrollNode=window}scrollNode&&(verticalScrollDirection!==this._verticalScrollDirection||horizontalScrollDirection!==this._horizontalScrollDirection||scrollNode!==this._scrollNode)&&(this._verticalScrollDirection=verticalScrollDirection,this._horizontalScrollDirection=horizontalScrollDirection,this._scrollNode=scrollNode,(verticalScrollDirection||horizontalScrollDirection)&&scrollNode?this._ngZone.runOutsideAngular(this._startScrollInterval):this._stopScrolling())}_stopScrolling(){this._stopScrollTimers.next()}_draggingStarted(){let styles=this._container.style;this.beforeStarted.next(),this._isDragging=!0,this._initialScrollSnap=styles.msScrollSnapType||styles.scrollSnapType||"",styles.scrollSnapType=styles.msScrollSnapType="none",this._sortStrategy.start(this._draggables),this._cacheParentPositions(),this._viewportScrollSubscription.unsubscribe(),this._listenToScrollEvents()}_cacheParentPositions(){this._parentPositions.cache(this._scrollableElements),this._domRect=this._parentPositions.positions.get(this._container).clientRect}_reset(){this._isDragging=!1;let styles=this._container.style;styles.scrollSnapType=styles.msScrollSnapType=this._initialScrollSnap,this._siblings.forEach(sibling=>sibling._stopReceiving(this)),this._sortStrategy.reset(),this._stopScrolling(),this._viewportScrollSubscription.unsubscribe(),this._parentPositions.clear()}_startScrollInterval=()=>{this._stopScrolling(),interval(0,animationFrameScheduler).pipe(takeUntil(this._stopScrollTimers)).subscribe(()=>{let node=this._scrollNode,scrollStep=this.autoScrollStep;this._verticalScrollDirection===AutoScrollVerticalDirection.UP?node.scrollBy(0,-scrollStep):this._verticalScrollDirection===AutoScrollVerticalDirection.DOWN&&node.scrollBy(0,scrollStep),this._horizontalScrollDirection===AutoScrollHorizontalDirection.LEFT?node.scrollBy(-scrollStep,0):this._horizontalScrollDirection===AutoScrollHorizontalDirection.RIGHT&&node.scrollBy(scrollStep,0)})};_isOverContainer(x,y){return this._domRect!=null&&isInsideClientRect(this._domRect,x,y)}_getSiblingContainerFromPosition(item,x,y){return this._siblings.find(sibling=>sibling._canReceive(item,x,y))}_canReceive(item,x,y){if(!this._domRect||!isInsideClientRect(this._domRect,x,y)||!this.enterPredicate(item,this))return!1;let elementFromPoint=this._getShadowRoot().elementFromPoint(x,y);return elementFromPoint?elementFromPoint===this._container||this._container.contains(elementFromPoint):!1}_startReceiving(sibling,items){let activeSiblings=this._activeSiblings;!activeSiblings.has(sibling)&&items.every(item=>this.enterPredicate(item,this)||this._draggables.indexOf(item)>-1)&&(activeSiblings.add(sibling),this._cacheParentPositions(),this._listenToScrollEvents(),this.receivingStarted.next({initiator:sibling,receiver:this,items}))}_stopReceiving(sibling){this._activeSiblings.delete(sibling),this._viewportScrollSubscription.unsubscribe(),this.receivingStopped.next({initiator:sibling,receiver:this})}_listenToScrollEvents(){this._viewportScrollSubscription=this._dragDropRegistry.scrolled(this._getShadowRoot()).subscribe(event=>{if(this.isDragging()){let scrollDifference=this._parentPositions.handleScroll(event);scrollDifference&&this._sortStrategy.updateOnScroll(scrollDifference.top,scrollDifference.left)}else this.isReceiving()&&this._cacheParentPositions()})}_getShadowRoot(){if(!this._cachedShadowRoot){let shadowRoot=_getShadowRoot(this._container);this._cachedShadowRoot=shadowRoot||this._document}return this._cachedShadowRoot}_notifyReceivingSiblings(){let draggedItems=this._sortStrategy.getActiveItemsSnapshot().filter(item=>item.isDragging());this._siblings.forEach(sibling=>sibling._startReceiving(this,draggedItems))}};function getVerticalScrollDirection(clientRect,pointerY){let{top,bottom,height}=clientRect,yThreshold=height*SCROLL_PROXIMITY_THRESHOLD;return pointerY>=top-yThreshold&&pointerY<=top+yThreshold?AutoScrollVerticalDirection.UP:pointerY>=bottom-yThreshold&&pointerY<=bottom+yThreshold?AutoScrollVerticalDirection.DOWN:AutoScrollVerticalDirection.NONE}function getHorizontalScrollDirection(clientRect,pointerX){let{left,right,width}=clientRect,xThreshold=width*SCROLL_PROXIMITY_THRESHOLD;return pointerX>=left-xThreshold&&pointerX<=left+xThreshold?AutoScrollHorizontalDirection.LEFT:pointerX>=right-xThreshold&&pointerX<=right+xThreshold?AutoScrollHorizontalDirection.RIGHT:AutoScrollHorizontalDirection.NONE}function getElementScrollDirections(element,clientRect,direction,pointerX,pointerY){let computedVertical=getVerticalScrollDirection(clientRect,pointerY),computedHorizontal=getHorizontalScrollDirection(clientRect,pointerX),verticalScrollDirection=AutoScrollVerticalDirection.NONE,horizontalScrollDirection=AutoScrollHorizontalDirection.NONE;if(computedVertical){let scrollTop=element.scrollTop;computedVertical===AutoScrollVerticalDirection.UP?scrollTop>0&&(verticalScrollDirection=AutoScrollVerticalDirection.UP):element.scrollHeight-scrollTop>element.clientHeight&&(verticalScrollDirection=AutoScrollVerticalDirection.DOWN)}if(computedHorizontal){let scrollLeft=element.scrollLeft;direction==="rtl"?computedHorizontal===AutoScrollHorizontalDirection.RIGHT?scrollLeft<0&&(horizontalScrollDirection=AutoScrollHorizontalDirection.RIGHT):element.scrollWidth+scrollLeft>element.clientWidth&&(horizontalScrollDirection=AutoScrollHorizontalDirection.LEFT):computedHorizontal===AutoScrollHorizontalDirection.LEFT?scrollLeft>0&&(horizontalScrollDirection=AutoScrollHorizontalDirection.LEFT):element.scrollWidth-scrollLeft>element.clientWidth&&(horizontalScrollDirection=AutoScrollHorizontalDirection.RIGHT)}return[verticalScrollDirection,horizontalScrollDirection]}var capturingEventOptions={capture:!0},activeCapturingEventOptions={passive:!1,capture:!0},_ResetsLoader=(()=>{class _ResetsLoader2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||_ResetsLoader2)};static \u0275cmp=\u0275\u0275defineComponent({type:_ResetsLoader2,selectors:[["ng-component"]],hostAttrs:["cdk-drag-resets-container",""],decls:0,vars:0,template:function(rf,ctx){},styles:[`@layer cdk-resets{.cdk-drag-preview{background:none;border:none;padding:0;color:inherit;inset:auto}}.cdk-drag-placeholder *,.cdk-drag-preview *{pointer-events:none !important}
|
|
74
|
+
`)};Writer.prototype.renderPartial=function(token,context2,partials,config2){if(partials){var tags=this.getConfigTags(config2),value=isFunction6(partials)?partials(token[1]):partials[token[1]];if(value!=null){var lineHasNonSpace=token[6],tagIndex=token[5],indentation=token[4],indentedValue=value;tagIndex==0&&indentation&&(indentedValue=this.indentPartial(value,indentation,lineHasNonSpace));var tokens=this.parse(indentedValue,tags);return this.renderTokens(tokens,context2,partials,indentedValue,config2)}}};Writer.prototype.unescapedValue=function(token,context2){var value=context2.lookup(token[1]);if(value!=null)return value};Writer.prototype.escapedValue=function(token,context2,config2){var escape2=this.getConfigEscape(config2)||mustache.escape,value=context2.lookup(token[1]);if(value!=null)return typeof value=="number"&&escape2===mustache.escape?String(value):escape2(value)};Writer.prototype.rawValue=function(token){return token[1]};Writer.prototype.getConfigTags=function(config2){return isArray5(config2)?config2:config2&&typeof config2=="object"?config2.tags:void 0};Writer.prototype.getConfigEscape=function(config2){if(config2&&typeof config2=="object"&&!isArray5(config2))return config2.escape};var mustache={name:"mustache.js",version:"4.2.0",tags:["{{","}}"],clearCache:void 0,escape:void 0,parse:void 0,render:void 0,Scanner:void 0,Context:void 0,Writer:void 0,set templateCache(cache){defaultWriter.templateCache=cache},get templateCache(){return defaultWriter.templateCache}},defaultWriter=new Writer;mustache.clearCache=function(){return defaultWriter.clearCache()};mustache.parse=function(template,tags){return defaultWriter.parse(template,tags)};mustache.render=function(template,view,partials,config2){if(typeof template!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+typeStr(template)+'" was given as the first argument for mustache#render(template, view, partials)');return defaultWriter.render(template,view,partials,config2)};mustache.escape=escapeHtml;mustache.Scanner=Scanner;mustache.Context=Context;mustache.Writer=Writer;var mustache_default=mustache;function extractResourcesFromTemplate(template){let parsedTemplate;try{parsedTemplate=mustache_default.parse(template)}catch(error){return console.log("Template parsing error:",error.message),[]}return parsedTemplate.length>0?parsedTemplate.filter(keyValue=>["name","&"].includes(keyValue[0])).map(keyValue=>keyValue[1]).filter(field=>/agent|asset\./.test(field)).map(field=>{let customPattern=/(agent|asset)\.custom\.\S+/;return customPattern.test(field)?field.replace(customPattern,"$1.custom"):field}):[]}function extractResourcesFromTemplates(templates){return uniq_default(flatten_default(templates.map(extractResourcesFromTemplate)))}function resourceCustomizer(value,srcValue){if(isArray_default(value)&&isArray_default(srcValue)){if(!srcValue.length)return srcValue;if(has_default(value,"[0].publicId")&&has_default(srcValue,"[0].publicId"))return srcValue.map(item=>merge3({},value.find(({publicId})=>publicId===item.publicId),item));if(srcValue.length&&value.length)return srcValue}}function merge3(object,...otherArgs){return mergeWith_default(object,...otherArgs,resourceCustomizer)}function omitSubresources(object,paths){let data=object;if(paths.length){data=clone_default(object);for(let _path of paths){let path=_path.endsWith("[]")?_path.slice(0,-2):_path,result=get_default(object,path);if(isArray_default(result)){let subresourceList=result.map(o=>({publicId:o.publicId}));setWith_default(data,path,subresourceList,clone_default)}else if(isObject_default(result)&&result.publicId){let subresource={publicId:result.publicId};setWith_default(data,path,subresource,clone_default)}}}return data}function updateResource(object,...otherArgs){return merge3({},object,...otherArgs)}function mergeLoadedFields(id,loadedFields,fields){return __spreadProps(__spreadValues({},loadedFields),{[id]:loadedFields[id]?uniq_default([...loadedFields[id],...fields]):fields})}function mergeFields(fields1,fields2){return uniq_default([...fields1,...fields2])}function createResourceSelectorFactory(selector,map2=new Map([])){return function(fields){let mappings=[];return map2.forEach((featureName,subresourcePath)=>{let iterable=subresourcePath.endsWith("[]"),path=iterable?subresourcePath.slice(0,-2):subresourcePath;if(fields.some(field=>field==="*"||field.startsWith(`${path}.`))){let selector2=createFeatureSelector(featureName);mappings.push({iterable,path,selector:selector2})}}),createSelectorFactory(defaultMemoize)(selector,...mappings.map(s=>s.selector),(state2,...others)=>{let source=state2,selectorIsArray=isArray_default(state2),selectorIsObject=isObject_default(state2);others.length&&(source=(others.length===mappings.length+1?others.slice(0,-1):[...others]).reduce((combinedState,featureState,i)=>featureState===void 0?combinedState:selectorIsArray?combinedState.map(item=>_reduceCombinedState(item,featureState,mappings[i])):selectorIsObject?_reduceCombinedState(combinedState,featureState,mappings[i]):combinedState,state2));let iterablePaths=[...map2.keys()].filter(key=>key.endsWith("[]")),listPathMatcher=iterablePaths.length?new RegExp(iterablePaths.map(key=>`^${key.slice(0,-2)}.`).join("|"),"g"):null;return selectorIsArray?source.map(src=>setFields({},src,fields,listPathMatcher)):selectorIsObject?setFields({},source,fields,listPathMatcher):null})}}function mapResourceToSubResourceList(resource2,subResourcePath,subResourceReferencePath,subResourceReferenceName){if(has_default(resource2,subResourcePath)){let reference={publicId:resource2.publicId,reference:{name:subResourceReferenceName}};return get_default(resource2,subResourcePath,[]).map(item=>has_default(item,subResourceReferencePath)?item:__spreadProps(__spreadValues({},item),{[subResourceReferencePath]:reference}))}return[]}function _reduceCombinedState(item,entityState,mapping){if(!mapping||!has_default(item,mapping.path))return item;if(mapping.iterable){let list=sortSubResourceList(uniqBy_default(get_default(item,mapping.path,[]).map(r=>entityState.entities[r.publicId]||r),"publicId"));return setWith_default(clone_default(item),mapping.path,list,clone_default)}let entity=entityState.entities[get_default(item,`${mapping.path}.publicId`)];return entity!==void 0?setWith_default(clone_default(item),mapping.path,entity,clone_default):item}function sortSubResourceList(list){return hasField(list?.[0]??void 0,"name")?list.sort((a,b)=>sortByNameAndPublicIdComparer(a,b)):list=sortBy_default(list,["publicId"]),list}var nameCollator2=new Intl.Collator(JSON.parse(localStorage.getItem("ix-locale")??"{}").value,{caseFirst:"upper"});function sortByNameAndPublicIdComparer(a,b){return(a.name||b.name)&&sortByNameComparer(a,b)||sortByPublicIdComparer(a,b)}function sortByNameComparer(a,b){return a.name?nameCollator2.compare(a.name,b.name||""):-1}function sortByPublicIdComparer(a,b){return a.publicId<b.publicId?-1:a.publicId>b.publicId?1:0}function createClientRef(clientId,eventId,appId,scope){return`yot:rdc${typeof scope=="string"?`.s:${scope}`:""}${appId?`.a:${appId}`:""}.c:${clientId}.e:${eventId}`}function findAppIdInClientRef(ref){return ref.match(/\.a:([^.]+)/)?.[1]??void 0}function findAppId(target){if(target?._clientRef)return findAppIdInClientRef(target._clientRef)}var ResourceDataClient=class{constructor(id,scope,mode="view",backendComponentId){this.id=id,this.scope=scope,this.mode=mode,this.backendComponentId=backendComponentId,this._destroyed=!1,this._queryListenerRefs=[],this._addListenerRefs=[],this._updateListenerRefs=[],this._removeListenerRefs=[],this._uid=0,this._onAdded=this._onAdded.bind(this),this._onResults=this._onResults.bind(this),this._onUpdated=this._onUpdated.bind(this),this._onRemoved=this._onRemoved.bind(this),window.addEventListener(ResourceDataClientProxyEventType.Added,this._onAdded,!0),window.addEventListener(ResourceDataClientProxyEventType.Results,this._onResults,!0),window.addEventListener(ResourceDataClientProxyEventType.Updated,this._onUpdated,!0),window.addEventListener(ResourceDataClientProxyEventType.Removed,this._onRemoved,!0)}_destroy(){this._destroyed||window.removeEventListener(ResourceDataClientProxyEventType.Results,this._onResults,!0),this._destroyed=!0}_onRemoved(event){event.detail.scope===this.scope&&(this._removeListenerRefs.forEach(({clientRef,resolve})=>{clientRef===event.detail.remove._clientRef&&resolve()}),this._removeListenerRefs.splice(this._removeListenerRefs.findIndex(listener=>listener.clientRef===event.detail.remove._clientRef),1))}_onAdded(event){event.detail.scope===this.scope&&(this._addListenerRefs.forEach(({clientRef,resolve})=>{clientRef===event.detail.add._clientRef&&resolve()}),this._addListenerRefs.splice(this._addListenerRefs.findIndex(listener=>listener.clientRef===event.detail.add._clientRef),1))}_onResults(event){event.detail.scope===this.scope&&this._queryListenerRefs.forEach(({clientRefs,listener})=>{let results=event.detail.results.filter(resource2=>resource2.query._clientRef?(isArray_default(resource2.query._clientRef)?resource2.query._clientRef:[resource2.query._clientRef]).some(ref=>clientRefs.includes(ref)):!1);results.length&&listener(results)})}_onUpdated(event){event.detail.scope===this.scope&&(this._updateListenerRefs.forEach(({clientRef,resolve})=>{clientRef===event.detail.update._clientRef&&resolve()}),this._updateListenerRefs.splice(this._updateListenerRefs.findIndex(listener=>listener.clientRef===event.detail.update._clientRef),1))}add(addCall){return new Promise(resolve=>{let{backendComponentId,id,scope}=this,clientRef=createClientRef(id,this._uid++,backendComponentId,scope),add3=__spreadProps(__spreadValues({},addCall),{_clientRef:clientRef}),addListenerRef={clientRef,resolve};this._addListenerRefs.push(addListenerRef);let event=new CustomEvent(ResourceDataClientProxyEventType.Add,{detail:{add:add3,scope,backendComponentId:this.backendComponentId}});window.dispatchEvent(event)})}destroy(){this._destroy()}query(query2,listener){let{backendComponentId,id,scope}=this,clientRef=createClientRef(id,this._uid++,backendComponentId,scope),queries=(Array.isArray(query2)?query2:[query2]).map(q=>__spreadProps(__spreadValues({},q),{_clientRef:clientRef})),listenerRef={clientRefs:queries.map(q=>q._clientRef),listener};this._queryListenerRefs.push(listenerRef);let event=new CustomEvent(ResourceDataClientProxyEventType.Query,{detail:{queries,scope,backendComponentId:this.backendComponentId}});return window.dispatchEvent(event),()=>{this._queryListenerRefs.splice(this._queryListenerRefs.indexOf(listenerRef),1)}}remove(removeCall){return new Promise(resolve=>{let{backendComponentId,id,scope}=this,clientRef=createClientRef(id,this._uid++,backendComponentId,scope),remove3=__spreadProps(__spreadValues({},removeCall),{_clientRef:clientRef}),removeListenerRef={clientRef,resolve};this._removeListenerRefs.push(removeListenerRef);let event=new CustomEvent(ResourceDataClientProxyEventType.Remove,{detail:{remove:remove3,scope,backendComponentId:this.backendComponentId}});window.dispatchEvent(event)})}render(templates,listener){let fields=extractResourcesFromTemplates(templates.map(t=>t.template));this.mode==="edit"&&listener(templates.map(q=>q.template));let queries=[];return fields.some(f=>f.startsWith("agent."))&&queries.push({selector:"Agent",fields:fields.filter(f=>f.startsWith("agent.")).map(f=>f.slice(6))}),fields.some(f=>f.startsWith("asset."))&&queries.push({selector:"Asset",fields:fields.filter(f=>f.startsWith("asset.")).map(f=>f.slice(6))}),queries.length?this.query(queries,results=>{let params=results.reduce((acc,result)=>__spreadProps(__spreadValues({},acc),{[result.query.selector.toLowerCase()]:result.data}),{}),rendered=templates.map(templateQuery=>mustache_default.render(templateQuery.template,params));listener(rendered)}):(listener(templates.map(q=>q.template)),()=>{})}update(updateCall){return new Promise(resolve=>{let{backendComponentId,id,scope}=this,clientRef=createClientRef(id,this._uid++,backendComponentId,scope),update3=__spreadProps(__spreadValues({},updateCall),{_clientRef:clientRef}),updateListenerRef={clientRef,resolve};this._updateListenerRefs.push(updateListenerRef);let event=new CustomEvent(ResourceDataClientProxyEventType.Update,{detail:{update:update3,scope,backendComponentId:this.backendComponentId}});window.dispatchEvent(event)})}};var ResourceDataClientProxyService=(()=>{class ResourceDataClientProxyService2{constructor(){this.window=inject2(WINDOW)}emitAdd(add3,scope){let detail={scope,add:add3},event=new CustomEvent(ResourceDataClientProxyEventType.Added,{detail});this.window.dispatchEvent(event)}emitRemove(remove3,scope){let detail={scope,remove:remove3},event=new CustomEvent(ResourceDataClientProxyEventType.Removed,{detail});this.window.dispatchEvent(event)}emitResults(results,scope){let detail={results,scope},event=new CustomEvent(ResourceDataClientProxyEventType.Results,{detail});this.window.dispatchEvent(event)}emitUpdate(update3,scope){let detail={scope,update:update3},event=new CustomEvent(ResourceDataClientProxyEventType.Updated,{detail});this.window.dispatchEvent(event)}onAdd(scope){return fromEvent(this.window,ResourceDataClientProxyEventType.Add).pipe(filter(event=>scope===event.detail.scope),map(event=>event.detail))}onQuery(scope){return fromEvent(this.window,ResourceDataClientProxyEventType.Query).pipe(filter(event=>scope===event.detail.scope),map(event=>event.detail))}onRemove(scope){return fromEvent(this.window,ResourceDataClientProxyEventType.Remove).pipe(filter(event=>scope===event.detail.scope),map(event=>event.detail))}onUpdate(scope){return fromEvent(this.window,ResourceDataClientProxyEventType.Update).pipe(filter(event=>scope===event.detail.scope),map(event=>event.detail))}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ResourceDataClientProxyService2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:ResourceDataClientProxyService2,factory:ResourceDataClientProxyService2.\u0275fac,providedIn:"root"})}}return ResourceDataClientProxyService2})();var ResourceDataServiceFactory=(()=>{class ResourceDataServiceFactory2{create(config2){return new ResourceDataService(config2)}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ResourceDataServiceFactory2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:ResourceDataServiceFactory2,factory:ResourceDataServiceFactory2.\u0275fac,providedIn:"root"})}}return ResourceDataServiceFactory2})(),ResourceDataService=class{constructor(config2){this.config=config2,this.destroyed=new Subject}add(add3){let provider=this.config.addProviders.find(({selector})=>selector===add3.selector);return provider?provider.add(add3):(console.warn(`Add selector (${add3.selector}) cannot be matched to a resource-data provider.`),of(void 0))}update(update3){let provider=this.config.updateProviders.find(({selector})=>selector===update3.selector);return provider?provider.update(update3):(console.warn(`Update selector (${update3.selector}) cannot be matched to a resource-data provider.`),of(void 0))}remove(remove3){let provider=this.config.removeProviders.find(({selector})=>selector===remove3.selector);return provider?provider.remove(remove3):(console.warn(`Remove selector (${remove3.selector}) cannot be matched to a resource-data provider.`),of(void 0))}fetch(queries){return combineLatest(queries.map(query2=>{let provider=this.config.dataProviders.find(({selector})=>selector===query2.selector);return provider?(typeof provider.dataFeed=="function"?provider.dataFeed(query2):provider.dataFeed).pipe(filter(data=>provider.dataGuard?provider.dataGuard(query2,data):!0),map(data=>({query:query2,data:provider.dataReducer?provider.dataReducer(query2,data):data}))):(console.warn(`Query selector (${query2.selector}) cannot be matched to a resource-data provider.`),of({query:query2,data:null}))})).pipe(takeUntil(this.destroyed))}pledge(queries){return combineLatest(queries.map(query2=>{let provider=this.config.dataProviders.find(({selector})=>selector===query2.selector);return provider?(typeof provider.dataFeed=="function"?provider.dataFeed(query2):provider.dataFeed).pipe(take(1),map(data=>provider.dataPledge?provider.dataPledge(query2,data):!0)):of(!1)})).pipe(map(pledges=>pledges.every(pledge=>pledge)),takeUntil(this.destroyed))}destroy(){this.destroyed.next(),this.destroyed.complete()}};function createResourceAdapter(options){options===void 0&&(options={}),options.selectId===void 0&&(options.selectId=_selectPublicId);let _translate,_trimNamespace=value=>value.replace(/^__TRANSLATION__\./,""),adapter3=createEntityAdapter(options),_setAll=_setListFactory("setAll"),_upsertMany=_setListFactory("upsertMany");return __spreadProps(__spreadValues({},adapter3),{addOne,addMany,mutate,removeOne,removeMany,retranslate,setAll:_setAll,setMany:_setListFactory("setMany"),updateOne,updateMany:updateMany2,upsertOne,upsertMany,useTranslateService(translate){_translate=translate},getInitialState(state2){let initialState3=__spreadValues(__spreadProps(__spreadValues({},adapter3.getInitialState()),{ids:[],allLoaded:!1,allLoadedFields:[],allLoading:!1,allLoadingFields:[]}),(options?.translationPaths||[]).reduce((acc,path)=>__spreadProps(__spreadValues({},acc),{[`${path}TranslationKeys`]:{}}),{}));return state2?__spreadValues(__spreadValues({},initialState3),state2):initialState3},getSelectors(){return __spreadValues(__spreadProps(__spreadValues({},adapter3.getSelectors()),{selectAllLoading(state2){return state2.allLoading},selectAllLoadingFields(state2){return state2.allLoadingFields},selectAllLoaded(state2){return state2.allLoaded},selectAllLoadedFields(state2){return state2.allLoadedFields}}),(options?.translationPaths||[]).reduce((acc,path)=>{let keysProp=`${path}TranslationKeys`;return __spreadProps(__spreadValues({},acc),{[`select${upperFirst_default(keysProp)}`]:state2=>state2[keysProp]})},{}))}});function mutate(id,path,state2){let _resource=state2.entities[id];return{upsertOne:key=>{if(has_default(_resource,path)){let list=get_default(_resource,path);if(Array.isArray(list)&&list.every(entity=>entity.publicId!==key)){let data=[...list,{publicId:key}],changes=_setIn(path,data,_resource);return updateOne({id,changes},state2)}}return state2},removeOne:key=>{if(has_default(_resource,path)){let list=get_default(_resource,path);if(Array.isArray(list)&&list.some(entity=>entity.publicId===key)){let data=list.filter(r=>r.publicId!==key),changes=_setIn(path,data,_resource);return updateOne({id,changes},state2)}}return state2}}}function retranslate(state2){if(options?.translationPaths?.length&&_translate!==void 0){let updates=[];for(let path of options.translationPaths){let keysProp=`${path}TranslationKeys`;if(state2[keysProp])for(let id of Object.keys(state2[keysProp])){let index=updates.findIndex(u=>u.id===id);if(index!==-1){let changes={[path]:_trimNamespace(_translate?.instant(state2[keysProp][id]))};updates[index]=__spreadProps(__spreadValues({},updates[index]),{changes:__spreadValues(__spreadValues({},updates[index].changes),changes)})}else{let changes={[path]:_trimNamespace(_translate?.instant(state2[keysProp][id]))};updates.push({id,changes})}}}if(updates.length)return adapter3.updateMany(updates,state2)}return state2}function addOne(entity,state2){if(options?.subresourcePaths&&(entity=omitSubresources(entity,options.subresourcePaths)),options?.translationPaths?.length&&_translate){let _a=_translateEntity(entity,state2),{translated}=_a,translationKeys=__objRest(_a,["translated"]);return adapter3.addOne(translated,__spreadValues(__spreadValues({},state2),translationKeys))}return adapter3.addOne(entity,state2)}function addMany(entities,state2){return entities.reduce((next,entity)=>addOne(entity,next),state2)}function removeOne(key,state2){return removeMany([key],state2)}function removeMany(keysOrPredicate,state2){let keys=keysOrPredicate instanceof Array?keysOrPredicate:state2.ids.filter(key=>keysOrPredicate(state2.entities[key]));return options?.translationPaths?.length&&_translate?adapter3.removeMany(keys,options?.translationPaths?.reduce((_state,path)=>{let keysProp=`${path}TranslationKeys`;return keys.reduce((s,key)=>key in s[keysProp]?__spreadProps(__spreadValues({},s),{[keysProp]:omit_default(s[keysProp],key)}):s,_state)},state2)):adapter3.removeMany(keys,state2)}function updateOne(update3,state2){if(options?.mergeFn&&(update3.changes=options.mergeFn(state2.entities[update3.id],update3.changes)),options?.subresourcePaths&&(update3.changes=omitSubresources(update3.changes,options.subresourcePaths)),options?.translationPaths?.length&&_translate){let hasId=!!_selectPublicId(update3.changes),entity=hasId?update3.changes:__spreadProps(__spreadValues({},update3.changes),{publicId:update3.id}),_a=_translateEntity(entity,state2),{translated}=_a,translationKeys=__objRest(_a,["translated"]);return adapter3.updateOne(__spreadProps(__spreadValues({},update3),{changes:hasId?translated:omit_default(translated,["publicId"])}),__spreadValues(__spreadValues({},state2),translationKeys))}return adapter3.updateOne(update3,state2)}function updateMany2(updates,state2){return updates.reduce((next,update3)=>updateOne(update3,next),state2)}function upsertOne(entity,state2){return options?.selectId&&state2.entities[options.selectId(entity)]!==void 0?updateOne({id:options.selectId(entity),changes:entity},state2):addOne(entity,state2)}function upsertMany(entities,state2){return state2.ids.length?_upsertMany(entities,state2):_setAll(entities,state2)}function _selectPublicId(a){return a.publicId}function _setListFactory(method){return function(entities,state2){let list=entities;if(options?.subresourcePaths){let paths=options.subresourcePaths;list=entities.map(entity=>omitSubresources(entity,paths))}if(options?.translationPaths?.length&&_translate){let translatedEntities=[],translatedState=state2;return list.forEach(entity=>{let _a=_translateEntity(entity,translatedState),{translated}=_a,translationKeys=__objRest(_a,["translated"]);translatedEntities.push(translated),translatedState=__spreadValues(__spreadValues({},translatedState),translationKeys)}),adapter3[method](translatedEntities,translatedState)}return adapter3[method](list,state2)}}function _translateEntity(entity,state2){let publicId=_selectPublicId(entity);return(options?.translationPaths??[]).reduce((acc,path)=>{let keysProp=`${path}TranslationKeys`;if(has_default(entity,path)){if(entity[path]?.startsWith("__TRANSLATION__."))return __spreadProps(__spreadValues({},acc),{translated:__spreadProps(__spreadValues({},acc.translated),{[path]:_trimNamespace(_translate?.instant(acc.translated[path]))}),[keysProp]:__spreadProps(__spreadValues({},state2[keysProp]),{[publicId]:acc.translated[path]})});if(publicId in state2[keysProp])return __spreadProps(__spreadValues({},acc),{[keysProp]:omit_default(state2[keysProp],publicId)})}return acc},{translated:entity})}}var _setIn=curry_default((path,value,obj)=>setWith_default(clone_default(obj),path,value,clone_default));var loadHost=createAction("[App] Load Host Branding"),loadHostFailure=createAction("[IxApi] Load Host Branding Failure",props()),loadHostSuccess=createAction("[IxApi] Load Host Branding Success",props());var adapter2=createResourceAdapter({sortComparer:sortByNameAndPublicIdComparer,subresourcePaths:SUBRESOURCE_PATHS,mergeFn:updateResource}),initialState2=adapter2.getInitialState({allLoadedForIntents:[],allLoadingForIntents:[],persistentIds:[]}),reducer2=createReducer(initialState2,on(addSuccess,didAdd,(state2,{data})=>adapter2.upsertOne(data,state2)),on(reset,state2=>{let persistentTemplates=state2.persistentIds.map(id=>state2.entities[id]).filter(template=>!!template),persistentIds=persistentTemplates.map(template=>template.publicId);return adapter2.setAll(persistentTemplates,__spreadProps(__spreadValues({},initialState2),{persistentIds}))}),on(loadAll,state2=>__spreadProps(__spreadValues({},state2),{allLoading:!0})),on(loadAllFailure,state2=>__spreadProps(__spreadValues({},state2),{allLoading:!1})),on(loadAllSuccess,(state2,{data})=>adapter2.upsertMany(data,__spreadProps(__spreadValues({},state2),{allLoaded:!0,allLoading:!1}))),on(loadAllForIntent,(state2,{intent})=>__spreadProps(__spreadValues({},state2),{allLoadingForIntents:[...state2.allLoadingForIntents,intent]})),on(loadAllForIntentFailure,(state2,{intent})=>__spreadProps(__spreadValues({},state2),{allLoadingForIntents:state2.allLoadingForIntents.filter(i=>i!==intent)})),on(loadAllForIntentSuccess,(state2,{intent,data})=>adapter2.upsertMany(data,__spreadProps(__spreadValues({},state2),{allLoadingForIntents:state2.allLoadingForIntents.filter(i=>i!==intent),allLoadedForIntents:[...state2.allLoadedForIntents,intent]}))),on(updateSuccess,didUpdate,(state2,{data,publicId})=>adapter2.updateOne({id:publicId,changes:data},state2)),on(loadHostSuccess,(state2,{data})=>{let template=data.landingPageComponentTemplate;if(template){let persistentIds=uniq_default([...state2.persistentIds,template.publicId]);return adapter2.upsertOne(template,__spreadProps(__spreadValues({},state2),{persistentIds}))}return state2})),feature2=createFeature({name:FEATURE_NAME2,reducer:reducer2});var{selectAllLoadingForIntents,selectAllLoadedForIntents}=feature2,selectAll=createResourceSelectorFactory(createSelector(feature2.selectPageComponentTemplateState,adapter2.getSelectors().selectAll),SUBRESOURCE_PATH_TO_FEATURE_NAME)(FIELDS),selectEntity2=publicId=>createResourceSelectorFactory(createSelector(feature2.selectEntities,entities=>publicId?entities[publicId]:void 0),SUBRESOURCE_PATH_TO_FEATURE_NAME)(FIELDS),selectAllLoadingForIntent=intent=>createSelector(selectAllLoadingForIntents,loading=>loading.includes(intent)),selectAllLoadedForIntent=intent=>createSelector(selectAllLoadedForIntents,loaded=>loaded.includes(intent));var{selectAllLoading,selectAllLoaded,selectAllLoadedFields,selectEntities:selectEntities2}=feature2;var PageComponentTemplateEffects=(()=>{class PageComponentTemplateEffects2{constructor(){this.actions$=inject2(Actions),this.service=inject2(PageComponentTemplateService),this.store=inject2(Store),this.add$=createEffect(()=>this.actions$.pipe(ofType(add),mergeMap(({data})=>this.service.add(data).pipe(map(response=>addSuccess({publicId:response.data.publicId,data:__spreadValues(__spreadValues({},data),response.data)})),catchError(errorResponse=>of(addFailure({errors:errorResponse.error?.data??[]}))))))),this.ensureAll$=createEffect(()=>this.actions$.pipe(ofType(ensureAll),mergeMap(()=>combineLatest([this.store.select(selectAllLoading),this.store.select(selectAllLoaded)]).pipe(take(1),mergeMap(([loading,loaded])=>!loading&&!loaded?of(loadAll()):EMPTY))))),this.ensureAllForIntent$=createEffect(()=>this.actions$.pipe(ofType(ensureAllForIntent),mergeMap(({intent})=>combineLatest([this.store.select(selectAllLoadingForIntent(intent)),this.store.select(selectAllLoadedForIntent(intent))]).pipe(take(1),mergeMap(([loading,loaded])=>!loading&&!loaded?of(loadAllForIntent({intent})):EMPTY))))),this.loadAll$=createEffect(()=>this.actions$.pipe(ofType(loadAll),switchMap(()=>this.service.getAll(FIELDS).pipe(map(({data})=>loadAllSuccess({data})),catchError(errorResponse=>of(loadAllFailure({errors:errorResponse.error?.data??[]}))))))),this.loadAllForIntent$=createEffect(()=>this.actions$.pipe(ofType(loadAllForIntent),switchMap(({intent})=>this.service.getAllForIntent(intent,FIELDS).pipe(map(({data})=>loadAllForIntentSuccess({intent,data})),catchError(errorResponse=>of(loadAllForIntentFailure({intent,errors:errorResponse.error?.data??[]}))))))),this.update$=createEffect(()=>this.actions$.pipe(ofType(update),mergeMap(({data,publicId})=>this.service.updateByPublicId(publicId,data).pipe(map(()=>updateSuccess({data:__spreadProps(__spreadValues({},data),{publicId}),publicId})),catchError(errorResponse=>of(updateFailure({errors:errorResponse.error?.data??[]})))))))}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PageComponentTemplateEffects2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:PageComponentTemplateEffects2,factory:PageComponentTemplateEffects2.\u0275fac,providedIn:"root"})}}return PageComponentTemplateEffects2})();var environment={appName:"Simulator",name:"production",version:"cdk-1.21.0-next.2",build:"203177-2120957",production:!0};var PageComponentTemplatePrependBaseUrlInterceptor=(()=>{class PageComponentTemplatePrependBaseUrlInterceptor2{constructor(){this.document=inject2(DOCUMENT);let options=inject2(IXAPI_OPTIONS);this.options=__spreadValues(__spreadValues({},defaultOptions),options),this.baseUrl=this.getTemplateBaseUrl()}getTemplateBaseUrl(){let baseUrl=this.document.baseURI.slice(this.document.location.origin.length),appUrlPath=`/${kebabCase_default(environment.appName)}/`;return baseUrl.endsWith(appUrlPath)&&(baseUrl=baseUrl.slice(0,1-appUrlPath.length)),baseUrl}intercept(request,delegate){if(request.method==="GET"&&request.url===`${this.options.baseUrl}/page-component-templates`&&this.options.baseUrl){let fields=request.params.get("fields");if(fields?.includes("url")||fields?.includes("*"))return delegate.handle(request).pipe(map(response=>{if(response instanceof HttpResponse){let data=response.body.data.map(template=>template.url?.startsWith("/")&&this.baseUrl.endsWith("/")?__spreadProps(__spreadValues({},template),{url:this.baseUrl==="/"?template.url:`${this.baseUrl.slice(0,-1)}${template.url}`}):template),body=__spreadProps(__spreadValues({},response.body),{data});return response.clone({body})}return response}))}return delegate.handle(request)}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PageComponentTemplatePrependBaseUrlInterceptor2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:PageComponentTemplatePrependBaseUrlInterceptor2,factory:PageComponentTemplatePrependBaseUrlInterceptor2.\u0275fac})}}return PageComponentTemplatePrependBaseUrlInterceptor2})();var PageComponentTemplateModule=(()=>{class PageComponentTemplateModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PageComponentTemplateModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:PageComponentTemplateModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({providers:[{provide:HTTP_INTERCEPTORS,useClass:PageComponentTemplatePrependBaseUrlInterceptor,multi:!0}],imports:[IxApiModule,StoreModule.forFeature(feature2),EffectsModule.forFeature([PageComponentTemplateEffects])]})}}return PageComponentTemplateModule2})();var ComponentSettingsFacade=(()=>{class ComponentSettingsFacade2{constructor(){this.document=inject2(DOCUMENT),this.store=inject2(Store),this.http=inject2(HttpClient)}setTemplateUrl(url){this.http.get(mapTemplateUrlToManifestUrl(url)).subscribe(manifest=>{let publicId=mapTemplateUrlToPublicId(url),component=__spreadProps(__spreadValues({},PAGE_COMPONENT),{template:__spreadProps(__spreadValues({},PAGE_COMPONENT.template),{publicId})}),name=manifest.name||"";sessionStorage.setItem("pct-url",url),this.store.dispatch(loadAllSuccess({data:[{name,url,publicId}]})),this.store.dispatch(addSuccess2({publicId:component.publicId,data:__spreadProps(__spreadValues({},component),{inputs:mapPageComponentTemplateManifestToDefaultInputs(manifest)})}))})}unsetTemplateUrl(){let url=sessionStorage.getItem("pct-url");url&&(sessionStorage.removeItem("pct-url"),this.store.dispatch(reset()),this.store.dispatch(remove2({publicId:"component"})),this.document.getElementById(`pct-${mapTemplateUrlToPublicId(url)}`)?.remove())}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ComponentSettingsFacade2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:ComponentSettingsFacade2,factory:ComponentSettingsFacade2.\u0275fac,providedIn:"root"})}}return ComponentSettingsFacade2})();function PageComponentSettingsComponent_Conditional_10_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-error"),\u0275\u0275text(1,"Could not find a UI Component definition"),\u0275\u0275elementEnd())}function PageComponentSettingsComponent_Conditional_11_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-error"),\u0275\u0275text(1,"Invalid manifest file"),\u0275\u0275elementEnd())}function PageComponentSettingsComponent_Conditional_12_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-error"),\u0275\u0275text(1,"Could not find a manifest file"),\u0275\u0275elementEnd())}function PageComponentSettingsComponent_Conditional_13_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-error"),\u0275\u0275text(1,"Request failed"),\u0275\u0275elementEnd())}function PageComponentSettingsComponent_Conditional_14_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-error"),\u0275\u0275text(1,"Invalid URL"),\u0275\u0275elementEnd())}var PageComponentSettingsComponent=(()=>{class PageComponentSettingsComponent2{constructor(){this.componentForm=new FormGroup({url:new FormControl(sessionStorage.getItem("pct-url"),Validators.required,UrlValidator(inject2(ComponentTemplateValidatorService)))}),this.destroy=inject2(DestroyRef),this.facade=inject2(ComponentSettingsFacade)}ngOnInit(){this.componentForm.statusChanges.pipe(takeUntilDestroyed(this.destroy)).subscribe(status=>{status==="VALID"&&this.componentForm.controls.url.value?this.facade.setTemplateUrl(this.componentForm.controls.url.value):status==="INVALID"&&this.facade.unsetTemplateUrl()})}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||PageComponentSettingsComponent2)}}static{this.\u0275cmp=\u0275\u0275defineComponent({type:PageComponentSettingsComponent2,selectors:[["ix-page-component-settings"]],decls:17,vars:8,consts:[["autocomplete","off",3,"formGroup"],["appearance","fill"],["matInput","","formControlName","url","data-testid","component-template-url",3,"required"],["matIconSuffix","",3,"hidden"]],template:function(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"section")(1,"h2"),\u0275\u0275text(2,"UI Component"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(3,"form",0)(4,"mat-form-field",1)(5,"mat-label"),\u0275\u0275text(6,"URL"),\u0275\u0275elementEnd(),\u0275\u0275element(7,"input",2),\u0275\u0275elementStart(8,"mat-icon",3),\u0275\u0275text(9,"check"),\u0275\u0275elementEnd(),\u0275\u0275conditionalCreate(10,PageComponentSettingsComponent_Conditional_10_Template,2,0,"mat-error"),\u0275\u0275conditionalCreate(11,PageComponentSettingsComponent_Conditional_11_Template,2,0,"mat-error"),\u0275\u0275conditionalCreate(12,PageComponentSettingsComponent_Conditional_12_Template,2,0,"mat-error"),\u0275\u0275conditionalCreate(13,PageComponentSettingsComponent_Conditional_13_Template,2,0,"mat-error"),\u0275\u0275conditionalCreate(14,PageComponentSettingsComponent_Conditional_14_Template,2,0,"mat-error"),\u0275\u0275elementStart(15,"mat-hint"),\u0275\u0275text(16,"Link to a JavaScript file that defines a UI Component"),\u0275\u0275elementEnd()()()()),rf&2&&(\u0275\u0275advance(3),\u0275\u0275property("formGroup",ctx.componentForm),\u0275\u0275advance(4),\u0275\u0275property("required",!0),\u0275\u0275advance(),\u0275\u0275property("hidden",ctx.componentForm.controls.url.invalid),\u0275\u0275advance(2),\u0275\u0275conditional(ctx.componentForm.controls.url.hasError("customElementDefMissing")?10:-1),\u0275\u0275advance(),\u0275\u0275conditional(ctx.componentForm.controls.url.hasError("manifestInvalid")?11:-1),\u0275\u0275advance(),\u0275\u0275conditional(ctx.componentForm.controls.url.hasError("manifestMissing")?12:-1),\u0275\u0275advance(),\u0275\u0275conditional(ctx.componentForm.controls.url.hasError("reqFailed")?13:-1),\u0275\u0275advance(),\u0275\u0275conditional(ctx.componentForm.controls.url.hasError("urlInvalid")?14:-1))},dependencies:[FlexModule,MatIconModule,MatIcon,MatFormFieldModule,MatFormField,MatLabel,MatHint,MatError,MatSuffix,MatInputModule,MatInput,MatOptionModule,MatRadioModule,MatSelectModule,MatButtonModule,ReactiveFormsModule,\u0275NgNoValidate,DefaultValueAccessor,NgControlStatus,NgControlStatusGroup,RequiredValidator,FormGroupDirective,FormControlName],styles:["[_nghost-%COMP%] section[_ngcontent-%COMP%]{margin-bottom:24px}[_nghost-%COMP%] section[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{font-family:var(--font-family);font-size:18px;font-weight:400;line-height:24px;margin:56px 0 10px}[_nghost-%COMP%] .mat-mdc-form-field[_ngcontent-%COMP%]{width:100%}"]})}}return PageComponentSettingsComponent2})();var ComponentSettingsComponent=(()=>{class ComponentSettingsComponent2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ComponentSettingsComponent2)}}static{this.\u0275cmp=\u0275\u0275defineComponent({type:ComponentSettingsComponent2,selectors:[["ix-component-settings"]],decls:2,vars:0,template:function(rf,ctx){rf&1&&\u0275\u0275element(0,"ix-page-component-settings")(1,"ix-backend-component-settings")},dependencies:[BackendComponentSettingsComponent,PageComponentSettingsComponent],encapsulation:2})}}return ComponentSettingsComponent2})();function deepCloneNode(node){let clone=node.cloneNode(!0),descendantsWithId=clone.querySelectorAll("[id]"),nodeName=node.nodeName.toLowerCase();clone.removeAttribute("id");for(let i=0;i<descendantsWithId.length;i++)descendantsWithId[i].removeAttribute("id");return nodeName==="canvas"?transferCanvasData(node,clone):(nodeName==="input"||nodeName==="select"||nodeName==="textarea")&&transferInputData(node,clone),transferData("canvas",node,clone,transferCanvasData),transferData("input, textarea, select",node,clone,transferInputData),clone}function transferData(selector,node,clone,callback){let descendantElements=node.querySelectorAll(selector);if(descendantElements.length){let cloneElements=clone.querySelectorAll(selector);for(let i=0;i<descendantElements.length;i++)callback(descendantElements[i],cloneElements[i])}}var cloneUniqueId=0;function transferInputData(source,clone){clone.type!=="file"&&(clone.value=source.value),clone.type==="radio"&&clone.name&&(clone.name=`mat-clone-${clone.name}-${cloneUniqueId++}`)}function transferCanvasData(source,clone){let context2=clone.getContext("2d");if(context2)try{context2.drawImage(source,0,0)}catch{}}function getMutableClientRect(element){let rect=element.getBoundingClientRect();return{top:rect.top,right:rect.right,bottom:rect.bottom,left:rect.left,width:rect.width,height:rect.height,x:rect.x,y:rect.y}}function isInsideClientRect(clientRect,x,y){let{top,bottom,left,right}=clientRect;return y>=top&&y<=bottom&&x>=left&&x<=right}function isOverflowingParent(parentRect,childRect){let isLeftOverflowing=childRect.left<parentRect.left,isRightOverflowing=childRect.left+childRect.width>parentRect.right,isTopOverflowing=childRect.top<parentRect.top,isBottomOverflowing=childRect.top+childRect.height>parentRect.bottom;return isLeftOverflowing||isRightOverflowing||isTopOverflowing||isBottomOverflowing}function adjustDomRect(domRect,top,left){domRect.top+=top,domRect.bottom=domRect.top+domRect.height,domRect.left+=left,domRect.right=domRect.left+domRect.width}function isPointerNearDomRect(rect,threshold,pointerX,pointerY){let{top,right,bottom,left,width,height}=rect,xThreshold=width*threshold,yThreshold=height*threshold;return pointerY>top-yThreshold&&pointerY<bottom+yThreshold&&pointerX>left-xThreshold&&pointerX<right+xThreshold}var ParentPositionTracker=class{_document;positions=new Map;constructor(_document2){this._document=_document2}clear(){this.positions.clear()}cache(elements){this.clear(),this.positions.set(this._document,{scrollPosition:this.getViewportScrollPosition()}),elements.forEach(element=>{this.positions.set(element,{scrollPosition:{top:element.scrollTop,left:element.scrollLeft},clientRect:getMutableClientRect(element)})})}handleScroll(event){let target=_getEventTarget(event),cachedPosition=this.positions.get(target);if(!cachedPosition)return null;let scrollPosition=cachedPosition.scrollPosition,newTop,newLeft;if(target===this._document){let viewportScrollPosition=this.getViewportScrollPosition();newTop=viewportScrollPosition.top,newLeft=viewportScrollPosition.left}else newTop=target.scrollTop,newLeft=target.scrollLeft;let topDifference=scrollPosition.top-newTop,leftDifference=scrollPosition.left-newLeft;return this.positions.forEach((position,node)=>{position.clientRect&&target!==node&&target.contains(node)&&adjustDomRect(position.clientRect,topDifference,leftDifference)}),scrollPosition.top=newTop,scrollPosition.left=newLeft,{top:topDifference,left:leftDifference}}getViewportScrollPosition(){return{top:window.scrollY,left:window.scrollX}}};function getRootNode(viewRef,_document2){let rootNodes=viewRef.rootNodes;if(rootNodes.length===1&&rootNodes[0].nodeType===_document2.ELEMENT_NODE)return rootNodes[0];let wrapper=_document2.createElement("div");return rootNodes.forEach(node=>wrapper.appendChild(node)),wrapper}function extendStyles2(dest,source,importantProperties2){for(let key in source)if(source.hasOwnProperty(key)){let value=source[key];value?dest.setProperty(key,value,importantProperties2?.has(key)?"important":""):dest.removeProperty(key)}return dest}function toggleNativeDragInteractions(element,enable){let userSelect=enable?"":"none";extendStyles2(element.style,{"touch-action":enable?"":"none","-webkit-user-drag":enable?"":"none","-webkit-tap-highlight-color":enable?"":"transparent","user-select":userSelect,"-ms-user-select":userSelect,"-webkit-user-select":userSelect,"-moz-user-select":userSelect})}function toggleVisibility(element,enable,importantProperties2){extendStyles2(element.style,{position:enable?"":"fixed",top:enable?"":"0",opacity:enable?"":"0",left:enable?"":"-999em"},importantProperties2)}function combineTransforms(transform,initialTransform){return initialTransform&&initialTransform!="none"?transform+" "+initialTransform:transform}function matchElementSize(target,sourceRect){target.style.width=`${sourceRect.width}px`,target.style.height=`${sourceRect.height}px`,target.style.transform=getTransform(sourceRect.left,sourceRect.top)}function getTransform(x,y){return`translate3d(${Math.round(x)}px, ${Math.round(y)}px, 0)`}function parseCssTimeUnitsToMs(value){let multiplier=value.toLowerCase().indexOf("ms")>-1?1:1e3;return parseFloat(value)*multiplier}function getTransformTransitionDurationInMs(element){let computedStyle=getComputedStyle(element),transitionedProperties=parseCssPropertyValue(computedStyle,"transition-property"),property=transitionedProperties.find(prop=>prop==="transform"||prop==="all");if(!property)return 0;let propertyIndex=transitionedProperties.indexOf(property),rawDurations=parseCssPropertyValue(computedStyle,"transition-duration"),rawDelays=parseCssPropertyValue(computedStyle,"transition-delay");return parseCssTimeUnitsToMs(rawDurations[propertyIndex])+parseCssTimeUnitsToMs(rawDelays[propertyIndex])}function parseCssPropertyValue(computedStyle,name){return computedStyle.getPropertyValue(name).split(",").map(part=>part.trim())}var importantProperties=new Set(["position"]),PreviewRef=class{_document;_rootElement;_direction;_initialDomRect;_previewTemplate;_previewClass;_pickupPositionOnPage;_initialTransform;_zIndex;_renderer;_previewEmbeddedView;_preview;get element(){return this._preview}constructor(_document2,_rootElement,_direction,_initialDomRect,_previewTemplate,_previewClass,_pickupPositionOnPage,_initialTransform,_zIndex,_renderer){this._document=_document2,this._rootElement=_rootElement,this._direction=_direction,this._initialDomRect=_initialDomRect,this._previewTemplate=_previewTemplate,this._previewClass=_previewClass,this._pickupPositionOnPage=_pickupPositionOnPage,this._initialTransform=_initialTransform,this._zIndex=_zIndex,this._renderer=_renderer}attach(parent){this._preview=this._createPreview(),parent.appendChild(this._preview),supportsPopover(this._preview)&&this._preview.showPopover()}destroy(){this._preview.remove(),this._previewEmbeddedView?.destroy(),this._preview=this._previewEmbeddedView=null}setTransform(value){this._preview.style.transform=value}getBoundingClientRect(){return this._preview.getBoundingClientRect()}addClass(className){this._preview.classList.add(className)}getTransitionDuration(){return getTransformTransitionDurationInMs(this._preview)}addEventListener(name,handler){return this._renderer.listen(this._preview,name,handler)}_createPreview(){let previewConfig=this._previewTemplate,previewClass=this._previewClass,previewTemplate=previewConfig?previewConfig.template:null,preview;if(previewTemplate&&previewConfig){let rootRect=previewConfig.matchSize?this._initialDomRect:null,viewRef=previewConfig.viewContainer.createEmbeddedView(previewTemplate,previewConfig.context);viewRef.detectChanges(),preview=getRootNode(viewRef,this._document),this._previewEmbeddedView=viewRef,previewConfig.matchSize?matchElementSize(preview,rootRect):preview.style.transform=getTransform(this._pickupPositionOnPage.x,this._pickupPositionOnPage.y)}else preview=deepCloneNode(this._rootElement),matchElementSize(preview,this._initialDomRect),this._initialTransform&&(preview.style.transform=this._initialTransform);return extendStyles2(preview.style,{"pointer-events":"none",margin:supportsPopover(preview)?"0 auto 0 0":"0",position:"fixed",top:"0",left:"0","z-index":this._zIndex+""},importantProperties),toggleNativeDragInteractions(preview,!1),preview.classList.add("cdk-drag-preview"),preview.setAttribute("popover","manual"),preview.setAttribute("dir",this._direction),previewClass&&(Array.isArray(previewClass)?previewClass.forEach(className=>preview.classList.add(className)):preview.classList.add(previewClass)),preview}};function supportsPopover(element){return"showPopover"in element}var passiveEventListenerOptions={passive:!0},activeEventListenerOptions={passive:!1},activeCapturingEventOptions$1={passive:!1,capture:!0},MOUSE_EVENT_IGNORE_TIME=800,PLACEHOLDER_CLASS="cdk-drag-placeholder",dragImportantProperties=new Set(["position"]),DragRef=class{_config;_document;_ngZone;_viewportRuler;_dragDropRegistry;_renderer;_rootElementCleanups;_cleanupShadowRootSelectStart;_preview;_previewContainer;_placeholderRef;_placeholder;_pickupPositionInElement;_pickupPositionOnPage;_marker;_anchor=null;_passiveTransform={x:0,y:0};_activeTransform={x:0,y:0};_initialTransform;_hasStartedDragging=signal(!1);_hasMoved;_initialContainer;_initialIndex;_parentPositions;_moveEvents=new Subject;_pointerDirectionDelta;_pointerPositionAtLastDirectionChange;_lastKnownPointerPosition;_rootElement;_ownerSVGElement;_rootElementTapHighlight;_pointerMoveSubscription=Subscription.EMPTY;_pointerUpSubscription=Subscription.EMPTY;_scrollSubscription=Subscription.EMPTY;_resizeSubscription=Subscription.EMPTY;_lastTouchEventTime;_dragStartTime;_boundaryElement=null;_nativeInteractionsEnabled=!0;_initialDomRect;_previewRect;_boundaryRect;_previewTemplate;_placeholderTemplate;_handles=[];_disabledHandles=new Set;_dropContainer;_direction="ltr";_parentDragRef;_cachedShadowRoot;lockAxis;dragStartDelay=0;previewClass;scale=1;get disabled(){return this._disabled||!!(this._dropContainer&&this._dropContainer.disabled)}set disabled(value){value!==this._disabled&&(this._disabled=value,this._toggleNativeDragInteractions(),this._handles.forEach(handle=>toggleNativeDragInteractions(handle,value)))}_disabled=!1;beforeStarted=new Subject;started=new Subject;released=new Subject;ended=new Subject;entered=new Subject;exited=new Subject;dropped=new Subject;moved=this._moveEvents;data;constrainPosition;constructor(element,_config,_document2,_ngZone,_viewportRuler,_dragDropRegistry,_renderer){this._config=_config,this._document=_document2,this._ngZone=_ngZone,this._viewportRuler=_viewportRuler,this._dragDropRegistry=_dragDropRegistry,this._renderer=_renderer,this.withRootElement(element).withParent(_config.parentDragRef||null),this._parentPositions=new ParentPositionTracker(_document2),_dragDropRegistry.registerDragItem(this)}getPlaceholderElement(){return this._placeholder}getRootElement(){return this._rootElement}getVisibleElement(){return this.isDragging()?this.getPlaceholderElement():this.getRootElement()}withHandles(handles){this._handles=handles.map(handle=>coerceElement(handle)),this._handles.forEach(handle=>toggleNativeDragInteractions(handle,this.disabled)),this._toggleNativeDragInteractions();let disabledHandles=new Set;return this._disabledHandles.forEach(handle=>{this._handles.indexOf(handle)>-1&&disabledHandles.add(handle)}),this._disabledHandles=disabledHandles,this}withPreviewTemplate(template){return this._previewTemplate=template,this}withPlaceholderTemplate(template){return this._placeholderTemplate=template,this}withRootElement(rootElement){let element=coerceElement(rootElement);if(element!==this._rootElement){this._removeRootElementListeners();let renderer=this._renderer;this._rootElementCleanups=this._ngZone.runOutsideAngular(()=>[renderer.listen(element,"mousedown",this._pointerDown,activeEventListenerOptions),renderer.listen(element,"touchstart",this._pointerDown,passiveEventListenerOptions),renderer.listen(element,"dragstart",this._nativeDragStart,activeEventListenerOptions)]),this._initialTransform=void 0,this._rootElement=element}return typeof SVGElement<"u"&&this._rootElement instanceof SVGElement&&(this._ownerSVGElement=this._rootElement.ownerSVGElement),this}withBoundaryElement(boundaryElement){return this._boundaryElement=boundaryElement?coerceElement(boundaryElement):null,this._resizeSubscription.unsubscribe(),boundaryElement&&(this._resizeSubscription=this._viewportRuler.change(10).subscribe(()=>this._containInsideBoundaryOnResize())),this}withParent(parent){return this._parentDragRef=parent,this}dispose(){this._removeRootElementListeners(),this.isDragging()&&this._rootElement?.remove(),this._marker?.remove(),this._destroyPreview(),this._destroyPlaceholder(),this._dragDropRegistry.removeDragItem(this),this._removeListeners(),this.beforeStarted.complete(),this.started.complete(),this.released.complete(),this.ended.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this._moveEvents.complete(),this._handles=[],this._disabledHandles.clear(),this._dropContainer=void 0,this._resizeSubscription.unsubscribe(),this._parentPositions.clear(),this._boundaryElement=this._rootElement=this._ownerSVGElement=this._placeholderTemplate=this._previewTemplate=this._marker=this._parentDragRef=null}isDragging(){return this._hasStartedDragging()&&this._dragDropRegistry.isDragging(this)}reset(){this._rootElement.style.transform=this._initialTransform||"",this._activeTransform={x:0,y:0},this._passiveTransform={x:0,y:0}}resetToBoundary(){if(this._boundaryElement&&this._rootElement&&isOverflowingParent(this._boundaryElement.getBoundingClientRect(),this._rootElement.getBoundingClientRect())){let parentRect=this._boundaryElement.getBoundingClientRect(),childRect=this._rootElement.getBoundingClientRect(),offsetX=0,offsetY=0;childRect.left<parentRect.left?offsetX=parentRect.left-childRect.left:childRect.right>parentRect.right&&(offsetX=parentRect.right-childRect.right),childRect.top<parentRect.top?offsetY=parentRect.top-childRect.top:childRect.bottom>parentRect.bottom&&(offsetY=parentRect.bottom-childRect.bottom);let currentLeft=this._activeTransform.x,currentTop=this._activeTransform.y,x=currentLeft+offsetX,y=currentTop+offsetY;this._rootElement.style.transform=getTransform(x,y),this._activeTransform={x,y},this._passiveTransform={x,y}}}disableHandle(handle){!this._disabledHandles.has(handle)&&this._handles.indexOf(handle)>-1&&(this._disabledHandles.add(handle),toggleNativeDragInteractions(handle,!0))}enableHandle(handle){this._disabledHandles.has(handle)&&(this._disabledHandles.delete(handle),toggleNativeDragInteractions(handle,this.disabled))}withDirection(direction){return this._direction=direction,this}_withDropContainer(container){this._dropContainer=container}getFreeDragPosition(){let position=this.isDragging()?this._activeTransform:this._passiveTransform;return{x:position.x,y:position.y}}setFreeDragPosition(value){return this._activeTransform={x:0,y:0},this._passiveTransform.x=value.x,this._passiveTransform.y=value.y,this._dropContainer||this._applyRootElementTransform(value.x,value.y),this}withPreviewContainer(value){return this._previewContainer=value,this}_sortFromLastPointerPosition(){let position=this._lastKnownPointerPosition;position&&this._dropContainer&&this._updateActiveDropContainer(this._getConstrainedPointerPosition(position),position)}_removeListeners(){this._pointerMoveSubscription.unsubscribe(),this._pointerUpSubscription.unsubscribe(),this._scrollSubscription.unsubscribe(),this._cleanupShadowRootSelectStart?.(),this._cleanupShadowRootSelectStart=void 0}_destroyPreview(){this._preview?.destroy(),this._preview=null}_destroyPlaceholder(){this._anchor?.remove(),this._placeholder?.remove(),this._placeholderRef?.destroy(),this._placeholder=this._anchor=this._placeholderRef=null}_pointerDown=event=>{if(this.beforeStarted.next(),this._handles.length){let targetHandle=this._getTargetHandle(event);targetHandle&&!this._disabledHandles.has(targetHandle)&&!this.disabled&&this._initializeDragSequence(targetHandle,event)}else this.disabled||this._initializeDragSequence(this._rootElement,event)};_pointerMove=event=>{let pointerPosition=this._getPointerPositionOnPage(event);if(!this._hasStartedDragging()){let distanceX=Math.abs(pointerPosition.x-this._pickupPositionOnPage.x),distanceY=Math.abs(pointerPosition.y-this._pickupPositionOnPage.y);if(distanceX+distanceY>=this._config.dragStartThreshold){let isDelayElapsed=Date.now()>=this._dragStartTime+this._getDragStartDelay(event),container=this._dropContainer;if(!isDelayElapsed){this._endDragSequence(event);return}(!container||!container.isDragging()&&!container.isReceiving())&&(event.cancelable&&event.preventDefault(),this._hasStartedDragging.set(!0),this._ngZone.run(()=>this._startDragSequence(event)))}return}event.cancelable&&event.preventDefault();let constrainedPointerPosition=this._getConstrainedPointerPosition(pointerPosition);if(this._hasMoved=!0,this._lastKnownPointerPosition=pointerPosition,this._updatePointerDirectionDelta(constrainedPointerPosition),this._dropContainer)this._updateActiveDropContainer(constrainedPointerPosition,pointerPosition);else{let offset=this.constrainPosition?this._initialDomRect:this._pickupPositionOnPage,activeTransform=this._activeTransform;activeTransform.x=constrainedPointerPosition.x-offset.x+this._passiveTransform.x,activeTransform.y=constrainedPointerPosition.y-offset.y+this._passiveTransform.y,this._applyRootElementTransform(activeTransform.x,activeTransform.y)}this._moveEvents.observers.length&&this._ngZone.run(()=>{this._moveEvents.next({source:this,pointerPosition:constrainedPointerPosition,event,distance:this._getDragDistance(constrainedPointerPosition),delta:this._pointerDirectionDelta})})};_pointerUp=event=>{this._endDragSequence(event)};_endDragSequence(event){if(this._dragDropRegistry.isDragging(this)&&(this._removeListeners(),this._dragDropRegistry.stopDragging(this),this._toggleNativeDragInteractions(),this._handles&&(this._rootElement.style.webkitTapHighlightColor=this._rootElementTapHighlight),!!this._hasStartedDragging()))if(this.released.next({source:this,event}),this._dropContainer)this._dropContainer._stopScrolling(),this._animatePreviewToPlaceholder().then(()=>{this._cleanupDragArtifacts(event),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)});else{this._passiveTransform.x=this._activeTransform.x;let pointerPosition=this._getPointerPositionOnPage(event);this._passiveTransform.y=this._activeTransform.y,this._ngZone.run(()=>{this.ended.next({source:this,distance:this._getDragDistance(pointerPosition),dropPoint:pointerPosition,event})}),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)}}_startDragSequence(event){isTouchEvent(event)&&(this._lastTouchEventTime=Date.now()),this._toggleNativeDragInteractions();let shadowRoot=this._getShadowRoot(),dropContainer=this._dropContainer;if(shadowRoot&&this._ngZone.runOutsideAngular(()=>{this._cleanupShadowRootSelectStart=this._renderer.listen(shadowRoot,"selectstart",shadowDomSelectStart,activeCapturingEventOptions$1)}),dropContainer){let element=this._rootElement,parent=element.parentNode,placeholder=this._placeholder=this._createPlaceholderElement(),marker=this._marker=this._marker||this._document.createComment("");parent.insertBefore(marker,element),this._initialTransform=element.style.transform||"",this._preview=new PreviewRef(this._document,this._rootElement,this._direction,this._initialDomRect,this._previewTemplate||null,this.previewClass||null,this._pickupPositionOnPage,this._initialTransform,this._config.zIndex||1e3,this._renderer),this._preview.attach(this._getPreviewInsertionPoint(parent,shadowRoot)),toggleVisibility(element,!1,dragImportantProperties),this._document.body.appendChild(parent.replaceChild(placeholder,element)),this.started.next({source:this,event}),dropContainer.start(),this._initialContainer=dropContainer,this._initialIndex=dropContainer.getItemIndex(this)}else this.started.next({source:this,event}),this._initialContainer=this._initialIndex=void 0;this._parentPositions.cache(dropContainer?dropContainer.getScrollableParents():[])}_initializeDragSequence(referenceElement,event){this._parentDragRef&&event.stopPropagation();let isDragging=this.isDragging(),isTouchSequence=isTouchEvent(event),isAuxiliaryMouseButton=!isTouchSequence&&event.button!==0,rootElement=this._rootElement,target=_getEventTarget(event),isSyntheticEvent=!isTouchSequence&&this._lastTouchEventTime&&this._lastTouchEventTime+MOUSE_EVENT_IGNORE_TIME>Date.now(),isFakeEvent=isTouchSequence?isFakeTouchstartFromScreenReader(event):isFakeMousedownFromScreenReader(event);if(target&&target.draggable&&event.type==="mousedown"&&event.preventDefault(),isDragging||isAuxiliaryMouseButton||isSyntheticEvent||isFakeEvent)return;if(this._handles.length){let rootStyles=rootElement.style;this._rootElementTapHighlight=rootStyles.webkitTapHighlightColor||"",rootStyles.webkitTapHighlightColor="transparent"}this._hasMoved=!1,this._hasStartedDragging.set(this._hasMoved),this._removeListeners(),this._initialDomRect=this._rootElement.getBoundingClientRect(),this._pointerMoveSubscription=this._dragDropRegistry.pointerMove.subscribe(this._pointerMove),this._pointerUpSubscription=this._dragDropRegistry.pointerUp.subscribe(this._pointerUp),this._scrollSubscription=this._dragDropRegistry.scrolled(this._getShadowRoot()).subscribe(scrollEvent=>this._updateOnScroll(scrollEvent)),this._boundaryElement&&(this._boundaryRect=getMutableClientRect(this._boundaryElement));let previewTemplate=this._previewTemplate;this._pickupPositionInElement=previewTemplate&&previewTemplate.template&&!previewTemplate.matchSize?{x:0,y:0}:this._getPointerPositionInElement(this._initialDomRect,referenceElement,event);let pointerPosition=this._pickupPositionOnPage=this._lastKnownPointerPosition=this._getPointerPositionOnPage(event);this._pointerDirectionDelta={x:0,y:0},this._pointerPositionAtLastDirectionChange={x:pointerPosition.x,y:pointerPosition.y},this._dragStartTime=Date.now(),this._dragDropRegistry.startDragging(this,event)}_cleanupDragArtifacts(event){toggleVisibility(this._rootElement,!0,dragImportantProperties),this._marker.parentNode.replaceChild(this._rootElement,this._marker),this._destroyPreview(),this._destroyPlaceholder(),this._initialDomRect=this._boundaryRect=this._previewRect=this._initialTransform=void 0,this._ngZone.run(()=>{let container=this._dropContainer,currentIndex=container.getItemIndex(this),pointerPosition=this._getPointerPositionOnPage(event),distance=this._getDragDistance(pointerPosition),isPointerOverContainer=container._isOverContainer(pointerPosition.x,pointerPosition.y);this.ended.next({source:this,distance,dropPoint:pointerPosition,event}),this.dropped.next({item:this,currentIndex,previousIndex:this._initialIndex,container,previousContainer:this._initialContainer,isPointerOverContainer,distance,dropPoint:pointerPosition,event}),container.drop(this,currentIndex,this._initialIndex,this._initialContainer,isPointerOverContainer,distance,pointerPosition,event),this._dropContainer=this._initialContainer})}_updateActiveDropContainer({x,y},{x:rawX,y:rawY}){let newContainer=this._initialContainer._getSiblingContainerFromPosition(this,x,y);!newContainer&&this._dropContainer!==this._initialContainer&&this._initialContainer._isOverContainer(x,y)&&(newContainer=this._initialContainer),newContainer&&newContainer!==this._dropContainer&&this._ngZone.run(()=>{let exitIndex=this._dropContainer.getItemIndex(this),nextItemElement=this._dropContainer.getItemAtIndex(exitIndex+1)?.getVisibleElement()||null;this.exited.next({item:this,container:this._dropContainer}),this._dropContainer.exit(this),this._conditionallyInsertAnchor(newContainer,this._dropContainer,nextItemElement),this._dropContainer=newContainer,this._dropContainer.enter(this,x,y,newContainer===this._initialContainer&&newContainer.sortingDisabled?this._initialIndex:void 0),this.entered.next({item:this,container:newContainer,currentIndex:newContainer.getItemIndex(this)})}),this.isDragging()&&(this._dropContainer._startScrollingIfNecessary(rawX,rawY),this._dropContainer._sortItem(this,x,y,this._pointerDirectionDelta),this.constrainPosition?this._applyPreviewTransform(x,y):this._applyPreviewTransform(x-this._pickupPositionInElement.x,y-this._pickupPositionInElement.y))}_animatePreviewToPlaceholder(){if(!this._hasMoved)return Promise.resolve();let placeholderRect=this._placeholder.getBoundingClientRect();this._preview.addClass("cdk-drag-animating"),this._applyPreviewTransform(placeholderRect.left,placeholderRect.top);let duration=this._preview.getTransitionDuration();return duration===0?Promise.resolve():this._ngZone.runOutsideAngular(()=>new Promise(resolve=>{let handler=event=>{(!event||this._preview&&_getEventTarget(event)===this._preview.element&&event.propertyName==="transform")&&(cleanupListener(),resolve(),clearTimeout(timeout2))},timeout2=setTimeout(handler,duration*1.5),cleanupListener=this._preview.addEventListener("transitionend",handler)}))}_createPlaceholderElement(){let placeholderConfig=this._placeholderTemplate,placeholderTemplate=placeholderConfig?placeholderConfig.template:null,placeholder;return placeholderTemplate?(this._placeholderRef=placeholderConfig.viewContainer.createEmbeddedView(placeholderTemplate,placeholderConfig.context),this._placeholderRef.detectChanges(),placeholder=getRootNode(this._placeholderRef,this._document)):placeholder=deepCloneNode(this._rootElement),placeholder.style.pointerEvents="none",placeholder.classList.add(PLACEHOLDER_CLASS),placeholder}_getPointerPositionInElement(elementRect,referenceElement,event){let handleElement=referenceElement===this._rootElement?null:referenceElement,referenceRect=handleElement?handleElement.getBoundingClientRect():elementRect,point=isTouchEvent(event)?event.targetTouches[0]:event,scrollPosition=this._getViewportScrollPosition(),x=point.pageX-referenceRect.left-scrollPosition.left,y=point.pageY-referenceRect.top-scrollPosition.top;return{x:referenceRect.left-elementRect.left+x,y:referenceRect.top-elementRect.top+y}}_getPointerPositionOnPage(event){let scrollPosition=this._getViewportScrollPosition(),point=isTouchEvent(event)?event.touches[0]||event.changedTouches[0]||{pageX:0,pageY:0}:event,x=point.pageX-scrollPosition.left,y=point.pageY-scrollPosition.top;if(this._ownerSVGElement){let svgMatrix=this._ownerSVGElement.getScreenCTM();if(svgMatrix){let svgPoint=this._ownerSVGElement.createSVGPoint();return svgPoint.x=x,svgPoint.y=y,svgPoint.matrixTransform(svgMatrix.inverse())}}return{x,y}}_getConstrainedPointerPosition(point){let dropContainerLock=this._dropContainer?this._dropContainer.lockAxis:null,{x,y}=this.constrainPosition?this.constrainPosition(point,this,this._initialDomRect,this._pickupPositionInElement):point;if(this.lockAxis==="x"||dropContainerLock==="x"?y=this._pickupPositionOnPage.y-(this.constrainPosition?this._pickupPositionInElement.y:0):(this.lockAxis==="y"||dropContainerLock==="y")&&(x=this._pickupPositionOnPage.x-(this.constrainPosition?this._pickupPositionInElement.x:0)),this._boundaryRect){let{x:pickupX,y:pickupY}=this.constrainPosition?{x:0,y:0}:this._pickupPositionInElement,boundaryRect=this._boundaryRect,{width:previewWidth,height:previewHeight}=this._getPreviewRect(),minY=boundaryRect.top+pickupY,maxY=boundaryRect.bottom-(previewHeight-pickupY),minX=boundaryRect.left+pickupX,maxX=boundaryRect.right-(previewWidth-pickupX);x=clamp$1(x,minX,maxX),y=clamp$1(y,minY,maxY)}return{x,y}}_updatePointerDirectionDelta(pointerPositionOnPage){let{x,y}=pointerPositionOnPage,delta=this._pointerDirectionDelta,positionSinceLastChange=this._pointerPositionAtLastDirectionChange,changeX=Math.abs(x-positionSinceLastChange.x),changeY=Math.abs(y-positionSinceLastChange.y);return changeX>this._config.pointerDirectionChangeThreshold&&(delta.x=x>positionSinceLastChange.x?1:-1,positionSinceLastChange.x=x),changeY>this._config.pointerDirectionChangeThreshold&&(delta.y=y>positionSinceLastChange.y?1:-1,positionSinceLastChange.y=y),delta}_toggleNativeDragInteractions(){if(!this._rootElement||!this._handles)return;let shouldEnable=this._handles.length>0||!this.isDragging();shouldEnable!==this._nativeInteractionsEnabled&&(this._nativeInteractionsEnabled=shouldEnable,toggleNativeDragInteractions(this._rootElement,shouldEnable))}_removeRootElementListeners(){this._rootElementCleanups?.forEach(cleanup=>cleanup()),this._rootElementCleanups=void 0}_applyRootElementTransform(x,y){let scale=1/this.scale,transform=getTransform(x*scale,y*scale),styles=this._rootElement.style;this._initialTransform==null&&(this._initialTransform=styles.transform&&styles.transform!="none"?styles.transform:""),styles.transform=combineTransforms(transform,this._initialTransform)}_applyPreviewTransform(x,y){let initialTransform=this._previewTemplate?.template?void 0:this._initialTransform,transform=getTransform(x,y);this._preview.setTransform(combineTransforms(transform,initialTransform))}_getDragDistance(currentPosition){let pickupPosition=this._pickupPositionOnPage;return pickupPosition?{x:currentPosition.x-pickupPosition.x,y:currentPosition.y-pickupPosition.y}:{x:0,y:0}}_cleanupCachedDimensions(){this._boundaryRect=this._previewRect=void 0,this._parentPositions.clear()}_containInsideBoundaryOnResize(){let{x,y}=this._passiveTransform;if(x===0&&y===0||this.isDragging()||!this._boundaryElement)return;let elementRect=this._rootElement.getBoundingClientRect(),boundaryRect=this._boundaryElement.getBoundingClientRect();if(boundaryRect.width===0&&boundaryRect.height===0||elementRect.width===0&&elementRect.height===0)return;let leftOverflow=boundaryRect.left-elementRect.left,rightOverflow=elementRect.right-boundaryRect.right,topOverflow=boundaryRect.top-elementRect.top,bottomOverflow=elementRect.bottom-boundaryRect.bottom;boundaryRect.width>elementRect.width?(leftOverflow>0&&(x+=leftOverflow),rightOverflow>0&&(x-=rightOverflow)):x=0,boundaryRect.height>elementRect.height?(topOverflow>0&&(y+=topOverflow),bottomOverflow>0&&(y-=bottomOverflow)):y=0,(x!==this._passiveTransform.x||y!==this._passiveTransform.y)&&this.setFreeDragPosition({y,x})}_getDragStartDelay(event){let value=this.dragStartDelay;return typeof value=="number"?value:isTouchEvent(event)?value.touch:value?value.mouse:0}_updateOnScroll(event){let scrollDifference=this._parentPositions.handleScroll(event);if(scrollDifference){let target=_getEventTarget(event);this._boundaryRect&&target!==this._boundaryElement&&target.contains(this._boundaryElement)&&adjustDomRect(this._boundaryRect,scrollDifference.top,scrollDifference.left),this._pickupPositionOnPage.x+=scrollDifference.left,this._pickupPositionOnPage.y+=scrollDifference.top,this._dropContainer||(this._activeTransform.x-=scrollDifference.left,this._activeTransform.y-=scrollDifference.top,this._applyRootElementTransform(this._activeTransform.x,this._activeTransform.y))}}_getViewportScrollPosition(){return this._parentPositions.positions.get(this._document)?.scrollPosition||this._parentPositions.getViewportScrollPosition()}_getShadowRoot(){return this._cachedShadowRoot===void 0&&(this._cachedShadowRoot=_getShadowRoot(this._rootElement)),this._cachedShadowRoot}_getPreviewInsertionPoint(initialParent,shadowRoot){let previewContainer=this._previewContainer||"global";if(previewContainer==="parent")return initialParent;if(previewContainer==="global"){let documentRef=this._document;return shadowRoot||documentRef.fullscreenElement||documentRef.webkitFullscreenElement||documentRef.mozFullScreenElement||documentRef.msFullscreenElement||documentRef.body}return coerceElement(previewContainer)}_getPreviewRect(){return(!this._previewRect||!this._previewRect.width&&!this._previewRect.height)&&(this._previewRect=this._preview?this._preview.getBoundingClientRect():this._initialDomRect),this._previewRect}_nativeDragStart=event=>{if(this._handles.length){let targetHandle=this._getTargetHandle(event);targetHandle&&!this._disabledHandles.has(targetHandle)&&!this.disabled&&event.preventDefault()}else this.disabled||event.preventDefault()};_getTargetHandle(event){return this._handles.find(handle=>event.target&&(event.target===handle||handle.contains(event.target)))}_conditionallyInsertAnchor(newContainer,exitContainer,nextItemElement){if(newContainer===this._initialContainer)this._anchor?.remove(),this._anchor=null;else if(exitContainer===this._initialContainer&&exitContainer.hasAnchor){let anchor=this._anchor??=deepCloneNode(this._placeholder);anchor.classList.remove(PLACEHOLDER_CLASS),anchor.classList.add("cdk-drag-anchor"),anchor.style.transform="",nextItemElement?nextItemElement.before(anchor):coerceElement(exitContainer.element).appendChild(anchor)}}};function clamp$1(value,min,max){return Math.max(min,Math.min(max,value))}function isTouchEvent(event){return event.type[0]==="t"}function shadowDomSelectStart(event){event.preventDefault()}function moveItemInArray(array,fromIndex,toIndex){let from3=clamp(fromIndex,array.length-1),to=clamp(toIndex,array.length-1);if(from3===to)return;let target=array[from3],delta=to<from3?-1:1;for(let i=from3;i!==to;i+=delta)array[i]=array[i+delta];array[to]=target}function clamp(value,max){return Math.max(0,Math.min(max,value))}var SingleAxisSortStrategy=class{_dragDropRegistry;_element;_sortPredicate;_itemPositions=[];_activeDraggables;orientation="vertical";direction;constructor(_dragDropRegistry){this._dragDropRegistry=_dragDropRegistry}_previousSwap={drag:null,delta:0,overlaps:!1};start(items){this.withItems(items)}sort(item,pointerX,pointerY,pointerDelta){let siblings=this._itemPositions,newIndex=this._getItemIndexFromPointerPosition(item,pointerX,pointerY,pointerDelta);if(newIndex===-1&&siblings.length>0)return null;let isHorizontal=this.orientation==="horizontal",currentIndex=siblings.findIndex(currentItem=>currentItem.drag===item),siblingAtNewPosition=siblings[newIndex],currentPosition=siblings[currentIndex].clientRect,newPosition=siblingAtNewPosition.clientRect,delta=currentIndex>newIndex?1:-1,itemOffset=this._getItemOffsetPx(currentPosition,newPosition,delta),siblingOffset=this._getSiblingOffsetPx(currentIndex,siblings,delta),oldOrder=siblings.slice();return moveItemInArray(siblings,currentIndex,newIndex),siblings.forEach((sibling,index)=>{if(oldOrder[index]===sibling)return;let isDraggedItem=sibling.drag===item,offset=isDraggedItem?itemOffset:siblingOffset,elementToOffset=isDraggedItem?item.getPlaceholderElement():sibling.drag.getRootElement();sibling.offset+=offset;let transformAmount=Math.round(sibling.offset*(1/sibling.drag.scale));isHorizontal?(elementToOffset.style.transform=combineTransforms(`translate3d(${transformAmount}px, 0, 0)`,sibling.initialTransform),adjustDomRect(sibling.clientRect,0,offset)):(elementToOffset.style.transform=combineTransforms(`translate3d(0, ${transformAmount}px, 0)`,sibling.initialTransform),adjustDomRect(sibling.clientRect,offset,0))}),this._previousSwap.overlaps=isInsideClientRect(newPosition,pointerX,pointerY),this._previousSwap.drag=siblingAtNewPosition.drag,this._previousSwap.delta=isHorizontal?pointerDelta.x:pointerDelta.y,{previousIndex:currentIndex,currentIndex:newIndex}}enter(item,pointerX,pointerY,index){let newIndex=index==null||index<0?this._getItemIndexFromPointerPosition(item,pointerX,pointerY):index,activeDraggables=this._activeDraggables,currentIndex=activeDraggables.indexOf(item),placeholder=item.getPlaceholderElement(),newPositionReference=activeDraggables[newIndex];if(newPositionReference===item&&(newPositionReference=activeDraggables[newIndex+1]),!newPositionReference&&(newIndex==null||newIndex===-1||newIndex<activeDraggables.length-1)&&this._shouldEnterAsFirstChild(pointerX,pointerY)&&(newPositionReference=activeDraggables[0]),currentIndex>-1&&activeDraggables.splice(currentIndex,1),newPositionReference&&!this._dragDropRegistry.isDragging(newPositionReference)){let element=newPositionReference.getRootElement();element.parentElement.insertBefore(placeholder,element),activeDraggables.splice(newIndex,0,item)}else this._element.appendChild(placeholder),activeDraggables.push(item);placeholder.style.transform="",this._cacheItemPositions()}withItems(items){this._activeDraggables=items.slice(),this._cacheItemPositions()}withSortPredicate(predicate){this._sortPredicate=predicate}reset(){this._activeDraggables?.forEach(item=>{let rootElement=item.getRootElement();if(rootElement){let initialTransform=this._itemPositions.find(p=>p.drag===item)?.initialTransform;rootElement.style.transform=initialTransform||""}}),this._itemPositions=[],this._activeDraggables=[],this._previousSwap.drag=null,this._previousSwap.delta=0,this._previousSwap.overlaps=!1}getActiveItemsSnapshot(){return this._activeDraggables}getItemIndex(item){return this._getVisualItemPositions().findIndex(currentItem=>currentItem.drag===item)}getItemAtIndex(index){return this._getVisualItemPositions()[index]?.drag||null}updateOnScroll(topDifference,leftDifference){this._itemPositions.forEach(({clientRect})=>{adjustDomRect(clientRect,topDifference,leftDifference)}),this._itemPositions.forEach(({drag})=>{this._dragDropRegistry.isDragging(drag)&&drag._sortFromLastPointerPosition()})}withElementContainer(container){this._element=container}_cacheItemPositions(){let isHorizontal=this.orientation==="horizontal";this._itemPositions=this._activeDraggables.map(drag=>{let elementToMeasure=drag.getVisibleElement();return{drag,offset:0,initialTransform:elementToMeasure.style.transform||"",clientRect:getMutableClientRect(elementToMeasure)}}).sort((a,b)=>isHorizontal?a.clientRect.left-b.clientRect.left:a.clientRect.top-b.clientRect.top)}_getVisualItemPositions(){return this.orientation==="horizontal"&&this.direction==="rtl"?this._itemPositions.slice().reverse():this._itemPositions}_getItemOffsetPx(currentPosition,newPosition,delta){let isHorizontal=this.orientation==="horizontal",itemOffset=isHorizontal?newPosition.left-currentPosition.left:newPosition.top-currentPosition.top;return delta===-1&&(itemOffset+=isHorizontal?newPosition.width-currentPosition.width:newPosition.height-currentPosition.height),itemOffset}_getSiblingOffsetPx(currentIndex,siblings,delta){let isHorizontal=this.orientation==="horizontal",currentPosition=siblings[currentIndex].clientRect,immediateSibling=siblings[currentIndex+delta*-1],siblingOffset=currentPosition[isHorizontal?"width":"height"]*delta;if(immediateSibling){let start=isHorizontal?"left":"top",end=isHorizontal?"right":"bottom";delta===-1?siblingOffset-=immediateSibling.clientRect[start]-currentPosition[end]:siblingOffset+=currentPosition[start]-immediateSibling.clientRect[end]}return siblingOffset}_shouldEnterAsFirstChild(pointerX,pointerY){if(!this._activeDraggables.length)return!1;let itemPositions=this._itemPositions,isHorizontal=this.orientation==="horizontal";if(itemPositions[0].drag!==this._activeDraggables[0]){let lastItemRect=itemPositions[itemPositions.length-1].clientRect;return isHorizontal?pointerX>=lastItemRect.right:pointerY>=lastItemRect.bottom}else{let firstItemRect=itemPositions[0].clientRect;return isHorizontal?pointerX<=firstItemRect.left:pointerY<=firstItemRect.top}}_getItemIndexFromPointerPosition(item,pointerX,pointerY,delta){let isHorizontal=this.orientation==="horizontal",index=this._itemPositions.findIndex(({drag,clientRect})=>{if(drag===item)return!1;if(delta){let direction=isHorizontal?delta.x:delta.y;if(drag===this._previousSwap.drag&&this._previousSwap.overlaps&&direction===this._previousSwap.delta)return!1}return isHorizontal?pointerX>=Math.floor(clientRect.left)&&pointerX<Math.floor(clientRect.right):pointerY>=Math.floor(clientRect.top)&&pointerY<Math.floor(clientRect.bottom)});return index===-1||!this._sortPredicate(index,item)?-1:index}},MixedSortStrategy=class{_document;_dragDropRegistry;_element;_sortPredicate;_rootNode;_activeItems;_previousSwap={drag:null,deltaX:0,deltaY:0,overlaps:!1};_relatedNodes=[];constructor(_document2,_dragDropRegistry){this._document=_document2,this._dragDropRegistry=_dragDropRegistry}start(items){let childNodes=this._element.childNodes;this._relatedNodes=[];for(let i=0;i<childNodes.length;i++){let node=childNodes[i];this._relatedNodes.push([node,node.nextSibling])}this.withItems(items)}sort(item,pointerX,pointerY,pointerDelta){let newIndex=this._getItemIndexFromPointerPosition(item,pointerX,pointerY),previousSwap=this._previousSwap;if(newIndex===-1||this._activeItems[newIndex]===item)return null;let toSwapWith=this._activeItems[newIndex];if(previousSwap.drag===toSwapWith&&previousSwap.overlaps&&previousSwap.deltaX===pointerDelta.x&&previousSwap.deltaY===pointerDelta.y)return null;let previousIndex=this.getItemIndex(item),current=item.getPlaceholderElement(),overlapElement=toSwapWith.getRootElement();newIndex>previousIndex?overlapElement.after(current):overlapElement.before(current),moveItemInArray(this._activeItems,previousIndex,newIndex);let newOverlapElement=this._getRootNode().elementFromPoint(pointerX,pointerY);return previousSwap.deltaX=pointerDelta.x,previousSwap.deltaY=pointerDelta.y,previousSwap.drag=toSwapWith,previousSwap.overlaps=overlapElement===newOverlapElement||overlapElement.contains(newOverlapElement),{previousIndex,currentIndex:newIndex}}enter(item,pointerX,pointerY,index){let currentIndex=this._activeItems.indexOf(item);currentIndex>-1&&this._activeItems.splice(currentIndex,1);let enterIndex=index==null||index<0?this._getItemIndexFromPointerPosition(item,pointerX,pointerY):index;enterIndex===-1&&(enterIndex=this._getClosestItemIndexToPointer(item,pointerX,pointerY));let targetItem=this._activeItems[enterIndex];targetItem&&!this._dragDropRegistry.isDragging(targetItem)?(this._activeItems.splice(enterIndex,0,item),targetItem.getRootElement().before(item.getPlaceholderElement())):(this._activeItems.push(item),this._element.appendChild(item.getPlaceholderElement()))}withItems(items){this._activeItems=items.slice()}withSortPredicate(predicate){this._sortPredicate=predicate}reset(){let root=this._element,previousSwap=this._previousSwap;for(let i=this._relatedNodes.length-1;i>-1;i--){let[node,nextSibling]=this._relatedNodes[i];node.parentNode===root&&node.nextSibling!==nextSibling&&(nextSibling===null?root.appendChild(node):nextSibling.parentNode===root&&root.insertBefore(node,nextSibling))}this._relatedNodes=[],this._activeItems=[],previousSwap.drag=null,previousSwap.deltaX=previousSwap.deltaY=0,previousSwap.overlaps=!1}getActiveItemsSnapshot(){return this._activeItems}getItemIndex(item){return this._activeItems.indexOf(item)}getItemAtIndex(index){return this._activeItems[index]||null}updateOnScroll(){this._activeItems.forEach(item=>{this._dragDropRegistry.isDragging(item)&&item._sortFromLastPointerPosition()})}withElementContainer(container){container!==this._element&&(this._element=container,this._rootNode=void 0)}_getItemIndexFromPointerPosition(item,pointerX,pointerY){let elementAtPoint=this._getRootNode().elementFromPoint(Math.floor(pointerX),Math.floor(pointerY)),index=elementAtPoint?this._activeItems.findIndex(item2=>{let root=item2.getRootElement();return elementAtPoint===root||root.contains(elementAtPoint)}):-1;return index===-1||!this._sortPredicate(index,item)?-1:index}_getRootNode(){return this._rootNode||(this._rootNode=_getShadowRoot(this._element)||this._document),this._rootNode}_getClosestItemIndexToPointer(item,pointerX,pointerY){if(this._activeItems.length===0)return-1;if(this._activeItems.length===1)return 0;let minDistance=1/0,minIndex=-1;for(let i=0;i<this._activeItems.length;i++){let current=this._activeItems[i];if(current!==item){let{x,y}=current.getRootElement().getBoundingClientRect(),distance=Math.hypot(pointerX-x,pointerY-y);distance<minDistance&&(minDistance=distance,minIndex=i)}}return minIndex}},DROP_PROXIMITY_THRESHOLD=.05,SCROLL_PROXIMITY_THRESHOLD=.05,AutoScrollVerticalDirection=(function(AutoScrollVerticalDirection2){return AutoScrollVerticalDirection2[AutoScrollVerticalDirection2.NONE=0]="NONE",AutoScrollVerticalDirection2[AutoScrollVerticalDirection2.UP=1]="UP",AutoScrollVerticalDirection2[AutoScrollVerticalDirection2.DOWN=2]="DOWN",AutoScrollVerticalDirection2})(AutoScrollVerticalDirection||{}),AutoScrollHorizontalDirection=(function(AutoScrollHorizontalDirection2){return AutoScrollHorizontalDirection2[AutoScrollHorizontalDirection2.NONE=0]="NONE",AutoScrollHorizontalDirection2[AutoScrollHorizontalDirection2.LEFT=1]="LEFT",AutoScrollHorizontalDirection2[AutoScrollHorizontalDirection2.RIGHT=2]="RIGHT",AutoScrollHorizontalDirection2})(AutoScrollHorizontalDirection||{}),DropListRef=class{_dragDropRegistry;_ngZone;_viewportRuler;element;disabled=!1;sortingDisabled=!1;lockAxis;autoScrollDisabled=!1;autoScrollStep=2;hasAnchor=!1;enterPredicate=()=>!0;sortPredicate=()=>!0;beforeStarted=new Subject;entered=new Subject;exited=new Subject;dropped=new Subject;sorted=new Subject;receivingStarted=new Subject;receivingStopped=new Subject;data;_container;_isDragging=!1;_parentPositions;_sortStrategy;_domRect;_draggables=[];_siblings=[];_activeSiblings=new Set;_viewportScrollSubscription=Subscription.EMPTY;_verticalScrollDirection=AutoScrollVerticalDirection.NONE;_horizontalScrollDirection=AutoScrollHorizontalDirection.NONE;_scrollNode;_stopScrollTimers=new Subject;_cachedShadowRoot=null;_document;_scrollableElements=[];_initialScrollSnap;_direction="ltr";constructor(element,_dragDropRegistry,_document2,_ngZone,_viewportRuler){this._dragDropRegistry=_dragDropRegistry,this._ngZone=_ngZone,this._viewportRuler=_viewportRuler;let coercedElement=this.element=coerceElement(element);this._document=_document2,this.withOrientation("vertical").withElementContainer(coercedElement),_dragDropRegistry.registerDropContainer(this),this._parentPositions=new ParentPositionTracker(_document2)}dispose(){this._stopScrolling(),this._stopScrollTimers.complete(),this._viewportScrollSubscription.unsubscribe(),this.beforeStarted.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this.sorted.complete(),this.receivingStarted.complete(),this.receivingStopped.complete(),this._activeSiblings.clear(),this._scrollNode=null,this._parentPositions.clear(),this._dragDropRegistry.removeDropContainer(this)}isDragging(){return this._isDragging}start(){this._draggingStarted(),this._notifyReceivingSiblings()}enter(item,pointerX,pointerY,index){this._draggingStarted(),index==null&&this.sortingDisabled&&(index=this._draggables.indexOf(item)),this._sortStrategy.enter(item,pointerX,pointerY,index),this._cacheParentPositions(),this._notifyReceivingSiblings(),this.entered.next({item,container:this,currentIndex:this.getItemIndex(item)})}exit(item){this._reset(),this.exited.next({item,container:this})}drop(item,currentIndex,previousIndex,previousContainer,isPointerOverContainer,distance,dropPoint,event={}){this._reset(),this.dropped.next({item,currentIndex,previousIndex,container:this,previousContainer,isPointerOverContainer,distance,dropPoint,event})}withItems(items){let previousItems=this._draggables;return this._draggables=items,items.forEach(item=>item._withDropContainer(this)),this.isDragging()&&(previousItems.filter(item=>item.isDragging()).every(item=>items.indexOf(item)===-1)?this._reset():this._sortStrategy.withItems(this._draggables)),this}withDirection(direction){return this._direction=direction,this._sortStrategy instanceof SingleAxisSortStrategy&&(this._sortStrategy.direction=direction),this}connectedTo(connectedTo){return this._siblings=connectedTo.slice(),this}withOrientation(orientation){if(orientation==="mixed")this._sortStrategy=new MixedSortStrategy(this._document,this._dragDropRegistry);else{let strategy=new SingleAxisSortStrategy(this._dragDropRegistry);strategy.direction=this._direction,strategy.orientation=orientation,this._sortStrategy=strategy}return this._sortStrategy.withElementContainer(this._container),this._sortStrategy.withSortPredicate((index,item)=>this.sortPredicate(index,item,this)),this}withScrollableParents(elements){let element=this._container;return this._scrollableElements=elements.indexOf(element)===-1?[element,...elements]:elements.slice(),this}withElementContainer(container){if(container===this._container)return this;let element=coerceElement(this.element),oldContainerIndex=this._scrollableElements.indexOf(this._container),newContainerIndex=this._scrollableElements.indexOf(container);return oldContainerIndex>-1&&this._scrollableElements.splice(oldContainerIndex,1),newContainerIndex>-1&&this._scrollableElements.splice(newContainerIndex,1),this._sortStrategy&&this._sortStrategy.withElementContainer(container),this._cachedShadowRoot=null,this._scrollableElements.unshift(container),this._container=container,this}getScrollableParents(){return this._scrollableElements}getItemIndex(item){return this._isDragging?this._sortStrategy.getItemIndex(item):this._draggables.indexOf(item)}getItemAtIndex(index){return this._isDragging?this._sortStrategy.getItemAtIndex(index):this._draggables[index]||null}isReceiving(){return this._activeSiblings.size>0}_sortItem(item,pointerX,pointerY,pointerDelta){if(this.sortingDisabled||!this._domRect||!isPointerNearDomRect(this._domRect,DROP_PROXIMITY_THRESHOLD,pointerX,pointerY))return;let result=this._sortStrategy.sort(item,pointerX,pointerY,pointerDelta);result&&this.sorted.next({previousIndex:result.previousIndex,currentIndex:result.currentIndex,container:this,item})}_startScrollingIfNecessary(pointerX,pointerY){if(this.autoScrollDisabled)return;let scrollNode,verticalScrollDirection=AutoScrollVerticalDirection.NONE,horizontalScrollDirection=AutoScrollHorizontalDirection.NONE;if(this._parentPositions.positions.forEach((position,element)=>{element===this._document||!position.clientRect||scrollNode||isPointerNearDomRect(position.clientRect,DROP_PROXIMITY_THRESHOLD,pointerX,pointerY)&&([verticalScrollDirection,horizontalScrollDirection]=getElementScrollDirections(element,position.clientRect,this._direction,pointerX,pointerY),(verticalScrollDirection||horizontalScrollDirection)&&(scrollNode=element))}),!verticalScrollDirection&&!horizontalScrollDirection){let{width,height}=this._viewportRuler.getViewportSize(),domRect={width,height,top:0,right:width,bottom:height,left:0};verticalScrollDirection=getVerticalScrollDirection(domRect,pointerY),horizontalScrollDirection=getHorizontalScrollDirection(domRect,pointerX),scrollNode=window}scrollNode&&(verticalScrollDirection!==this._verticalScrollDirection||horizontalScrollDirection!==this._horizontalScrollDirection||scrollNode!==this._scrollNode)&&(this._verticalScrollDirection=verticalScrollDirection,this._horizontalScrollDirection=horizontalScrollDirection,this._scrollNode=scrollNode,(verticalScrollDirection||horizontalScrollDirection)&&scrollNode?this._ngZone.runOutsideAngular(this._startScrollInterval):this._stopScrolling())}_stopScrolling(){this._stopScrollTimers.next()}_draggingStarted(){let styles=this._container.style;this.beforeStarted.next(),this._isDragging=!0,this._initialScrollSnap=styles.msScrollSnapType||styles.scrollSnapType||"",styles.scrollSnapType=styles.msScrollSnapType="none",this._sortStrategy.start(this._draggables),this._cacheParentPositions(),this._viewportScrollSubscription.unsubscribe(),this._listenToScrollEvents()}_cacheParentPositions(){this._parentPositions.cache(this._scrollableElements),this._domRect=this._parentPositions.positions.get(this._container).clientRect}_reset(){this._isDragging=!1;let styles=this._container.style;styles.scrollSnapType=styles.msScrollSnapType=this._initialScrollSnap,this._siblings.forEach(sibling=>sibling._stopReceiving(this)),this._sortStrategy.reset(),this._stopScrolling(),this._viewportScrollSubscription.unsubscribe(),this._parentPositions.clear()}_startScrollInterval=()=>{this._stopScrolling(),interval(0,animationFrameScheduler).pipe(takeUntil(this._stopScrollTimers)).subscribe(()=>{let node=this._scrollNode,scrollStep=this.autoScrollStep;this._verticalScrollDirection===AutoScrollVerticalDirection.UP?node.scrollBy(0,-scrollStep):this._verticalScrollDirection===AutoScrollVerticalDirection.DOWN&&node.scrollBy(0,scrollStep),this._horizontalScrollDirection===AutoScrollHorizontalDirection.LEFT?node.scrollBy(-scrollStep,0):this._horizontalScrollDirection===AutoScrollHorizontalDirection.RIGHT&&node.scrollBy(scrollStep,0)})};_isOverContainer(x,y){return this._domRect!=null&&isInsideClientRect(this._domRect,x,y)}_getSiblingContainerFromPosition(item,x,y){return this._siblings.find(sibling=>sibling._canReceive(item,x,y))}_canReceive(item,x,y){if(!this._domRect||!isInsideClientRect(this._domRect,x,y)||!this.enterPredicate(item,this))return!1;let elementFromPoint=this._getShadowRoot().elementFromPoint(x,y);return elementFromPoint?elementFromPoint===this._container||this._container.contains(elementFromPoint):!1}_startReceiving(sibling,items){let activeSiblings=this._activeSiblings;!activeSiblings.has(sibling)&&items.every(item=>this.enterPredicate(item,this)||this._draggables.indexOf(item)>-1)&&(activeSiblings.add(sibling),this._cacheParentPositions(),this._listenToScrollEvents(),this.receivingStarted.next({initiator:sibling,receiver:this,items}))}_stopReceiving(sibling){this._activeSiblings.delete(sibling),this._viewportScrollSubscription.unsubscribe(),this.receivingStopped.next({initiator:sibling,receiver:this})}_listenToScrollEvents(){this._viewportScrollSubscription=this._dragDropRegistry.scrolled(this._getShadowRoot()).subscribe(event=>{if(this.isDragging()){let scrollDifference=this._parentPositions.handleScroll(event);scrollDifference&&this._sortStrategy.updateOnScroll(scrollDifference.top,scrollDifference.left)}else this.isReceiving()&&this._cacheParentPositions()})}_getShadowRoot(){if(!this._cachedShadowRoot){let shadowRoot=_getShadowRoot(this._container);this._cachedShadowRoot=shadowRoot||this._document}return this._cachedShadowRoot}_notifyReceivingSiblings(){let draggedItems=this._sortStrategy.getActiveItemsSnapshot().filter(item=>item.isDragging());this._siblings.forEach(sibling=>sibling._startReceiving(this,draggedItems))}};function getVerticalScrollDirection(clientRect,pointerY){let{top,bottom,height}=clientRect,yThreshold=height*SCROLL_PROXIMITY_THRESHOLD;return pointerY>=top-yThreshold&&pointerY<=top+yThreshold?AutoScrollVerticalDirection.UP:pointerY>=bottom-yThreshold&&pointerY<=bottom+yThreshold?AutoScrollVerticalDirection.DOWN:AutoScrollVerticalDirection.NONE}function getHorizontalScrollDirection(clientRect,pointerX){let{left,right,width}=clientRect,xThreshold=width*SCROLL_PROXIMITY_THRESHOLD;return pointerX>=left-xThreshold&&pointerX<=left+xThreshold?AutoScrollHorizontalDirection.LEFT:pointerX>=right-xThreshold&&pointerX<=right+xThreshold?AutoScrollHorizontalDirection.RIGHT:AutoScrollHorizontalDirection.NONE}function getElementScrollDirections(element,clientRect,direction,pointerX,pointerY){let computedVertical=getVerticalScrollDirection(clientRect,pointerY),computedHorizontal=getHorizontalScrollDirection(clientRect,pointerX),verticalScrollDirection=AutoScrollVerticalDirection.NONE,horizontalScrollDirection=AutoScrollHorizontalDirection.NONE;if(computedVertical){let scrollTop=element.scrollTop;computedVertical===AutoScrollVerticalDirection.UP?scrollTop>0&&(verticalScrollDirection=AutoScrollVerticalDirection.UP):element.scrollHeight-scrollTop>element.clientHeight&&(verticalScrollDirection=AutoScrollVerticalDirection.DOWN)}if(computedHorizontal){let scrollLeft=element.scrollLeft;direction==="rtl"?computedHorizontal===AutoScrollHorizontalDirection.RIGHT?scrollLeft<0&&(horizontalScrollDirection=AutoScrollHorizontalDirection.RIGHT):element.scrollWidth+scrollLeft>element.clientWidth&&(horizontalScrollDirection=AutoScrollHorizontalDirection.LEFT):computedHorizontal===AutoScrollHorizontalDirection.LEFT?scrollLeft>0&&(horizontalScrollDirection=AutoScrollHorizontalDirection.LEFT):element.scrollWidth-scrollLeft>element.clientWidth&&(horizontalScrollDirection=AutoScrollHorizontalDirection.RIGHT)}return[verticalScrollDirection,horizontalScrollDirection]}var capturingEventOptions={capture:!0},activeCapturingEventOptions={passive:!1,capture:!0},_ResetsLoader=(()=>{class _ResetsLoader2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||_ResetsLoader2)};static \u0275cmp=\u0275\u0275defineComponent({type:_ResetsLoader2,selectors:[["ng-component"]],hostAttrs:["cdk-drag-resets-container",""],decls:0,vars:0,template:function(rf,ctx){},styles:[`@layer cdk-resets{.cdk-drag-preview{background:none;border:none;padding:0;color:inherit;inset:auto}}.cdk-drag-placeholder *,.cdk-drag-preview *{pointer-events:none !important}
|
|
75
75
|
`],encapsulation:2,changeDetection:0})}return _ResetsLoader2})(),DragDropRegistry=(()=>{class DragDropRegistry2{_ngZone=inject2(NgZone);_document=inject2(DOCUMENT);_styleLoader=inject2(_CdkPrivateStyleLoader);_renderer=inject2(RendererFactory2).createRenderer(null,null);_cleanupDocumentTouchmove;_scroll=new Subject;_dropInstances=new Set;_dragInstances=new Set;_activeDragInstances=signal([]);_globalListeners;_draggingPredicate=item=>item.isDragging();_domNodesToDirectives=null;pointerMove=new Subject;pointerUp=new Subject;constructor(){}registerDropContainer(drop){this._dropInstances.has(drop)||this._dropInstances.add(drop)}registerDragItem(drag){this._dragInstances.add(drag),this._dragInstances.size===1&&this._ngZone.runOutsideAngular(()=>{this._cleanupDocumentTouchmove?.(),this._cleanupDocumentTouchmove=this._renderer.listen(this._document,"touchmove",this._persistentTouchmoveListener,activeCapturingEventOptions)})}removeDropContainer(drop){this._dropInstances.delete(drop)}removeDragItem(drag){this._dragInstances.delete(drag),this.stopDragging(drag),this._dragInstances.size===0&&this._cleanupDocumentTouchmove?.()}startDragging(drag,event){if(!(this._activeDragInstances().indexOf(drag)>-1)&&(this._styleLoader.load(_ResetsLoader),this._activeDragInstances.update(instances=>[...instances,drag]),this._activeDragInstances().length===1)){let isTouchEvent2=event.type.startsWith("touch"),endEventHandler=e=>this.pointerUp.next(e),toBind=[["scroll",e=>this._scroll.next(e),capturingEventOptions],["selectstart",this._preventDefaultWhileDragging,activeCapturingEventOptions]];isTouchEvent2?toBind.push(["touchend",endEventHandler,capturingEventOptions],["touchcancel",endEventHandler,capturingEventOptions]):toBind.push(["mouseup",endEventHandler,capturingEventOptions]),isTouchEvent2||toBind.push(["mousemove",e=>this.pointerMove.next(e),activeCapturingEventOptions]),this._ngZone.runOutsideAngular(()=>{this._globalListeners=toBind.map(([name,handler,options])=>this._renderer.listen(this._document,name,handler,options))})}}stopDragging(drag){this._activeDragInstances.update(instances=>{let index=instances.indexOf(drag);return index>-1?(instances.splice(index,1),[...instances]):instances}),this._activeDragInstances().length===0&&this._clearGlobalListeners()}isDragging(drag){return this._activeDragInstances().indexOf(drag)>-1}scrolled(shadowRoot){let streams=[this._scroll];return shadowRoot&&shadowRoot!==this._document&&streams.push(new Observable(observer=>this._ngZone.runOutsideAngular(()=>{let cleanup=this._renderer.listen(shadowRoot,"scroll",event=>{this._activeDragInstances().length&&observer.next(event)},capturingEventOptions);return()=>{cleanup()}}))),merge(...streams)}registerDirectiveNode(node,dragRef){this._domNodesToDirectives??=new WeakMap,this._domNodesToDirectives.set(node,dragRef)}removeDirectiveNode(node){this._domNodesToDirectives?.delete(node)}getDragDirectiveForNode(node){return this._domNodesToDirectives?.get(node)||null}ngOnDestroy(){this._dragInstances.forEach(instance=>this.removeDragItem(instance)),this._dropInstances.forEach(instance=>this.removeDropContainer(instance)),this._domNodesToDirectives=null,this._clearGlobalListeners(),this.pointerMove.complete(),this.pointerUp.complete()}_preventDefaultWhileDragging=event=>{this._activeDragInstances().length>0&&event.preventDefault()};_persistentTouchmoveListener=event=>{this._activeDragInstances().length>0&&(this._activeDragInstances().some(this._draggingPredicate)&&event.preventDefault(),this.pointerMove.next(event))};_clearGlobalListeners(){this._globalListeners?.forEach(cleanup=>cleanup()),this._globalListeners=void 0}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DragDropRegistry2)};static \u0275prov=\u0275\u0275defineInjectable({token:DragDropRegistry2,factory:DragDropRegistry2.\u0275fac,providedIn:"root"})}return DragDropRegistry2})(),DEFAULT_CONFIG2={dragStartThreshold:5,pointerDirectionChangeThreshold:5},DragDrop=(()=>{class DragDrop2{_document=inject2(DOCUMENT);_ngZone=inject2(NgZone);_viewportRuler=inject2(ViewportRuler);_dragDropRegistry=inject2(DragDropRegistry);_renderer=inject2(RendererFactory2).createRenderer(null,null);constructor(){}createDrag(element,config2=DEFAULT_CONFIG2){return new DragRef(element,config2,this._document,this._ngZone,this._viewportRuler,this._dragDropRegistry,this._renderer)}createDropList(element){return new DropListRef(element,this._dragDropRegistry,this._document,this._ngZone,this._viewportRuler)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DragDrop2)};static \u0275prov=\u0275\u0275defineInjectable({token:DragDrop2,factory:DragDrop2.\u0275fac,providedIn:"root"})}return DragDrop2})(),CDK_DRAG_PARENT=new InjectionToken("CDK_DRAG_PARENT");var CDK_DRAG_HANDLE=new InjectionToken("CdkDragHandle");var CDK_DRAG_CONFIG=new InjectionToken("CDK_DRAG_CONFIG"),CDK_DROP_LIST=new InjectionToken("CdkDropList"),CdkDrag=(()=>{class CdkDrag2{element=inject2(ElementRef);dropContainer=inject2(CDK_DROP_LIST,{optional:!0,skipSelf:!0});_ngZone=inject2(NgZone);_viewContainerRef=inject2(ViewContainerRef);_dir=inject2(Directionality,{optional:!0});_changeDetectorRef=inject2(ChangeDetectorRef);_selfHandle=inject2(CDK_DRAG_HANDLE,{optional:!0,self:!0});_parentDrag=inject2(CDK_DRAG_PARENT,{optional:!0,skipSelf:!0});_dragDropRegistry=inject2(DragDropRegistry);_destroyed=new Subject;_handles=new BehaviorSubject([]);_previewTemplate;_placeholderTemplate;_dragRef;data;lockAxis;rootElementSelector;boundaryElement;dragStartDelay;freeDragPosition;get disabled(){return this._disabled||!!(this.dropContainer&&this.dropContainer.disabled)}set disabled(value){this._disabled=value,this._dragRef.disabled=this._disabled}_disabled;constrainPosition;previewClass;previewContainer;scale=1;started=new EventEmitter;released=new EventEmitter;ended=new EventEmitter;entered=new EventEmitter;exited=new EventEmitter;dropped=new EventEmitter;moved=new Observable(observer=>{let subscription=this._dragRef.moved.pipe(map(movedEvent=>({source:this,pointerPosition:movedEvent.pointerPosition,event:movedEvent.event,delta:movedEvent.delta,distance:movedEvent.distance}))).subscribe(observer);return()=>{subscription.unsubscribe()}});_injector=inject2(Injector);constructor(){let dropContainer=this.dropContainer,config2=inject2(CDK_DRAG_CONFIG,{optional:!0}),dragDrop=inject2(DragDrop);this._dragRef=dragDrop.createDrag(this.element,{dragStartThreshold:config2&&config2.dragStartThreshold!=null?config2.dragStartThreshold:5,pointerDirectionChangeThreshold:config2&&config2.pointerDirectionChangeThreshold!=null?config2.pointerDirectionChangeThreshold:5,zIndex:config2?.zIndex}),this._dragRef.data=this,this._dragDropRegistry.registerDirectiveNode(this.element.nativeElement,this),config2&&this._assignDefaults(config2),dropContainer&&(dropContainer.addItem(this),dropContainer._dropListRef.beforeStarted.pipe(takeUntil(this._destroyed)).subscribe(()=>{this._dragRef.scale=this.scale})),this._syncInputs(this._dragRef),this._handleEvents(this._dragRef)}getPlaceholderElement(){return this._dragRef.getPlaceholderElement()}getRootElement(){return this._dragRef.getRootElement()}reset(){this._dragRef.reset()}resetToBoundary(){this._dragRef.resetToBoundary()}getFreeDragPosition(){return this._dragRef.getFreeDragPosition()}setFreeDragPosition(value){this._dragRef.setFreeDragPosition(value)}ngAfterViewInit(){afterNextRender(()=>{this._updateRootElement(),this._setupHandlesListener(),this._dragRef.scale=this.scale,this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)},{injector:this._injector})}ngOnChanges(changes){let rootSelectorChange=changes.rootElementSelector,positionChange=changes.freeDragPosition;rootSelectorChange&&!rootSelectorChange.firstChange&&this._updateRootElement(),this._dragRef.scale=this.scale,positionChange&&!positionChange.firstChange&&this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)}ngOnDestroy(){this.dropContainer&&this.dropContainer.removeItem(this),this._dragDropRegistry.removeDirectiveNode(this.element.nativeElement),this._ngZone.runOutsideAngular(()=>{this._handles.complete(),this._destroyed.next(),this._destroyed.complete(),this._dragRef.dispose()})}_addHandle(handle){let handles=this._handles.getValue();handles.push(handle),this._handles.next(handles)}_removeHandle(handle){let handles=this._handles.getValue(),index=handles.indexOf(handle);index>-1&&(handles.splice(index,1),this._handles.next(handles))}_setPreviewTemplate(preview){this._previewTemplate=preview}_resetPreviewTemplate(preview){preview===this._previewTemplate&&(this._previewTemplate=null)}_setPlaceholderTemplate(placeholder){this._placeholderTemplate=placeholder}_resetPlaceholderTemplate(placeholder){placeholder===this._placeholderTemplate&&(this._placeholderTemplate=null)}_updateRootElement(){let element=this.element.nativeElement,rootElement=element;this.rootElementSelector&&(rootElement=element.closest!==void 0?element.closest(this.rootElementSelector):element.parentElement?.closest(this.rootElementSelector)),this._dragRef.withRootElement(rootElement||element)}_getBoundaryElement(){let boundary=this.boundaryElement;return boundary?typeof boundary=="string"?this.element.nativeElement.closest(boundary):coerceElement(boundary):null}_syncInputs(ref){ref.beforeStarted.subscribe(()=>{if(!ref.isDragging()){let dir=this._dir,dragStartDelay=this.dragStartDelay,placeholder=this._placeholderTemplate?{template:this._placeholderTemplate.templateRef,context:this._placeholderTemplate.data,viewContainer:this._viewContainerRef}:null,preview=this._previewTemplate?{template:this._previewTemplate.templateRef,context:this._previewTemplate.data,matchSize:this._previewTemplate.matchSize,viewContainer:this._viewContainerRef}:null;ref.disabled=this.disabled,ref.lockAxis=this.lockAxis,ref.scale=this.scale,ref.dragStartDelay=typeof dragStartDelay=="object"&&dragStartDelay?dragStartDelay:coerceNumberProperty(dragStartDelay),ref.constrainPosition=this.constrainPosition,ref.previewClass=this.previewClass,ref.withBoundaryElement(this._getBoundaryElement()).withPlaceholderTemplate(placeholder).withPreviewTemplate(preview).withPreviewContainer(this.previewContainer||"global"),dir&&ref.withDirection(dir.value)}}),ref.beforeStarted.pipe(take(1)).subscribe(()=>{if(this._parentDrag){ref.withParent(this._parentDrag._dragRef);return}let parent=this.element.nativeElement.parentElement;for(;parent;){let parentDrag=this._dragDropRegistry.getDragDirectiveForNode(parent);if(parentDrag){ref.withParent(parentDrag._dragRef);break}parent=parent.parentElement}})}_handleEvents(ref){ref.started.subscribe(startEvent=>{this.started.emit({source:this,event:startEvent.event}),this._changeDetectorRef.markForCheck()}),ref.released.subscribe(releaseEvent=>{this.released.emit({source:this,event:releaseEvent.event})}),ref.ended.subscribe(endEvent=>{this.ended.emit({source:this,distance:endEvent.distance,dropPoint:endEvent.dropPoint,event:endEvent.event}),this._changeDetectorRef.markForCheck()}),ref.entered.subscribe(enterEvent=>{this.entered.emit({container:enterEvent.container.data,item:this,currentIndex:enterEvent.currentIndex})}),ref.exited.subscribe(exitEvent=>{this.exited.emit({container:exitEvent.container.data,item:this})}),ref.dropped.subscribe(dropEvent=>{this.dropped.emit({previousIndex:dropEvent.previousIndex,currentIndex:dropEvent.currentIndex,previousContainer:dropEvent.previousContainer.data,container:dropEvent.container.data,isPointerOverContainer:dropEvent.isPointerOverContainer,item:this,distance:dropEvent.distance,dropPoint:dropEvent.dropPoint,event:dropEvent.event})})}_assignDefaults(config2){let{lockAxis,dragStartDelay,constrainPosition,previewClass,boundaryElement,draggingDisabled,rootElementSelector,previewContainer}=config2;this.disabled=draggingDisabled??!1,this.dragStartDelay=dragStartDelay||0,lockAxis&&(this.lockAxis=lockAxis),constrainPosition&&(this.constrainPosition=constrainPosition),previewClass&&(this.previewClass=previewClass),boundaryElement&&(this.boundaryElement=boundaryElement),rootElementSelector&&(this.rootElementSelector=rootElementSelector),previewContainer&&(this.previewContainer=previewContainer)}_setupHandlesListener(){this._handles.pipe(tap(handles=>{let handleElements=handles.map(handle=>handle.element);this._selfHandle&&this.rootElementSelector&&handleElements.push(this.element),this._dragRef.withHandles(handleElements)}),switchMap(handles=>merge(...handles.map(item=>item._stateChanges.pipe(startWith(item))))),takeUntil(this._destroyed)).subscribe(handleInstance=>{let dragRef=this._dragRef,handle=handleInstance.element.nativeElement;handleInstance.disabled?dragRef.disableHandle(handle):dragRef.enableHandle(handle)})}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkDrag2)};static \u0275dir=\u0275\u0275defineDirective({type:CdkDrag2,selectors:[["","cdkDrag",""]],hostAttrs:[1,"cdk-drag"],hostVars:4,hostBindings:function(rf,ctx){rf&2&&\u0275\u0275classProp("cdk-drag-disabled",ctx.disabled)("cdk-drag-dragging",ctx._dragRef.isDragging())},inputs:{data:[0,"cdkDragData","data"],lockAxis:[0,"cdkDragLockAxis","lockAxis"],rootElementSelector:[0,"cdkDragRootElement","rootElementSelector"],boundaryElement:[0,"cdkDragBoundary","boundaryElement"],dragStartDelay:[0,"cdkDragStartDelay","dragStartDelay"],freeDragPosition:[0,"cdkDragFreeDragPosition","freeDragPosition"],disabled:[2,"cdkDragDisabled","disabled",booleanAttribute],constrainPosition:[0,"cdkDragConstrainPosition","constrainPosition"],previewClass:[0,"cdkDragPreviewClass","previewClass"],previewContainer:[0,"cdkDragPreviewContainer","previewContainer"],scale:[2,"cdkDragScale","scale",numberAttribute]},outputs:{started:"cdkDragStarted",released:"cdkDragReleased",ended:"cdkDragEnded",entered:"cdkDragEntered",exited:"cdkDragExited",dropped:"cdkDragDropped",moved:"cdkDragMoved"},exportAs:["cdkDrag"],features:[\u0275\u0275ProvidersFeature([{provide:CDK_DRAG_PARENT,useExisting:CdkDrag2}]),\u0275\u0275NgOnChangesFeature]})}return CdkDrag2})(),CDK_DROP_LIST_GROUP=new InjectionToken("CdkDropListGroup");var CdkDropList=(()=>{class CdkDropList2{element=inject2(ElementRef);_changeDetectorRef=inject2(ChangeDetectorRef);_scrollDispatcher=inject2(ScrollDispatcher);_dir=inject2(Directionality,{optional:!0});_group=inject2(CDK_DROP_LIST_GROUP,{optional:!0,skipSelf:!0});_latestSortedRefs;_destroyed=new Subject;_scrollableParentsResolved;static _dropLists=[];_dropListRef;connectedTo=[];data;orientation;id=inject2(_IdGenerator).getId("cdk-drop-list-");lockAxis;get disabled(){return this._disabled||!!this._group&&this._group.disabled}set disabled(value){this._dropListRef.disabled=this._disabled=value}_disabled;sortingDisabled;enterPredicate=()=>!0;sortPredicate=()=>!0;autoScrollDisabled;autoScrollStep;elementContainerSelector;hasAnchor;dropped=new EventEmitter;entered=new EventEmitter;exited=new EventEmitter;sorted=new EventEmitter;_unsortedItems=new Set;constructor(){let dragDrop=inject2(DragDrop),config2=inject2(CDK_DRAG_CONFIG,{optional:!0});this._dropListRef=dragDrop.createDropList(this.element),this._dropListRef.data=this,config2&&this._assignDefaults(config2),this._dropListRef.enterPredicate=(drag,drop)=>this.enterPredicate(drag.data,drop.data),this._dropListRef.sortPredicate=(index,drag,drop)=>this.sortPredicate(index,drag.data,drop.data),this._setupInputSyncSubscription(this._dropListRef),this._handleEvents(this._dropListRef),CdkDropList2._dropLists.push(this),this._group&&this._group._items.add(this)}addItem(item){this._unsortedItems.add(item),item._dragRef._withDropContainer(this._dropListRef),this._dropListRef.isDragging()&&this._syncItemsWithRef(this.getSortedItems().map(item2=>item2._dragRef))}removeItem(item){if(this._unsortedItems.delete(item),this._latestSortedRefs){let index=this._latestSortedRefs.indexOf(item._dragRef);index>-1&&(this._latestSortedRefs.splice(index,1),this._syncItemsWithRef(this._latestSortedRefs))}}getSortedItems(){return Array.from(this._unsortedItems).sort((a,b)=>a._dragRef.getVisibleElement().compareDocumentPosition(b._dragRef.getVisibleElement())&Node.DOCUMENT_POSITION_FOLLOWING?-1:1)}ngOnDestroy(){let index=CdkDropList2._dropLists.indexOf(this);index>-1&&CdkDropList2._dropLists.splice(index,1),this._group&&this._group._items.delete(this),this._latestSortedRefs=void 0,this._unsortedItems.clear(),this._dropListRef.dispose(),this._destroyed.next(),this._destroyed.complete()}_setupInputSyncSubscription(ref){this._dir&&this._dir.change.pipe(startWith(this._dir.value),takeUntil(this._destroyed)).subscribe(value=>ref.withDirection(value)),ref.beforeStarted.subscribe(()=>{let siblings=coerceArray(this.connectedTo).map(drop=>{if(typeof drop=="string"){let correspondingDropList=CdkDropList2._dropLists.find(list=>list.id===drop);return correspondingDropList}return drop});if(this._group&&this._group._items.forEach(drop=>{siblings.indexOf(drop)===-1&&siblings.push(drop)}),!this._scrollableParentsResolved){let scrollableParents=this._scrollDispatcher.getAncestorScrollContainers(this.element).map(scrollable=>scrollable.getElementRef().nativeElement);this._dropListRef.withScrollableParents(scrollableParents),this._scrollableParentsResolved=!0}if(this.elementContainerSelector){let container=this.element.nativeElement.querySelector(this.elementContainerSelector);ref.withElementContainer(container)}ref.disabled=this.disabled,ref.lockAxis=this.lockAxis,ref.sortingDisabled=this.sortingDisabled,ref.autoScrollDisabled=this.autoScrollDisabled,ref.autoScrollStep=coerceNumberProperty(this.autoScrollStep,2),ref.hasAnchor=this.hasAnchor,ref.connectedTo(siblings.filter(drop=>drop&&drop!==this).map(list=>list._dropListRef)).withOrientation(this.orientation)})}_handleEvents(ref){ref.beforeStarted.subscribe(()=>{this._syncItemsWithRef(this.getSortedItems().map(item=>item._dragRef)),this._changeDetectorRef.markForCheck()}),ref.entered.subscribe(event=>{this.entered.emit({container:this,item:event.item.data,currentIndex:event.currentIndex})}),ref.exited.subscribe(event=>{this.exited.emit({container:this,item:event.item.data}),this._changeDetectorRef.markForCheck()}),ref.sorted.subscribe(event=>{this.sorted.emit({previousIndex:event.previousIndex,currentIndex:event.currentIndex,container:this,item:event.item.data})}),ref.dropped.subscribe(dropEvent=>{this.dropped.emit({previousIndex:dropEvent.previousIndex,currentIndex:dropEvent.currentIndex,previousContainer:dropEvent.previousContainer.data,container:dropEvent.container.data,item:dropEvent.item.data,isPointerOverContainer:dropEvent.isPointerOverContainer,distance:dropEvent.distance,dropPoint:dropEvent.dropPoint,event:dropEvent.event}),this._changeDetectorRef.markForCheck()}),merge(ref.receivingStarted,ref.receivingStopped).subscribe(()=>this._changeDetectorRef.markForCheck())}_assignDefaults(config2){let{lockAxis,draggingDisabled,sortingDisabled,listAutoScrollDisabled,listOrientation}=config2;this.disabled=draggingDisabled??!1,this.sortingDisabled=sortingDisabled??!1,this.autoScrollDisabled=listAutoScrollDisabled??!1,this.orientation=listOrientation||"vertical",lockAxis&&(this.lockAxis=lockAxis)}_syncItemsWithRef(items){this._latestSortedRefs=items,this._dropListRef.withItems(items)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkDropList2)};static \u0275dir=\u0275\u0275defineDirective({type:CdkDropList2,selectors:[["","cdkDropList",""],["cdk-drop-list"]],hostAttrs:[1,"cdk-drop-list"],hostVars:7,hostBindings:function(rf,ctx){rf&2&&(\u0275\u0275attribute("id",ctx.id),\u0275\u0275classProp("cdk-drop-list-disabled",ctx.disabled)("cdk-drop-list-dragging",ctx._dropListRef.isDragging())("cdk-drop-list-receiving",ctx._dropListRef.isReceiving()))},inputs:{connectedTo:[0,"cdkDropListConnectedTo","connectedTo"],data:[0,"cdkDropListData","data"],orientation:[0,"cdkDropListOrientation","orientation"],id:"id",lockAxis:[0,"cdkDropListLockAxis","lockAxis"],disabled:[2,"cdkDropListDisabled","disabled",booleanAttribute],sortingDisabled:[2,"cdkDropListSortingDisabled","sortingDisabled",booleanAttribute],enterPredicate:[0,"cdkDropListEnterPredicate","enterPredicate"],sortPredicate:[0,"cdkDropListSortPredicate","sortPredicate"],autoScrollDisabled:[2,"cdkDropListAutoScrollDisabled","autoScrollDisabled",booleanAttribute],autoScrollStep:[0,"cdkDropListAutoScrollStep","autoScrollStep"],elementContainerSelector:[0,"cdkDropListElementContainer","elementContainerSelector"],hasAnchor:[2,"cdkDropListHasAnchor","hasAnchor",booleanAttribute]},outputs:{dropped:"cdkDropListDropped",entered:"cdkDropListEntered",exited:"cdkDropListExited",sorted:"cdkDropListSorted"},exportAs:["cdkDropList"],features:[\u0275\u0275ProvidersFeature([{provide:CDK_DROP_LIST_GROUP,useValue:void 0},{provide:CDK_DROP_LIST,useExisting:CdkDropList2}])]})}return CdkDropList2})(),CDK_DRAG_PREVIEW=new InjectionToken("CdkDragPreview"),CdkDragPreview=(()=>{class CdkDragPreview2{templateRef=inject2(TemplateRef);_drag=inject2(CDK_DRAG_PARENT,{optional:!0});data;matchSize=!1;constructor(){this._drag?._setPreviewTemplate(this)}ngOnDestroy(){this._drag?._resetPreviewTemplate(this)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkDragPreview2)};static \u0275dir=\u0275\u0275defineDirective({type:CdkDragPreview2,selectors:[["ng-template","cdkDragPreview",""]],inputs:{data:"data",matchSize:[2,"matchSize","matchSize",booleanAttribute]},features:[\u0275\u0275ProvidersFeature([{provide:CDK_DRAG_PREVIEW,useExisting:CdkDragPreview2}])]})}return CdkDragPreview2})(),CDK_DRAG_PLACEHOLDER=new InjectionToken("CdkDragPlaceholder"),CdkDragPlaceholder=(()=>{class CdkDragPlaceholder2{templateRef=inject2(TemplateRef);_drag=inject2(CDK_DRAG_PARENT,{optional:!0});data;constructor(){this._drag?._setPlaceholderTemplate(this)}ngOnDestroy(){this._drag?._resetPlaceholderTemplate(this)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkDragPlaceholder2)};static \u0275dir=\u0275\u0275defineDirective({type:CdkDragPlaceholder2,selectors:[["ng-template","cdkDragPlaceholder",""]],inputs:{data:"data"},features:[\u0275\u0275ProvidersFeature([{provide:CDK_DRAG_PLACEHOLDER,useExisting:CdkDragPlaceholder2}])]})}return CdkDragPlaceholder2})();var DragDropModule=(()=>{class DragDropModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DragDropModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:DragDropModule2});static \u0275inj=\u0275\u0275defineInjector({providers:[DragDrop],imports:[CdkScrollableModule]})}return DragDropModule2})();var MatBadgeModule=(()=>{class MatBadgeModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatBadgeModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:MatBadgeModule2});static \u0275inj=\u0275\u0275defineInjector({imports:[A11yModule,MatCommonModule,MatCommonModule]})}return MatBadgeModule2})();function CdkDialogContainer_ng_template_0_Template(rf,ctx){}var DialogConfig=class{viewContainerRef;injector;id;role="dialog";panelClass="";hasBackdrop=!0;backdropClass="";disableClose=!1;closePredicate;width="";height="";minWidth;minHeight;maxWidth;maxHeight;positionStrategy;data=null;direction;ariaDescribedBy=null;ariaLabelledBy=null;ariaLabel=null;ariaModal=!1;autoFocus="first-tabbable";restoreFocus=!0;scrollStrategy;closeOnNavigation=!0;closeOnDestroy=!0;closeOnOverlayDetachments=!0;disableAnimations=!1;providers;container;templateContext};var CdkDialogContainer=(()=>{class CdkDialogContainer2 extends BasePortalOutlet{_elementRef=inject2(ElementRef);_focusTrapFactory=inject2(FocusTrapFactory);_config;_interactivityChecker=inject2(InteractivityChecker);_ngZone=inject2(NgZone);_focusMonitor=inject2(FocusMonitor);_renderer=inject2(Renderer2);_changeDetectorRef=inject2(ChangeDetectorRef);_injector=inject2(Injector);_platform=inject2(Platform);_document=inject2(DOCUMENT);_portalOutlet;_focusTrapped=new Subject;_focusTrap=null;_elementFocusedBeforeDialogWasOpened=null;_closeInteractionType=null;_ariaLabelledByQueue=[];_isDestroyed=!1;constructor(){super(),this._config=inject2(DialogConfig,{optional:!0})||new DialogConfig,this._config.ariaLabelledBy&&this._ariaLabelledByQueue.push(this._config.ariaLabelledBy)}_addAriaLabelledBy(id){this._ariaLabelledByQueue.push(id),this._changeDetectorRef.markForCheck()}_removeAriaLabelledBy(id){let index=this._ariaLabelledByQueue.indexOf(id);index>-1&&(this._ariaLabelledByQueue.splice(index,1),this._changeDetectorRef.markForCheck())}_contentAttached(){this._initializeFocusTrap(),this._captureInitialFocus()}_captureInitialFocus(){this._trapFocus()}ngOnDestroy(){this._focusTrapped.complete(),this._isDestroyed=!0,this._restoreFocus()}attachComponentPortal(portal){this._portalOutlet.hasAttached();let result=this._portalOutlet.attachComponentPortal(portal);return this._contentAttached(),result}attachTemplatePortal(portal){this._portalOutlet.hasAttached();let result=this._portalOutlet.attachTemplatePortal(portal);return this._contentAttached(),result}attachDomPortal=portal=>{this._portalOutlet.hasAttached();let result=this._portalOutlet.attachDomPortal(portal);return this._contentAttached(),result};_recaptureFocus(){this._containsFocus()||this._trapFocus()}_forceFocus(element,options){this._interactivityChecker.isFocusable(element)||(element.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{let callback=()=>{deregisterBlur(),deregisterMousedown(),element.removeAttribute("tabindex")},deregisterBlur=this._renderer.listen(element,"blur",callback),deregisterMousedown=this._renderer.listen(element,"mousedown",callback)})),element.focus(options)}_focusByCssSelector(selector,options){let elementToFocus=this._elementRef.nativeElement.querySelector(selector);elementToFocus&&this._forceFocus(elementToFocus,options)}_trapFocus(options){this._isDestroyed||afterNextRender(()=>{let element=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||element.focus(options);break;case!0:case"first-tabbable":this._focusTrap?.focusInitialElement(options)||this._focusDialogContainer(options);break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]',options);break;default:this._focusByCssSelector(this._config.autoFocus,options);break}this._focusTrapped.next()},{injector:this._injector})}_restoreFocus(){let focusConfig=this._config.restoreFocus,focusTargetElement=null;if(typeof focusConfig=="string"?focusTargetElement=this._document.querySelector(focusConfig):typeof focusConfig=="boolean"?focusTargetElement=focusConfig?this._elementFocusedBeforeDialogWasOpened:null:focusConfig&&(focusTargetElement=focusConfig),this._config.restoreFocus&&focusTargetElement&&typeof focusTargetElement.focus=="function"){let activeElement=_getFocusedElementPierceShadowDom(),element=this._elementRef.nativeElement;(!activeElement||activeElement===this._document.body||activeElement===element||element.contains(activeElement))&&(this._focusMonitor?(this._focusMonitor.focusVia(focusTargetElement,this._closeInteractionType),this._closeInteractionType=null):focusTargetElement.focus())}this._focusTrap&&this._focusTrap.destroy()}_focusDialogContainer(options){this._elementRef.nativeElement.focus?.(options)}_containsFocus(){let element=this._elementRef.nativeElement,activeElement=_getFocusedElementPierceShadowDom();return element===activeElement||element.contains(activeElement)}_initializeFocusTrap(){this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._document&&(this._elementFocusedBeforeDialogWasOpened=_getFocusedElementPierceShadowDom()))}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkDialogContainer2)};static \u0275cmp=\u0275\u0275defineComponent({type:CdkDialogContainer2,selectors:[["cdk-dialog-container"]],viewQuery:function(rf,ctx){if(rf&1&&\u0275\u0275viewQuery(CdkPortalOutlet,7),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._portalOutlet=_t.first)}},hostAttrs:["tabindex","-1",1,"cdk-dialog-container"],hostVars:6,hostBindings:function(rf,ctx){rf&2&&\u0275\u0275attribute("id",ctx._config.id||null)("role",ctx._config.role)("aria-modal",ctx._config.ariaModal)("aria-labelledby",ctx._config.ariaLabel?null:ctx._ariaLabelledByQueue[0])("aria-label",ctx._config.ariaLabel)("aria-describedby",ctx._config.ariaDescribedBy||null)},features:[\u0275\u0275InheritDefinitionFeature],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(rf,ctx){rf&1&&\u0275\u0275template(0,CdkDialogContainer_ng_template_0_Template,0,0,"ng-template",0)},dependencies:[CdkPortalOutlet],styles:[`.cdk-dialog-container{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit}
|
|
76
76
|
`],encapsulation:2})}return CdkDialogContainer2})(),DialogRef=class{overlayRef;config;componentInstance;componentRef;containerInstance;disableClose;closed=new Subject;backdropClick;keydownEvents;outsidePointerEvents;id;_detachSubscription;constructor(overlayRef,config2){this.overlayRef=overlayRef,this.config=config2,this.disableClose=config2.disableClose,this.backdropClick=overlayRef.backdropClick(),this.keydownEvents=overlayRef.keydownEvents(),this.outsidePointerEvents=overlayRef.outsidePointerEvents(),this.id=config2.id,this.keydownEvents.subscribe(event=>{event.keyCode===27&&!this.disableClose&&!hasModifierKey(event)&&(event.preventDefault(),this.close(void 0,{focusOrigin:"keyboard"}))}),this.backdropClick.subscribe(()=>{!this.disableClose&&this._canClose()?this.close(void 0,{focusOrigin:"mouse"}):this.containerInstance._recaptureFocus?.()}),this._detachSubscription=overlayRef.detachments().subscribe(()=>{config2.closeOnOverlayDetachments!==!1&&this.close()})}close(result,options){if(this._canClose(result)){let closedSubject=this.closed;this.containerInstance._closeInteractionType=options?.focusOrigin||"program",this._detachSubscription.unsubscribe(),this.overlayRef.dispose(),closedSubject.next(result),closedSubject.complete(),this.componentInstance=this.containerInstance=null}}updatePosition(){return this.overlayRef.updatePosition(),this}updateSize(width="",height=""){return this.overlayRef.updateSize({width,height}),this}addPanelClass(classes){return this.overlayRef.addPanelClass(classes),this}removePanelClass(classes){return this.overlayRef.removePanelClass(classes),this}_canClose(result){let config2=this.config;return!!this.containerInstance&&(!config2.closePredicate||config2.closePredicate(result,config2,this.componentInstance))}},DIALOG_SCROLL_STRATEGY=new InjectionToken("DialogScrollStrategy",{providedIn:"root",factory:()=>{let injector=inject2(Injector);return()=>createBlockScrollStrategy(injector)}}),DIALOG_DATA=new InjectionToken("DialogData"),DEFAULT_DIALOG_CONFIG=new InjectionToken("DefaultDialogConfig");function getDirectionality(value){let valueSignal=signal(value),change=new EventEmitter;return{valueSignal,get value(){return valueSignal()},change,ngOnDestroy(){change.complete()}}}var Dialog=(()=>{class Dialog2{_injector=inject2(Injector);_defaultOptions=inject2(DEFAULT_DIALOG_CONFIG,{optional:!0});_parentDialog=inject2(Dialog2,{optional:!0,skipSelf:!0});_overlayContainer=inject2(OverlayContainer);_idGenerator=inject2(_IdGenerator);_openDialogsAtThisLevel=[];_afterAllClosedAtThisLevel=new Subject;_afterOpenedAtThisLevel=new Subject;_ariaHiddenElements=new Map;_scrollStrategy=inject2(DIALOG_SCROLL_STRATEGY);get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}afterAllClosed=defer(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(startWith(void 0)));constructor(){}open(componentOrTemplateRef,config2){let defaults2=this._defaultOptions||new DialogConfig;config2=__spreadValues(__spreadValues({},defaults2),config2),config2.id=config2.id||this._idGenerator.getId("cdk-dialog-"),config2.id&&this.getDialogById(config2.id);let overlayConfig=this._getOverlayConfig(config2),overlayRef=createOverlayRef(this._injector,overlayConfig),dialogRef=new DialogRef(overlayRef,config2),dialogContainer=this._attachContainer(overlayRef,dialogRef,config2);if(dialogRef.containerInstance=dialogContainer,!this.openDialogs.length){let overlayContainer=this._overlayContainer.getContainerElement();dialogContainer._focusTrapped?dialogContainer._focusTrapped.pipe(take(1)).subscribe(()=>{this._hideNonDialogContentFromAssistiveTechnology(overlayContainer)}):this._hideNonDialogContentFromAssistiveTechnology(overlayContainer)}return this._attachDialogContent(componentOrTemplateRef,dialogRef,dialogContainer,config2),this.openDialogs.push(dialogRef),dialogRef.closed.subscribe(()=>this._removeOpenDialog(dialogRef,!0)),this.afterOpened.next(dialogRef),dialogRef}closeAll(){reverseForEach(this.openDialogs,dialog=>dialog.close())}getDialogById(id){return this.openDialogs.find(dialog=>dialog.id===id)}ngOnDestroy(){reverseForEach(this._openDialogsAtThisLevel,dialog=>{dialog.config.closeOnDestroy===!1&&this._removeOpenDialog(dialog,!1)}),reverseForEach(this._openDialogsAtThisLevel,dialog=>dialog.close()),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete(),this._openDialogsAtThisLevel=[]}_getOverlayConfig(config2){let state2=new OverlayConfig({positionStrategy:config2.positionStrategy||createGlobalPositionStrategy().centerHorizontally().centerVertically(),scrollStrategy:config2.scrollStrategy||this._scrollStrategy(),panelClass:config2.panelClass,hasBackdrop:config2.hasBackdrop,direction:config2.direction,minWidth:config2.minWidth,minHeight:config2.minHeight,maxWidth:config2.maxWidth,maxHeight:config2.maxHeight,width:config2.width,height:config2.height,disposeOnNavigation:config2.closeOnNavigation,disableAnimations:config2.disableAnimations});return config2.backdropClass&&(state2.backdropClass=config2.backdropClass),state2}_attachContainer(overlay,dialogRef,config2){let userInjector=config2.injector||config2.viewContainerRef?.injector,providers=[{provide:DialogConfig,useValue:config2},{provide:DialogRef,useValue:dialogRef},{provide:OverlayRef,useValue:overlay}],containerType;config2.container?typeof config2.container=="function"?containerType=config2.container:(containerType=config2.container.type,providers.push(...config2.container.providers(config2))):containerType=CdkDialogContainer;let containerPortal=new ComponentPortal(containerType,config2.viewContainerRef,Injector.create({parent:userInjector||this._injector,providers}));return overlay.attach(containerPortal).instance}_attachDialogContent(componentOrTemplateRef,dialogRef,dialogContainer,config2){if(componentOrTemplateRef instanceof TemplateRef){let injector=this._createInjector(config2,dialogRef,dialogContainer,void 0),context2={$implicit:config2.data,dialogRef};config2.templateContext&&(context2=__spreadValues(__spreadValues({},context2),typeof config2.templateContext=="function"?config2.templateContext():config2.templateContext)),dialogContainer.attachTemplatePortal(new TemplatePortal(componentOrTemplateRef,null,context2,injector))}else{let injector=this._createInjector(config2,dialogRef,dialogContainer,this._injector),contentRef=dialogContainer.attachComponentPortal(new ComponentPortal(componentOrTemplateRef,config2.viewContainerRef,injector));dialogRef.componentRef=contentRef,dialogRef.componentInstance=contentRef.instance}}_createInjector(config2,dialogRef,dialogContainer,fallbackInjector){let userInjector=config2.injector||config2.viewContainerRef?.injector,providers=[{provide:DIALOG_DATA,useValue:config2.data},{provide:DialogRef,useValue:dialogRef}];return config2.providers&&(typeof config2.providers=="function"?providers.push(...config2.providers(dialogRef,config2,dialogContainer)):providers.push(...config2.providers)),config2.direction&&(!userInjector||!userInjector.get(Directionality,null,{optional:!0}))&&providers.push({provide:Directionality,useValue:getDirectionality(config2.direction)}),Injector.create({parent:userInjector||fallbackInjector,providers})}_removeOpenDialog(dialogRef,emitEvent){let index=this.openDialogs.indexOf(dialogRef);index>-1&&(this.openDialogs.splice(index,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((previousValue,element)=>{previousValue?element.setAttribute("aria-hidden",previousValue):element.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),emitEvent&&this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(overlayContainer){if(overlayContainer.parentElement){let siblings=overlayContainer.parentElement.children;for(let i=siblings.length-1;i>-1;i--){let sibling=siblings[i];sibling!==overlayContainer&&sibling.nodeName!=="SCRIPT"&&sibling.nodeName!=="STYLE"&&!sibling.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(sibling,sibling.getAttribute("aria-hidden")),sibling.setAttribute("aria-hidden","true"))}}}_getAfterAllClosed(){let parent=this._parentDialog;return parent?parent._getAfterAllClosed():this._afterAllClosedAtThisLevel}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||Dialog2)};static \u0275prov=\u0275\u0275defineInjectable({token:Dialog2,factory:Dialog2.\u0275fac,providedIn:"root"})}return Dialog2})();function reverseForEach(items,callback){let i=items.length;for(;i--;)callback(items[i])}var DialogModule=(()=>{class DialogModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||DialogModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:DialogModule2});static \u0275inj=\u0275\u0275defineInjector({providers:[Dialog],imports:[OverlayModule,PortalModule,A11yModule,PortalModule]})}return DialogModule2})();function MatBottomSheetContainer_ng_template_0_Template(rf,ctx){}var ENTER_ANIMATION2="_mat-bottom-sheet-enter",EXIT_ANIMATION2="_mat-bottom-sheet-exit",MatBottomSheetContainer=(()=>{class MatBottomSheetContainer2 extends CdkDialogContainer{_breakpointSubscription;_animationsDisabled=_animationsDisabled();_animationState="void";_animationStateChanged=new EventEmitter;_destroyed;constructor(){super();let breakpointObserver=inject2(BreakpointObserver);this._breakpointSubscription=breakpointObserver.observe([Breakpoints.Medium,Breakpoints.Large,Breakpoints.XLarge]).subscribe(()=>{let classList=this._elementRef.nativeElement.classList;classList.toggle("mat-bottom-sheet-container-medium",breakpointObserver.isMatched(Breakpoints.Medium)),classList.toggle("mat-bottom-sheet-container-large",breakpointObserver.isMatched(Breakpoints.Large)),classList.toggle("mat-bottom-sheet-container-xlarge",breakpointObserver.isMatched(Breakpoints.XLarge))})}enter(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.markForCheck(),this._changeDetectorRef.detectChanges(),this._animationsDisabled&&this._simulateAnimation(ENTER_ANIMATION2))}exit(){this._destroyed||(this._elementRef.nativeElement.setAttribute("mat-exit",""),this._animationState="hidden",this._changeDetectorRef.markForCheck(),this._animationsDisabled&&this._simulateAnimation(EXIT_ANIMATION2))}ngOnDestroy(){super.ngOnDestroy(),this._breakpointSubscription.unsubscribe(),this._destroyed=!0}_simulateAnimation(name){this._ngZone.run(()=>{this._handleAnimationEvent(!0,name),setTimeout(()=>this._handleAnimationEvent(!1,name))})}_trapFocus(){super._trapFocus({preventScroll:!0})}_handleAnimationEvent(isStart2,animationName){let isEnter=animationName===ENTER_ANIMATION2;(isEnter||animationName===EXIT_ANIMATION2)&&this._animationStateChanged.emit({toState:isEnter?"visible":"hidden",phase:isStart2?"start":"done"})}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatBottomSheetContainer2)};static \u0275cmp=\u0275\u0275defineComponent({type:MatBottomSheetContainer2,selectors:[["mat-bottom-sheet-container"]],hostAttrs:["tabindex","-1",1,"mat-bottom-sheet-container"],hostVars:9,hostBindings:function(rf,ctx){rf&1&&\u0275\u0275listener("animationstart",function($event){return ctx._handleAnimationEvent(!0,$event.animationName)})("animationend",function($event){return ctx._handleAnimationEvent(!1,$event.animationName)})("animationcancel",function($event){return ctx._handleAnimationEvent(!1,$event.animationName)}),rf&2&&(\u0275\u0275attribute("role",ctx._config.role)("aria-modal",ctx._config.ariaModal)("aria-label",ctx._config.ariaLabel),\u0275\u0275classProp("mat-bottom-sheet-container-animations-enabled",!ctx._animationsDisabled)("mat-bottom-sheet-container-enter",ctx._animationState==="visible")("mat-bottom-sheet-container-exit",ctx._animationState==="hidden"))},features:[\u0275\u0275InheritDefinitionFeature],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(rf,ctx){rf&1&&\u0275\u0275template(0,MatBottomSheetContainer_ng_template_0_Template,0,0,"ng-template",0)},dependencies:[CdkPortalOutlet],styles:[`@keyframes _mat-bottom-sheet-enter{from{transform:translateY(100%)}to{transform:none}}@keyframes _mat-bottom-sheet-exit{from{transform:none}to{transform:translateY(100%)}}.mat-bottom-sheet-container{box-shadow:0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);padding:8px 16px;min-width:100vw;box-sizing:border-box;display:block;outline:0;max-height:80vh;overflow:auto;position:relative;background:var(--mat-bottom-sheet-container-background-color, var(--mat-sys-surface-container-low));color:var(--mat-bottom-sheet-container-text-color, var(--mat-sys-on-surface));font-family:var(--mat-bottom-sheet-container-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-bottom-sheet-container-text-size, var(--mat-sys-body-large-size));line-height:var(--mat-bottom-sheet-container-text-line-height, var(--mat-sys-body-large-line-height));font-weight:var(--mat-bottom-sheet-container-text-weight, var(--mat-sys-body-large-weight));letter-spacing:var(--mat-bottom-sheet-container-text-tracking, var(--mat-sys-body-large-tracking))}@media(forced-colors: active){.mat-bottom-sheet-container{outline:1px solid}}.mat-bottom-sheet-container-animations-enabled{transform:translateY(100%)}.mat-bottom-sheet-container-animations-enabled.mat-bottom-sheet-container-enter{animation:_mat-bottom-sheet-enter 195ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-bottom-sheet-container-animations-enabled.mat-bottom-sheet-container-exit{animation:_mat-bottom-sheet-exit 375ms cubic-bezier(0.4, 0, 1, 1) backwards}.mat-bottom-sheet-container-xlarge,.mat-bottom-sheet-container-large,.mat-bottom-sheet-container-medium{border-top-left-radius:var(--mat-bottom-sheet-container-shape, 28px);border-top-right-radius:var(--mat-bottom-sheet-container-shape, 28px)}.mat-bottom-sheet-container-medium{min-width:384px;max-width:calc(100vw - 128px)}.mat-bottom-sheet-container-large{min-width:512px;max-width:calc(100vw - 256px)}.mat-bottom-sheet-container-xlarge{min-width:576px;max-width:calc(100vw - 384px)}
|
|
77
77
|
`],encapsulation:2})}return MatBottomSheetContainer2})(),MAT_BOTTOM_SHEET_DATA=new InjectionToken("MatBottomSheetData"),MatBottomSheetConfig=class{viewContainerRef;panelClass;direction;data=null;hasBackdrop=!0;backdropClass;disableClose=!1;ariaLabel=null;ariaModal=!1;closeOnNavigation=!0;autoFocus="first-tabbable";restoreFocus=!0;scrollStrategy;height="";minHeight;maxHeight},MatBottomSheetRef=class{_ref;get instance(){return this._ref.componentInstance}get componentRef(){return this._ref.componentRef}containerInstance;disableClose;_afterOpened=new Subject;_result;_closeFallbackTimeout;constructor(_ref,config2,containerInstance){this._ref=_ref,this.containerInstance=containerInstance,this.disableClose=config2.disableClose,containerInstance._animationStateChanged.pipe(filter(event=>event.phase==="done"&&event.toState==="visible"),take(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),containerInstance._animationStateChanged.pipe(filter(event=>event.phase==="done"&&event.toState==="hidden"),take(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._ref.close(this._result)}),_ref.overlayRef.detachments().subscribe(()=>{this._ref.close(this._result)}),merge(this.backdropClick(),this.keydownEvents().pipe(filter(event=>event.keyCode===27))).subscribe(event=>{!this.disableClose&&(event.type!=="keydown"||!hasModifierKey(event))&&(event.preventDefault(),this.dismiss())})}dismiss(result){this.containerInstance&&(this.containerInstance._animationStateChanged.pipe(filter(event=>event.phase==="start"),take(1)).subscribe(()=>{this._closeFallbackTimeout=setTimeout(()=>this._ref.close(this._result),500),this._ref.overlayRef.detachBackdrop()}),this._result=result,this.containerInstance.exit(),this.containerInstance=null)}afterDismissed(){return this._ref.closed}afterOpened(){return this._afterOpened}backdropClick(){return this._ref.backdropClick}keydownEvents(){return this._ref.keydownEvents}},MAT_BOTTOM_SHEET_DEFAULT_OPTIONS=new InjectionToken("mat-bottom-sheet-default-options"),MatBottomSheet=(()=>{class MatBottomSheet2{_injector=inject2(Injector);_parentBottomSheet=inject2(MatBottomSheet2,{optional:!0,skipSelf:!0});_animationsDisabled=_animationsDisabled();_defaultOptions=inject2(MAT_BOTTOM_SHEET_DEFAULT_OPTIONS,{optional:!0});_bottomSheetRefAtThisLevel=null;_dialog=inject2(Dialog);get _openedBottomSheetRef(){let parent=this._parentBottomSheet;return parent?parent._openedBottomSheetRef:this._bottomSheetRefAtThisLevel}set _openedBottomSheetRef(value){this._parentBottomSheet?this._parentBottomSheet._openedBottomSheetRef=value:this._bottomSheetRefAtThisLevel=value}constructor(){}open(componentOrTemplateRef,config2){let _config=__spreadValues(__spreadValues({},this._defaultOptions||new MatBottomSheetConfig),config2),ref;return this._dialog.open(componentOrTemplateRef,__spreadProps(__spreadValues({},_config),{disableClose:!0,closeOnOverlayDetachments:!1,maxWidth:"100%",container:MatBottomSheetContainer,scrollStrategy:_config.scrollStrategy||createBlockScrollStrategy(this._injector),positionStrategy:createGlobalPositionStrategy(this._injector).centerHorizontally().bottom("0"),disableAnimations:this._animationsDisabled,templateContext:()=>({bottomSheetRef:ref}),providers:(cdkRef,_cdkConfig,container)=>(ref=new MatBottomSheetRef(cdkRef,_config,container),[{provide:MatBottomSheetRef,useValue:ref},{provide:MAT_BOTTOM_SHEET_DATA,useValue:_config.data}])})),ref.afterDismissed().subscribe(()=>{this._openedBottomSheetRef===ref&&(this._openedBottomSheetRef=null)}),this._openedBottomSheetRef?(this._openedBottomSheetRef.afterDismissed().subscribe(()=>ref.containerInstance?.enter()),this._openedBottomSheetRef.dismiss()):ref.containerInstance.enter(),this._openedBottomSheetRef=ref,ref}dismiss(result){this._openedBottomSheetRef&&this._openedBottomSheetRef.dismiss(result)}ngOnDestroy(){this._bottomSheetRefAtThisLevel&&this._bottomSheetRefAtThisLevel.dismiss()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatBottomSheet2)};static \u0275prov=\u0275\u0275defineInjectable({token:MatBottomSheet2,factory:MatBottomSheet2.\u0275fac,providedIn:"root"})}return MatBottomSheet2})(),MatBottomSheetModule=(()=>{class MatBottomSheetModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatBottomSheetModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:MatBottomSheetModule2});static \u0275inj=\u0275\u0275defineInjector({providers:[MatBottomSheet],imports:[DialogModule,MatCommonModule,PortalModule,MatCommonModule]})}return MatBottomSheetModule2})();var _c015=["button"],_c112=["*"];function MatButtonToggle_Conditional_2_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementStart(0,"div",2),\u0275\u0275element(1,"mat-pseudo-checkbox",6),\u0275\u0275elementEnd()),rf&2){let ctx_r1=\u0275\u0275nextContext();\u0275\u0275advance(),\u0275\u0275property("disabled",ctx_r1.disabled)}}var MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS=new InjectionToken("MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS",{providedIn:"root",factory:MAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY});function MAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY(){return{hideSingleSelectionIndicator:!1,hideMultipleSelectionIndicator:!1,disabledInteractive:!1}}var MAT_BUTTON_TOGGLE_GROUP=new InjectionToken("MatButtonToggleGroup");var MatButtonToggleChange=class{source;value;constructor(source,value){this.source=source,this.value=value}};var MatButtonToggle=(()=>{class MatButtonToggle2{_changeDetectorRef=inject2(ChangeDetectorRef);_elementRef=inject2(ElementRef);_focusMonitor=inject2(FocusMonitor);_idGenerator=inject2(_IdGenerator);_animationDisabled=_animationsDisabled();_checked=!1;ariaLabel;ariaLabelledby=null;_buttonElement;buttonToggleGroup;get buttonId(){return`${this.id}-button`}id;name;value;get tabIndex(){return this._tabIndex()}set tabIndex(value){this._tabIndex.set(value)}_tabIndex;disableRipple;get appearance(){return this.buttonToggleGroup?this.buttonToggleGroup.appearance:this._appearance}set appearance(value){this._appearance=value}_appearance;get checked(){return this.buttonToggleGroup?this.buttonToggleGroup._isSelected(this):this._checked}set checked(value){value!==this._checked&&(this._checked=value,this.buttonToggleGroup&&this.buttonToggleGroup._syncButtonToggle(this,this._checked),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled||this.buttonToggleGroup&&this.buttonToggleGroup.disabled}set disabled(value){this._disabled=value}_disabled=!1;get disabledInteractive(){return this._disabledInteractive||this.buttonToggleGroup!==null&&this.buttonToggleGroup.disabledInteractive}set disabledInteractive(value){this._disabledInteractive=value}_disabledInteractive;change=new EventEmitter;constructor(){inject2(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);let toggleGroup=inject2(MAT_BUTTON_TOGGLE_GROUP,{optional:!0}),defaultTabIndex=inject2(new HostAttributeToken("tabindex"),{optional:!0})||"",defaultOptions2=inject2(MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS,{optional:!0});this._tabIndex=signal(parseInt(defaultTabIndex)||0),this.buttonToggleGroup=toggleGroup,this.appearance=defaultOptions2&&defaultOptions2.appearance?defaultOptions2.appearance:"standard",this.disabledInteractive=defaultOptions2?.disabledInteractive??!1}ngOnInit(){let group2=this.buttonToggleGroup;this.id=this.id||this._idGenerator.getId("mat-button-toggle-"),group2&&(group2._isPrechecked(this)?this.checked=!0:group2._isSelected(this)!==this._checked&&group2._syncButtonToggle(this,this._checked))}ngAfterViewInit(){this._animationDisabled||this._elementRef.nativeElement.classList.add("mat-button-toggle-animations-enabled"),this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){let group2=this.buttonToggleGroup;this._focusMonitor.stopMonitoring(this._elementRef),group2&&group2._isSelected(this)&&group2._syncButtonToggle(this,!1,!1,!0)}focus(options){this._buttonElement.nativeElement.focus(options)}_onButtonClick(){if(this.disabled)return;let newChecked=this.isSingleSelector()?!0:!this._checked;if(newChecked!==this._checked&&(this._checked=newChecked,this.buttonToggleGroup&&(this.buttonToggleGroup._syncButtonToggle(this,this._checked,!0),this.buttonToggleGroup._onTouched())),this.isSingleSelector()){let focusable=this.buttonToggleGroup._buttonToggles.find(toggle=>toggle.tabIndex===0);focusable&&(focusable.tabIndex=-1),this.tabIndex=0}this.change.emit(new MatButtonToggleChange(this,this.value))}_markForCheck(){this._changeDetectorRef.markForCheck()}_getButtonName(){return this.isSingleSelector()?this.buttonToggleGroup.name:this.name||null}isSingleSelector(){return this.buttonToggleGroup&&!this.buttonToggleGroup.multiple}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatButtonToggle2)};static \u0275cmp=\u0275\u0275defineComponent({type:MatButtonToggle2,selectors:[["mat-button-toggle"]],viewQuery:function(rf,ctx){if(rf&1&&\u0275\u0275viewQuery(_c015,5),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._buttonElement=_t.first)}},hostAttrs:["role","presentation",1,"mat-button-toggle"],hostVars:14,hostBindings:function(rf,ctx){rf&1&&\u0275\u0275listener("focus",function(){return ctx.focus()}),rf&2&&(\u0275\u0275attribute("aria-label",null)("aria-labelledby",null)("id",ctx.id)("name",null),\u0275\u0275classProp("mat-button-toggle-standalone",!ctx.buttonToggleGroup)("mat-button-toggle-checked",ctx.checked)("mat-button-toggle-disabled",ctx.disabled)("mat-button-toggle-disabled-interactive",ctx.disabledInteractive)("mat-button-toggle-appearance-standard",ctx.appearance==="standard"))},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],id:"id",name:"name",value:"value",tabIndex:"tabIndex",disableRipple:[2,"disableRipple","disableRipple",booleanAttribute],appearance:"appearance",checked:[2,"checked","checked",booleanAttribute],disabled:[2,"disabled","disabled",booleanAttribute],disabledInteractive:[2,"disabledInteractive","disabledInteractive",booleanAttribute]},outputs:{change:"change"},exportAs:["matButtonToggle"],ngContentSelectors:_c112,decls:7,vars:13,consts:[["button",""],["type","button",1,"mat-button-toggle-button","mat-focus-indicator",3,"click","id","disabled"],[1,"mat-button-toggle-checkbox-wrapper"],[1,"mat-button-toggle-label-content"],[1,"mat-button-toggle-focus-overlay"],["matRipple","",1,"mat-button-toggle-ripple",3,"matRippleTrigger","matRippleDisabled"],["state","checked","aria-hidden","true","appearance","minimal",3,"disabled"]],template:function(rf,ctx){if(rf&1){let _r1=\u0275\u0275getCurrentView();\u0275\u0275projectionDef(),\u0275\u0275elementStart(0,"button",1,0),\u0275\u0275listener("click",function(){return \u0275\u0275restoreView(_r1),\u0275\u0275resetView(ctx._onButtonClick())}),\u0275\u0275conditionalCreate(2,MatButtonToggle_Conditional_2_Template,2,1,"div",2),\u0275\u0275elementStart(3,"span",3),\u0275\u0275projection(4),\u0275\u0275elementEnd()(),\u0275\u0275element(5,"span",4)(6,"span",5)}if(rf&2){let button_r3=\u0275\u0275reference(1);\u0275\u0275property("id",ctx.buttonId)("disabled",ctx.disabled&&!ctx.disabledInteractive||null),\u0275\u0275attribute("role",ctx.isSingleSelector()?"radio":"button")("tabindex",ctx.disabled&&!ctx.disabledInteractive?-1:ctx.tabIndex)("aria-pressed",ctx.isSingleSelector()?null:ctx.checked)("aria-checked",ctx.isSingleSelector()?ctx.checked:null)("name",ctx._getButtonName())("aria-label",ctx.ariaLabel)("aria-labelledby",ctx.ariaLabelledby)("aria-disabled",ctx.disabled&&ctx.disabledInteractive?"true":null),\u0275\u0275advance(2),\u0275\u0275conditional(ctx.buttonToggleGroup&&(!ctx.buttonToggleGroup.multiple&&!ctx.buttonToggleGroup.hideSingleSelectionIndicator||ctx.buttonToggleGroup.multiple&&!ctx.buttonToggleGroup.hideMultipleSelectionIndicator)?2:-1),\u0275\u0275advance(4),\u0275\u0275property("matRippleTrigger",button_r3)("matRippleDisabled",ctx.disableRipple||ctx.disabled)}},dependencies:[MatRipple,MatPseudoCheckbox],styles:[`.mat-button-toggle-standalone,.mat-button-toggle-group{position:relative;display:inline-flex;flex-direction:row;white-space:nowrap;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);border-radius:var(--mat-button-toggle-legacy-shape);transform:translateZ(0)}.mat-button-toggle-standalone:not([class*=mat-elevation-z]),.mat-button-toggle-group:not([class*=mat-elevation-z]){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}@media(forced-colors: active){.mat-button-toggle-standalone,.mat-button-toggle-group{outline:solid 1px}}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard .mat-pseudo-checkbox,.mat-button-toggle-group-appearance-standard .mat-pseudo-checkbox{--mat-pseudo-checkbox-minimal-selected-checkmark-color: var(--mat-button-toggle-selected-state-text-color, var(--mat-sys-on-secondary-container))}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard:not([class*=mat-elevation-z]),.mat-button-toggle-group-appearance-standard:not([class*=mat-elevation-z]){box-shadow:none}@media(forced-colors: active){.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{outline:0}}.mat-button-toggle-vertical{flex-direction:column}.mat-button-toggle-vertical .mat-button-toggle-label-content{display:block}.mat-button-toggle{white-space:nowrap;position:relative;color:var(--mat-button-toggle-legacy-text-color);font-family:var(--mat-button-toggle-legacy-label-text-font);font-size:var(--mat-button-toggle-legacy-label-text-size);line-height:var(--mat-button-toggle-legacy-label-text-line-height);font-weight:var(--mat-button-toggle-legacy-label-text-weight);letter-spacing:var(--mat-button-toggle-legacy-label-text-tracking);--mat-pseudo-checkbox-minimal-selected-checkmark-color: var(--mat-button-toggle-legacy-selected-state-text-color)}.mat-button-toggle.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-button-toggle-legacy-focus-state-layer-opacity)}.mat-button-toggle .mat-icon svg{vertical-align:top}.mat-button-toggle-checkbox-wrapper{display:inline-block;justify-content:flex-start;align-items:center;width:0;height:18px;line-height:18px;overflow:hidden;box-sizing:border-box;position:absolute;top:50%;left:16px;transform:translate3d(0, -50%, 0)}[dir=rtl] .mat-button-toggle-checkbox-wrapper{left:auto;right:16px}.mat-button-toggle-appearance-standard .mat-button-toggle-checkbox-wrapper{left:12px}[dir=rtl] .mat-button-toggle-appearance-standard .mat-button-toggle-checkbox-wrapper{left:auto;right:12px}.mat-button-toggle-checked .mat-button-toggle-checkbox-wrapper{width:18px}.mat-button-toggle-animations-enabled .mat-button-toggle-checkbox-wrapper{transition:width 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-button-toggle-vertical .mat-button-toggle-checkbox-wrapper{transition:none}.mat-button-toggle-checked{color:var(--mat-button-toggle-legacy-selected-state-text-color);background-color:var(--mat-button-toggle-legacy-selected-state-background-color)}.mat-button-toggle-disabled{pointer-events:none;color:var(--mat-button-toggle-legacy-disabled-state-text-color);background-color:var(--mat-button-toggle-legacy-disabled-state-background-color);--mat-pseudo-checkbox-minimal-disabled-selected-checkmark-color: var(--mat-button-toggle-legacy-disabled-state-text-color)}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:var(--mat-button-toggle-legacy-disabled-selected-state-background-color)}.mat-button-toggle-disabled-interactive{pointer-events:auto}.mat-button-toggle-appearance-standard{color:var(--mat-button-toggle-text-color, var(--mat-sys-on-surface));background-color:var(--mat-button-toggle-background-color, transparent);font-family:var(--mat-button-toggle-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-toggle-label-text-size, var(--mat-sys-label-large-size));line-height:var(--mat-button-toggle-label-text-line-height, var(--mat-sys-label-large-line-height));font-weight:var(--mat-button-toggle-label-text-weight, var(--mat-sys-label-large-weight));letter-spacing:var(--mat-button-toggle-label-text-tracking, var(--mat-sys-label-large-tracking))}.mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:none;border-top:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}.mat-button-toggle-appearance-standard.mat-button-toggle-checked{color:var(--mat-button-toggle-selected-state-text-color, var(--mat-sys-on-secondary-container));background-color:var(--mat-button-toggle-selected-state-background-color, var(--mat-sys-secondary-container))}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled{color:var(--mat-button-toggle-disabled-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-toggle-disabled-state-background-color, transparent)}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled .mat-pseudo-checkbox{--mat-pseudo-checkbox-minimal-disabled-selected-checkmark-color: var(--mat-button-toggle-disabled-selected-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled.mat-button-toggle-checked{color:var(--mat-button-toggle-disabled-selected-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-toggle-disabled-selected-state-background-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{background-color:var(--mat-button-toggle-state-layer-color, var(--mat-sys-on-surface))}.mat-button-toggle-appearance-standard:hover .mat-button-toggle-focus-overlay{opacity:var(--mat-button-toggle-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-button-toggle-appearance-standard.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-button-toggle-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}@media(hover: none){.mat-button-toggle-appearance-standard:hover .mat-button-toggle-focus-overlay{display:none}}.mat-button-toggle-label-content{-webkit-user-select:none;user-select:none;display:inline-block;padding:0 16px;line-height:var(--mat-button-toggle-legacy-height);position:relative}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{padding:0 12px;line-height:var(--mat-button-toggle-height, 40px)}.mat-button-toggle-label-content>*{vertical-align:middle}.mat-button-toggle-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit;pointer-events:none;opacity:0;background-color:var(--mat-button-toggle-legacy-state-layer-color)}@media(forced-colors: active){.mat-button-toggle-checked .mat-button-toggle-focus-overlay{border-bottom:solid 500px;opacity:.5;height:0}.mat-button-toggle-checked:hover .mat-button-toggle-focus-overlay{opacity:.6}.mat-button-toggle-checked.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{border-bottom:solid 500px}}.mat-button-toggle .mat-button-toggle-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-button-toggle-button{border:0;background:none;color:inherit;padding:0;margin:0;font:inherit;outline:none;width:100%;cursor:pointer}.mat-button-toggle-animations-enabled .mat-button-toggle-button{transition:padding 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-button-toggle-vertical .mat-button-toggle-button{transition:none}.mat-button-toggle-disabled .mat-button-toggle-button{cursor:default}.mat-button-toggle-button::-moz-focus-inner{border:0}.mat-button-toggle-checked .mat-button-toggle-button:has(.mat-button-toggle-checkbox-wrapper){padding-left:30px}[dir=rtl] .mat-button-toggle-checked .mat-button-toggle-button:has(.mat-button-toggle-checkbox-wrapper){padding-left:0;padding-right:30px}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard{--mat-focus-indicator-border-radius: var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard:not(.mat-button-toggle-vertical) .mat-button-toggle:last-of-type .mat-button-toggle-button::before{border-top-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-bottom-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard:not(.mat-button-toggle-vertical) .mat-button-toggle:first-of-type .mat-button-toggle-button::before{border-top-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-bottom-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle:last-of-type .mat-button-toggle-button::before{border-bottom-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-bottom-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle:first-of-type .mat-button-toggle-button::before{border-top-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-top-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}
|
|
@@ -100,4 +100,4 @@ ${errors.map((err,i)=>`${i+1}) ${err.toString()}`).join(`
|
|
|
100
100
|
`],encapsulation:2,changeDetection:0})}return MatDrawerContainer2})(),MatSidenavContent=(()=>{class MatSidenavContent2 extends MatDrawerContent{static \u0275fac=(()=>{let \u0275MatSidenavContent_BaseFactory;return function(__ngFactoryType__){return(\u0275MatSidenavContent_BaseFactory||(\u0275MatSidenavContent_BaseFactory=\u0275\u0275getInheritedFactory(MatSidenavContent2)))(__ngFactoryType__||MatSidenavContent2)}})();static \u0275cmp=\u0275\u0275defineComponent({type:MatSidenavContent2,selectors:[["mat-sidenav-content"]],hostAttrs:[1,"mat-drawer-content","mat-sidenav-content"],features:[\u0275\u0275ProvidersFeature([{provide:CdkScrollable,useExisting:MatSidenavContent2}]),\u0275\u0275InheritDefinitionFeature],ngContentSelectors:_c023,decls:1,vars:0,template:function(rf,ctx){rf&1&&(\u0275\u0275projectionDef(),\u0275\u0275projection(0))},encapsulation:2,changeDetection:0})}return MatSidenavContent2})(),MatSidenav=(()=>{class MatSidenav2 extends MatDrawer{get fixedInViewport(){return this._fixedInViewport}set fixedInViewport(value){this._fixedInViewport=coerceBooleanProperty(value)}_fixedInViewport=!1;get fixedTopGap(){return this._fixedTopGap}set fixedTopGap(value){this._fixedTopGap=coerceNumberProperty(value)}_fixedTopGap=0;get fixedBottomGap(){return this._fixedBottomGap}set fixedBottomGap(value){this._fixedBottomGap=coerceNumberProperty(value)}_fixedBottomGap=0;static \u0275fac=(()=>{let \u0275MatSidenav_BaseFactory;return function(__ngFactoryType__){return(\u0275MatSidenav_BaseFactory||(\u0275MatSidenav_BaseFactory=\u0275\u0275getInheritedFactory(MatSidenav2)))(__ngFactoryType__||MatSidenav2)}})();static \u0275cmp=\u0275\u0275defineComponent({type:MatSidenav2,selectors:[["mat-sidenav"]],hostAttrs:[1,"mat-drawer","mat-sidenav"],hostVars:16,hostBindings:function(rf,ctx){rf&2&&(\u0275\u0275attribute("tabIndex",ctx.mode!=="side"?"-1":null)("align",null),\u0275\u0275styleProp("top",ctx.fixedInViewport?ctx.fixedTopGap:null,"px")("bottom",ctx.fixedInViewport?ctx.fixedBottomGap:null,"px"),\u0275\u0275classProp("mat-drawer-end",ctx.position==="end")("mat-drawer-over",ctx.mode==="over")("mat-drawer-push",ctx.mode==="push")("mat-drawer-side",ctx.mode==="side")("mat-sidenav-fixed",ctx.fixedInViewport))},inputs:{fixedInViewport:"fixedInViewport",fixedTopGap:"fixedTopGap",fixedBottomGap:"fixedBottomGap"},exportAs:["matSidenav"],features:[\u0275\u0275ProvidersFeature([{provide:MatDrawer,useExisting:MatSidenav2}]),\u0275\u0275InheritDefinitionFeature],ngContentSelectors:_c023,decls:3,vars:0,consts:[["content",""],["cdkScrollable","",1,"mat-drawer-inner-container"]],template:function(rf,ctx){rf&1&&(\u0275\u0275projectionDef(),\u0275\u0275elementStart(0,"div",1,0),\u0275\u0275projection(2),\u0275\u0275elementEnd())},dependencies:[CdkScrollable],encapsulation:2,changeDetection:0})}return MatSidenav2})(),MatSidenavContainer=(()=>{class MatSidenavContainer2 extends MatDrawerContainer{_allDrawers=void 0;_content=void 0;static \u0275fac=(()=>{let \u0275MatSidenavContainer_BaseFactory;return function(__ngFactoryType__){return(\u0275MatSidenavContainer_BaseFactory||(\u0275MatSidenavContainer_BaseFactory=\u0275\u0275getInheritedFactory(MatSidenavContainer2)))(__ngFactoryType__||MatSidenavContainer2)}})();static \u0275cmp=\u0275\u0275defineComponent({type:MatSidenavContainer2,selectors:[["mat-sidenav-container"]],contentQueries:function(rf,ctx,dirIndex){if(rf&1&&(\u0275\u0275contentQuery(dirIndex,MatSidenavContent,5),\u0275\u0275contentQuery(dirIndex,MatSidenav,5)),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._content=_t.first),\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._allDrawers=_t)}},hostAttrs:[1,"mat-drawer-container","mat-sidenav-container"],hostVars:2,hostBindings:function(rf,ctx){rf&2&&\u0275\u0275classProp("mat-drawer-container-explicit-backdrop",ctx._backdropOverride)},exportAs:["matSidenavContainer"],features:[\u0275\u0275ProvidersFeature([{provide:MAT_DRAWER_CONTAINER,useExisting:MatSidenavContainer2},{provide:MatDrawerContainer,useExisting:MatSidenavContainer2}]),\u0275\u0275InheritDefinitionFeature],ngContentSelectors:_c54,decls:4,vars:2,consts:[[1,"mat-drawer-backdrop",3,"mat-drawer-shown"],[1,"mat-drawer-backdrop",3,"click"]],template:function(rf,ctx){rf&1&&(\u0275\u0275projectionDef(_c47),\u0275\u0275conditionalCreate(0,MatSidenavContainer_Conditional_0_Template,1,2,"div",0),\u0275\u0275projection(1),\u0275\u0275projection(2,1),\u0275\u0275conditionalCreate(3,MatSidenavContainer_Conditional_3_Template,2,0,"mat-sidenav-content")),rf&2&&(\u0275\u0275conditional(ctx.hasBackdrop?0:-1),\u0275\u0275advance(3),\u0275\u0275conditional(ctx._content?-1:3))},dependencies:[MatSidenavContent],styles:[_c64],encapsulation:2,changeDetection:0})}return MatSidenavContainer2})(),MatSidenavModule=(()=>{class MatSidenavModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatSidenavModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:MatSidenavModule2});static \u0275inj=\u0275\u0275defineInjector({imports:[MatCommonModule,CdkScrollableModule,CdkScrollableModule,MatCommonModule]})}return MatSidenavModule2})();var MatSortHeaderIntl=(()=>{class MatSortHeaderIntl2{changes=new Subject;static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatSortHeaderIntl2)};static \u0275prov=\u0275\u0275defineInjectable({token:MatSortHeaderIntl2,factory:MatSortHeaderIntl2.\u0275fac,providedIn:"root"})}return MatSortHeaderIntl2})();function MAT_SORT_HEADER_INTL_PROVIDER_FACTORY(parentIntl){return parentIntl||new MatSortHeaderIntl}var MAT_SORT_HEADER_INTL_PROVIDER={provide:MatSortHeaderIntl,deps:[[new Optional,new SkipSelf,MatSortHeaderIntl]],useFactory:MAT_SORT_HEADER_INTL_PROVIDER_FACTORY};var MatSortModule=(()=>{class MatSortModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatSortModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:MatSortModule2});static \u0275inj=\u0275\u0275defineInjector({providers:[MAT_SORT_HEADER_INTL_PROVIDER],imports:[MatCommonModule]})}return MatSortModule2})();var _c024=["*"];function CdkStep_ng_template_0_Template(rf,ctx){rf&1&&\u0275\u0275projection(0)}var CdkStepHeader=(()=>{class CdkStepHeader2{_elementRef=inject2(ElementRef);constructor(){}focus(){this._elementRef.nativeElement.focus()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkStepHeader2)};static \u0275dir=\u0275\u0275defineDirective({type:CdkStepHeader2,selectors:[["","cdkStepHeader",""]],hostAttrs:["role","tab"]})}return CdkStepHeader2})(),CdkStepLabel=(()=>{class CdkStepLabel2{template=inject2(TemplateRef);constructor(){}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkStepLabel2)};static \u0275dir=\u0275\u0275defineDirective({type:CdkStepLabel2,selectors:[["","cdkStepLabel",""]]})}return CdkStepLabel2})();var STEP_STATE={NUMBER:"number",EDIT:"edit",DONE:"done",ERROR:"error"},STEPPER_GLOBAL_OPTIONS=new InjectionToken("STEPPER_GLOBAL_OPTIONS"),CdkStep=(()=>{class CdkStep2{_stepperOptions;_stepper=inject2(CdkStepper);_displayDefaultIndicatorType;stepLabel;_childForms;content;stepControl;get interacted(){return this._interacted()}set interacted(value){this._interacted.set(value)}_interacted=signal(!1);interactedStream=new EventEmitter;label;errorMessage;ariaLabel;ariaLabelledby;get state(){return this._state()}set state(value){this._state.set(value)}_state=signal(void 0);get editable(){return this._editable()}set editable(value){this._editable.set(value)}_editable=signal(!0);optional=!1;get completed(){let override=this._completedOverride(),interacted=this._interacted();return override??(interacted&&(!this.stepControl||this.stepControl.valid))}set completed(value){this._completedOverride.set(value)}_completedOverride=signal(null);index=signal(-1);isSelected=computed(()=>this._stepper.selectedIndex===this.index());indicatorType=computed(()=>{let selected=this.isSelected(),completed=this.completed,defaultState=this._state()??STEP_STATE.NUMBER,editable=this._editable();return this._showError()&&this.hasError&&!selected?STEP_STATE.ERROR:this._displayDefaultIndicatorType?!completed||selected?STEP_STATE.NUMBER:editable?STEP_STATE.EDIT:STEP_STATE.DONE:completed&&!selected?STEP_STATE.DONE:completed&&selected?defaultState:editable&&selected?STEP_STATE.EDIT:defaultState});isNavigable=computed(()=>{let isSelected=this.isSelected();return this.completed||isSelected||!this._stepper.linear});get hasError(){let customError=this._customError();return customError??this._getDefaultError()}set hasError(value){this._customError.set(value)}_customError=signal(null);_getDefaultError(){return this.interacted&&!!this.stepControl?.invalid}constructor(){let stepperOptions=inject2(STEPPER_GLOBAL_OPTIONS,{optional:!0});this._stepperOptions=stepperOptions||{},this._displayDefaultIndicatorType=this._stepperOptions.displayDefaultIndicatorType!==!1}select(){this._stepper.selected=this}reset(){this._interacted.set(!1),this._completedOverride()!=null&&this._completedOverride.set(!1),this._customError()!=null&&this._customError.set(!1),this.stepControl&&(this._childForms?.forEach(form=>form.resetForm?.()),this.stepControl.reset())}ngOnChanges(){this._stepper._stateChanged()}_markAsInteracted(){this._interacted()||(this._interacted.set(!0),this.interactedStream.emit(this))}_showError(){return this._stepperOptions.showError??this._customError()!=null}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkStep2)};static \u0275cmp=\u0275\u0275defineComponent({type:CdkStep2,selectors:[["cdk-step"]],contentQueries:function(rf,ctx,dirIndex){if(rf&1&&(\u0275\u0275contentQuery(dirIndex,CdkStepLabel,5),\u0275\u0275contentQuery(dirIndex,ControlContainer,5)),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx.stepLabel=_t.first),\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._childForms=_t)}},viewQuery:function(rf,ctx){if(rf&1&&\u0275\u0275viewQuery(TemplateRef,7),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx.content=_t.first)}},inputs:{stepControl:"stepControl",label:"label",errorMessage:"errorMessage",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],state:"state",editable:[2,"editable","editable",booleanAttribute],optional:[2,"optional","optional",booleanAttribute],completed:[2,"completed","completed",booleanAttribute],hasError:[2,"hasError","hasError",booleanAttribute]},outputs:{interactedStream:"interacted"},exportAs:["cdkStep"],features:[\u0275\u0275NgOnChangesFeature],ngContentSelectors:_c024,decls:1,vars:0,template:function(rf,ctx){rf&1&&(\u0275\u0275projectionDef(),\u0275\u0275domTemplate(0,CdkStep_ng_template_0_Template,1,0,"ng-template"))},encapsulation:2,changeDetection:0})}return CdkStep2})(),CdkStepper=(()=>{class CdkStepper2{_dir=inject2(Directionality,{optional:!0});_changeDetectorRef=inject2(ChangeDetectorRef);_elementRef=inject2(ElementRef);_destroyed=new Subject;_keyManager;_steps;steps=new QueryList;_stepHeader;_sortedHeaders=new QueryList;linear=!1;get selectedIndex(){return this._selectedIndex()}set selectedIndex(index){this._steps?(this._isValidIndex(index),this.selectedIndex!==index&&(this.selected?._markAsInteracted(),!this._anyControlsInvalidOrPending(index)&&(index>=this.selectedIndex||this.steps.toArray()[index].editable)&&this._updateSelectedItemIndex(index))):this._selectedIndex.set(index)}_selectedIndex=signal(0);get selected(){return this.steps?this.steps.toArray()[this.selectedIndex]:void 0}set selected(step){this.selectedIndex=step&&this.steps?this.steps.toArray().indexOf(step):-1}selectionChange=new EventEmitter;selectedIndexChange=new EventEmitter;_groupId=inject2(_IdGenerator).getId("cdk-stepper-");get orientation(){return this._orientation}set orientation(value){this._orientation=value,this._keyManager&&this._keyManager.withVerticalOrientation(value==="vertical")}_orientation="horizontal";constructor(){}ngAfterContentInit(){this._steps.changes.pipe(startWith(this._steps),takeUntil(this._destroyed)).subscribe(steps=>{this.steps.reset(steps.filter(step=>step._stepper===this)),this.steps.forEach((step,index)=>step.index.set(index)),this.steps.notifyOnChanges()})}ngAfterViewInit(){if(this._stepHeader.changes.pipe(startWith(this._stepHeader),takeUntil(this._destroyed)).subscribe(headers=>{this._sortedHeaders.reset(headers.toArray().sort((a,b)=>a._elementRef.nativeElement.compareDocumentPosition(b._elementRef.nativeElement)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1)),this._sortedHeaders.notifyOnChanges()}),this._keyManager=new FocusKeyManager(this._sortedHeaders).withWrap().withHomeAndEnd().withVerticalOrientation(this._orientation==="vertical"),this._keyManager.updateActiveItem(this.selectedIndex),(this._dir?this._dir.change:of()).pipe(startWith(this._layoutDirection()),takeUntil(this._destroyed)).subscribe(direction=>this._keyManager?.withHorizontalOrientation(direction)),this._keyManager.updateActiveItem(this.selectedIndex),this.steps.changes.subscribe(()=>{this.selected||this._selectedIndex.set(Math.max(this.selectedIndex-1,0))}),this._isValidIndex(this.selectedIndex)||this._selectedIndex.set(0),this.linear&&this.selectedIndex>0){let visitedSteps=this.steps.toArray().slice(0,this._selectedIndex());for(let step of visitedSteps)step._markAsInteracted()}}ngOnDestroy(){this._keyManager?.destroy(),this.steps.destroy(),this._sortedHeaders.destroy(),this._destroyed.next(),this._destroyed.complete()}next(){this.selectedIndex=Math.min(this._selectedIndex()+1,this.steps.length-1)}previous(){this.selectedIndex=Math.max(this._selectedIndex()-1,0)}reset(){this._updateSelectedItemIndex(0),this.steps.forEach(step=>step.reset()),this._stateChanged()}_getStepLabelId(i){return`${this._groupId}-label-${i}`}_getStepContentId(i){return`${this._groupId}-content-${i}`}_stateChanged(){this._changeDetectorRef.markForCheck()}_getAnimationDirection(index){let position=index-this._selectedIndex();return position<0?this._layoutDirection()==="rtl"?"next":"previous":position>0?this._layoutDirection()==="rtl"?"previous":"next":"current"}_getFocusIndex(){return this._keyManager?this._keyManager.activeItemIndex:this._selectedIndex()}_updateSelectedItemIndex(newIndex){let stepsArray=this.steps.toArray(),selectedIndex=this._selectedIndex();this.selectionChange.emit({selectedIndex:newIndex,previouslySelectedIndex:selectedIndex,selectedStep:stepsArray[newIndex],previouslySelectedStep:stepsArray[selectedIndex]}),this._keyManager&&(this._containsFocus()?this._keyManager.setActiveItem(newIndex):this._keyManager.updateActiveItem(newIndex)),this._selectedIndex.set(newIndex),this.selectedIndexChange.emit(newIndex),this._stateChanged()}_onKeydown(event){let hasModifier=hasModifierKey(event),keyCode=event.keyCode,manager=this._keyManager;manager?.activeItemIndex!=null&&!hasModifier&&(keyCode===32||keyCode===13)?(this.selectedIndex=manager.activeItemIndex,event.preventDefault()):manager?.setFocusOrigin("keyboard").onKeydown(event)}_anyControlsInvalidOrPending(index){return this.linear&&index>=0?this.steps.toArray().slice(0,index).some(step=>{let control=step.stepControl;return(control?control.invalid||control.pending||!step.interacted:!step.completed)&&!step.optional&&!step._completedOverride()}):!1}_layoutDirection(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}_containsFocus(){let stepperElement=this._elementRef.nativeElement,focusedElement=_getFocusedElementPierceShadowDom();return stepperElement===focusedElement||stepperElement.contains(focusedElement)}_isValidIndex(index){return index>-1&&(!this.steps||index<this.steps.length)}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkStepper2)};static \u0275dir=\u0275\u0275defineDirective({type:CdkStepper2,selectors:[["","cdkStepper",""]],contentQueries:function(rf,ctx,dirIndex){if(rf&1&&(\u0275\u0275contentQuery(dirIndex,CdkStep,5),\u0275\u0275contentQuery(dirIndex,CdkStepHeader,5)),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._steps=_t),\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._stepHeader=_t)}},inputs:{linear:[2,"linear","linear",booleanAttribute],selectedIndex:[2,"selectedIndex","selectedIndex",numberAttribute],selected:"selected",orientation:"orientation"},outputs:{selectionChange:"selectionChange",selectedIndexChange:"selectedIndexChange"},exportAs:["cdkStepper"]})}return CdkStepper2})();var CdkStepperModule=(()=>{class CdkStepperModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||CdkStepperModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:CdkStepperModule2});static \u0275inj=\u0275\u0275defineInjector({imports:[BidiModule]})}return CdkStepperModule2})();var _c025=(a0,a1,a2)=>({index:a0,active:a1,optional:a2});function MatStepHeader_Conditional_3_Template(rf,ctx){if(rf&1&&\u0275\u0275elementContainer(0,2),rf&2){let ctx_r0=\u0275\u0275nextContext();\u0275\u0275property("ngTemplateOutlet",ctx_r0.iconOverrides[ctx_r0.state])("ngTemplateOutletContext",\u0275\u0275pureFunction3(2,_c025,ctx_r0.index,ctx_r0.active,ctx_r0.optional))}}function MatStepHeader_Conditional_4_Case_0_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementStart(0,"span",7),\u0275\u0275text(1),\u0275\u0275elementEnd()),rf&2){let ctx_r0=\u0275\u0275nextContext(2);\u0275\u0275advance(),\u0275\u0275textInterpolate(ctx_r0._getDefaultTextForState(ctx_r0.state))}}function MatStepHeader_Conditional_4_Case_1_Conditional_0_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementStart(0,"span",8),\u0275\u0275text(1),\u0275\u0275elementEnd()),rf&2){let ctx_r0=\u0275\u0275nextContext(3);\u0275\u0275advance(),\u0275\u0275textInterpolate(ctx_r0._intl.completedLabel)}}function MatStepHeader_Conditional_4_Case_1_Conditional_1_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementStart(0,"span",8),\u0275\u0275text(1),\u0275\u0275elementEnd()),rf&2){let ctx_r0=\u0275\u0275nextContext(3);\u0275\u0275advance(),\u0275\u0275textInterpolate(ctx_r0._intl.editableLabel)}}function MatStepHeader_Conditional_4_Case_1_Template(rf,ctx){if(rf&1&&(\u0275\u0275conditionalCreate(0,MatStepHeader_Conditional_4_Case_1_Conditional_0_Template,2,1,"span",8)(1,MatStepHeader_Conditional_4_Case_1_Conditional_1_Template,2,1,"span",8),\u0275\u0275elementStart(2,"mat-icon",7),\u0275\u0275text(3),\u0275\u0275elementEnd()),rf&2){let ctx_r0=\u0275\u0275nextContext(2);\u0275\u0275conditional(ctx_r0.state==="done"?0:ctx_r0.state==="edit"?1:-1),\u0275\u0275advance(3),\u0275\u0275textInterpolate(ctx_r0._getDefaultTextForState(ctx_r0.state))}}function MatStepHeader_Conditional_4_Template(rf,ctx){if(rf&1&&\u0275\u0275conditionalCreate(0,MatStepHeader_Conditional_4_Case_0_Template,2,1,"span",7)(1,MatStepHeader_Conditional_4_Case_1_Template,4,2),rf&2){let tmp_1_0,ctx_r0=\u0275\u0275nextContext();\u0275\u0275conditional((tmp_1_0=ctx_r0.state)==="number"?0:1)}}function MatStepHeader_Conditional_6_Template(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"div",4),\u0275\u0275elementContainer(1,9),\u0275\u0275elementEnd()),rf&2&&(\u0275\u0275advance(),\u0275\u0275property("ngTemplateOutlet",ctx.template))}function MatStepHeader_Conditional_7_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementStart(0,"div",4),\u0275\u0275text(1),\u0275\u0275elementEnd()),rf&2){let ctx_r0=\u0275\u0275nextContext();\u0275\u0275advance(),\u0275\u0275textInterpolate(ctx_r0.label)}}function MatStepHeader_Conditional_8_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementStart(0,"div",5),\u0275\u0275text(1),\u0275\u0275elementEnd()),rf&2){let ctx_r0=\u0275\u0275nextContext();\u0275\u0275advance(),\u0275\u0275textInterpolate(ctx_r0._intl.optionalLabel)}}function MatStepHeader_Conditional_9_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementStart(0,"div",6),\u0275\u0275text(1),\u0275\u0275elementEnd()),rf&2){let ctx_r0=\u0275\u0275nextContext();\u0275\u0275advance(),\u0275\u0275textInterpolate(ctx_r0.errorMessage)}}var _c119=["*"];function MatStep_ng_template_0_ng_template_1_Template(rf,ctx){}function MatStep_ng_template_0_Template(rf,ctx){if(rf&1&&(\u0275\u0275projection(0),\u0275\u0275template(1,MatStep_ng_template_0_ng_template_1_Template,0,0,"ng-template",0)),rf&2){let ctx_r0=\u0275\u0275nextContext();\u0275\u0275advance(),\u0275\u0275property("cdkPortalOutlet",ctx_r0._portal)}}var _c213=["animatedContainer"],_c311=a0=>({step:a0});function MatStepper_Conditional_0_Template(rf,ctx){rf&1&&\u0275\u0275projection(0)}function MatStepper_Case_1_For_3_Conditional_1_Template(rf,ctx){rf&1&&\u0275\u0275element(0,"div",7)}function MatStepper_Case_1_For_3_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementContainer(0,6),\u0275\u0275conditionalCreate(1,MatStepper_Case_1_For_3_Conditional_1_Template,1,0,"div",7)),rf&2){let step_r1=ctx.$implicit,\u0275$index_8_r2=ctx.$index,\u0275$count_8_r3=ctx.$count;\u0275\u0275nextContext(2);let stepTemplate_r4=\u0275\u0275reference(4);\u0275\u0275property("ngTemplateOutlet",stepTemplate_r4)("ngTemplateOutletContext",\u0275\u0275pureFunction1(3,_c311,step_r1)),\u0275\u0275advance(),\u0275\u0275conditional(\u0275$index_8_r2!==\u0275$count_8_r3-1?1:-1)}}function MatStepper_Case_1_For_6_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementStart(0,"div",8,1),\u0275\u0275elementContainer(2,9),\u0275\u0275elementEnd()),rf&2){let step_r5=ctx.$implicit,$index_r6=ctx.$index,ctx_r6=\u0275\u0275nextContext(2);\u0275\u0275classMap("mat-horizontal-stepper-content-"+ctx_r6._getAnimationDirection($index_r6)),\u0275\u0275property("id",ctx_r6._getStepContentId($index_r6)),\u0275\u0275attribute("aria-labelledby",ctx_r6._getStepLabelId($index_r6))("inert",ctx_r6.selectedIndex===$index_r6?null:""),\u0275\u0275advance(2),\u0275\u0275property("ngTemplateOutlet",step_r5.content)}}function MatStepper_Case_1_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementStart(0,"div",2)(1,"div",3),\u0275\u0275repeaterCreate(2,MatStepper_Case_1_For_3_Template,2,5,null,null,\u0275\u0275repeaterTrackByIdentity),\u0275\u0275elementEnd(),\u0275\u0275elementStart(4,"div",4),\u0275\u0275repeaterCreate(5,MatStepper_Case_1_For_6_Template,3,6,"div",5,\u0275\u0275repeaterTrackByIdentity),\u0275\u0275elementEnd()()),rf&2){let ctx_r6=\u0275\u0275nextContext();\u0275\u0275advance(2),\u0275\u0275repeater(ctx_r6.steps),\u0275\u0275advance(3),\u0275\u0275repeater(ctx_r6.steps)}}function MatStepper_Case_2_For_1_Template(rf,ctx){if(rf&1&&(\u0275\u0275elementStart(0,"div",10),\u0275\u0275elementContainer(1,6),\u0275\u0275elementStart(2,"div",11,1)(4,"div",12)(5,"div",13),\u0275\u0275elementContainer(6,9),\u0275\u0275elementEnd()()()()),rf&2){let step_r8=ctx.$implicit,$index_r9=ctx.$index,\u0275$index_22_r10=ctx.$index,\u0275$count_22_r11=ctx.$count,ctx_r6=\u0275\u0275nextContext(2),stepTemplate_r4=\u0275\u0275reference(4);\u0275\u0275advance(),\u0275\u0275property("ngTemplateOutlet",stepTemplate_r4)("ngTemplateOutletContext",\u0275\u0275pureFunction1(10,_c311,step_r8)),\u0275\u0275advance(),\u0275\u0275classProp("mat-stepper-vertical-line",\u0275$index_22_r10!==\u0275$count_22_r11-1)("mat-vertical-content-container-active",ctx_r6.selectedIndex===$index_r9),\u0275\u0275attribute("inert",ctx_r6.selectedIndex===$index_r9?null:""),\u0275\u0275advance(2),\u0275\u0275property("id",ctx_r6._getStepContentId($index_r9)),\u0275\u0275attribute("aria-labelledby",ctx_r6._getStepLabelId($index_r9)),\u0275\u0275advance(2),\u0275\u0275property("ngTemplateOutlet",step_r8.content)}}function MatStepper_Case_2_Template(rf,ctx){if(rf&1&&\u0275\u0275repeaterCreate(0,MatStepper_Case_2_For_1_Template,7,12,"div",10,\u0275\u0275repeaterTrackByIdentity),rf&2){let ctx_r6=\u0275\u0275nextContext();\u0275\u0275repeater(ctx_r6.steps)}}function MatStepper_ng_template_3_Template(rf,ctx){if(rf&1){let _r12=\u0275\u0275getCurrentView();\u0275\u0275elementStart(0,"mat-step-header",14),\u0275\u0275listener("click",function(){let step_r13=\u0275\u0275restoreView(_r12).step;return \u0275\u0275resetView(step_r13.select())})("keydown",function($event){\u0275\u0275restoreView(_r12);let ctx_r6=\u0275\u0275nextContext();return \u0275\u0275resetView(ctx_r6._onKeydown($event))}),\u0275\u0275elementEnd()}if(rf&2){let step_r13=ctx.step,ctx_r6=\u0275\u0275nextContext();\u0275\u0275classProp("mat-horizontal-stepper-header",ctx_r6.orientation==="horizontal")("mat-vertical-stepper-header",ctx_r6.orientation==="vertical"),\u0275\u0275property("tabIndex",ctx_r6._getFocusIndex()===step_r13.index()?0:-1)("id",ctx_r6._getStepLabelId(step_r13.index()))("index",step_r13.index())("state",step_r13.indicatorType())("label",step_r13.stepLabel||step_r13.label)("selected",step_r13.isSelected())("active",step_r13.isNavigable())("optional",step_r13.optional)("errorMessage",step_r13.errorMessage)("iconOverrides",ctx_r6._iconOverrides)("disableRipple",ctx_r6.disableRipple||!step_r13.isNavigable())("color",step_r13.color||ctx_r6.color),\u0275\u0275attribute("aria-posinset",step_r13.index()+1)("aria-setsize",ctx_r6.steps.length)("aria-controls",ctx_r6._getStepContentId(step_r13.index()))("aria-selected",step_r13.isSelected())("aria-label",step_r13.ariaLabel||null)("aria-labelledby",!step_r13.ariaLabel&&step_r13.ariaLabelledby?step_r13.ariaLabelledby:null)("aria-disabled",step_r13.isNavigable()?null:!0)}}var MatStepLabel=(()=>{class MatStepLabel2 extends CdkStepLabel{static \u0275fac=(()=>{let \u0275MatStepLabel_BaseFactory;return function(__ngFactoryType__){return(\u0275MatStepLabel_BaseFactory||(\u0275MatStepLabel_BaseFactory=\u0275\u0275getInheritedFactory(MatStepLabel2)))(__ngFactoryType__||MatStepLabel2)}})();static \u0275dir=\u0275\u0275defineDirective({type:MatStepLabel2,selectors:[["","matStepLabel",""]],features:[\u0275\u0275InheritDefinitionFeature]})}return MatStepLabel2})(),MatStepperIntl=(()=>{class MatStepperIntl2{changes=new Subject;optionalLabel="Optional";completedLabel="Completed";editableLabel="Editable";static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatStepperIntl2)};static \u0275prov=\u0275\u0275defineInjectable({token:MatStepperIntl2,factory:MatStepperIntl2.\u0275fac,providedIn:"root"})}return MatStepperIntl2})();function MAT_STEPPER_INTL_PROVIDER_FACTORY(parentIntl){return parentIntl||new MatStepperIntl}var MAT_STEPPER_INTL_PROVIDER={provide:MatStepperIntl,deps:[[new Optional,new SkipSelf,MatStepperIntl]],useFactory:MAT_STEPPER_INTL_PROVIDER_FACTORY},MatStepHeader=(()=>{class MatStepHeader2 extends CdkStepHeader{_intl=inject2(MatStepperIntl);_focusMonitor=inject2(FocusMonitor);_intlSubscription;state;label;errorMessage;iconOverrides;index;selected;active;optional;disableRipple;color;constructor(){super();let styleLoader=inject2(_CdkPrivateStyleLoader);styleLoader.load(_StructuralStylesLoader),styleLoader.load(_VisuallyHiddenLoader);let changeDetectorRef=inject2(ChangeDetectorRef);this._intlSubscription=this._intl.changes.subscribe(()=>changeDetectorRef.markForCheck())}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._intlSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._elementRef)}focus(origin,options){origin?this._focusMonitor.focusVia(this._elementRef,origin,options):this._elementRef.nativeElement.focus(options)}_stringLabel(){return this.label instanceof MatStepLabel?null:this.label}_templateLabel(){return this.label instanceof MatStepLabel?this.label:null}_getHostElement(){return this._elementRef.nativeElement}_getDefaultTextForState(state2){return state2=="number"?`${this.index+1}`:state2=="edit"?"create":state2=="error"?"warning":state2}_hasEmptyLabel(){return!this._stringLabel()&&!this._templateLabel()&&!this._hasOptionalLabel()&&!this._hasErrorLabel()}_hasOptionalLabel(){return this.optional&&this.state!=="error"}_hasErrorLabel(){return this.state==="error"}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatStepHeader2)};static \u0275cmp=\u0275\u0275defineComponent({type:MatStepHeader2,selectors:[["mat-step-header"]],hostAttrs:["role","tab",1,"mat-step-header"],hostVars:4,hostBindings:function(rf,ctx){rf&2&&(\u0275\u0275classMap("mat-"+(ctx.color||"primary")),\u0275\u0275classProp("mat-step-header-empty-label",ctx._hasEmptyLabel()))},inputs:{state:"state",label:"label",errorMessage:"errorMessage",iconOverrides:"iconOverrides",index:"index",selected:"selected",active:"active",optional:"optional",disableRipple:"disableRipple",color:"color"},features:[\u0275\u0275InheritDefinitionFeature],decls:10,vars:17,consts:[["matRipple","",1,"mat-step-header-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-step-icon-content"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"mat-step-label"],[1,"mat-step-text-label"],[1,"mat-step-optional"],[1,"mat-step-sub-label-error"],["aria-hidden","true"],[1,"cdk-visually-hidden"],[3,"ngTemplateOutlet"]],template:function(rf,ctx){if(rf&1&&(\u0275\u0275element(0,"div",0),\u0275\u0275elementStart(1,"div")(2,"div",1),\u0275\u0275conditionalCreate(3,MatStepHeader_Conditional_3_Template,1,6,"ng-container",2)(4,MatStepHeader_Conditional_4_Template,2,1),\u0275\u0275elementEnd()(),\u0275\u0275elementStart(5,"div",3),\u0275\u0275conditionalCreate(6,MatStepHeader_Conditional_6_Template,2,1,"div",4)(7,MatStepHeader_Conditional_7_Template,2,1,"div",4),\u0275\u0275conditionalCreate(8,MatStepHeader_Conditional_8_Template,2,1,"div",5),\u0275\u0275conditionalCreate(9,MatStepHeader_Conditional_9_Template,2,1,"div",6),\u0275\u0275elementEnd()),rf&2){let tmp_8_0;\u0275\u0275property("matRippleTrigger",ctx._getHostElement())("matRippleDisabled",ctx.disableRipple),\u0275\u0275advance(),\u0275\u0275classMap(\u0275\u0275interpolate1("mat-step-icon-state-",ctx.state," mat-step-icon")),\u0275\u0275classProp("mat-step-icon-selected",ctx.selected),\u0275\u0275advance(2),\u0275\u0275conditional(ctx.iconOverrides&&ctx.iconOverrides[ctx.state]?3:4),\u0275\u0275advance(2),\u0275\u0275classProp("mat-step-label-active",ctx.active)("mat-step-label-selected",ctx.selected)("mat-step-label-error",ctx.state=="error"),\u0275\u0275advance(),\u0275\u0275conditional((tmp_8_0=ctx._templateLabel())?6:ctx._stringLabel()?7:-1,tmp_8_0),\u0275\u0275advance(2),\u0275\u0275conditional(ctx._hasOptionalLabel()?8:-1),\u0275\u0275advance(),\u0275\u0275conditional(ctx._hasErrorLabel()?9:-1)}},dependencies:[MatRipple,NgTemplateOutlet,MatIcon],styles:[`.mat-step-header{overflow:hidden;outline:none;cursor:pointer;position:relative;box-sizing:content-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-step-header:focus .mat-focus-indicator::before{content:""}.mat-step-header:hover[aria-disabled=true]{cursor:default}.mat-step-header:hover:not([aria-disabled]),.mat-step-header:hover[aria-disabled=false]{background-color:var(--mat-stepper-header-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent));border-radius:var(--mat-stepper-header-hover-state-layer-shape, var(--mat-sys-corner-medium))}.mat-step-header.cdk-keyboard-focused,.mat-step-header.cdk-program-focused{background-color:var(--mat-stepper-header-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent));border-radius:var(--mat-stepper-header-focus-state-layer-shape, var(--mat-sys-corner-medium))}@media(hover: none){.mat-step-header:hover{background:none}}@media(forced-colors: active){.mat-step-header{outline:solid 1px}.mat-step-header[aria-selected=true] .mat-step-label{text-decoration:underline}.mat-step-header[aria-disabled=true]{outline-color:GrayText}.mat-step-header[aria-disabled=true] .mat-step-label,.mat-step-header[aria-disabled=true] .mat-step-icon,.mat-step-header[aria-disabled=true] .mat-step-optional{color:GrayText}}.mat-step-optional{font-size:12px;color:var(--mat-stepper-header-optional-label-text-color, var(--mat-sys-on-surface-variant))}.mat-step-sub-label-error{font-size:12px;font-weight:normal}.mat-step-icon{border-radius:50%;height:24px;width:24px;flex-shrink:0;position:relative;color:var(--mat-stepper-header-icon-foreground-color, var(--mat-sys-surface));background-color:var(--mat-stepper-header-icon-background-color, var(--mat-sys-on-surface-variant))}.mat-step-icon-content{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);display:flex}.mat-step-icon .mat-icon{font-size:16px;height:16px;width:16px}.mat-step-icon-state-error{background-color:var(--mat-stepper-header-error-state-icon-background-color, transparent);color:var(--mat-stepper-header-error-state-icon-foreground-color, var(--mat-sys-error))}.mat-step-icon-state-error .mat-icon{font-size:24px;height:24px;width:24px}.mat-step-label{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:50px;vertical-align:middle;font-family:var(--mat-stepper-header-label-text-font, var(--mat-sys-title-small-font));font-size:var(--mat-stepper-header-label-text-size, var(--mat-sys-title-small-size));font-weight:var(--mat-stepper-header-label-text-weight, var(--mat-sys-title-small-weight));color:var(--mat-stepper-header-label-text-color, var(--mat-sys-on-surface-variant))}.mat-step-label.mat-step-label-active{color:var(--mat-stepper-header-selected-state-label-text-color, var(--mat-sys-on-surface-variant))}.mat-step-label.mat-step-label-error{color:var(--mat-stepper-header-error-state-label-text-color, var(--mat-sys-error));font-size:var(--mat-stepper-header-error-state-label-text-size, var(--mat-sys-title-small-size))}.mat-step-label.mat-step-label-selected{font-size:var(--mat-stepper-header-selected-state-label-text-size, var(--mat-sys-title-small-size));font-weight:var(--mat-stepper-header-selected-state-label-text-weight, var(--mat-sys-title-small-weight))}.mat-step-header-empty-label .mat-step-label{min-width:0}.mat-step-text-label{text-overflow:ellipsis;overflow:hidden}.mat-step-header .mat-step-header-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-step-icon-selected{background-color:var(--mat-stepper-header-selected-state-icon-background-color, var(--mat-sys-primary));color:var(--mat-stepper-header-selected-state-icon-foreground-color, var(--mat-sys-on-primary))}.mat-step-icon-state-done{background-color:var(--mat-stepper-header-done-state-icon-background-color, var(--mat-sys-primary));color:var(--mat-stepper-header-done-state-icon-foreground-color, var(--mat-sys-on-primary))}.mat-step-icon-state-edit{background-color:var(--mat-stepper-header-edit-state-icon-background-color, var(--mat-sys-primary));color:var(--mat-stepper-header-edit-state-icon-foreground-color, var(--mat-sys-on-primary))}
|
|
101
101
|
`],encapsulation:2,changeDetection:0})}return MatStepHeader2})(),MatStepperIcon=(()=>{class MatStepperIcon2{templateRef=inject2(TemplateRef);name;constructor(){}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatStepperIcon2)};static \u0275dir=\u0275\u0275defineDirective({type:MatStepperIcon2,selectors:[["ng-template","matStepperIcon",""]],inputs:{name:[0,"matStepperIcon","name"]}})}return MatStepperIcon2})(),MatStepContent=(()=>{class MatStepContent2{_template=inject2(TemplateRef);constructor(){}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatStepContent2)};static \u0275dir=\u0275\u0275defineDirective({type:MatStepContent2,selectors:[["ng-template","matStepContent",""]]})}return MatStepContent2})(),MatStep=(()=>{class MatStep2 extends CdkStep{_errorStateMatcher=inject2(ErrorStateMatcher,{skipSelf:!0});_viewContainerRef=inject2(ViewContainerRef);_isSelected=Subscription.EMPTY;stepLabel=void 0;color;_lazyContent;_portal;ngAfterContentInit(){this._isSelected=this._stepper.steps.changes.pipe(switchMap(()=>this._stepper.selectionChange.pipe(map(event=>event.selectedStep===this),startWith(this._stepper.selected===this)))).subscribe(isSelected=>{isSelected&&this._lazyContent&&!this._portal&&(this._portal=new TemplatePortal(this._lazyContent._template,this._viewContainerRef))})}ngOnDestroy(){this._isSelected.unsubscribe()}isErrorState(control,form){let originalErrorState=this._errorStateMatcher.isErrorState(control,form),customErrorState=!!(control&&control.invalid&&this.interacted);return originalErrorState||customErrorState}static \u0275fac=(()=>{let \u0275MatStep_BaseFactory;return function(__ngFactoryType__){return(\u0275MatStep_BaseFactory||(\u0275MatStep_BaseFactory=\u0275\u0275getInheritedFactory(MatStep2)))(__ngFactoryType__||MatStep2)}})();static \u0275cmp=\u0275\u0275defineComponent({type:MatStep2,selectors:[["mat-step"]],contentQueries:function(rf,ctx,dirIndex){if(rf&1&&(\u0275\u0275contentQuery(dirIndex,MatStepLabel,5),\u0275\u0275contentQuery(dirIndex,MatStepContent,5)),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx.stepLabel=_t.first),\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._lazyContent=_t.first)}},hostAttrs:["hidden",""],inputs:{color:"color"},exportAs:["matStep"],features:[\u0275\u0275ProvidersFeature([{provide:ErrorStateMatcher,useExisting:MatStep2},{provide:CdkStep,useExisting:MatStep2}]),\u0275\u0275InheritDefinitionFeature],ngContentSelectors:_c119,decls:1,vars:0,consts:[[3,"cdkPortalOutlet"]],template:function(rf,ctx){rf&1&&(\u0275\u0275projectionDef(),\u0275\u0275template(0,MatStep_ng_template_0_Template,2,1,"ng-template"))},dependencies:[CdkPortalOutlet],encapsulation:2,changeDetection:0})}return MatStep2})(),MatStepper=(()=>{class MatStepper2 extends CdkStepper{_ngZone=inject2(NgZone);_renderer=inject2(Renderer2);_animationsDisabled=_animationsDisabled();_cleanupTransition;_isAnimating=signal(!1);_stepHeader=void 0;_animatedContainers;_steps=void 0;steps=new QueryList;_icons;animationDone=new EventEmitter;disableRipple;color;labelPosition="end";headerPosition="top";_iconOverrides={};get animationDuration(){return this._animationDuration}set animationDuration(value){this._animationDuration=/^\d+$/.test(value)?value+"ms":value}_animationDuration="";_isServer=!inject2(Platform).isBrowser;constructor(){super();let nodeName=inject2(ElementRef).nativeElement.nodeName.toLowerCase();this.orientation=nodeName==="mat-vertical-stepper"?"vertical":"horizontal"}ngAfterContentInit(){super.ngAfterContentInit(),this._icons.forEach(({name,templateRef})=>this._iconOverrides[name]=templateRef),this.steps.changes.pipe(takeUntil(this._destroyed)).subscribe(()=>this._stateChanged()),this.selectedIndexChange.pipe(takeUntil(this._destroyed)).subscribe(()=>{let duration=this._getAnimationDuration();duration==="0ms"||duration==="0s"?this._onAnimationDone():this._isAnimating.set(!0)}),this._ngZone.runOutsideAngular(()=>{this._animationsDisabled||setTimeout(()=>{this._elementRef.nativeElement.classList.add("mat-stepper-animations-enabled"),this._cleanupTransition=this._renderer.listen(this._elementRef.nativeElement,"transitionend",this._handleTransitionend)},200)})}ngAfterViewInit(){if(super.ngAfterViewInit(),typeof queueMicrotask=="function"){let hasEmittedInitial=!1;this._animatedContainers.changes.pipe(startWith(null),takeUntil(this._destroyed)).subscribe(()=>queueMicrotask(()=>{hasEmittedInitial||(hasEmittedInitial=!0,this.animationDone.emit()),this._stateChanged()}))}}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTransition?.()}_getAnimationDuration(){return this._animationsDisabled?"0ms":this.animationDuration?this.animationDuration:this.orientation==="horizontal"?"500ms":"225ms"}_handleTransitionend=event=>{let target=event.target;if(!target)return;let isHorizontalActiveElement=this.orientation==="horizontal"&&event.propertyName==="transform"&&target.classList.contains("mat-horizontal-stepper-content-current"),isVerticalActiveElement=this.orientation==="vertical"&&event.propertyName==="grid-template-rows"&&target.classList.contains("mat-vertical-content-container-active");(isHorizontalActiveElement||isVerticalActiveElement)&&this._animatedContainers.find(ref=>ref.nativeElement===target)&&this._onAnimationDone()};_onAnimationDone(){this._isAnimating.set(!1),this.animationDone.emit()}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatStepper2)};static \u0275cmp=\u0275\u0275defineComponent({type:MatStepper2,selectors:[["mat-stepper"],["mat-vertical-stepper"],["mat-horizontal-stepper"],["","matStepper",""]],contentQueries:function(rf,ctx,dirIndex){if(rf&1&&(\u0275\u0275contentQuery(dirIndex,MatStep,5),\u0275\u0275contentQuery(dirIndex,MatStepperIcon,5)),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._steps=_t),\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._icons=_t)}},viewQuery:function(rf,ctx){if(rf&1&&(\u0275\u0275viewQuery(MatStepHeader,5),\u0275\u0275viewQuery(_c213,5)),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._stepHeader=_t),\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._animatedContainers=_t)}},hostAttrs:["role","tablist"],hostVars:15,hostBindings:function(rf,ctx){rf&2&&(\u0275\u0275attribute("aria-orientation",ctx.orientation),\u0275\u0275styleProp("--mat-stepper-animation-duration",ctx._getAnimationDuration()),\u0275\u0275classProp("mat-stepper-horizontal",ctx.orientation==="horizontal")("mat-stepper-vertical",ctx.orientation==="vertical")("mat-stepper-label-position-end",ctx.orientation==="horizontal"&&ctx.labelPosition=="end")("mat-stepper-label-position-bottom",ctx.orientation==="horizontal"&&ctx.labelPosition=="bottom")("mat-stepper-header-position-bottom",ctx.headerPosition==="bottom")("mat-stepper-animating",ctx._isAnimating()))},inputs:{disableRipple:"disableRipple",color:"color",labelPosition:"labelPosition",headerPosition:"headerPosition",animationDuration:"animationDuration"},outputs:{animationDone:"animationDone"},exportAs:["matStepper","matVerticalStepper","matHorizontalStepper"],features:[\u0275\u0275ProvidersFeature([{provide:CdkStepper,useExisting:MatStepper2}]),\u0275\u0275InheritDefinitionFeature],ngContentSelectors:_c119,decls:5,vars:2,consts:[["stepTemplate",""],["animatedContainer",""],[1,"mat-horizontal-stepper-wrapper"],[1,"mat-horizontal-stepper-header-container"],[1,"mat-horizontal-content-container"],["role","tabpanel",1,"mat-horizontal-stepper-content",3,"id","class"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"mat-stepper-horizontal-line"],["role","tabpanel",1,"mat-horizontal-stepper-content",3,"id"],[3,"ngTemplateOutlet"],[1,"mat-step"],[1,"mat-vertical-content-container"],["role","tabpanel",1,"mat-vertical-stepper-content",3,"id"],[1,"mat-vertical-content"],[3,"click","keydown","tabIndex","id","index","state","label","selected","active","optional","errorMessage","iconOverrides","disableRipple","color"]],template:function(rf,ctx){if(rf&1&&(\u0275\u0275projectionDef(),\u0275\u0275conditionalCreate(0,MatStepper_Conditional_0_Template,1,0),\u0275\u0275conditionalCreate(1,MatStepper_Case_1_Template,7,0,"div",2)(2,MatStepper_Case_2_Template,2,0),\u0275\u0275template(3,MatStepper_ng_template_3_Template,1,23,"ng-template",null,0,\u0275\u0275templateRefExtractor)),rf&2){let tmp_2_0;\u0275\u0275conditional(ctx._isServer?0:-1),\u0275\u0275advance(),\u0275\u0275conditional((tmp_2_0=ctx.orientation)==="horizontal"?1:tmp_2_0==="vertical"?2:-1)}},dependencies:[NgTemplateOutlet,MatStepHeader],styles:[`.mat-stepper-vertical,.mat-stepper-horizontal{display:block;font-family:var(--mat-stepper-container-text-font, var(--mat-sys-body-medium-font));background:var(--mat-stepper-container-color, var(--mat-sys-surface))}.mat-horizontal-stepper-header-container{white-space:nowrap;display:flex;align-items:center}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header-container{align-items:flex-start}.mat-stepper-header-position-bottom .mat-horizontal-stepper-header-container{order:1}.mat-stepper-horizontal-line{border-top-width:1px;border-top-style:solid;flex:auto;height:0;margin:0 -16px;min-width:32px;border-top-color:var(--mat-stepper-line-color, var(--mat-sys-outline))}.mat-stepper-label-position-bottom .mat-stepper-horizontal-line{margin:0;min-width:0;position:relative;top:calc(calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) + 12px)}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::before,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::before,.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::after,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::after{border-top-width:1px;border-top-style:solid;content:"";display:inline-block;height:0;position:absolute;width:calc(50% - 20px)}.mat-horizontal-stepper-header{display:flex;overflow:hidden;align-items:center;padding:0 24px;height:var(--mat-stepper-header-height, 72px)}.mat-horizontal-stepper-header .mat-step-icon{margin-right:8px;flex:none}[dir=rtl] .mat-horizontal-stepper-header .mat-step-icon{margin-right:0;margin-left:8px}.mat-horizontal-stepper-header.mat-step-header-empty-label .mat-step-icon{margin:0}.mat-horizontal-stepper-header::before,.mat-horizontal-stepper-header::after{border-top-color:var(--mat-stepper-line-color, var(--mat-sys-outline))}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header{padding:calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) 24px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header::before,.mat-stepper-label-position-bottom .mat-horizontal-stepper-header::after{top:calc(calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) + 12px)}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header{box-sizing:border-box;flex-direction:column;height:auto}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::after,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::after{right:0}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:first-child)::before,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:not(:last-child)::before{left:0}[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:last-child::before,[dir=rtl] .mat-stepper-label-position-bottom .mat-horizontal-stepper-header:first-child::after{display:none}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header .mat-step-icon{margin-right:0;margin-left:0}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header .mat-step-label{padding:16px 0 0 0;text-align:center;width:100%}.mat-vertical-stepper-header{display:flex;align-items:center;height:24px;padding:calc((var(--mat-stepper-header-height, 72px) - 24px) / 2) 24px}.mat-vertical-stepper-header .mat-step-icon{margin-right:12px}[dir=rtl] .mat-vertical-stepper-header .mat-step-icon{margin-right:0;margin-left:12px}.mat-horizontal-stepper-wrapper{display:flex;flex-direction:column}.mat-horizontal-stepper-content{visibility:hidden;overflow:hidden;outline:0;height:0}.mat-stepper-animations-enabled .mat-horizontal-stepper-content{transition:transform var(--mat-stepper-animation-duration, 0) cubic-bezier(0.35, 0, 0.25, 1)}.mat-horizontal-stepper-content.mat-horizontal-stepper-content-previous{transform:translate3d(-100%, 0, 0)}.mat-horizontal-stepper-content.mat-horizontal-stepper-content-next{transform:translate3d(100%, 0, 0)}.mat-horizontal-stepper-content.mat-horizontal-stepper-content-current{visibility:visible;transform:none;height:auto}.mat-stepper-horizontal:not(.mat-stepper-animating) .mat-horizontal-stepper-content.mat-horizontal-stepper-content-current{overflow:visible}.mat-horizontal-content-container{overflow:hidden;padding:0 24px 24px 24px}@media(forced-colors: active){.mat-horizontal-content-container{outline:solid 1px}}.mat-stepper-header-position-bottom .mat-horizontal-content-container{padding:24px 24px 0 24px}.mat-vertical-content-container{display:grid;grid-template-rows:0fr;grid-template-columns:100%;margin-left:36px;border:0;position:relative}.mat-stepper-animations-enabled .mat-vertical-content-container{transition:grid-template-rows var(--mat-stepper-animation-duration, 0) cubic-bezier(0.4, 0, 0.2, 1)}.mat-vertical-content-container.mat-vertical-content-container-active{grid-template-rows:1fr}.mat-step:last-child .mat-vertical-content-container{border:none}@media(forced-colors: active){.mat-vertical-content-container{outline:solid 1px}}[dir=rtl] .mat-vertical-content-container{margin-left:0;margin-right:36px}@supports not (grid-template-rows: 0fr){.mat-vertical-content-container{height:0}.mat-vertical-content-container.mat-vertical-content-container-active{height:auto}}.mat-stepper-vertical-line::before{content:"";position:absolute;left:0;border-left-width:1px;border-left-style:solid;border-left-color:var(--mat-stepper-line-color, var(--mat-sys-outline));top:calc(8px - calc((var(--mat-stepper-header-height, 72px) - 24px) / 2));bottom:calc(8px - calc((var(--mat-stepper-header-height, 72px) - 24px) / 2))}[dir=rtl] .mat-stepper-vertical-line::before{left:auto;right:0}.mat-vertical-stepper-content{overflow:hidden;outline:0;visibility:hidden}.mat-stepper-animations-enabled .mat-vertical-stepper-content{transition:visibility var(--mat-stepper-animation-duration, 0) linear}.mat-vertical-content-container-active>.mat-vertical-stepper-content{visibility:visible}.mat-vertical-content{padding:0 24px 24px 24px}
|
|
102
102
|
`],encapsulation:2,changeDetection:0})}return MatStepper2})();var MatStepperModule=(()=>{class MatStepperModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatStepperModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:MatStepperModule2});static \u0275inj=\u0275\u0275defineInjector({providers:[MAT_STEPPER_INTL_PROVIDER,ErrorStateMatcher],imports:[MatCommonModule,PortalModule,CdkStepperModule,MatIconModule,MatRippleModule,MatStepper,MatStepHeader,MatCommonModule]})}return MatStepperModule2})();var _c026=["*",[["mat-toolbar-row"]]],_c120=["*","mat-toolbar-row"],MatToolbarRow=(()=>{class MatToolbarRow2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatToolbarRow2)};static \u0275dir=\u0275\u0275defineDirective({type:MatToolbarRow2,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]})}return MatToolbarRow2})(),MatToolbar=(()=>{class MatToolbar2{_elementRef=inject2(ElementRef);_platform=inject2(Platform);_document=inject2(DOCUMENT);color;_toolbarRows;constructor(){}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){this._toolbarRows.length}static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatToolbar2)};static \u0275cmp=\u0275\u0275defineComponent({type:MatToolbar2,selectors:[["mat-toolbar"]],contentQueries:function(rf,ctx,dirIndex){if(rf&1&&\u0275\u0275contentQuery(dirIndex,MatToolbarRow,5),rf&2){let _t;\u0275\u0275queryRefresh(_t=\u0275\u0275loadQuery())&&(ctx._toolbarRows=_t)}},hostAttrs:[1,"mat-toolbar"],hostVars:6,hostBindings:function(rf,ctx){rf&2&&(\u0275\u0275classMap(ctx.color?"mat-"+ctx.color:""),\u0275\u0275classProp("mat-toolbar-multiple-rows",ctx._toolbarRows.length>0)("mat-toolbar-single-row",ctx._toolbarRows.length===0))},inputs:{color:"color"},exportAs:["matToolbar"],ngContentSelectors:_c120,decls:2,vars:0,template:function(rf,ctx){rf&1&&(\u0275\u0275projectionDef(_c026),\u0275\u0275projection(0),\u0275\u0275projection(1,1))},styles:[`.mat-toolbar{background:var(--mat-toolbar-container-background-color, var(--mat-sys-surface));color:var(--mat-toolbar-container-text-color, var(--mat-sys-on-surface))}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font-family:var(--mat-toolbar-title-text-font, var(--mat-sys-title-large-font));font-size:var(--mat-toolbar-title-text-size, var(--mat-sys-title-large-size));line-height:var(--mat-toolbar-title-text-line-height, var(--mat-sys-title-large-line-height));font-weight:var(--mat-toolbar-title-text-weight, var(--mat-sys-title-large-weight));letter-spacing:var(--mat-toolbar-title-text-tracking, var(--mat-sys-title-large-tracking));margin:0}@media(forced-colors: active){.mat-toolbar{outline:solid 1px}}.mat-toolbar .mat-form-field-underline,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-focused .mat-form-field-ripple{background-color:currentColor}.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-select-value,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar .mat-mdc-button-base.mat-mdc-button-base.mat-unthemed{--mat-button-text-label-text-color: var(--mat-toolbar-container-text-color, var(--mat-sys-on-surface));--mat-button-outlined-label-text-color: var(--mat-toolbar-container-text-color, var(--mat-sys-on-surface))}.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;height:var(--mat-toolbar-standard-height, 64px)}@media(max-width: 599px){.mat-toolbar-row,.mat-toolbar-single-row{height:var(--mat-toolbar-mobile-height, 56px)}}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%;min-height:var(--mat-toolbar-standard-height, 64px)}@media(max-width: 599px){.mat-toolbar-multiple-rows{min-height:var(--mat-toolbar-mobile-height, 56px)}}
|
|
103
|
-
`],encapsulation:2,changeDetection:0})}return MatToolbar2})();var MatToolbarModule=(()=>{class MatToolbarModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatToolbarModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:MatToolbarModule2});static \u0275inj=\u0275\u0275defineInjector({imports:[MatCommonModule,MatCommonModule]})}return MatToolbarModule2})();var MTX_POPOVER_CONTENT=new InjectionToken("MtxPopoverContent");var MTX_POPOVER_DEFAULT_OPTIONS=new InjectionToken("mtx-popover-default-options",{providedIn:"root",factory:MTX_POPOVER_DEFAULT_OPTIONS_FACTORY});function MTX_POPOVER_DEFAULT_OPTIONS_FACTORY(){return{backdropClass:"cdk-overlay-transparent-backdrop"}}var MTX_POPOVER_SCROLL_STRATEGY=new InjectionToken("mtx-popover-scroll-strategy",{providedIn:"root",factory:()=>{let overlay=inject2(Overlay);return()=>overlay.scrollStrategies.reposition()}});function MTX_POPOVER_SCROLL_STRATEGY_FACTORY(overlay){return()=>overlay.scrollStrategies.reposition()}var MTX_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER={provide:MTX_POPOVER_SCROLL_STRATEGY,deps:[Overlay],useFactory:MTX_POPOVER_SCROLL_STRATEGY_FACTORY};var MtxPopoverModule=(()=>{class MtxPopoverModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MtxPopoverModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:MtxPopoverModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({providers:[MTX_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER],imports:[CommonModule,OverlayModule,A11yModule]})}}return MtxPopoverModule2})();var SharedMaterialModule=(()=>{class SharedMaterialModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SharedMaterialModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:SharedMaterialModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({providers:[{provide:MAT_DIALOG_DEFAULT_OPTIONS,useValue:__spreadProps(__spreadValues({},new MatDialogConfig),{maxHeight:"100vh",maxWidth:"100vw",autoFocus:!1})},{provide:MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS,useValue:{diameter:30,strokeWith:1}},{provide:MAT_TABS_CONFIG,useValue:{stretchTabs:!1}},{provide:MAT_TOOLTIP_DEFAULT_OPTIONS,useValue:{disableTooltipInteractivity:!0,hideDelay:0,showDelay:0,touchendHideDelay:1500}},{provide:APP_INITIALIZER,multi:!0,useFactory:iconRegistry=>()=>{let outlinedFontSetClasses=iconRegistry.getDefaultFontSetClass().filter(fontSetClass=>fontSetClass!=="material-icons").concat(["material-symbols-outlined"]);iconRegistry.setDefaultFontSetClass(...outlinedFontSetClasses)},deps:[MatIconRegistry]},{provide:MTX_POPOVER_DEFAULT_OPTIONS,useValue:{elevation:2,hideArrow:!0,leaveDelay:300}}],imports:[MatAutocompleteModule,MatBadgeModule,MatBottomSheetModule,MatButtonModule,MatButtonToggleModule,MatCardModule,MatCheckboxModule,MatChipsModule,MatDatepickerModule,MatDialogModule,MatExpansionModule,MatFormFieldModule,MatGridListModule,MatIconModule,MatInputModule,MatListModule,MatMenuModule,MatNativeDateModule,MatPaginatorModule,MatProgressBarModule,MatProgressSpinnerModule,MatRadioModule,MatRippleModule,MatSelectModule,MatSidenavModule,MatSlideToggleModule,MatSnackBarModule,MatSortModule,MatStepperModule,MatTableModule,MatTabsModule,MatToolbarModule,MatTooltipModule,MtxPopoverModule]})}}return SharedMaterialModule2})();var SharedModule=(()=>{class SharedModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SharedModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:SharedModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({imports:[CommonModule,FlexLayoutModule,FormsModule,ReactiveFormsModule,RouterModule,TranslateModule,A11yModule,ClipboardModule,DragDropModule,LayoutModule,ScrollingModule,SharedMaterialModule]})}}return SharedModule2})();var AnimationMetadataType=(function(AnimationMetadataType2){return AnimationMetadataType2[AnimationMetadataType2.State=0]="State",AnimationMetadataType2[AnimationMetadataType2.Transition=1]="Transition",AnimationMetadataType2[AnimationMetadataType2.Sequence=2]="Sequence",AnimationMetadataType2[AnimationMetadataType2.Group=3]="Group",AnimationMetadataType2[AnimationMetadataType2.Animate=4]="Animate",AnimationMetadataType2[AnimationMetadataType2.Keyframes=5]="Keyframes",AnimationMetadataType2[AnimationMetadataType2.Style=6]="Style",AnimationMetadataType2[AnimationMetadataType2.Trigger=7]="Trigger",AnimationMetadataType2[AnimationMetadataType2.Reference=8]="Reference",AnimationMetadataType2[AnimationMetadataType2.AnimateChild=9]="AnimateChild",AnimationMetadataType2[AnimationMetadataType2.AnimateRef=10]="AnimateRef",AnimationMetadataType2[AnimationMetadataType2.Query=11]="Query",AnimationMetadataType2[AnimationMetadataType2.Stagger=12]="Stagger",AnimationMetadataType2})(AnimationMetadataType||{}),AUTO_STYLE="*";function trigger(name,definitions2){return{type:AnimationMetadataType.Trigger,name,definitions:definitions2,options:{}}}function animate(timings,styles=null){return{type:AnimationMetadataType.Animate,styles,timings}}function sequence(steps,options=null){return{type:AnimationMetadataType.Sequence,steps,options}}function style(tokens){return{type:AnimationMetadataType.Style,styles:tokens,offset:null}}function state(name,styles,options){return{type:AnimationMetadataType.State,name,styles,options}}function transition(stateChangeExpr,steps,options=null){return{type:AnimationMetadataType.Transition,expr:stateChangeExpr,animation:steps,options}}var NoopAnimationPlayer=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(duration=0,delay2=0){this.totalTime=duration+delay2}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(fn=>fn()),this._onDoneFns=[])}onStart(fn){this._originalOnStartFns.push(fn),this._onStartFns.push(fn)}onDone(fn){this._originalOnDoneFns.push(fn),this._onDoneFns.push(fn)}onDestroy(fn){this._onDestroyFns.push(fn)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(fn=>fn()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(fn=>fn()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(position){this._position=this.totalTime?position*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(phaseName){let methods=phaseName=="start"?this._onStartFns:this._onDoneFns;methods.forEach(fn=>fn()),methods.length=0}},AnimationGroupPlayer=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(_players){this.players=_players;let doneCount=0,destroyCount=0,startCount=0,total=this.players.length;total==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(player=>{player.onDone(()=>{++doneCount==total&&this._onFinish()}),player.onDestroy(()=>{++destroyCount==total&&this._onDestroy()}),player.onStart(()=>{++startCount==total&&this._onStart()})}),this.totalTime=this.players.reduce((time,player)=>Math.max(time,player.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(fn=>fn()),this._onDoneFns=[])}init(){this.players.forEach(player=>player.init())}onStart(fn){this._onStartFns.push(fn)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(fn=>fn()),this._onStartFns=[])}onDone(fn){this._onDoneFns.push(fn)}onDestroy(fn){this._onDestroyFns.push(fn)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(player=>player.play())}pause(){this.players.forEach(player=>player.pause())}restart(){this.players.forEach(player=>player.restart())}finish(){this._onFinish(),this.players.forEach(player=>player.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(player=>player.destroy()),this._onDestroyFns.forEach(fn=>fn()),this._onDestroyFns=[])}reset(){this.players.forEach(player=>player.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(p){let timeAtPosition=p*this.totalTime;this.players.forEach(player=>{let position=player.totalTime?Math.min(1,timeAtPosition/player.totalTime):1;player.setPosition(position)})}getPosition(){let longestPlayer=this.players.reduce((longestSoFar,player)=>longestSoFar===null||player.totalTime>longestSoFar.totalTime?player:longestSoFar,null);return longestPlayer!=null?longestPlayer.getPosition():0}beforeDestroy(){this.players.forEach(player=>{player.beforeDestroy&&player.beforeDestroy()})}triggerCallback(phaseName){let methods=phaseName=="start"?this._onStartFns:this._onDoneFns;methods.forEach(fn=>fn()),methods.length=0}},\u0275PRE_STYLE="!";var expandCollapse=trigger("expandCollapse",[state("expand",style({marginTop:"1px",height:"*"})),state("collapse",style({marginTop:"0px",height:"0px"})),transition("expand <=> collapse",[animate("0.3s cubic-bezier(.4,0,.2,1)")])]),arrowRotateFactory=degrees=>trigger("arrowRotate",[state("expand",style({transform:`rotate(${degrees}deg)`})),state("collapse",style({transform:"rotate(0deg)"})),transition("expand <=> collapse",[animate("0.3s cubic-bezier(.4,0,.2,1)")])]),arrowRotate=arrowRotateFactory(180);var SettingsMenuListComponent=(()=>{class SettingsMenuListComponent2{constructor(){this.router=inject2(Router),this.apiExpanded=!0,this.apiIsActive=!1,this.router.events.pipe(filter(event=>event instanceof NavigationEnd),map(event=>event.urlAfterRedirects),takeUntilDestroyed()).subscribe(url=>{this.apiIsActive=this.getApiIsActive(url)})}apiItemClick(event){event.preventDefault(),event.stopPropagation(),this.apiExpanded=!this.apiExpanded}getApiIsActive(url){return url==="/settings/general"||url==="/settings/permissions"}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SettingsMenuListComponent2)}}static{this.\u0275cmp=\u0275\u0275defineComponent({type:SettingsMenuListComponent2,selectors:[["ix-settings-menu-list"]],decls:14,vars:4,consts:[[1,"ix-nav-list","ix-nav-list--with-children"],["mat-list-item","","routerLink","component","routerLinkActive","active"],[3,"click"],["matListItemTitle",""],["matListItemMeta",""],[1,"ix-nav-list-item-arrow-icon"],[1,"ix-nav-list__children"],["mat-list-item","","routerLink","general","routerLinkActive","active"],["mat-list-item","","routerLink","permissions","routerLinkActive","active"]],template:function(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-nav-list",0)(1,"a",1),\u0275\u0275text(2,"Component"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(3,"mat-list-item",2),\u0275\u0275listener("click",function($event){return ctx.apiItemClick($event)}),\u0275\u0275elementStart(4,"span",3),\u0275\u0275text(5,"API"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(6,"span",4)(7,"mat-icon",5),\u0275\u0275text(8,"expand_more"),\u0275\u0275elementEnd()()(),\u0275\u0275elementStart(9,"div",6)(10,"a",7),\u0275\u0275text(11,"General"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(12,"a",8),\u0275\u0275text(13,"Permissions"),\u0275\u0275elementEnd()()()),rf&2&&(\u0275\u0275advance(3),\u0275\u0275classProp("active",ctx.apiIsActive),\u0275\u0275advance(4),\u0275\u0275property("@arrowRotate",ctx.apiExpanded?"expand":"collapse"),\u0275\u0275advance(2),\u0275\u0275property("@expandCollapse",ctx.apiExpanded?"expand":"collapse"))},dependencies:[FlexModule,MatIconModule,MatIcon,MatListModule,MatNavList,MatListItem,MatListItemTitle,MatListItemMeta,RouterLink,RouterLinkActive],styles:["[_nghost-%COMP%]{display:block}"],data:{animation:[expandCollapse,arrowRotate]}})}}return SettingsMenuListComponent2})();var SettingsComponent=(()=>{class SettingsComponent2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SettingsComponent2)}}static{this.\u0275cmp=\u0275\u0275defineComponent({type:SettingsComponent2,selectors:[["ix-settings"]],decls:15,vars:1,consts:[["fxFlex","","fxLayout","column",1,"ix-surface"],["mat-icon-button","","routerLink","/",1,"back-button"],["fxFlex",""],["fxFlex","",1,"ix-content"],["mode","side",3,"opened"]],template:function(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"div",0)(1,"mat-toolbar")(2,"button",1)(3,"mat-icon"),\u0275\u0275text(4,"arrow_back"),\u0275\u0275elementEnd()(),\u0275\u0275elementStart(5,"h1"),\u0275\u0275text(6,"Settings"),\u0275\u0275elementEnd(),\u0275\u0275element(7,"span",2),\u0275\u0275elementEnd(),\u0275\u0275elementStart(8,"div",3)(9,"mat-sidenav-container")(10,"mat-sidenav",4),\u0275\u0275element(11,"ix-settings-menu-list"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(12,"mat-sidenav-content")(13,"main"),\u0275\u0275element(14,"router-outlet"),\u0275\u0275elementEnd()()()()()),rf&2&&(\u0275\u0275advance(10),\u0275\u0275property("opened",!0))},dependencies:[SharedModule,DefaultLayoutDirective,DefaultFlexDirective,RouterOutlet,RouterLink,MatIconButton,MatIcon,MatSidenav,MatSidenavContainer,MatSidenavContent,MatToolbar,SettingsMenuListComponent],styles:["[_nghost-%COMP%]{height:100%;width:100%}[_nghost-%COMP%] .mat-sidenav-container[_ngcontent-%COMP%]{height:100%}[_nghost-%COMP%] .mat-sidenav-container[_ngcontent-%COMP%] .mat-sidenav[_ngcontent-%COMP%]{width:240px}[_nghost-%COMP%] .mat-toolbar[_ngcontent-%COMP%]{border-bottom:1px solid var(--mat-sys-surface-variant)}[_nghost-%COMP%] .mat-toolbar[_ngcontent-%COMP%] .back-button[_ngcontent-%COMP%]{margin-right:4px}[_nghost-%COMP%] .ix-content[_ngcontent-%COMP%] main[_ngcontent-%COMP%]{max-width:640px;padding:0 16px}@media (min-width: 960px){[_nghost-%COMP%] .ix-content[_ngcontent-%COMP%] main[_ngcontent-%COMP%]{margin-left:32px}}@media (min-width: 1920px){[_nghost-%COMP%] .ix-content[_ngcontent-%COMP%] main[_ngcontent-%COMP%]{max-width:880px}}"]})}}return SettingsComponent2})();var SettingsResolver=(()=>{class SettingsResolver2{constructor(){this.service=inject2(SettingsService)}resolve(){return this.service.getAccessToken().pipe(take(1),mergeMap(token=>this.service.getInfo(token)))}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SettingsResolver2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:SettingsResolver2,factory:SettingsResolver2.\u0275fac,providedIn:"root"})}}return SettingsResolver2})();var ConfirmLeaveFormDialogComponent=(()=>{class ConfirmLeaveFormDialogComponent2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ConfirmLeaveFormDialogComponent2)}}static{this.\u0275cmp=\u0275\u0275defineComponent({type:ConfirmLeaveFormDialogComponent2,selectors:[["ix-confirm-leave-form-dialog"]],decls:12,vars:2,consts:[["mat-dialog-title","","translate",""],["mat-dialog-content",""],["translate",""],["mat-dialog-actions",""],["mat-button","",3,"mat-dialog-close"]],template:function(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"h1",0),\u0275\u0275text(1,"LEAVE_FORM"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(2,"div",1)(3,"p",2),\u0275\u0275text(4,"__TEXT__.LEAVE_FORM"),\u0275\u0275elementEnd()(),\u0275\u0275elementStart(5,"div",3)(6,"button",4)(7,"span",2),\u0275\u0275text(8,"CANCEL"),\u0275\u0275elementEnd()(),\u0275\u0275elementStart(9,"button",4)(10,"span",2),\u0275\u0275text(11,"LEAVE"),\u0275\u0275elementEnd()()()),rf&2&&(\u0275\u0275advance(6),\u0275\u0275property("mat-dialog-close",!1),\u0275\u0275advance(3),\u0275\u0275property("mat-dialog-close",!0))},dependencies:[FlexLayoutModule,MatButtonModule,MatButton,MatDialogModule,MatDialogClose,MatDialogTitle,MatDialogActions,MatDialogContent,TranslateModule,TranslateDirective,SharedModule],styles:["[_nghost-%COMP%]{width:100dvw;height:100dvh;display:flex;flex-direction:column;flex:1}@media (min-width: 960px){[_nghost-%COMP%]{height:auto;width:auto;min-width:528px;max-width:528px}}[_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%]{padding:calc(env(safe-area-inset-top,0) + 16px) 24px 16px}[_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%] .mat-toolbar{height:48px;padding-left:0;padding-right:0}[_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%] .mat-toolbar .mdc-dialog__title{--mat-dialog-headline-padding: 0;color:inherit}[_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%] .mat-toolbar .mdc-dialog__title:before{display:none}[_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%] + .ix-dialog__content[_ngcontent-%COMP%], [_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%] + .mdc-dialog__content[_ngcontent-%COMP%]{padding-top:0}[_nghost-%COMP%] .mdc-dialog__title[_ngcontent-%COMP%]:before{height:calc(env(safe-area-inset-top,0) + 40px)}[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%]{padding:20px 24px}[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%] > .ix-list[_ngcontent-%COMP%]{margin-left:-24px;margin-right:-24px}[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%], [_nghost-%COMP%] .mdc-dialog__content[_ngcontent-%COMP%]{flex-direction:column;box-sizing:border-box;display:flex;place-content:stretch flex-start;align-items:stretch;flex:1 1 auto;max-height:none;overflow:auto;-webkit-overflow-scrolling:touch}[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%] > .mat-mdc-subheader[_ngcontent-%COMP%], [_nghost-%COMP%] .mdc-dialog__content[_ngcontent-%COMP%] > .mat-mdc-subheader[_ngcontent-%COMP%]{margin-left:0;margin-right:0}@media (min-width: 960px){[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%], [_nghost-%COMP%] .mdc-dialog__content[_ngcontent-%COMP%]{max-height:calc(90dvh - 140px)}[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%]:has(+.mdc-dialog__actions), [_nghost-%COMP%] .mdc-dialog__content[_ngcontent-%COMP%]:has(+.mdc-dialog__actions){padding-bottom:0}}@media (min-width: 960px){[_nghost-%COMP%] .ix-dialog__banner[_ngcontent-%COMP%] + .ix-dialog__content[_ngcontent-%COMP%]{max-height:calc(90dvh - 225px)}}@media (max-width: 959.9px){[_nghost-%COMP%] .mdc-dialog__actions[_ngcontent-%COMP%]{border-top:1px solid rgba(0,0,0,.12);padding-bottom:calc(16px + env(safe-area-inset-bottom,0))}}[_nghost-%COMP%] form[_ngcontent-%COMP%]{flex-direction:column;box-sizing:border-box;display:flex;flex:1 1 auto;height:inherit}[_nghost-%COMP%] form[_ngcontent-%COMP%] .mat-mdc-form-field[_ngcontent-%COMP%]{margin-bottom:1rem}"]})}}return ConfirmLeaveFormDialogComponent2})();var ConfirmLeaveGuard=(()=>{class ConfirmLeaveGuard2{constructor(){this.dialog=inject2(MatDialog)}canDeactivate(component){return component.isFormChanged()?this.dialog.open(ConfirmLeaveFormDialogComponent).afterClosed():of(!0)}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ConfirmLeaveGuard2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:ConfirmLeaveGuard2,factory:ConfirmLeaveGuard2.\u0275fac,providedIn:"root"})}}return ConfirmLeaveGuard2})();var routes=[{path:"",component:SettingsComponent,children:[{path:"",redirectTo:"component",pathMatch:"full"},{path:"component",component:ComponentSettingsComponent},{path:"permissions",component:ApiPermissionsSettingsComponent,resolve:{info:SettingsResolver},canDeactivate:[ConfirmLeaveGuard]},{path:"general",component:ApiGeneralSettingsComponent,resolve:{info:SettingsResolver}}]}];var SettingsRoutingModule=(()=>{class SettingsRoutingModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SettingsRoutingModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:SettingsRoutingModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({imports:[RouterModule.forChild(routes),RouterModule]})}}return SettingsRoutingModule2})();var SettingsModule=(()=>{class SettingsModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SettingsModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:SettingsModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({imports:[SettingsComponent,SettingsRoutingModule]})}}return SettingsModule2})();export{Subscription,Subscriber,Observable,Subject,AnonymousSubject,BehaviorSubject,ReplaySubject,queueScheduler,EMPTY,observeOn,from,of,throwError,isObservable,lastValueFrom,firstValueFrom,timeout,map,combineLatest,mergeMap,defer,forkJoin,fromEvent,timer,merge,filter,buffer,catchError,concatMap,debounceTime,take,delayWhen,delay,distinctUntilChanged,first,last2 as last,pairwise,scan,share,shareReplay,skip,startWith,switchMap,takeUntil,tap,withLatestFrom,RuntimeError,forwardRef,ɵɵdefineInjectable,ɵɵdefineInjector,InjectionToken,ɵɵinject,inject2 as inject,makeEnvironmentProviders,provideEnvironmentInitializer,ɵɵrestoreView,ɵɵresetView,ɵɵnamespaceSVG,Injector,DOCUMENT,DestroyRef,ErrorHandler,signal,ɵɵNgOnChangesFeature,ɵɵgetInheritedFactory,ElementRef,PLATFORM_ID,ANIMATION_MODULE_TYPE,SecurityContext,ɵɵsanitizeHtml,ɵɵsanitizeUrl,ɵɵresolveDocument,ɵɵadvance,TemplateRef,ComponentFactoryResolver$1,RendererFactory2,Renderer2,ɵɵdirectiveInject,ViewContainerRef,ɵɵdefineComponent,ɵɵdefineNgModule,ɵɵdefineDirective,ɵɵdefinePipe,ɵɵInheritDefinitionFeature,ɵɵtemplate,EventEmitter,NgZone,APP_INITIALIZER,ApplicationRef,ɵɵattribute,ɵɵconditionalCreate,ɵɵconditional,ɵɵrepeaterTrackByIndex,ɵɵrepeaterTrackByIdentity,ɵɵrepeaterCreate,ɵɵrepeater,ɵɵproperty,ɵɵelementStart,ɵɵelementEnd,ɵɵelement,ɵɵdomElementStart,ɵɵdomElementEnd,ɵɵdomElement,ɵɵelementContainerStart,ɵɵelementContainerEnd,ɵɵelementContainer,ɵɵgetCurrentView,ɵɵlistener,ɵɵdomListener,ɵɵnextContext,ɵɵprojectionDef,ɵɵprojection,ɵɵcontentQuery,ɵɵviewQuery,ɵɵqueryRefresh,ɵɵloadQuery,ɵɵviewQuerySignal,ɵɵqueryAdvance,ɵɵreference,ɵɵstyleProp,ɵɵclassProp,ɵɵstyleMap,ɵɵclassMap,ɵɵtext,ɵɵtextInterpolate,ɵɵtextInterpolate1,ɵɵtextInterpolate2,ɵɵtextInterpolate3,ɵɵtwoWayProperty,ɵɵtwoWayBindingSet,ɵɵtwoWayListener,ɵɵdeclareLet,ɵɵstoreLet,ɵɵreadContextLet,ɵɵinterpolate,ɵɵinterpolate1,ɵɵProvidersFeature,ɵɵpureFunction0,ɵɵpureFunction1,ɵɵpipe,ɵɵpipeBind1,ɵɵpipeBind2,ɵɵpipeBind3,ɵɵtemplateRefExtractor,computed,effect,output,input,viewChild,isDevMode,ChangeDetectorRef,booleanAttribute,Location,NgForOf,NgIf,NgStyle,NgTemplateOutlet,AsyncPipe,LowerCasePipe,TitleCasePipe,CommonModule,isPlatformBrowser,isPlatformServer,DomRendererFactory2,platformBrowser,BrowserModule,HttpHeaders,HttpParams,HttpContext,HttpResponse,HttpErrorResponse,HttpClient,HTTP_INTERCEPTORS,provideHttpClient,withInterceptorsFromDi,Meta,Title,DomSanitizer,AnimationMetadataType,AUTO_STYLE,sequence,style,NoopAnimationPlayer,AnimationGroupPlayer,ɵPRE_STYLE,MediaObserver,coerceBooleanProperty,DefaultFlexDirective,DefaultLayoutAlignDirective,DefaultLayoutGapDirective,DefaultLayoutDirective,FlexModule,FlexLayoutModule,Platform,BreakpointObserver,A11yModule,LayoutModule,Breakpoints,MatIconButton,MatButton,MatButtonModule,ComponentPortal,CdkPortalOutlet,PortalModule,ViewportRuler,OverlayConfig,Overlay,MatSnackBar,MatSnackBarModule,MatIconRegistry,MatIcon,MatIconModule,TranslateLoader,TranslateService,TranslateDirective,TranslatePipe,TranslateModule,defaultOptions,IxApiRequestErrorMessages,IxApi2RequestErrorMessages,IxApiErrorMessages,OTP_SMS_REQUIRED_PATTERN,ofStatus,IxApiErrors,IxApiRequestErrors,IXAPI_OPTIONS,validateOptions,IxApiHeaderKeys,getLinkMap,getLinkUrl,getPageParams,throwNotFoundError,whileMoreAfter,IxApiService,IxApiModule,REQUIRES_BRANDING,REQUIRES_COMPANY,NG_VALUE_ACCESSOR,DefaultValueAccessor,NG_VALIDATORS,Validators,NgControl,NgControlStatus,NgControlStatusGroup,FormGroup,FormControl,NgModel,ɵNgNoValidate,NumberValueAccessor,FormControlDirective,FormGroupDirective,FormGroupName,FormControlName,SelectControlValueAccessor,NgSelectOption,ɵNgSelectMultipleOption,MinValidator,RequiredValidator,FormArray,FormBuilder,FormsModule,ReactiveFormsModule,NavigationStart,NavigationEnd,NavigationCancel,NavigationError,RoutesRecognized,ActivatedRoute,RouterOutlet,Router,RouterLink,RouterModule,moveItemInArray,CdkDrag,CdkDropList,CdkDragPreview,CdkDragPlaceholder,DragDropModule,MAT_BOTTOM_SHEET_DATA,MatBottomSheetRef,MatBottomSheet,MAT_DATE_LOCALE,DateAdapter,MAT_DATE_FORMATS,MatOptgroup,MatOption,MatLabel,MatError,MatHint,MatPrefix,MatSuffix,MatFormField,MatDatepicker,MatDatepickerInput,MatDatepickerToggle,MatExpansionPanel,MatCard,MatCardTitle,MatCardSubtitle,MatCardActions,MatCardHeader,MatCardModule,MatCheckbox,MatCheckboxModule,MatDialogContainer,MatDialogRef,MAT_DIALOG_DATA,MatDialog,MatDialogClose,MatDialogTitle,MatDialogContent,MatDialogActions,MatDialogModule,MatFormFieldModule,CdkTextareaAutosize,MatInput,MatInputModule,MatDivider,MatDividerModule,MatListItemTitle,MatListItemLine,MatListItemMeta,MatListItemIcon,MatActionList,MatList,MatListItem,MatListOption,MatListSubheaderCssMatStyler,MatSelectionList,MatListModule,MatMenuItem,MatMenu,MatMenuTrigger,MatMenuModule,MatSelect,MatSelectTrigger,MatSelectModule,MatTooltip,MatTooltipModule,MatPaginatorModule,MatTab,MatTabGroup,MatTabsModule,MatProgressSpinner,MatDrawerContent,MatDrawer,MatDrawerContainer,MatSidenavModule,MatToolbar,MatToolbarModule,SharedModule,takeUntilDestroyed,toObservable,toSignal,createAction,props,INIT,ActionsSubject,INITIAL_STATE,ACTIVE_RUNTIME_CHECKS,ReducerObservable,ReducerManagerDispatcher,UPDATE,ScannedActionsSubject,StateObservable,Store,select,isNgrxMockEnvironment,createSelector,createFeatureSelector,createFeature,StoreModule,on,createReducer,buildFields,compactFields,getMissingFields,haveFields,hasFields,hasNonPublicIdFields,omitLoadedFields,createEffect,Actions,ofType,USER_PROVIDED_EFFECTS,EffectsModule,mustache_default,omitSubresources,updateResource,mergeLoadedFields,mergeFields,createResourceSelectorFactory,mapResourceToSubResourceList,sortByNameAndPublicIdComparer,findAppId,ResourceDataClient,WA_WINDOW,WINDOW,SESSION_STORAGE,ResourceDataClientProxyService,ResourceDataServiceFactory,createEntityAdapter,createResourceAdapter,StorageEventContext,require_crypto_js,decryptValue,StorageService,StorageModule,ensureAll,loadAllSuccess,loadAllForIntentSuccess,reset,loadHost,loadHostFailure,loadHostSuccess,selectAll,selectEntity2 as selectEntity,selectEntities2 as selectEntities,naturalSort,add2 as add,addFailure2 as addFailure,addSuccess2 as addSuccess,didAdd2 as didAdd,didAddList,didRemove2 as didRemove,didRemoveList,didUpdate2 as didUpdate,didUpdateList,remove2 as remove,removeFailure,removeSuccess,update2 as update,updateFailure2 as updateFailure,updateSuccess2 as updateSuccess,updateMany,updateManyFailure,updateManySuccess,reset3 as reset2,resetPendingUpdates,BackendComponentCallerServiceFactory,BackendComponentCallerService,DEFAULT_CBC_INGRESS_URL,BackendComponentClientProxyService,BackendComponentClient,retryBackoff,environment,ensureOne,ensureMany,loadManySuccess,reset2 as reset3,PageComponentTemplateService,PageComponentTemplateModule,mapPageComponentTemplateManifestToDefaultInputs,mapPageComponentTemplateToCustomElementName,mapPageComponentTemplateToTemplateUrl,mapPageComponentTemplateToTemplateBaseUrl,APP_CONFIG,appConfigFactory,loadAppConfig,mapTemplateUrlToManifestUrl,selectEntity as selectEntity2,selectEntities as selectEntities2,PageComponentTemplateManifestModule,STORAGE_KEY_CBC_CONFIG_VALUES,STORAGE_KEY_CBC_INGRESS,STORAGE_KEY_CBC_INGRESS_URL,STORAGE_KEY_CBC_PUBLIC_ID,mapTemplateUrlToPublicId,mapTemplateUrlToMainPath,DEFAULT_CARD_DIMENSIONS,DEFAULT_SHEET_DIMENSIONS,DEFAULT_REPORT_DIMENSIONS,PAGE_COMPONENT,ONE_WEEK,parseBody,ComponentTemplateValidatorService,SettingsModule};
|
|
103
|
+
`],encapsulation:2,changeDetection:0})}return MatToolbar2})();var MatToolbarModule=(()=>{class MatToolbarModule2{static \u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MatToolbarModule2)};static \u0275mod=\u0275\u0275defineNgModule({type:MatToolbarModule2});static \u0275inj=\u0275\u0275defineInjector({imports:[MatCommonModule,MatCommonModule]})}return MatToolbarModule2})();var MTX_POPOVER_CONTENT=new InjectionToken("MtxPopoverContent");var MTX_POPOVER_DEFAULT_OPTIONS=new InjectionToken("mtx-popover-default-options",{providedIn:"root",factory:MTX_POPOVER_DEFAULT_OPTIONS_FACTORY});function MTX_POPOVER_DEFAULT_OPTIONS_FACTORY(){return{backdropClass:"cdk-overlay-transparent-backdrop"}}var MTX_POPOVER_SCROLL_STRATEGY=new InjectionToken("mtx-popover-scroll-strategy",{providedIn:"root",factory:()=>{let overlay=inject2(Overlay);return()=>overlay.scrollStrategies.reposition()}});function MTX_POPOVER_SCROLL_STRATEGY_FACTORY(overlay){return()=>overlay.scrollStrategies.reposition()}var MTX_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER={provide:MTX_POPOVER_SCROLL_STRATEGY,deps:[Overlay],useFactory:MTX_POPOVER_SCROLL_STRATEGY_FACTORY};var MtxPopoverModule=(()=>{class MtxPopoverModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||MtxPopoverModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:MtxPopoverModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({providers:[MTX_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER],imports:[CommonModule,OverlayModule,A11yModule]})}}return MtxPopoverModule2})();var SharedMaterialModule=(()=>{class SharedMaterialModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SharedMaterialModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:SharedMaterialModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({providers:[{provide:MAT_DIALOG_DEFAULT_OPTIONS,useValue:__spreadProps(__spreadValues({},new MatDialogConfig),{maxHeight:"100vh",maxWidth:"100vw",autoFocus:!1})},{provide:MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS,useValue:{diameter:30,strokeWith:1}},{provide:MAT_TABS_CONFIG,useValue:{stretchTabs:!1}},{provide:MAT_TOOLTIP_DEFAULT_OPTIONS,useValue:{disableTooltipInteractivity:!0,hideDelay:0,showDelay:0,touchendHideDelay:1500}},{provide:APP_INITIALIZER,multi:!0,useFactory:iconRegistry=>()=>{let outlinedFontSetClasses=iconRegistry.getDefaultFontSetClass().filter(fontSetClass=>fontSetClass!=="material-icons").concat(["material-symbols-outlined"]);iconRegistry.setDefaultFontSetClass(...outlinedFontSetClasses)},deps:[MatIconRegistry]},{provide:MTX_POPOVER_DEFAULT_OPTIONS,useValue:{elevation:2,hideArrow:!0,leaveDelay:300}}],imports:[MatAutocompleteModule,MatBadgeModule,MatBottomSheetModule,MatButtonModule,MatButtonToggleModule,MatCardModule,MatCheckboxModule,MatChipsModule,MatDatepickerModule,MatDialogModule,MatExpansionModule,MatFormFieldModule,MatGridListModule,MatIconModule,MatInputModule,MatListModule,MatMenuModule,MatNativeDateModule,MatPaginatorModule,MatProgressBarModule,MatProgressSpinnerModule,MatRadioModule,MatRippleModule,MatSelectModule,MatSidenavModule,MatSlideToggleModule,MatSnackBarModule,MatSortModule,MatStepperModule,MatTableModule,MatTabsModule,MatToolbarModule,MatTooltipModule,MtxPopoverModule]})}}return SharedMaterialModule2})();var SharedModule=(()=>{class SharedModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SharedModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:SharedModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({imports:[CommonModule,FlexLayoutModule,FormsModule,ReactiveFormsModule,RouterModule,TranslateModule,A11yModule,ClipboardModule,DragDropModule,LayoutModule,ScrollingModule,SharedMaterialModule]})}}return SharedModule2})();var AnimationMetadataType=(function(AnimationMetadataType2){return AnimationMetadataType2[AnimationMetadataType2.State=0]="State",AnimationMetadataType2[AnimationMetadataType2.Transition=1]="Transition",AnimationMetadataType2[AnimationMetadataType2.Sequence=2]="Sequence",AnimationMetadataType2[AnimationMetadataType2.Group=3]="Group",AnimationMetadataType2[AnimationMetadataType2.Animate=4]="Animate",AnimationMetadataType2[AnimationMetadataType2.Keyframes=5]="Keyframes",AnimationMetadataType2[AnimationMetadataType2.Style=6]="Style",AnimationMetadataType2[AnimationMetadataType2.Trigger=7]="Trigger",AnimationMetadataType2[AnimationMetadataType2.Reference=8]="Reference",AnimationMetadataType2[AnimationMetadataType2.AnimateChild=9]="AnimateChild",AnimationMetadataType2[AnimationMetadataType2.AnimateRef=10]="AnimateRef",AnimationMetadataType2[AnimationMetadataType2.Query=11]="Query",AnimationMetadataType2[AnimationMetadataType2.Stagger=12]="Stagger",AnimationMetadataType2})(AnimationMetadataType||{}),AUTO_STYLE="*";function trigger(name,definitions2){return{type:AnimationMetadataType.Trigger,name,definitions:definitions2,options:{}}}function animate(timings,styles=null){return{type:AnimationMetadataType.Animate,styles,timings}}function sequence(steps,options=null){return{type:AnimationMetadataType.Sequence,steps,options}}function style(tokens){return{type:AnimationMetadataType.Style,styles:tokens,offset:null}}function state(name,styles,options){return{type:AnimationMetadataType.State,name,styles,options}}function transition(stateChangeExpr,steps,options=null){return{type:AnimationMetadataType.Transition,expr:stateChangeExpr,animation:steps,options}}var NoopAnimationPlayer=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(duration=0,delay2=0){this.totalTime=duration+delay2}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(fn=>fn()),this._onDoneFns=[])}onStart(fn){this._originalOnStartFns.push(fn),this._onStartFns.push(fn)}onDone(fn){this._originalOnDoneFns.push(fn),this._onDoneFns.push(fn)}onDestroy(fn){this._onDestroyFns.push(fn)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(fn=>fn()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(fn=>fn()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(position){this._position=this.totalTime?position*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(phaseName){let methods=phaseName=="start"?this._onStartFns:this._onDoneFns;methods.forEach(fn=>fn()),methods.length=0}},AnimationGroupPlayer=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(_players){this.players=_players;let doneCount=0,destroyCount=0,startCount=0,total=this.players.length;total==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(player=>{player.onDone(()=>{++doneCount==total&&this._onFinish()}),player.onDestroy(()=>{++destroyCount==total&&this._onDestroy()}),player.onStart(()=>{++startCount==total&&this._onStart()})}),this.totalTime=this.players.reduce((time,player)=>Math.max(time,player.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(fn=>fn()),this._onDoneFns=[])}init(){this.players.forEach(player=>player.init())}onStart(fn){this._onStartFns.push(fn)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(fn=>fn()),this._onStartFns=[])}onDone(fn){this._onDoneFns.push(fn)}onDestroy(fn){this._onDestroyFns.push(fn)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(player=>player.play())}pause(){this.players.forEach(player=>player.pause())}restart(){this.players.forEach(player=>player.restart())}finish(){this._onFinish(),this.players.forEach(player=>player.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(player=>player.destroy()),this._onDestroyFns.forEach(fn=>fn()),this._onDestroyFns=[])}reset(){this.players.forEach(player=>player.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(p){let timeAtPosition=p*this.totalTime;this.players.forEach(player=>{let position=player.totalTime?Math.min(1,timeAtPosition/player.totalTime):1;player.setPosition(position)})}getPosition(){let longestPlayer=this.players.reduce((longestSoFar,player)=>longestSoFar===null||player.totalTime>longestSoFar.totalTime?player:longestSoFar,null);return longestPlayer!=null?longestPlayer.getPosition():0}beforeDestroy(){this.players.forEach(player=>{player.beforeDestroy&&player.beforeDestroy()})}triggerCallback(phaseName){let methods=phaseName=="start"?this._onStartFns:this._onDoneFns;methods.forEach(fn=>fn()),methods.length=0}},\u0275PRE_STYLE="!";var expandCollapse=trigger("expandCollapse",[state("expand",style({marginTop:"1px",height:"*"})),state("collapse",style({marginTop:"0px",height:"0px"})),transition("expand <=> collapse",[animate("0.3s cubic-bezier(.4,0,.2,1)")])]),arrowRotateFactory=degrees=>trigger("arrowRotate",[state("expand",style({transform:`rotate(${degrees}deg)`})),state("collapse",style({transform:"rotate(0deg)"})),transition("expand <=> collapse",[animate("0.3s cubic-bezier(.4,0,.2,1)")])]),arrowRotate=arrowRotateFactory(180);var SettingsMenuListComponent=(()=>{class SettingsMenuListComponent2{constructor(){this.router=inject2(Router),this.apiExpanded=!0,this.apiIsActive=!1,this.router.events.pipe(filter(event=>event instanceof NavigationEnd),map(event=>event.urlAfterRedirects),takeUntilDestroyed()).subscribe(url=>{this.apiIsActive=this.getApiIsActive(url)})}apiItemClick(event){event.preventDefault(),event.stopPropagation(),this.apiExpanded=!this.apiExpanded}getApiIsActive(url){return url==="/settings/general"||url==="/settings/permissions"}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SettingsMenuListComponent2)}}static{this.\u0275cmp=\u0275\u0275defineComponent({type:SettingsMenuListComponent2,selectors:[["ix-settings-menu-list"]],decls:14,vars:4,consts:[[1,"ix-nav-list","ix-nav-list--with-children"],["mat-list-item","","routerLink","component","routerLinkActive","active"],[3,"click"],["matListItemTitle",""],["matListItemMeta",""],[1,"ix-nav-list-item-arrow-icon"],[1,"ix-nav-list__children"],["mat-list-item","","routerLink","general","routerLinkActive","active"],["mat-list-item","","routerLink","permissions","routerLinkActive","active"]],template:function(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"mat-nav-list",0)(1,"a",1),\u0275\u0275text(2,"Component"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(3,"mat-list-item",2),\u0275\u0275listener("click",function($event){return ctx.apiItemClick($event)}),\u0275\u0275elementStart(4,"span",3),\u0275\u0275text(5,"API"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(6,"span",4)(7,"mat-icon",5),\u0275\u0275text(8,"expand_more"),\u0275\u0275elementEnd()()(),\u0275\u0275elementStart(9,"div",6)(10,"a",7),\u0275\u0275text(11,"General"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(12,"a",8),\u0275\u0275text(13,"Permissions"),\u0275\u0275elementEnd()()()),rf&2&&(\u0275\u0275advance(3),\u0275\u0275classProp("active",ctx.apiIsActive),\u0275\u0275advance(4),\u0275\u0275property("@arrowRotate",ctx.apiExpanded?"expand":"collapse"),\u0275\u0275advance(2),\u0275\u0275property("@expandCollapse",ctx.apiExpanded?"expand":"collapse"))},dependencies:[FlexModule,MatIconModule,MatIcon,MatListModule,MatNavList,MatListItem,MatListItemTitle,MatListItemMeta,RouterLink,RouterLinkActive],styles:["[_nghost-%COMP%]{display:block}"],data:{animation:[expandCollapse,arrowRotate]}})}}return SettingsMenuListComponent2})();var SettingsComponent=(()=>{class SettingsComponent2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SettingsComponent2)}}static{this.\u0275cmp=\u0275\u0275defineComponent({type:SettingsComponent2,selectors:[["ix-settings"]],decls:15,vars:1,consts:[["fxFlex","","fxLayout","column",1,"ix-surface"],["mat-icon-button","","routerLink","/",1,"back-button"],["fxFlex",""],["fxFlex","",1,"ix-content"],["mode","side",3,"opened"]],template:function(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"div",0)(1,"mat-toolbar")(2,"button",1)(3,"mat-icon"),\u0275\u0275text(4,"arrow_back"),\u0275\u0275elementEnd()(),\u0275\u0275elementStart(5,"h1"),\u0275\u0275text(6,"Settings"),\u0275\u0275elementEnd(),\u0275\u0275element(7,"span",2),\u0275\u0275elementEnd(),\u0275\u0275elementStart(8,"div",3)(9,"mat-sidenav-container")(10,"mat-sidenav",4),\u0275\u0275element(11,"ix-settings-menu-list"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(12,"mat-sidenav-content")(13,"main"),\u0275\u0275element(14,"router-outlet"),\u0275\u0275elementEnd()()()()()),rf&2&&(\u0275\u0275advance(10),\u0275\u0275property("opened",!0))},dependencies:[SharedModule,DefaultLayoutDirective,DefaultFlexDirective,RouterOutlet,RouterLink,MatIconButton,MatIcon,MatSidenav,MatSidenavContainer,MatSidenavContent,MatToolbar,SettingsMenuListComponent],styles:["[_nghost-%COMP%]{height:100%;width:100%}[_nghost-%COMP%] .mat-sidenav-container[_ngcontent-%COMP%]{height:100%}[_nghost-%COMP%] .mat-sidenav-container[_ngcontent-%COMP%] .mat-sidenav[_ngcontent-%COMP%]{width:240px}[_nghost-%COMP%] .mat-toolbar[_ngcontent-%COMP%]{border-bottom:1px solid var(--mat-sys-surface-variant)}[_nghost-%COMP%] .mat-toolbar[_ngcontent-%COMP%] .back-button[_ngcontent-%COMP%]{margin-right:4px}[_nghost-%COMP%] .ix-content[_ngcontent-%COMP%] main[_ngcontent-%COMP%]{max-width:640px;padding:0 16px}@media (min-width: 960px){[_nghost-%COMP%] .ix-content[_ngcontent-%COMP%] main[_ngcontent-%COMP%]{margin-left:32px}}@media (min-width: 1920px){[_nghost-%COMP%] .ix-content[_ngcontent-%COMP%] main[_ngcontent-%COMP%]{max-width:880px}}"]})}}return SettingsComponent2})();var SettingsResolver=(()=>{class SettingsResolver2{constructor(){this.service=inject2(SettingsService)}resolve(){return this.service.getAccessToken().pipe(take(1),mergeMap(token=>this.service.getInfo(token)))}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SettingsResolver2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:SettingsResolver2,factory:SettingsResolver2.\u0275fac,providedIn:"root"})}}return SettingsResolver2})();var ConfirmLeaveFormDialogComponent=(()=>{class ConfirmLeaveFormDialogComponent2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ConfirmLeaveFormDialogComponent2)}}static{this.\u0275cmp=\u0275\u0275defineComponent({type:ConfirmLeaveFormDialogComponent2,selectors:[["ix-confirm-leave-form-dialog"]],decls:12,vars:2,consts:[["mat-dialog-title","","translate",""],["mat-dialog-content",""],["translate",""],["mat-dialog-actions",""],["mat-button","",3,"mat-dialog-close"]],template:function(rf,ctx){rf&1&&(\u0275\u0275elementStart(0,"h1",0),\u0275\u0275text(1,"LEAVE_FORM"),\u0275\u0275elementEnd(),\u0275\u0275elementStart(2,"div",1)(3,"p",2),\u0275\u0275text(4,"__TEXT__.LEAVE_FORM"),\u0275\u0275elementEnd()(),\u0275\u0275elementStart(5,"div",3)(6,"button",4)(7,"span",2),\u0275\u0275text(8,"CANCEL"),\u0275\u0275elementEnd()(),\u0275\u0275elementStart(9,"button",4)(10,"span",2),\u0275\u0275text(11,"LEAVE"),\u0275\u0275elementEnd()()()),rf&2&&(\u0275\u0275advance(6),\u0275\u0275property("mat-dialog-close",!1),\u0275\u0275advance(3),\u0275\u0275property("mat-dialog-close",!0))},dependencies:[FlexLayoutModule,MatButtonModule,MatButton,MatDialogModule,MatDialogClose,MatDialogTitle,MatDialogActions,MatDialogContent,TranslateModule,TranslateDirective,SharedModule],styles:["[_nghost-%COMP%]{width:100dvw;height:100dvh;display:flex;flex-direction:column;flex:1}@media (min-width: 960px){[_nghost-%COMP%]{height:auto;width:auto;min-width:528px;max-width:528px}}[_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%]{padding:calc(env(safe-area-inset-top,0) + 16px) 24px 16px}[_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%] .mat-toolbar{height:48px;padding-left:0;padding-right:0}[_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%] .mat-toolbar .mdc-dialog__title{--mat-dialog-headline-padding: 0;color:inherit}[_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%] .mat-toolbar .mdc-dialog__title:before{display:none}[_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%] + .ix-dialog__content[_ngcontent-%COMP%], [_nghost-%COMP%] .ix-dialog__header[_ngcontent-%COMP%] + .mdc-dialog__content[_ngcontent-%COMP%]{padding-top:0}[_nghost-%COMP%] .mdc-dialog__title[_ngcontent-%COMP%]:before{height:calc(env(safe-area-inset-top,0) + 40px)}[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%]{padding:20px 24px}[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%] > .ix-list[_ngcontent-%COMP%]{margin-left:-24px;margin-right:-24px}[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%], [_nghost-%COMP%] .mdc-dialog__content[_ngcontent-%COMP%]{flex-direction:column;box-sizing:border-box;display:flex;place-content:stretch flex-start;align-items:stretch;flex:1 1 auto;max-height:none;overflow:auto;-webkit-overflow-scrolling:touch}[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%] > .mat-mdc-subheader[_ngcontent-%COMP%], [_nghost-%COMP%] .mdc-dialog__content[_ngcontent-%COMP%] > .mat-mdc-subheader[_ngcontent-%COMP%]{margin-left:0;margin-right:0}@media (min-width: 960px){[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%], [_nghost-%COMP%] .mdc-dialog__content[_ngcontent-%COMP%]{max-height:calc(90dvh - 140px)}[_nghost-%COMP%] .ix-dialog__content[_ngcontent-%COMP%]:has(+.mdc-dialog__actions), [_nghost-%COMP%] .mdc-dialog__content[_ngcontent-%COMP%]:has(+.mdc-dialog__actions){padding-bottom:0}}@media (min-width: 960px){[_nghost-%COMP%] .ix-dialog__banner[_ngcontent-%COMP%] + .ix-dialog__content[_ngcontent-%COMP%]{max-height:calc(90dvh - 225px)}}@media (max-width: 959.9px){[_nghost-%COMP%] .mdc-dialog__actions[_ngcontent-%COMP%]{border-top:1px solid rgba(0,0,0,.12);padding-bottom:calc(16px + env(safe-area-inset-bottom,0))}}[_nghost-%COMP%] form[_ngcontent-%COMP%]{flex-direction:column;box-sizing:border-box;display:flex;flex:1 1 auto;height:inherit}[_nghost-%COMP%] form[_ngcontent-%COMP%] .mat-mdc-form-field[_ngcontent-%COMP%]{margin-bottom:1rem}"]})}}return ConfirmLeaveFormDialogComponent2})();var ConfirmLeaveGuard=(()=>{class ConfirmLeaveGuard2{constructor(){this.dialog=inject2(MatDialog)}canDeactivate(component){return component.isFormChanged()?this.dialog.open(ConfirmLeaveFormDialogComponent).afterClosed():of(!0)}static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||ConfirmLeaveGuard2)}}static{this.\u0275prov=\u0275\u0275defineInjectable({token:ConfirmLeaveGuard2,factory:ConfirmLeaveGuard2.\u0275fac,providedIn:"root"})}}return ConfirmLeaveGuard2})();var routes=[{path:"",component:SettingsComponent,children:[{path:"",redirectTo:"component",pathMatch:"full"},{path:"component",component:ComponentSettingsComponent},{path:"permissions",component:ApiPermissionsSettingsComponent,resolve:{info:SettingsResolver},canDeactivate:[ConfirmLeaveGuard]},{path:"general",component:ApiGeneralSettingsComponent,resolve:{info:SettingsResolver}}]}];var SettingsRoutingModule=(()=>{class SettingsRoutingModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SettingsRoutingModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:SettingsRoutingModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({imports:[RouterModule.forChild(routes),RouterModule]})}}return SettingsRoutingModule2})();var SettingsModule=(()=>{class SettingsModule2{static{this.\u0275fac=function(__ngFactoryType__){return new(__ngFactoryType__||SettingsModule2)}}static{this.\u0275mod=\u0275\u0275defineNgModule({type:SettingsModule2})}static{this.\u0275inj=\u0275\u0275defineInjector({imports:[SettingsComponent,SettingsRoutingModule]})}}return SettingsModule2})();export{Subscription,Subscriber,Observable,Subject,AnonymousSubject,BehaviorSubject,ReplaySubject,queueScheduler,EMPTY,observeOn,from,of,throwError,isObservable,lastValueFrom,firstValueFrom,timeout,map,combineLatest,mergeMap,defer,forkJoin,fromEvent,timer,merge,filter,buffer,catchError,concatMap,debounceTime,take,delayWhen,delay,distinctUntilChanged,first,last2 as last,pairwise,scan,share,shareReplay,skip,startWith,switchMap,takeUntil,tap,withLatestFrom,RuntimeError,forwardRef,ɵɵdefineInjectable,ɵɵdefineInjector,InjectionToken,ɵɵinject,inject2 as inject,makeEnvironmentProviders,provideEnvironmentInitializer,ɵɵrestoreView,ɵɵresetView,ɵɵnamespaceSVG,Injector,DOCUMENT,DestroyRef,ErrorHandler,signal,ɵɵNgOnChangesFeature,ɵɵgetInheritedFactory,ElementRef,PLATFORM_ID,ANIMATION_MODULE_TYPE,SecurityContext,ɵɵsanitizeHtml,ɵɵsanitizeUrl,ɵɵresolveDocument,ɵɵadvance,TemplateRef,ComponentFactoryResolver$1,RendererFactory2,Renderer2,ɵɵdirectiveInject,ViewContainerRef,ɵɵdefineComponent,ɵɵdefineNgModule,ɵɵdefineDirective,ɵɵdefinePipe,ɵɵInheritDefinitionFeature,ɵɵtemplate,EventEmitter,NgZone,APP_INITIALIZER,ApplicationRef,ɵɵattribute,ɵɵconditionalCreate,ɵɵconditional,ɵɵrepeaterTrackByIndex,ɵɵrepeaterTrackByIdentity,ɵɵrepeaterCreate,ɵɵrepeater,ɵɵproperty,ɵɵelementStart,ɵɵelementEnd,ɵɵelement,ɵɵdomElementStart,ɵɵdomElementEnd,ɵɵdomElement,ɵɵelementContainerStart,ɵɵelementContainerEnd,ɵɵelementContainer,ɵɵgetCurrentView,ɵɵlistener,ɵɵdomListener,ɵɵnextContext,ɵɵprojectionDef,ɵɵprojection,ɵɵcontentQuery,ɵɵviewQuery,ɵɵqueryRefresh,ɵɵloadQuery,ɵɵviewQuerySignal,ɵɵqueryAdvance,ɵɵreference,ɵɵstyleProp,ɵɵclassProp,ɵɵstyleMap,ɵɵclassMap,ɵɵtext,ɵɵtextInterpolate,ɵɵtextInterpolate1,ɵɵtextInterpolate2,ɵɵtextInterpolate3,ɵɵtwoWayProperty,ɵɵtwoWayBindingSet,ɵɵtwoWayListener,ɵɵdeclareLet,ɵɵstoreLet,ɵɵreadContextLet,ɵɵinterpolate,ɵɵinterpolate1,ɵɵProvidersFeature,ɵɵpureFunction0,ɵɵpureFunction1,ɵɵpipe,ɵɵpipeBind1,ɵɵpipeBind2,ɵɵpipeBind3,ɵɵtemplateRefExtractor,computed,effect,resource,output,input,viewChild,isDevMode,ChangeDetectorRef,booleanAttribute,Location,NgForOf,NgIf,NgStyle,NgTemplateOutlet,AsyncPipe,LowerCasePipe,TitleCasePipe,CommonModule,isPlatformBrowser,isPlatformServer,DomRendererFactory2,platformBrowser,BrowserModule,HttpHeaders,HttpParams,HttpContext,HttpResponse,HttpErrorResponse,HttpClient,HTTP_INTERCEPTORS,provideHttpClient,withInterceptorsFromDi,Meta,Title,DomSanitizer,AnimationMetadataType,AUTO_STYLE,sequence,style,NoopAnimationPlayer,AnimationGroupPlayer,ɵPRE_STYLE,MediaObserver,coerceBooleanProperty,DefaultFlexDirective,DefaultLayoutAlignDirective,DefaultLayoutGapDirective,DefaultLayoutDirective,FlexModule,FlexLayoutModule,Platform,BreakpointObserver,A11yModule,LayoutModule,Breakpoints,MatIconButton,MatButton,MatButtonModule,ComponentPortal,CdkPortalOutlet,PortalModule,ViewportRuler,OverlayConfig,Overlay,MatSnackBar,MatSnackBarModule,MatIconRegistry,MatIcon,MatIconModule,TranslateLoader,TranslateService,TranslateDirective,TranslatePipe,TranslateModule,defaultOptions,IxApiRequestErrorMessages,IxApi2RequestErrorMessages,IxApiErrorMessages,OTP_SMS_REQUIRED_PATTERN,ofStatus,IxApiErrors,IxApiRequestErrors,IXAPI_OPTIONS,validateOptions,IxApiHeaderKeys,getLinkMap,getLinkUrl,getPageParams,throwNotFoundError,whileMoreAfter,IxApiService,IxApiModule,REQUIRES_BRANDING,REQUIRES_COMPANY,NG_VALUE_ACCESSOR,DefaultValueAccessor,NG_VALIDATORS,Validators,NgControl,NgControlStatus,NgControlStatusGroup,FormGroup,FormControl,NgModel,ɵNgNoValidate,NumberValueAccessor,FormControlDirective,FormGroupDirective,FormGroupName,FormControlName,SelectControlValueAccessor,NgSelectOption,ɵNgSelectMultipleOption,MinValidator,RequiredValidator,FormArray,FormBuilder,FormsModule,ReactiveFormsModule,NavigationStart,NavigationEnd,NavigationCancel,NavigationError,RoutesRecognized,ActivatedRoute,RouterOutlet,Router,RouterLink,RouterModule,moveItemInArray,CdkDrag,CdkDropList,CdkDragPreview,CdkDragPlaceholder,DragDropModule,MAT_BOTTOM_SHEET_DATA,MatBottomSheetRef,MatBottomSheet,MAT_DATE_LOCALE,DateAdapter,MAT_DATE_FORMATS,MatOptgroup,MatOption,MatLabel,MatError,MatHint,MatPrefix,MatSuffix,MatFormField,MatDatepicker,MatDatepickerInput,MatDatepickerToggle,MatExpansionPanel,MatCard,MatCardTitle,MatCardSubtitle,MatCardActions,MatCardHeader,MatCardModule,MatCheckbox,MatCheckboxModule,MatDialogContainer,MatDialogRef,MAT_DIALOG_DATA,MatDialog,MatDialogClose,MatDialogTitle,MatDialogContent,MatDialogActions,MatDialogModule,MatFormFieldModule,CdkTextareaAutosize,MatInput,MatInputModule,MatDivider,MatDividerModule,MatListItemTitle,MatListItemLine,MatListItemMeta,MatListItemIcon,MatActionList,MatList,MatListItem,MatListOption,MatListSubheaderCssMatStyler,MatSelectionList,MatListModule,MatMenuItem,MatMenu,MatMenuTrigger,MatMenuModule,MatSelect,MatSelectTrigger,MatSelectModule,MatTooltip,MatTooltipModule,MatPaginatorModule,MatTab,MatTabGroup,MatTabsModule,MatProgressSpinner,MatDrawerContent,MatDrawer,MatDrawerContainer,MatSidenavModule,MatToolbar,MatToolbarModule,SharedModule,takeUntilDestroyed,toObservable,toSignal,createAction,props,INIT,ActionsSubject,INITIAL_STATE,ACTIVE_RUNTIME_CHECKS,ReducerObservable,ReducerManagerDispatcher,UPDATE,ScannedActionsSubject,StateObservable,Store,select,isNgrxMockEnvironment,createSelector,createFeatureSelector,createFeature,StoreModule,on,createReducer,buildFields,compactFields,getMissingFields,haveFields,hasFields,hasNonPublicIdFields,omitLoadedFields,createEffect,Actions,ofType,USER_PROVIDED_EFFECTS,EffectsModule,mustache_default,omitSubresources,updateResource,mergeLoadedFields,mergeFields,createResourceSelectorFactory,mapResourceToSubResourceList,sortByNameAndPublicIdComparer,findAppId,ResourceDataClient,WA_WINDOW,WINDOW,SESSION_STORAGE,ResourceDataClientProxyService,ResourceDataServiceFactory,createEntityAdapter,createResourceAdapter,StorageEventContext,require_crypto_js,decryptValue,StorageService,StorageModule,ensureAll,loadAllSuccess,loadAllForIntentSuccess,reset,loadHost,loadHostFailure,loadHostSuccess,selectAll,selectEntity2 as selectEntity,selectEntities2 as selectEntities,naturalSort,add2 as add,addFailure2 as addFailure,addSuccess2 as addSuccess,didAdd2 as didAdd,didAddList,didRemove2 as didRemove,didRemoveList,didUpdate2 as didUpdate,didUpdateList,remove2 as remove,removeFailure,removeSuccess,update2 as update,updateFailure2 as updateFailure,updateSuccess2 as updateSuccess,updateMany,updateManyFailure,updateManySuccess,reset3 as reset2,resetPendingUpdates,BackendComponentCallerServiceFactory,BackendComponentCallerService,DEFAULT_CBC_INGRESS_URL,BackendComponentClientProxyService,BackendComponentClient,retryBackoff,environment,ensureOne,ensureMany,loadManySuccess,reset2 as reset3,PageComponentTemplateService,PageComponentTemplateModule,mapPageComponentTemplateManifestToDefaultInputs,mapPageComponentTemplateToCustomElementName,mapPageComponentTemplateToTemplateUrl,mapPageComponentTemplateToTemplateBaseUrl,APP_CONFIG,appConfigFactory,loadAppConfig,mapTemplateUrlToManifestUrl,selectEntity as selectEntity2,selectEntities as selectEntities2,PageComponentTemplateManifestModule,STORAGE_KEY_CBC_CONFIG_VALUES,STORAGE_KEY_CBC_INGRESS,STORAGE_KEY_CBC_INGRESS_URL,STORAGE_KEY_CBC_PUBLIC_ID,mapTemplateUrlToPublicId,mapTemplateUrlToMainPath,DEFAULT_CARD_DIMENSIONS,DEFAULT_SHEET_DIMENSIONS,DEFAULT_REPORT_DIMENSIONS,PAGE_COMPONENT,ONE_WEEK,parseBody,ComponentTemplateValidatorService,SettingsModule};
|