@richard.fadiora/liveness-detection 4.2.11 → 4.2.13
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/angular/README.md +294 -0
- package/dist/angular/fesm2022/richard.fadiora-liveness-detection.mjs +440 -0
- package/dist/angular/fesm2022/richard.fadiora-liveness-detection.mjs.map +1 -0
- package/dist/angular/types/richard.fadiora-liveness-detection.d.ts +125 -0
- package/dist/index.cjs.js +5 -5
- package/dist/index.d.ts +0 -3
- package/dist/index.es.js +437 -455
- package/dist/index.umd.js +8 -8
- package/package.json +13 -6
package/dist/index.umd.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(g,B){typeof exports=="object"&&typeof module<"u"?B(exports,require("@mediapipe/tasks-vision"),require("react"),require("react-webcam"),require("@angular/core")):typeof define=="function"&&define.amd?define(["exports","@mediapipe/tasks-vision","react","react-webcam","@angular/core"],B):(g=typeof globalThis<"u"?globalThis:g||self,B(g.LivenessSDK={},g.mediapipe,g.React,g.ReactWebcam,g.ng.core))})(this,function(g,B,k,qn,i){"use strict";var As=Object.defineProperty;var _s=(g,B,k)=>B in g?As(g,B,{enumerable:!0,configurable:!0,writable:!0,value:k}):g[B]=k;var u=(g,B,k)=>_s(g,typeof B!="symbol"?B+"":B,k);function Jn(n){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const t in n)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:()=>n[t]})}}return e.default=n,Object.freeze(e)}const s=Jn(i),cn=async(n,e,t)=>{const r=new FormData;e.forEach((c,l)=>{r.append("files",c,`frame_${l}.jpg`)}),r.append("challenge",JSON.stringify(t));const o=await fetch(`${n}/v1/verify`,{method:"POST",body:r});if(!o.ok)throw new Error("Network response was not ok");return await o.json()},Qn=Object.freeze(Object.defineProperty({__proto__:null,verifyLiveness:cn},Symbol.toStringTag,{value:"Module"}));class Tt{constructor(e){this.models={face:null,hand:null},this.webcam=null,this.currentStepRef=0,this.isStepTransitioningRef=!1,this.timerId=null,this.requestId=null,this.offscreenCanvas=document.createElement("canvas"),this.CHALLENGE_POOL=["Smile","Blink","Turn_Head","Thumbs_Up"],this.attachVideo=t=>{this.webcam=t,console.log("[LivenessEngine] Video stream attached.")},this.start=()=>{if(this.state.status!=="ready"||!this.webcam){console.warn("[LivenessEngine] Engine not ready or video missing.");return}console.log("[LivenessEngine] Session Starting..."),this.state.status="capturing",this.updateState({status:"capturing"}),this.startTimer(),this.detectLoop()},this.stop=()=>{this.timerId&&clearInterval(this.timerId),this.requestId&&cancelAnimationFrame(this.requestId),this.timerId=null,this.requestId=null},this.reset=()=>{this.stop(),this.currentStepRef=0,this.isStepTransitioningRef=!1,this.generateSequence(),this.updateState({status:"ready",currentStep:0,timeLeft:this.config.duration,isStepTransitioning:!1,errorMsg:""})},this.detectLoop=()=>{var r;if(this.state.status!=="capturing"||!this.webcam||!this.models.face)return;const t=performance.now();try{const o=this.models.face.detectForVideo(this.webcam,t),a=(r=this.models.hand)==null?void 0:r.detectForVideo(this.webcam,t),c=this.state.sequence[this.currentStepRef];if(this.checkAction(o,a,c)){this.handleStepSuccess();return}}catch(o){console.error("[LivenessEngine] Loop detection error:",o)}this.requestId=requestAnimationFrame(this.detectLoop)},this.config={apiUrl:e.apiUrl,duration:e.duration??60,smileThreshold:e.smileThreshold??.2,blinkThreshold:e.blinkThreshold??.012,minturnHeadThreshold:e.minturnHeadThreshold??.15,maxturnHeadThreshold:e.maxturnHeadThreshold??.85,onStateChange:e.onStateChange||(()=>{}),onComplete:e.onComplete||(()=>{}),onError:e.onError||(()=>{})},this.state={status:"loading",sequence:[],currentStep:0,timeLeft:this.config.duration,isStepTransitioning:!1,errorMsg:""},this.offscreenCanvas.width=224,this.offscreenCanvas.height=224}async loadModels(){console.log("[LivenessEngine] Loading AI Models...");try{const e=await B.FilesetResolver.forVisionTasks("https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.3/wasm");this.models.face=await B.FaceLandmarker.createFromOptions(e,{baseOptions:{modelAssetPath:"https://storage.googleapis.com/mediapipe-models/face_landmarker/face_landmarker/float16/1/face_landmarker.task",delegate:"GPU"},outputFaceBlendshapes:!0,runningMode:"VIDEO"}),this.models.hand=await B.HandLandmarker.createFromOptions(e,{baseOptions:{modelAssetPath:"https://storage.googleapis.com/mediapipe-models/hand_landmarker/hand_landmarker/float16/1/hand_landmarker.task",delegate:"GPU"},runningMode:"VIDEO",numHands:1}),this.generateSequence(),this.updateState({status:"ready"}),console.log("[LivenessEngine] Models Loaded.")}catch(e){console.error("[LivenessEngine] Init Error:",e),this.updateState({status:"error",errorMsg:"Failed to load security assets."})}}updateState(e){this.state={...this.state,...e},this.config.onStateChange(this.state)}generateSequence(){const e=[...this.CHALLENGE_POOL].sort(()=>.5-Math.random()).slice(0,3);return this.state.sequence=e,e}startTimer(){this.timerId&&clearInterval(this.timerId),this.timerId=setInterval(()=>{this.state.timeLeft>0?this.updateState({timeLeft:this.state.timeLeft-1}):(this.stop(),this.updateState({status:"expired"}))},1e3)}handleStepSuccess(){this.isStepTransitioningRef||(this.isStepTransitioningRef=!0,this.updateState({isStepTransitioning:!0}),setTimeout(()=>{this.currentStepRef<this.state.sequence.length-1?(this.currentStepRef++,this.isStepTransitioningRef=!1,this.updateState({currentStep:this.currentStepRef,isStepTransitioning:!1}),this.requestId=requestAnimationFrame(this.detectLoop)):this.sendFinalProof()},1500))}checkAction(e,t,r){var o,a;if(this.isStepTransitioningRef)return!1;if(r==="Thumbs_Up"&&((o=t==null?void 0:t.landmarks)==null?void 0:o.length)>0){const c=t.landmarks[0];return c[4].y<c[2].y&&[8,12,16,20].every(l=>c[l].y>c[l-2].y)}if(((a=e==null?void 0:e.faceLandmarks)==null?void 0:a.length)>0){const c=e.faceLandmarks[0];switch(r){case"Smile":return c[291].x-c[61].x>this.config.smileThreshold;case"Blink":const l=Math.abs(c[159].y-c[145].y),p=Math.abs(c[386].y-c[374].y);return(l+p)/2<this.config.blinkThreshold;case"Turn_Head":const h=(c[1].x-c[33].x)/(c[263].x-c[33].x);return h<this.config.minturnHeadThreshold||h>this.config.maxturnHeadThreshold;default:return!1}}return!1}async sendFinalProof(){var e,t;this.stop(),this.updateState({status:"verifying"});try{const r=[];let o="";for(let l=0;l<5&&this.webcam;l++){const p=(e=this.models.face)==null?void 0:e.detectForVideo(this.webcam,performance.now());if((t=p==null?void 0:p.faceLandmarks)!=null&&t[0]){const h=this.getFaceCrop(this.webcam,p.faceLandmarks[0]),d=await new Promise(D=>h.toBlob(D,"image/jpeg",.9));d&&r.push(d),l===4&&(o=h.toDataURL("image/jpeg"))}await new Promise(h=>setTimeout(h,100))}const{verifyLiveness:a}=await Promise.resolve().then(()=>Qn),c=await a(this.config.apiUrl,r,this.state.sequence);if(c.is_live)this.updateState({status:"success"}),this.config.onComplete({success:!0,image:o,skinConfidence:c.skin_confidence});else{const l=c.reason||"Liveness check failed";this.updateState({status:"error",errorMsg:l}),this.config.onError({success:!1,reason:l})}}catch{this.updateState({status:"error",errorMsg:"Verification failed."}),this.config.onError({success:!1,reason:"Network error"})}}getFaceCrop(e,t){const r=this.offscreenCanvas.getContext("2d"),o=t.map(m=>m.x*e.videoWidth),a=t.map(m=>m.y*e.videoHeight),c=Math.min(...o),l=Math.max(...o),p=Math.min(...a),h=Math.max(...a),d=l-c,D=h-p,C=d*.3;return r.clearRect(0,0,224,224),r.drawImage(e,c-C,p-C,d+C*2,D+C*2,0,0,224,224),this.offscreenCanvas}}const ln=n=>{const[e,t]=k.useState({status:"loading",sequence:[],currentStep:0,timeLeft:n.duration||60,isStepTransitioning:!1,errorMsg:""}),r=k.useRef(null),o=k.useRef(null);k.useEffect(()=>{const l=new Tt({...n,onStateChange:p=>t({...p})});return r.current=l,l.loadModels(),()=>l.stop()},[]),k.useEffect(()=>{var l,p;if(e.status!=="loading"&&e.status!=="error"){const h=(l=o.current)==null?void 0:l.video;if(h&&h.readyState>=2)(p=r.current)==null||p.attachVideo(h);else{const d=setInterval(()=>{var C,m;const D=(C=o.current)==null?void 0:C.video;D&&D.readyState>=2&&((m=r.current)==null||m.attachVideo(D),clearInterval(d))},100);return()=>clearInterval(d)}}},[e.status]);const a=k.useCallback(()=>{var l;console.log("[Hook] Start Clicked"),(l=r.current)==null||l.start()},[]),c=k.useCallback(()=>{var l;console.log("[Hook] Reset Clicked"),(l=r.current)==null||l.reset()},[]);return{...e,webcamRef:o,start:a,reset:c}};var Ot={exports:{}},st={};/**
|
|
2
2
|
* @license React
|
|
3
3
|
* react-jsx-runtime.production.js
|
|
4
4
|
*
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* This source code is licensed under the MIT license found in the
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
|
-
*/var
|
|
9
|
+
*/var fn;function er(){if(fn)return st;fn=1;var n=Symbol.for("react.transitional.element"),e=Symbol.for("react.fragment");function t(r,o,a){var c=null;if(a!==void 0&&(c=""+a),o.key!==void 0&&(c=""+o.key),"key"in o){a={};for(var l in o)l!=="key"&&(a[l]=o[l])}else a=o;return o=a.ref,{$$typeof:n,type:r,key:c,ref:o!==void 0?o:null,props:a}}return st.Fragment=e,st.jsx=t,st.jsxs=t,st}var ot={};/**
|
|
10
10
|
* @license React
|
|
11
11
|
* react-jsx-runtime.development.js
|
|
12
12
|
*
|
|
@@ -14,23 +14,23 @@
|
|
|
14
14
|
*
|
|
15
15
|
* This source code is licensed under the MIT license found in the
|
|
16
16
|
* LICENSE file in the root directory of this source tree.
|
|
17
|
-
*/var
|
|
17
|
+
*/var dn;function tr(){return dn||(dn=1,process.env.NODE_ENV!=="production"&&function(){function n(f){if(f==null)return null;if(typeof f=="function")return f.$$typeof===Es?null:f.displayName||f.name||null;if(typeof f=="string")return f;switch(f){case P:return"Fragment";case q:return"Profiler";case nt:return"StrictMode";case ms:return"Suspense";case ys:return"SuspenseList";case Fs:return"Activity"}if(typeof f=="object")switch(typeof f.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),f.$$typeof){case S:return"Portal";case lt:return f.displayName||"Context";case It:return(f._context.displayName||"Context")+".Consumer";case St:var y=f.render;return f=f.displayName,f||(f=y.displayName||y.name||"",f=f!==""?"ForwardRef("+f+")":"ForwardRef"),f;case Cs:return y=f.displayName||null,y!==null?y:n(f.type)||"Memo";case rn:y=f._payload,f=f._init;try{return n(f(y))}catch{}}return null}function e(f){return""+f}function t(f){try{e(f);var y=!1}catch{y=!0}if(y){y=console;var v=y.error,w=typeof Symbol=="function"&&Symbol.toStringTag&&f[Symbol.toStringTag]||f.constructor.name||"Object";return v.call(y,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",w),e(f)}}function r(f){if(f===P)return"<>";if(typeof f=="object"&&f!==null&&f.$$typeof===rn)return"<...>";try{var y=n(f);return y?"<"+y+">":"<...>"}catch{return"<...>"}}function o(){var f=sn.A;return f===null?null:f.getOwner()}function a(){return Error("react-stack-top-frame")}function c(f){if(Yn.call(f,"key")){var y=Object.getOwnPropertyDescriptor(f,"key").get;if(y&&y.isReactWarning)return!1}return f.key!==void 0}function l(f,y){function v(){zn||(zn=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",y))}v.isReactWarning=!0,Object.defineProperty(f,"key",{get:v,configurable:!0})}function p(){var f=n(this.type);return Zn[f]||(Zn[f]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),f=this.props.ref,f!==void 0?f:null}function h(f,y,v,w,wt,an){var T=v.ref;return f={$$typeof:I,type:f,key:y,props:v,_owner:w},(T!==void 0?T:null)!==null?Object.defineProperty(f,"ref",{enumerable:!1,get:p}):Object.defineProperty(f,"ref",{enumerable:!1,value:null}),f._store={},Object.defineProperty(f._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(f,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(f,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:wt}),Object.defineProperty(f,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:an}),Object.freeze&&(Object.freeze(f.props),Object.freeze(f)),f}function d(f,y,v,w,wt,an){var T=y.children;if(T!==void 0)if(w)if(vs(T)){for(w=0;w<T.length;w++)D(T[w]);Object.freeze&&Object.freeze(T)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else D(T);if(Yn.call(y,"key")){T=n(f);var rt=Object.keys(y).filter(function(bs){return bs!=="key"});w=0<rt.length?"{key: someKey, "+rt.join(": ..., ")+": ...}":"{key: someKey}",Xn[T+w]||(rt=0<rt.length?"{"+rt.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
|
|
18
18
|
let props = %s;
|
|
19
19
|
<%s {...props} />
|
|
20
20
|
React keys must be passed directly to JSX without using spread:
|
|
21
21
|
let props = %s;
|
|
22
|
-
<%s key={someKey} {...props} />`,w,T,rt,T),Xn[T+w]=!0)}if(T=null,v!==void 0&&(t(v),T=""+v),c(y)&&(t(y.key),T=""+y.key),"key"in y){v={};for(var un in y)un!=="key"&&(v[un]=y[un])}else v=y;return T&&l(v,typeof
|
|
22
|
+
<%s key={someKey} {...props} />`,w,T,rt,T),Xn[T+w]=!0)}if(T=null,v!==void 0&&(t(v),T=""+v),c(y)&&(t(y.key),T=""+y.key),"key"in y){v={};for(var un in y)un!=="key"&&(v[un]=y[un])}else v=y;return T&&l(v,typeof f=="function"?f.displayName||f.name||"Unknown":f),h(f,T,v,o(),wt,an)}function D(f){C(f)?f._store&&(f._store.validated=1):typeof f=="object"&&f!==null&&f.$$typeof===rn&&(f._payload.status==="fulfilled"?C(f._payload.value)&&f._payload.value._store&&(f._payload.value._store.validated=1):f._store&&(f._store.validated=1))}function C(f){return typeof f=="object"&&f!==null&&f.$$typeof===I}var m=k,I=Symbol.for("react.transitional.element"),S=Symbol.for("react.portal"),P=Symbol.for("react.fragment"),nt=Symbol.for("react.strict_mode"),q=Symbol.for("react.profiler"),It=Symbol.for("react.consumer"),lt=Symbol.for("react.context"),St=Symbol.for("react.forward_ref"),ms=Symbol.for("react.suspense"),ys=Symbol.for("react.suspense_list"),Cs=Symbol.for("react.memo"),rn=Symbol.for("react.lazy"),Fs=Symbol.for("react.activity"),Es=Symbol.for("react.client.reference"),sn=m.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Yn=Object.prototype.hasOwnProperty,vs=Array.isArray,on=console.createTask?console.createTask:function(){return null};m={react_stack_bottom_frame:function(f){return f()}};var zn,Zn={},Kn=m.react_stack_bottom_frame.bind(m,a)(),Wn=on(r(a)),Xn={};ot.Fragment=P,ot.jsx=function(f,y,v){var w=1e4>sn.recentlyCreatedOwnerStacks++;return d(f,y,v,!1,w?Error("react-stack-top-frame"):Kn,w?on(r(f)):Wn)},ot.jsxs=function(f,y,v){var w=1e4>sn.recentlyCreatedOwnerStacks++;return d(f,y,v,!0,w?Error("react-stack-top-frame"):Kn,w?on(r(f)):Wn)}}()),ot}process.env.NODE_ENV==="production"?Ot.exports=er():Ot.exports=tr();var M=Ot.exports;const nr=({apiUrl:n,duration:e,onComplete:t,onError:r,classNames:o={},render:a,smileThreshold:c,blinkThreshold:l,minturnHeadThreshold:p,maxturnHeadThreshold:h})=>{var D;const d=ln({apiUrl:n,duration:e,smileThreshold:c,blinkThreshold:l,minturnHeadThreshold:p,maxturnHeadThreshold:h,onComplete:t,onError:r});return a?a(d):M.jsxs("div",{className:o.container,children:[d.status==="loading"&&M.jsx("div",{children:"Initializing..."}),["ready","capturing","verifying"].includes(d.status)&&M.jsxs(M.Fragment,{children:[M.jsx(qn,{ref:d.webcamRef,mirrored:!0,screenshotFormat:"image/jpeg",className:o.webcam}),d.status==="capturing"&&M.jsx("div",{className:"liveness-challenge",children:d.isStepTransitioning?"Step verified! Get ready for the next...":`Do this: ${(D=d.sequence[d.currentStep])==null?void 0:D.replace("_"," ")}`}),["capturing","ready"].includes(d.status)&&M.jsxs("div",{className:o.timer,children:[d.timeLeft,"s"]}),d.status==="ready"&&M.jsx("button",{onClick:d.start,className:o.button,children:"Start Challenge"}),d.status==="verifying"&&M.jsx("div",{children:"Analyzing..."})]}),d.status==="error"&&M.jsxs("div",{className:o.error,children:[d.errorMsg,M.jsx("button",{onClick:d.reset,className:o.button,children:"Retry"})]}),d.status==="success"&&M.jsx("div",{className:o.success,children:"Verification Complete"})]})};var Bt=function(n,e){return Bt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,r){t.__proto__=r}||function(t,r){for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(t[o]=r[o])},Bt(n,e)};function it(n,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Bt(n,e);function t(){this.constructor=n}n.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function Rt(n){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&n[e],r=0;if(t)return t.call(n);if(n&&typeof n.length=="number")return{next:function(){return n&&r>=n.length&&(n=void 0),{value:n&&n[r++],done:!n}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function kt(n,e){var t=typeof Symbol=="function"&&n[Symbol.iterator];if(!t)return n;var r=t.call(n),o,a=[],c;try{for(;(e===void 0||e-- >0)&&!(o=r.next()).done;)a.push(o.value)}catch(l){c={error:l}}finally{try{o&&!o.done&&(t=r.return)&&t.call(r)}finally{if(c)throw c.error}}return a}function Mt(n,e,t){if(t||arguments.length===2)for(var r=0,o=e.length,a;r<o;r++)(a||!(r in e))&&(a||(a=Array.prototype.slice.call(e,0,r)),a[r]=e[r]);return n.concat(a||Array.prototype.slice.call(e))}typeof SuppressedError=="function"&&SuppressedError;function N(n){return typeof n=="function"}function pn(n){var e=function(r){Error.call(r),r.stack=new Error().stack},t=n(e);return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var Lt=pn(function(n){return function(t){n(this),this.message=t?t.length+` errors occurred during unsubscription:
|
|
23
23
|
`+t.map(function(r,o){return o+1+") "+r.toString()}).join(`
|
|
24
|
-
`):"",this.name="UnsubscriptionError",this.errors=t}});function Vt(n,e){if(n){var t=n.indexOf(e);0<=t&&n.splice(t,1)}}var ft=function(){function n(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return n.prototype.unsubscribe=function(){var e,t,r,o,a;if(!this.closed){this.closed=!0;var c=this._parentage;if(c)if(this._parentage=null,Array.isArray(c))try{for(var l=Rt(c),p=l.next();!p.done;p=l.next()){var
|
|
24
|
+
`):"",this.name="UnsubscriptionError",this.errors=t}});function Vt(n,e){if(n){var t=n.indexOf(e);0<=t&&n.splice(t,1)}}var ft=function(){function n(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return n.prototype.unsubscribe=function(){var e,t,r,o,a;if(!this.closed){this.closed=!0;var c=this._parentage;if(c)if(this._parentage=null,Array.isArray(c))try{for(var l=Rt(c),p=l.next();!p.done;p=l.next()){var h=p.value;h.remove(this)}}catch(S){e={error:S}}finally{try{p&&!p.done&&(t=l.return)&&t.call(l)}finally{if(e)throw e.error}}else c.remove(this);var d=this.initialTeardown;if(N(d))try{d()}catch(S){a=S instanceof Lt?S.errors:[S]}var D=this._finalizers;if(D){this._finalizers=null;try{for(var C=Rt(D),m=C.next();!m.done;m=C.next()){var I=m.value;try{gn(I)}catch(S){a=a??[],S instanceof Lt?a=Mt(Mt([],kt(a)),kt(S.errors)):a.push(S)}}}catch(S){r={error:S}}finally{try{m&&!m.done&&(o=C.return)&&o.call(C)}finally{if(r)throw r.error}}}if(a)throw new Lt(a)}},n.prototype.add=function(e){var t;if(e&&e!==this)if(this.closed)gn(e);else{if(e instanceof n){if(e.closed||e._hasParent(this))return;e._addParent(this)}(this._finalizers=(t=this._finalizers)!==null&&t!==void 0?t:[]).push(e)}},n.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},n.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},n.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&Vt(t,e)},n.prototype.remove=function(e){var t=this._finalizers;t&&Vt(t,e),e instanceof n&&e._removeParent(this)},n.EMPTY=function(){var e=new n;return e.closed=!0,e}(),n}(),Dn=ft.EMPTY;function hn(n){return n instanceof ft||n&&"closed"in n&&N(n.remove)&&N(n.add)&&N(n.unsubscribe)}function gn(n){N(n)?n():n.unsubscribe()}var rr={Promise:void 0},sr={setTimeout:function(n,e){for(var t=[],r=2;r<arguments.length;r++)t[r-2]=arguments[r];return setTimeout.apply(void 0,Mt([n,e],kt(t)))},clearTimeout:function(n){return clearTimeout(n)},delegate:void 0};function or(n){sr.setTimeout(function(){throw n})}function mn(){}function dt(n){n()}var yn=function(n){it(e,n);function e(t){var r=n.call(this)||this;return r.isStopped=!1,t?(r.destination=t,hn(t)&&t.add(r)):r.destination=ur,r}return e.create=function(t,r,o){return new xt(t,r,o)},e.prototype.next=function(t){this.isStopped||this._next(t)},e.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,n.prototype.unsubscribe.call(this),this.destination=null)},e.prototype._next=function(t){this.destination.next(t)},e.prototype._error=function(t){try{this.destination.error(t)}finally{this.unsubscribe()}},e.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},e}(ft),ir=function(){function n(e){this.partialObserver=e}return n.prototype.next=function(e){var t=this.partialObserver;if(t.next)try{t.next(e)}catch(r){pt(r)}},n.prototype.error=function(e){var t=this.partialObserver;if(t.error)try{t.error(e)}catch(r){pt(r)}else pt(e)},n.prototype.complete=function(){var e=this.partialObserver;if(e.complete)try{e.complete()}catch(t){pt(t)}},n}(),xt=function(n){it(e,n);function e(t,r,o){var a=n.call(this)||this,c;return N(t)||!t?c={next:t??void 0,error:r??void 0,complete:o??void 0}:c=t,a.destination=new ir(c),a}return e}(yn);function pt(n){or(n)}function ar(n){throw n}var ur={closed:!0,next:mn,error:ar,complete:mn},cr=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}();function lr(n){return n}function fr(n){return n.length===0?lr:n.length===1?n[0]:function(t){return n.reduce(function(r,o){return o(r)},t)}}var Cn=function(){function n(e){e&&(this._subscribe=e)}return n.prototype.lift=function(e){var t=new n;return t.source=this,t.operator=e,t},n.prototype.subscribe=function(e,t,r){var o=this,a=pr(e)?e:new xt(e,t,r);return dt(function(){var c=o,l=c.operator,p=c.source;a.add(l?l.call(a,p):p?o._subscribe(a):o._trySubscribe(a))}),a},n.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(t){e.error(t)}},n.prototype.forEach=function(e,t){var r=this;return t=Fn(t),new t(function(o,a){var c=new xt({next:function(l){try{e(l)}catch(p){a(p),c.unsubscribe()}},error:a,complete:o});r.subscribe(c)})},n.prototype._subscribe=function(e){var t;return(t=this.source)===null||t===void 0?void 0:t.subscribe(e)},n.prototype[cr]=function(){return this},n.prototype.pipe=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return fr(e)(this)},n.prototype.toPromise=function(e){var t=this;return e=Fn(e),new e(function(r,o){var a;t.subscribe(function(c){return a=c},function(c){return o(c)},function(){return r(a)})})},n.create=function(e){return new n(e)},n}();function Fn(n){var e;return(e=n??rr.Promise)!==null&&e!==void 0?e:Promise}function dr(n){return n&&N(n.next)&&N(n.error)&&N(n.complete)}function pr(n){return n&&n instanceof yn||dr(n)&&hn(n)}var Dr=pn(function(n){return function(){n(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),Pt=function(n){it(e,n);function e(){var t=n.call(this)||this;return t.closed=!1,t.currentObservers=null,t.observers=[],t.isStopped=!1,t.hasError=!1,t.thrownError=null,t}return e.prototype.lift=function(t){var r=new En(this,this);return r.operator=t,r},e.prototype._throwIfClosed=function(){if(this.closed)throw new Dr},e.prototype.next=function(t){var r=this;dt(function(){var o,a;if(r._throwIfClosed(),!r.isStopped){r.currentObservers||(r.currentObservers=Array.from(r.observers));try{for(var c=Rt(r.currentObservers),l=c.next();!l.done;l=c.next()){var p=l.value;p.next(t)}}catch(h){o={error:h}}finally{try{l&&!l.done&&(a=c.return)&&a.call(c)}finally{if(o)throw o.error}}}})},e.prototype.error=function(t){var r=this;dt(function(){if(r._throwIfClosed(),!r.isStopped){r.hasError=r.isStopped=!0,r.thrownError=t;for(var o=r.observers;o.length;)o.shift().error(t)}})},e.prototype.complete=function(){var t=this;dt(function(){if(t._throwIfClosed(),!t.isStopped){t.isStopped=!0;for(var r=t.observers;r.length;)r.shift().complete()}})},e.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(e.prototype,"observed",{get:function(){var t;return((t=this.observers)===null||t===void 0?void 0:t.length)>0},enumerable:!1,configurable:!0}),e.prototype._trySubscribe=function(t){return this._throwIfClosed(),n.prototype._trySubscribe.call(this,t)},e.prototype._subscribe=function(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)},e.prototype._innerSubscribe=function(t){var r=this,o=this,a=o.hasError,c=o.isStopped,l=o.observers;return a||c?Dn:(this.currentObservers=null,l.push(t),new ft(function(){r.currentObservers=null,Vt(l,t)}))},e.prototype._checkFinalizedStatuses=function(t){var r=this,o=r.hasError,a=r.thrownError,c=r.isStopped;o?t.error(a):c&&t.complete()},e.prototype.asObservable=function(){var t=new Cn;return t.source=this,t},e.create=function(t,r){return new En(t,r)},e}(Cn),En=function(n){it(e,n);function e(t,r){var o=n.call(this)||this;return o.destination=t,o.source=r,o}return e.prototype.next=function(t){var r,o;(o=(r=this.destination)===null||r===void 0?void 0:r.next)===null||o===void 0||o.call(r,t)},e.prototype.error=function(t){var r,o;(o=(r=this.destination)===null||r===void 0?void 0:r.error)===null||o===void 0||o.call(r,t)},e.prototype.complete=function(){var t,r;(r=(t=this.destination)===null||t===void 0?void 0:t.complete)===null||r===void 0||r.call(t)},e.prototype._subscribe=function(t){var r,o;return(o=(r=this.source)===null||r===void 0?void 0:r.subscribe(t))!==null&&o!==void 0?o:Dn},e}(Pt),hr=function(n){it(e,n);function e(t){var r=n.call(this)||this;return r._value=t,r}return Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),e.prototype._subscribe=function(t){var r=n.prototype._subscribe.call(this,t);return!r.closed&&t.next(this._value),r},e.prototype.getValue=function(){var t=this,r=t.hasError,o=t.thrownError,a=t._value;if(r)throw o;return this._throwIfClosed(),a},e.prototype.next=function(t){n.prototype.next.call(this,this._value=t)},e}(Pt),gr=Object.getOwnPropertyDescriptor,mr=(n,e,t,r)=>{for(var o=r>1?void 0:r?gr(e,t):e,a=n.length-1,c;a>=0;a--)(c=n[a])&&(o=c(o)||o);return o};g.LivenessService=class{constructor(e){this.ngZone=e,this.stateSubject=new hr(null),this.state$=this.stateSubject.asObservable()}init(e){this.ngZone.runOutsideAngular(()=>{this.engine=new Tt({...e,onStateChange:t=>{this.ngZone.run(()=>this.stateSubject.next(t))}}),this.engine.loadModels()})}attach(e){var t;(t=this.engine)==null||t.attachVideo(e)}start(){var e;(e=this.engine)==null||e.start()}reset(){var e;(e=this.engine)==null||e.reset()}ngOnDestroy(){var e;(e=this.engine)==null||e.stop()}},g.LivenessService=mr([i.Injectable({providedIn:"root"})],g.LivenessService);/**
|
|
25
25
|
* @license Angular v21.2.3
|
|
26
26
|
* (c) 2010-2026 Google LLC. https://angular.dev/
|
|
27
27
|
* License: MIT
|
|
28
|
-
*/let yr=null;function jt(){return yr}const Ve=class Ve{historyGo(e){throw new Error(ngDevMode?"Not implemented":"")}};u(Ve,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ve,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u(Ve,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ve,providedIn:"platform",useFactory:()=>i.inject(
|
|
28
|
+
*/let yr=null;function jt(){return yr}const Ve=class Ve{historyGo(e){throw new Error(ngDevMode?"Not implemented":"")}};u(Ve,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ve,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u(Ve,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ve,providedIn:"platform",useFactory:()=>i.inject(de)}));let Y=Ve;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Y,decorators:[{type:i.Injectable,args:[{providedIn:"platform",useFactory:()=>i.inject(de)}]}]}),new i.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"Location Initialized":"");const ee=class ee extends Y{constructor(){super();u(this,"_location");u(this,"_history");u(this,"_doc",i.inject(i.DOCUMENT));this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return jt().getBaseHref(this._doc)}onPopState(t){const r=jt().getGlobalEventTarget(this._doc,"window");return r.addEventListener("popstate",t,!1),()=>r.removeEventListener("popstate",t)}onHashChange(t){const r=jt().getGlobalEventTarget(this._doc,"window");return r.addEventListener("hashchange",t,!1),()=>r.removeEventListener("hashchange",t)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(t){this._location.pathname=t}pushState(t,r,o){this._history.pushState(t,r,o)}replaceState(t,r,o){this._history.replaceState(t,r,o)}forward(){this._history.forward()}back(){this._history.back()}historyGo(t=0){this._history.go(t)}getState(){return this._history.state}};u(ee,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ee,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u(ee,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ee,providedIn:"platform",useFactory:()=>new ee}));let de=ee;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:de,decorators:[{type:i.Injectable,args:[{providedIn:"platform",useFactory:()=>new de}]}],ctorParameters:()=>[]});/**
|
|
29
29
|
* @license Angular v21.2.3
|
|
30
30
|
* (c) 2010-2026 Google LLC. https://angular.dev/
|
|
31
31
|
* License: MIT
|
|
32
|
-
*/function Ut(n,e){return n?e?n.endsWith("/")?e.startsWith("/")?n+e.slice(1):n+e:e.startsWith("/")?n+e:`${n}/${e}`:n:e}function vn(n){const e=n.search(/#|\?|$/);return n[e-1]==="/"?n.slice(0,e-1)+n.slice(e):n}function $(n){return n&&n[0]!=="?"?`?${n}`:n}const xe=class xe{historyGo(e){throw new Error(ngDevMode?"Not implemented":"")}};u(xe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:xe,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u(xe,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:xe,providedIn:"root",useFactory:()=>i.inject(J)}));let z=xe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:z,decorators:[{type:i.Injectable,args:[{providedIn:"root",useFactory:()=>i.inject(J)}]}]});const
|
|
32
|
+
*/function Ut(n,e){return n?e?n.endsWith("/")?e.startsWith("/")?n+e.slice(1):n+e:e.startsWith("/")?n+e:`${n}/${e}`:n:e}function vn(n){const e=n.search(/#|\?|$/);return n[e-1]==="/"?n.slice(0,e-1)+n.slice(e):n}function $(n){return n&&n[0]!=="?"?`?${n}`:n}const xe=class xe{historyGo(e){throw new Error(ngDevMode?"Not implemented":"")}};u(xe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:xe,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u(xe,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:xe,providedIn:"root",useFactory:()=>i.inject(J)}));let z=xe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:z,decorators:[{type:i.Injectable,args:[{providedIn:"root",useFactory:()=>i.inject(J)}]}]});const Dt=new i.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"appBaseHref":""),Pe=class Pe extends z{constructor(t,r){var o;super();u(this,"_platformLocation");u(this,"_baseHref");u(this,"_removeListenerFns",[]);this._platformLocation=t,this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??((o=i.inject(i.DOCUMENT).location)==null?void 0:o.origin)??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return Ut(this._baseHref,t)}path(t=!1){const r=this._platformLocation.pathname+$(this._platformLocation.search),o=this._platformLocation.hash;return o&&t?`${r}${o}`:r}pushState(t,r,o,a){const c=this.prepareExternalUrl(o+$(a));this._platformLocation.pushState(t,r,c)}replaceState(t,r,o,a){const c=this.prepareExternalUrl(o+$(a));this._platformLocation.replaceState(t,r,c)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){var r,o;(o=(r=this._platformLocation).historyGo)==null||o.call(r,t)}};u(Pe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Pe,deps:[{token:Y},{token:Dt,optional:!0}],target:s.ɵɵFactoryTarget.Injectable})),u(Pe,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Pe,providedIn:"root"}));let J=Pe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:J,decorators:[{type:i.Injectable,args:[{providedIn:"root"}]}],ctorParameters:()=>[{type:Y},{type:void 0,decorators:[{type:i.Optional},{type:i.Inject,args:[Dt]}]}]});const je=class je extends J{prepareExternalUrl(e){const t=bn(e);return t.endsWith("/")&&t.length>1&&(e=t.slice(0,-1)+e.slice(t.length)),super.prepareExternalUrl(e)}};u(je,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:je,deps:null,target:s.ɵɵFactoryTarget.Injectable})),u(je,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:je,providedIn:"root"}));let Nt=je;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Nt,decorators:[{type:i.Injectable,args:[{providedIn:"root"}]}]});const Ue=class Ue extends J{prepareExternalUrl(e){const t=bn(e);return t.endsWith("/")||(e=t+"/"+e.slice(t.length)),super.prepareExternalUrl(e)}};u(Ue,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ue,deps:null,target:s.ɵɵFactoryTarget.Injectable})),u(Ue,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ue,providedIn:"root"}));let $t=Ue;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:$t,decorators:[{type:i.Injectable,args:[{providedIn:"root"}]}]});function bn(n){const e=n.search(/[?#]/),t=e>-1?e:n.length;return n.slice(0,t)}const U=class U{constructor(e){u(this,"_subject",new Pt);u(this,"_basePath");u(this,"_locationStrategy");u(this,"_urlChangeListeners",[]);u(this,"_urlChangeSubscription",null);this._locationStrategy=e;const t=this._locationStrategy.getBaseHref();this._basePath=Fr(vn(_n(t))),this._locationStrategy.onPopState(r=>{this._subject.next({url:this.path(!0),pop:!0,state:r.state,type:r.type})})}ngOnDestroy(){var e;(e=this._urlChangeSubscription)==null||e.unsubscribe(),this._urlChangeListeners=[]}path(e=!1){return this.normalize(this._locationStrategy.path(e))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(e,t=""){return this.path()==this.normalize(e+$(t))}normalize(e){return U.stripTrailingSlash(Cr(this._basePath,_n(e)))}prepareExternalUrl(e){return e&&e[0]!=="/"&&(e="/"+e),this._locationStrategy.prepareExternalUrl(e)}go(e,t="",r=null){this._locationStrategy.pushState(r,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+$(t)),r)}replaceState(e,t="",r=null){this._locationStrategy.replaceState(r,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+$(t)),r)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(e=0){var t,r;(r=(t=this._locationStrategy).historyGo)==null||r.call(t,e)}onUrlChange(e){return this._urlChangeListeners.push(e),this._urlChangeSubscription??(this._urlChangeSubscription=this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})),()=>{var r;const t=this._urlChangeListeners.indexOf(e);this._urlChangeListeners.splice(t,1),this._urlChangeListeners.length===0&&((r=this._urlChangeSubscription)==null||r.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(e="",t){this._urlChangeListeners.forEach(r=>r(e,t))}subscribe(e,t,r){return this._subject.subscribe({next:e,error:t??void 0,complete:r??void 0})}};u(U,"normalizeQueryParams",$),u(U,"joinWithSlash",Ut),u(U,"stripTrailingSlash",vn),u(U,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:U,deps:[{token:z}],target:s.ɵɵFactoryTarget.Injectable})),u(U,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:U,providedIn:"root",useFactory:An}));let ht=U;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ht,decorators:[{type:i.Injectable,args:[{providedIn:"root",useFactory:An}]}],ctorParameters:()=>[{type:z}]});function An(){return new ht(i.ɵɵinject(z))}function Cr(n,e){if(!n||!e.startsWith(n))return e;const t=e.substring(n.length);return t===""||["/",";","?","#"].includes(t[0])?t:e}function _n(n){return n.replace(/\/index.html$/,"")}function Fr(n){if(new RegExp("^(https?:)?//").test(n)){const[,t]=n.split(/\/\/[^\/]+/);return t}return n}/**
|
|
33
33
|
* @license Angular v21.2.3
|
|
34
34
|
* (c) 2010-2026 Google LLC. https://angular.dev/
|
|
35
35
|
* License: MIT
|
|
36
|
-
*/const Ne=class Ne extends z{constructor(t,r){super();u(this,"_platformLocation");u(this,"_baseHref","");u(this,"_removeListenerFns",[]);this._platformLocation=t,r!=null&&(this._baseHref=r)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}path(t=!1){const r=this._platformLocation.hash??"#";return r.length>0?r.substring(1):r}prepareExternalUrl(t){const r=Ut(this._baseHref,t);return r.length>0?"#"+r:r}pushState(t,r,o,a){const c=this.prepareExternalUrl(o+$(a))||this._platformLocation.pathname;this._platformLocation.pushState(t,r,c)}replaceState(t,r,o,a){const c=this.prepareExternalUrl(o+$(a))||this._platformLocation.pathname;this._platformLocation.replaceState(t,r,c)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){var r,o;(o=(r=this._platformLocation).historyGo)==null||o.call(r,t)}};u(Ne,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ne,deps:[{token:Y},{token:ht,optional:!0}],target:s.ɵɵFactoryTarget.Injectable})),u(Ne,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ne}));let Gt=Ne;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Gt,decorators:[{type:i.Injectable}],ctorParameters:()=>[{type:Y},{type:void 0,decorators:[{type:i.Optional},{type:i.Inject,args:[ht]}]}]});const In={ADP:[void 0,void 0,0],AFN:[void 0,"؋",0],ALL:[void 0,void 0,0],AMD:[void 0,"֏",2],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],AZN:[void 0,"₼"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"৳"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,void 0,2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN¥","¥"],COP:[void 0,"$",2],CRC:[void 0,"₡",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"Kč",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E£"],ESP:[void 0,"₧",0],EUR:["€"],FJD:[void 0,"$"],FKP:[void 0,"£"],GBP:["£"],GEL:[void 0,"₾"],GHS:[void 0,"GH₵"],GIP:[void 0,"£"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",2],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",2],ILS:["₪"],INR:["₹"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["¥",void 0,0],KGS:[void 0,"⃀"],KHR:[void 0,"៛"],KMF:[void 0,"CF",0],KPW:[void 0,"₩",0],KRW:["₩",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"₸"],LAK:[void 0,"₭",0],LBP:[void 0,"L£",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"₮",2],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",2],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"₦"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:["₱"],PKR:[void 0,"Rs",2],PLN:[void 0,"zł"],PYG:[void 0,"₲",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"₽"],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"£"],SLE:[void 0,void 0,2],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"£"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"£",0],THB:[void 0,"฿"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"₺"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,2],UAH:[void 0,"₴"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UYW:[void 0,void 0,4],UZS:[void 0,void 0,2],VEF:[void 0,"Bs",2],VND:["₫",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XCG:["Cg."],XOF:["F CFA",void 0,0],XPF:["CFPF",void 0,0],XXX:["¤"],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]};var at;(function(n){n[n.Decimal=0]="Decimal",n[n.Percent=1]="Percent",n[n.Currency=2]="Currency",n[n.Scientific=3]="Scientific"})(at||(at={}));var Q;(function(n){n[n.Zero=0]="Zero",n[n.One=1]="One",n[n.Two=2]="Two",n[n.Few=3]="Few",n[n.Many=4]="Many",n[n.Other=5]="Other"})(Q||(Q={}));var O;(function(n){n[n.Format=0]="Format",n[n.Standalone=1]="Standalone"})(O||(O={}));var F;(function(n){n[n.Narrow=0]="Narrow",n[n.Abbreviated=1]="Abbreviated",n[n.Wide=2]="Wide",n[n.Short=3]="Short"})(F||(F={}));var R;(function(n){n[n.Short=0]="Short",n[n.Medium=1]="Medium",n[n.Long=2]="Long",n[n.Full=3]="Full"})(R||(R={}));const A={Decimal:0,Group:1,PercentSign:3,MinusSign:5,Exponential:6,Infinity:9,CurrencyDecimal:12,CurrencyGroup:13};var Sn;(function(n){n[n.Sunday=0]="Sunday",n[n.Monday=1]="Monday",n[n.Tuesday=2]="Tuesday",n[n.Wednesday=3]="Wednesday",n[n.Thursday=4]="Thursday",n[n.Friday=5]="Friday",n[n.Saturday=6]="Saturday"})(Sn||(Sn={}));function Er(n){return i.ɵfindLocaleData(n)[i.ɵLocaleDataIndex.LocaleId]}function vr(n,e,t){const r=i.ɵfindLocaleData(n),o=[r[i.ɵLocaleDataIndex.DayPeriodsFormat],r[i.ɵLocaleDataIndex.DayPeriodsStandalone]],a=V(o,e);return V(a,t)}function br(n,e,t){const r=i.ɵfindLocaleData(n),o=[r[i.ɵLocaleDataIndex.DaysFormat],r[i.ɵLocaleDataIndex.DaysStandalone]],a=V(o,e);return V(a,t)}function Ar(n,e,t){const r=i.ɵfindLocaleData(n),o=[r[i.ɵLocaleDataIndex.MonthsFormat],r[i.ɵLocaleDataIndex.MonthsStandalone]],a=V(o,e);return V(a,t)}function _r(n,e){const r=i.ɵfindLocaleData(n)[i.ɵLocaleDataIndex.Eras];return V(r,e)}function mt(n,e){const t=i.ɵfindLocaleData(n);return V(t[i.ɵLocaleDataIndex.DateFormat],e)}function yt(n,e){const t=i.ɵfindLocaleData(n);return V(t[i.ɵLocaleDataIndex.TimeFormat],e)}function Ct(n,e){const r=i.ɵfindLocaleData(n)[i.ɵLocaleDataIndex.DateTimeFormat];return V(r,e)}function M(n,e){const t=i.ɵfindLocaleData(n),r=t[i.ɵLocaleDataIndex.NumberSymbols][e];if(typeof r>"u"){if(e===A.CurrencyDecimal)return t[i.ɵLocaleDataIndex.NumberSymbols][A.Decimal];if(e===A.CurrencyGroup)return t[i.ɵLocaleDataIndex.NumberSymbols][A.Group]}return r}function Ht(n,e){return i.ɵfindLocaleData(n)[i.ɵLocaleDataIndex.NumberFormats][e]}function Ir(n){return i.ɵfindLocaleData(n)[i.ɵLocaleDataIndex.Currencies]}const Sr=i.ɵgetLocalePluralCase;function wn(n){if(!n[i.ɵLocaleDataIndex.ExtraData])throw new i.ɵRuntimeError(2303,ngDevMode&&`Missing extra locale data for the locale "${n[i.ɵLocaleDataIndex.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function wr(n){const e=i.ɵfindLocaleData(n);return wn(e),(e[i.ɵLocaleDataIndex.ExtraData][2]||[]).map(r=>typeof r=="string"?Yt(r):[Yt(r[0]),Yt(r[1])])}function Tr(n,e,t){const r=i.ɵfindLocaleData(n);wn(r);const o=[r[i.ɵLocaleDataIndex.ExtraData][0],r[i.ɵLocaleDataIndex.ExtraData][1]],a=V(o,e)||[];return V(a,t)||[]}function V(n,e){for(let t=e;t>-1;t--)if(typeof n[t]<"u")return n[t];throw new i.ɵRuntimeError(2304,ngDevMode&&"Locale data API: locale data undefined")}function Yt(n){const[e,t]=n.split(":");return{hours:+e,minutes:+t}}function Or(n,e,t="en"){const r=Ir(t)[n]||In[n]||[],o=r[1];return e==="narrow"&&typeof o=="string"?o:r[0]||n}const Br=2;function Rr(n){let e;const t=In[n];return t&&(e=t[2]),typeof e=="number"?e:Br}const kr=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,pe={},Lr=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;function Mr(n,e,t,r){let o=Yr(n);e=G(t,e)||e;let c=[],l;for(;e;)if(l=Lr.exec(e),l){c=c.concat(l.slice(1));const f=c.pop();if(!f)break;e=f}else{c.push(e);break}(typeof ngDevMode>"u"||ngDevMode)&&Vr(c);let p=o.getTimezoneOffset();r&&(p=On(r,p),o=Hr(o,r));let g="";return c.forEach(f=>{const h=$r(f);g+=h?h(o,t,p):f==="''"?"'":f.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),g}function Vr(n){if(n.some(e=>/^Y+$/.test(e))&&!n.some(e=>/^w+$/.test(e))){const e=`Suspicious use of week-based year "Y" in date pattern "${n.join("")}". Did you mean to use calendar year "y" instead?`;if(n.length===1)console.error(i.ɵformatRuntimeError(2300,e));else throw new i.ɵRuntimeError(2300,e)}}function Ft(n,e,t){const r=new Date(0);return r.setFullYear(n,e,t),r.setHours(0,0,0),r}function G(n,e){const t=Er(n);if(pe[t]??(pe[t]={}),pe[t][e])return pe[t][e];let r="";switch(e){case"shortDate":r=mt(n,R.Short);break;case"mediumDate":r=mt(n,R.Medium);break;case"longDate":r=mt(n,R.Long);break;case"fullDate":r=mt(n,R.Full);break;case"shortTime":r=yt(n,R.Short);break;case"mediumTime":r=yt(n,R.Medium);break;case"longTime":r=yt(n,R.Long);break;case"fullTime":r=yt(n,R.Full);break;case"short":const o=G(n,"shortTime"),a=G(n,"shortDate");r=Et(Ct(n,R.Short),[o,a]);break;case"medium":const c=G(n,"mediumTime"),l=G(n,"mediumDate");r=Et(Ct(n,R.Medium),[c,l]);break;case"long":const p=G(n,"longTime"),g=G(n,"longDate");r=Et(Ct(n,R.Long),[p,g]);break;case"full":const f=G(n,"fullTime"),h=G(n,"fullDate");r=Et(Ct(n,R.Full),[f,h]);break}return r&&(pe[t][e]=r),r}function Et(n,e){return e&&(n=n.replace(/\{([^}]+)}/g,function(t,r){return e!=null&&r in e?e[r]:t})),n}function x(n,e,t="-",r,o){let a="";(n<0||o&&n<=0)&&(o?n=-n+1:(n=-n,a=t));let c=String(n);for(;c.length<e;)c="0"+c;return r&&(c=c.slice(c.length-e)),a+c}function xr(n,e){return x(n,3).substring(0,e)}function _(n,e,t=0,r=!1,o=!1){return function(a,c){let l=Pr(n,a);if((t>0||l>-t)&&(l+=t),n===3)l===0&&t===-12&&(l=12);else if(n===6)return xr(l,e);const p=M(c,A.MinusSign);return x(l,e,p,r,o)}}function Pr(n,e){switch(n){case 0:return e.getFullYear();case 1:return e.getMonth();case 2:return e.getDate();case 3:return e.getHours();case 4:return e.getMinutes();case 5:return e.getSeconds();case 6:return e.getMilliseconds();case 7:return e.getDay();default:throw new i.ɵRuntimeError(2301,ngDevMode&&`Unknown DateType value "${n}".`)}}function E(n,e,t=O.Format,r=!1){return function(o,a){return jr(o,a,n,e,t,r)}}function jr(n,e,t,r,o,a){switch(t){case 2:return Ar(e,o,r)[n.getMonth()];case 1:return br(e,o,r)[n.getDay()];case 0:const c=n.getHours(),l=n.getMinutes();if(a){const g=wr(e),f=Tr(e,o,r),h=g.findIndex(C=>{if(Array.isArray(C)){const[m,I]=C,S=c>=m.hours&&l>=m.minutes,P=c<I.hours||c===I.hours&&l<I.minutes;if(m.hours<I.hours){if(S&&P)return!0}else if(S||P)return!0}else if(C.hours===c&&C.minutes===l)return!0;return!1});if(h!==-1)return f[h]}return vr(e,o,r)[c<12?0:1];case 3:return _r(e,r)[n.getFullYear()<=0?0:1];default:const p=t;throw new i.ɵRuntimeError(2302,ngDevMode&&`unexpected translation type ${p}`)}}function vt(n){return function(e,t,r){const o=-1*r,a=M(t,A.MinusSign),c=o>0?Math.floor(o/60):Math.ceil(o/60);switch(n){case 0:return(o>=0?"+":"")+x(c,2,a)+x(Math.abs(o%60),2,a);case 1:return"GMT"+(o>=0?"+":"")+x(c,1,a);case 2:return"GMT"+(o>=0?"+":"")+x(c,2,a)+":"+x(Math.abs(o%60),2,a);case 3:return r===0?"Z":(o>=0?"+":"")+x(c,2,a)+":"+x(Math.abs(o%60),2,a);default:throw new i.ɵRuntimeError(2310,ngDevMode&&`Unknown zone width "${n}"`)}}}const Ur=0,bt=4;function Nr(n){const e=Ft(n,Ur,1).getDay();return Ft(n,0,1+(e<=bt?bt:bt+7)-e)}function Tn(n){const e=n.getDay(),t=e===0?-3:bt-e;return Ft(n.getFullYear(),n.getMonth(),n.getDate()+t)}function zt(n,e=!1){return function(t,r){let o;if(e){const a=new Date(t.getFullYear(),t.getMonth(),1).getDay()-1,c=t.getDate();o=1+Math.floor((c+a)/7)}else{const a=Tn(t),c=Nr(a.getFullYear()),l=a.getTime()-c.getTime();o=1+Math.round(l/6048e5)}return x(o,n,M(r,A.MinusSign))}}function At(n,e=!1){return function(t,r){const a=Tn(t).getFullYear();return x(a,n,M(r,A.MinusSign),e)}}const Zt={};function $r(n){if(Zt[n])return Zt[n];let e;switch(n){case"G":case"GG":case"GGG":e=E(3,F.Abbreviated);break;case"GGGG":e=E(3,F.Wide);break;case"GGGGG":e=E(3,F.Narrow);break;case"y":e=_(0,1,0,!1,!0);break;case"yy":e=_(0,2,0,!0,!0);break;case"yyy":e=_(0,3,0,!1,!0);break;case"yyyy":e=_(0,4,0,!1,!0);break;case"Y":e=At(1);break;case"YY":e=At(2,!0);break;case"YYY":e=At(3);break;case"YYYY":e=At(4);break;case"M":case"L":e=_(1,1,1);break;case"MM":case"LL":e=_(1,2,1);break;case"MMM":e=E(2,F.Abbreviated);break;case"MMMM":e=E(2,F.Wide);break;case"MMMMM":e=E(2,F.Narrow);break;case"LLL":e=E(2,F.Abbreviated,O.Standalone);break;case"LLLL":e=E(2,F.Wide,O.Standalone);break;case"LLLLL":e=E(2,F.Narrow,O.Standalone);break;case"w":e=zt(1);break;case"ww":e=zt(2);break;case"W":e=zt(1,!0);break;case"d":e=_(2,1);break;case"dd":e=_(2,2);break;case"c":case"cc":e=_(7,1);break;case"ccc":e=E(1,F.Abbreviated,O.Standalone);break;case"cccc":e=E(1,F.Wide,O.Standalone);break;case"ccccc":e=E(1,F.Narrow,O.Standalone);break;case"cccccc":e=E(1,F.Short,O.Standalone);break;case"E":case"EE":case"EEE":e=E(1,F.Abbreviated);break;case"EEEE":e=E(1,F.Wide);break;case"EEEEE":e=E(1,F.Narrow);break;case"EEEEEE":e=E(1,F.Short);break;case"a":case"aa":case"aaa":e=E(0,F.Abbreviated);break;case"aaaa":e=E(0,F.Wide);break;case"aaaaa":e=E(0,F.Narrow);break;case"b":case"bb":case"bbb":e=E(0,F.Abbreviated,O.Standalone,!0);break;case"bbbb":e=E(0,F.Wide,O.Standalone,!0);break;case"bbbbb":e=E(0,F.Narrow,O.Standalone,!0);break;case"B":case"BB":case"BBB":e=E(0,F.Abbreviated,O.Format,!0);break;case"BBBB":e=E(0,F.Wide,O.Format,!0);break;case"BBBBB":e=E(0,F.Narrow,O.Format,!0);break;case"h":e=_(3,1,-12);break;case"hh":e=_(3,2,-12);break;case"H":e=_(3,1);break;case"HH":e=_(3,2);break;case"m":e=_(4,1);break;case"mm":e=_(4,2);break;case"s":e=_(5,1);break;case"ss":e=_(5,2);break;case"S":e=_(6,1);break;case"SS":e=_(6,2);break;case"SSS":e=_(6,3);break;case"Z":case"ZZ":case"ZZZ":e=vt(0);break;case"ZZZZZ":e=vt(3);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":e=vt(1);break;case"OOOO":case"ZZZZ":case"zzzz":e=vt(2);break;default:return null}return Zt[n]=e,e}function On(n,e){n=n.replace(/:/g,"");const t=Date.parse("Jan 01, 1970 00:00:00 "+n)/6e4;return isNaN(t)?e:t}function Gr(n,e){return n=new Date(n.getTime()),n.setMinutes(n.getMinutes()+e),n}function Hr(n,e,t){const o=n.getTimezoneOffset(),a=On(e,o);return Gr(n,-1*(a-o))}function Yr(n){if(Bn(n))return n;if(typeof n=="number"&&!isNaN(n))return new Date(n);if(typeof n=="string"){if(n=n.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(n)){const[o,a=1,c=1]=n.split("-").map(l=>+l);return Ft(o,a-1,c)}const t=parseFloat(n);if(!isNaN(n-t))return new Date(t);let r;if(r=n.match(kr))return zr(r)}const e=new Date(n);if(!Bn(e))throw new i.ɵRuntimeError(2311,ngDevMode&&`Unable to convert "${n}" into a date`);return e}function zr(n){const e=new Date(0);let t=0,r=0;const o=n[8]?e.setUTCFullYear:e.setFullYear,a=n[8]?e.setUTCHours:e.setHours;n[9]&&(t=Number(n[9]+n[10]),r=Number(n[9]+n[11])),o.call(e,Number(n[1]),Number(n[2])-1,Number(n[3]));const c=Number(n[4]||0)-t,l=Number(n[5]||0)-r,p=Number(n[6]||0),g=Math.floor(parseFloat("0."+(n[7]||0))*1e3);return a.call(e,c,l,p,g),e}function Bn(n){return n instanceof Date&&!isNaN(n.valueOf())}const Zr=/^(\d+)?\.((\d+)(-(\d+))?)?$/,Rn=22,_t=".",ut="0",Kr=";",Wr=",",Kt="#",kn="¤",Xr="%";function Wt(n,e,t,r,o,a,c=!1){let l="",p=!1;if(!isFinite(n))l=M(t,A.Infinity);else{let g=ts(n);c&&(g=es(g));let f=e.minInt,h=e.minFrac,C=e.maxFrac;if(a){const q=a.match(Zr);if(q===null)throw new i.ɵRuntimeError(2306,ngDevMode&&`${a} is not a valid digit info`);const It=q[1],dt=q[3],St=q[5];It!=null&&(f=qt(It)),dt!=null&&(h=qt(dt)),St!=null?C=qt(St):dt!=null&&h>C&&(C=h)}ns(g,h,C);let m=g.digits,I=g.integerLen;const S=g.exponent;let P=[];for(p=m.every(q=>!q);I<f;I++)m.unshift(0);for(;I<0;I++)m.unshift(0);I>0?P=m.splice(I,m.length):(P=m,m=[0]);const nt=[];for(m.length>=e.lgSize&&nt.unshift(m.splice(-e.lgSize,m.length).join(""));m.length>e.gSize;)nt.unshift(m.splice(-e.gSize,m.length).join(""));m.length&&nt.unshift(m.join("")),l=nt.join(M(t,r)),P.length&&(l+=M(t,o)+P.join("")),S&&(l+=M(t,A.Exponential)+"+"+S)}return n<0&&!p?l=e.negPre+l+e.negSuf:l=e.posPre+l+e.posSuf,l}function qr(n,e,t,r,o){const a=Ht(e,at.Currency),c=Xt(a,M(e,A.MinusSign));return c.minFrac=Rr(r),c.maxFrac=c.minFrac,Wt(n,c,e,A.CurrencyGroup,A.CurrencyDecimal,o).replace(kn,t).replace(kn,"").trim()}function Jr(n,e,t){const r=Ht(e,at.Percent),o=Xt(r,M(e,A.MinusSign));return Wt(n,o,e,A.Group,A.Decimal,t,!0).replace(new RegExp(Xr,"g"),M(e,A.PercentSign))}function Qr(n,e,t){const r=Ht(e,at.Decimal),o=Xt(r,M(e,A.MinusSign));return Wt(n,o,e,A.Group,A.Decimal,t)}function Xt(n,e="-"){const t={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},r=n.split(Kr),o=r[0],a=r[1],c=o.indexOf(_t)!==-1?o.split(_t):[o.substring(0,o.lastIndexOf(ut)+1),o.substring(o.lastIndexOf(ut)+1)],l=c[0],p=c[1]||"";t.posPre=l.substring(0,l.indexOf(Kt));for(let f=0;f<p.length;f++){const h=p.charAt(f);h===ut?t.minFrac=t.maxFrac=f+1:h===Kt?t.maxFrac=f+1:t.posSuf+=h}const g=l.split(Wr);if(t.gSize=g[1]?g[1].length:0,t.lgSize=g[2]||g[1]?(g[2]||g[1]).length:0,a){const f=o.length-t.posPre.length-t.posSuf.length,h=a.indexOf(Kt);t.negPre=a.substring(0,h).replace(/'/g,""),t.negSuf=a.slice(h+f).replace(/'/g,"")}else t.negPre=e+t.posPre,t.negSuf=t.posSuf;return t}function es(n){if(n.digits[0]===0)return n;const e=n.digits.length-n.integerLen;return n.exponent?n.exponent+=2:(e===0?n.digits.push(0,0):e===1&&n.digits.push(0),n.integerLen+=2),n}function ts(n){let e=Math.abs(n)+"",t=0,r,o,a,c,l;for((o=e.indexOf(_t))>-1&&(e=e.replace(_t,"")),(a=e.search(/e/i))>0?(o<0&&(o=a),o+=+e.slice(a+1),e=e.substring(0,a)):o<0&&(o=e.length),a=0;e.charAt(a)===ut;a++);if(a===(l=e.length))r=[0],o=1;else{for(l--;e.charAt(l)===ut;)l--;for(o-=a,r=[],c=0;a<=l;a++,c++)r[c]=Number(e.charAt(a))}return o>Rn&&(r=r.splice(0,Rn-1),t=o-1,o=1),{digits:r,exponent:t,integerLen:o}}function ns(n,e,t){if(e>t)throw new i.ɵRuntimeError(2307,ngDevMode&&`The minimum number of digits after fraction (${e}) is higher than the maximum (${t}).`);let r=n.digits,o=r.length-n.integerLen;const a=Math.min(Math.max(e,o),t);let c=a+n.integerLen,l=r[c];if(c>0){r.splice(Math.max(n.integerLen,c));for(let h=c;h<r.length;h++)r[h]=0}else{o=Math.max(0,o),n.integerLen=1,r.length=Math.max(1,c=a+1),r[0]=0;for(let h=1;h<c;h++)r[h]=0}if(l>=5)if(c-1<0){for(let h=0;h>c;h--)r.unshift(0),n.integerLen++;r.unshift(1),n.integerLen++}else r[c-1]++;for(;o<Math.max(0,a);o++)r.push(0);let p=a!==0;const g=e+n.integerLen,f=r.reduceRight(function(h,C,m,I){return C=C+h,I[m]=C<10?C:C-10,p&&(I[m]===0&&m>=g?I.pop():p=!1),C>=10?1:0},0);f&&(r.unshift(f),n.integerLen++)}function qt(n){const e=parseInt(n);if(isNaN(e))throw new i.ɵRuntimeError(2305,ngDevMode&&"Invalid integer literal when parsing "+n);return e}const $e=class $e{};u($e,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:$e,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u($e,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:$e,providedIn:"root",useFactory:()=>new ct(i.inject(i.LOCALE_ID))}));let Z=$e;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Z,decorators:[{type:i.Injectable,args:[{providedIn:"root",useFactory:()=>new ct(i.inject(i.LOCALE_ID))}]}]});function Ln(n,e,t,r){let o=`=${n}`;if(e.indexOf(o)>-1||(o=t.getPluralCategory(n,r),e.indexOf(o)>-1))return o;if(e.indexOf("other")>-1)return"other";throw new i.ɵRuntimeError(2308,ngDevMode&&`No plural message found for value "${n}"`)}const Ge=class Ge extends Z{constructor(t){super();u(this,"locale");this.locale=t}getPluralCategory(t,r){switch(Sr(r||this.locale)(t)){case Q.Zero:return"zero";case Q.One:return"one";case Q.Two:return"two";case Q.Few:return"few";case Q.Many:return"many";default:return"other"}}};u(Ge,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ge,deps:[{token:i.LOCALE_ID}],target:s.ɵɵFactoryTarget.Injectable})),u(Ge,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ge}));let ct=Ge;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ct,decorators:[{type:i.Injectable}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Inject,args:[i.LOCALE_ID]}]}]});const Jt=/\s+/,Mn=[],He=class He{constructor(e,t){u(this,"_ngEl");u(this,"_renderer");u(this,"initialClasses",Mn);u(this,"rawClass");u(this,"stateMap",new Map);this._ngEl=e,this._renderer=t}set klass(e){this.initialClasses=e!=null?e.trim().split(Jt):Mn}set ngClass(e){this.rawClass=typeof e=="string"?e.trim().split(Jt):e}ngDoCheck(){for(const t of this.initialClasses)this._updateState(t,!0);const e=this.rawClass;if(Array.isArray(e)||e instanceof Set)for(const t of e)this._updateState(t,!0);else if(e!=null)for(const t of Object.keys(e))this._updateState(t,!!e[t]);this._applyStateDiff()}_updateState(e,t){const r=this.stateMap.get(e);r!==void 0?(r.enabled!==t&&(r.changed=!0,r.enabled=t),r.touched=!0):this.stateMap.set(e,{enabled:t,changed:!0,touched:!0})}_applyStateDiff(){for(const e of this.stateMap){const t=e[0],r=e[1];r.changed?(this._toggleClass(t,r.enabled),r.changed=!1):r.touched||(r.enabled&&this._toggleClass(t,!1),this.stateMap.delete(t)),r.touched=!1}}_toggleClass(e,t){if(ngDevMode&&typeof e!="string")throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${i.ɵstringify(e)}`);e=e.trim(),e.length>0&&e.split(Jt).forEach(r=>{t?this._renderer.addClass(this._ngEl.nativeElement,r):this._renderer.removeClass(this._ngEl.nativeElement,r)})}};u(He,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:He,deps:[{token:s.ElementRef},{token:s.Renderer2}],target:s.ɵɵFactoryTarget.Directive})),u(He,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:He,isStandalone:!0,selector:"[ngClass]",inputs:{klass:["class","klass"],ngClass:"ngClass"},ngImport:s}));let De=He;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:De,decorators:[{type:i.Directive,args:[{selector:"[ngClass]"}]}],ctorParameters:()=>[{type:s.ElementRef},{type:s.Renderer2}],propDecorators:{klass:[{type:i.Input,args:["class"]}],ngClass:[{type:i.Input,args:["ngClass"]}]}});const Ye=class Ye{constructor(e){u(this,"_viewContainerRef");u(this,"ngComponentOutlet",null);u(this,"ngComponentOutletInputs");u(this,"ngComponentOutletInjector");u(this,"ngComponentOutletEnvironmentInjector");u(this,"ngComponentOutletContent");u(this,"ngComponentOutletNgModule");u(this,"_componentRef");u(this,"_moduleRef");u(this,"_inputsUsed",new Map);this._viewContainerRef=e}get componentInstance(){var e;return((e=this._componentRef)==null?void 0:e.instance)??null}_needToReCreateNgModuleInstance(e){return e.ngComponentOutletNgModule!==void 0}_needToReCreateComponentInstance(e){return e.ngComponentOutlet!==void 0||e.ngComponentOutletContent!==void 0||e.ngComponentOutletInjector!==void 0||e.ngComponentOutletEnvironmentInjector!==void 0||this._needToReCreateNgModuleInstance(e)}ngOnChanges(e){var t;if(this._needToReCreateComponentInstance(e)&&(this._viewContainerRef.clear(),this._inputsUsed.clear(),this._componentRef=void 0,this.ngComponentOutlet)){const r=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;this._needToReCreateNgModuleInstance(e)&&((t=this._moduleRef)==null||t.destroy(),this.ngComponentOutletNgModule?this._moduleRef=i.createNgModule(this.ngComponentOutletNgModule,rs(r)):this._moduleRef=void 0),this._componentRef=this._viewContainerRef.createComponent(this.ngComponentOutlet,{injector:r,ngModuleRef:this._moduleRef,projectableNodes:this.ngComponentOutletContent,environmentInjector:this.ngComponentOutletEnvironmentInjector})}}ngDoCheck(){if(this._componentRef){if(this.ngComponentOutletInputs)for(const e of Object.keys(this.ngComponentOutletInputs))this._inputsUsed.set(e,!0);this._applyInputStateDiff(this._componentRef)}}ngOnDestroy(){var e;(e=this._moduleRef)==null||e.destroy()}_applyInputStateDiff(e){for(const[t,r]of this._inputsUsed)r?(e.setInput(t,this.ngComponentOutletInputs[t]),this._inputsUsed.set(t,!1)):(e.setInput(t,void 0),this._inputsUsed.delete(t))}};u(Ye,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ye,deps:[{token:s.ViewContainerRef}],target:s.ɵɵFactoryTarget.Directive})),u(Ye,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ye,isStandalone:!0,selector:"[ngComponentOutlet]",inputs:{ngComponentOutlet:"ngComponentOutlet",ngComponentOutletInputs:"ngComponentOutletInputs",ngComponentOutletInjector:"ngComponentOutletInjector",ngComponentOutletEnvironmentInjector:"ngComponentOutletEnvironmentInjector",ngComponentOutletContent:"ngComponentOutletContent",ngComponentOutletNgModule:"ngComponentOutletNgModule"},exportAs:["ngComponentOutlet"],usesOnChanges:!0,ngImport:s}));let he=Ye;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:he,decorators:[{type:i.Directive,args:[{selector:"[ngComponentOutlet]",exportAs:"ngComponentOutlet"}]}],ctorParameters:()=>[{type:s.ViewContainerRef}],propDecorators:{ngComponentOutlet:[{type:i.Input}],ngComponentOutletInputs:[{type:i.Input}],ngComponentOutletInjector:[{type:i.Input}],ngComponentOutletEnvironmentInjector:[{type:i.Input}],ngComponentOutletContent:[{type:i.Input}],ngComponentOutletNgModule:[{type:i.Input}]}});function rs(n){return n.get(i.NgModuleRef).injector}class ss{constructor(e,t,r,o){u(this,"$implicit");u(this,"ngForOf");u(this,"index");u(this,"count");this.$implicit=e,this.ngForOf=t,this.index=r,this.count=o}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}}const ze=class ze{constructor(e,t,r){u(this,"_viewContainer");u(this,"_template");u(this,"_differs");u(this,"_ngForOf",null);u(this,"_ngForOfDirty",!0);u(this,"_differ",null);u(this,"_trackByFn");this._viewContainer=e,this._template=t,this._differs=r}set ngForOf(e){this._ngForOf=e,this._ngForOfDirty=!0}set ngForTrackBy(e){(typeof ngDevMode>"u"||ngDevMode)&&e!=null&&typeof e!="function"&&console.warn(`trackBy must be a function, but received ${JSON.stringify(e)}. See https://angular.dev/api/common/NgForOf#change-propagation for more information.`),this._trackByFn=e}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(e){e&&(this._template=e)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const e=this._ngForOf;if(!this._differ&&e)if(typeof ngDevMode>"u"||ngDevMode)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch{let t=`Cannot find a differ supporting object '${e}' of type '${os(e)}'. NgFor only supports binding to Iterables, such as Arrays.`;throw typeof e=="object"&&(t+=" Did you mean to use the keyvalue pipe?"),new i.ɵRuntimeError(-2200,t)}else this._differ=this._differs.find(e).create(this.ngForTrackBy)}if(this._differ){const e=this._differ.diff(this._ngForOf);e&&this._applyChanges(e)}}_applyChanges(e){const t=this._viewContainer;e.forEachOperation((r,o,a)=>{if(r.previousIndex==null)t.createEmbeddedView(this._template,new ss(r.item,this._ngForOf,-1,-1),a===null?void 0:a);else if(a==null)t.remove(o===null?void 0:o);else if(o!==null){const c=t.get(o);t.move(c,a),Vn(c,r)}});for(let r=0,o=t.length;r<o;r++){const c=t.get(r).context;c.index=r,c.count=o,c.ngForOf=this._ngForOf}e.forEachIdentityChange(r=>{const o=t.get(r.currentIndex);Vn(o,r)})}static ngTemplateContextGuard(e,t){return!0}};u(ze,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ze,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:s.IterableDiffers}],target:s.ɵɵFactoryTarget.Directive})),u(ze,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:ze,isStandalone:!0,selector:"[ngFor][ngForOf]",inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},ngImport:s}));let ge=ze;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ge,decorators:[{type:i.Directive,args:[{selector:"[ngFor][ngForOf]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:s.IterableDiffers}],propDecorators:{ngForOf:[{type:i.Input}],ngForTrackBy:[{type:i.Input}],ngForTemplate:[{type:i.Input}]}});function Vn(n,e){n.context.$implicit=e.item}function os(n){return n.name||typeof n}const W=class W{constructor(e,t){u(this,"_viewContainer");u(this,"_context",new is);u(this,"_thenTemplateRef",null);u(this,"_elseTemplateRef",null);u(this,"_thenViewRef",null);u(this,"_elseViewRef",null);this._viewContainer=e,this._thenTemplateRef=t}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){xn(e,(typeof ngDevMode>"u"||ngDevMode)&&"ngIfThen"),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){xn(e,(typeof ngDevMode>"u"||ngDevMode)&&"ngIfElse"),this._elseTemplateRef=e,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(e,t){return!0}};u(W,"ngIfUseIfTypeGuard"),u(W,"ngTemplateGuard_ngIf"),u(W,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:W,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef}],target:s.ɵɵFactoryTarget.Directive})),u(W,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:W,isStandalone:!0,selector:"[ngIf]",inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},ngImport:s}));let me=W;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:me,decorators:[{type:i.Directive,args:[{selector:"[ngIf]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef}],propDecorators:{ngIf:[{type:i.Input}],ngIfThen:[{type:i.Input}],ngIfElse:[{type:i.Input}]}});class is{constructor(){u(this,"$implicit",null);u(this,"ngIf",null)}}function xn(n,e){if(n&&!n.createEmbeddedView)throw new i.ɵRuntimeError(2020,(typeof ngDevMode>"u"||ngDevMode)&&`${e} must be a TemplateRef, but received '${i.ɵstringify(n)}'.`)}class Qt{constructor(e,t){u(this,"_viewContainerRef");u(this,"_templateRef");u(this,"_created",!1);this._viewContainerRef=e,this._templateRef=t}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(e){e&&!this._created?this.create():!e&&this._created&&this.destroy()}}const Ze=class Ze{constructor(){u(this,"_defaultViews",[]);u(this,"_defaultUsed",!1);u(this,"_caseCount",0);u(this,"_lastCaseCheckIndex",0);u(this,"_lastCasesMatched",!1);u(this,"_ngSwitch")}set ngSwitch(e){this._ngSwitch=e,this._caseCount===0&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(e){this._defaultViews.push(e)}_matchCase(e){const t=e===this._ngSwitch;return this._lastCasesMatched||(this._lastCasesMatched=t),this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),t}_updateDefaultCases(e){if(this._defaultViews.length>0&&e!==this._defaultUsed){this._defaultUsed=e;for(const t of this._defaultViews)t.enforceState(e)}}};u(Ze,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ze,deps:[],target:s.ɵɵFactoryTarget.Directive})),u(Ze,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ze,isStandalone:!0,selector:"[ngSwitch]",inputs:{ngSwitch:"ngSwitch"},ngImport:s}));let j=Ze;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:j,decorators:[{type:i.Directive,args:[{selector:"[ngSwitch]"}]}],propDecorators:{ngSwitch:[{type:i.Input}]}});const Ke=class Ke{constructor(e,t,r){u(this,"ngSwitch");u(this,"_view");u(this,"ngSwitchCase");this.ngSwitch=r,(typeof ngDevMode>"u"||ngDevMode)&&!r&&Pn("ngSwitchCase","NgSwitchCase"),r._addCase(),this._view=new Qt(e,t)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}};u(Ke,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ke,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:j,host:!0,optional:!0}],target:s.ɵɵFactoryTarget.Directive})),u(Ke,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ke,isStandalone:!0,selector:"[ngSwitchCase]",inputs:{ngSwitchCase:"ngSwitchCase"},ngImport:s}));let ye=Ke;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ye,decorators:[{type:i.Directive,args:[{selector:"[ngSwitchCase]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:j,decorators:[{type:i.Optional},{type:i.Host}]}],propDecorators:{ngSwitchCase:[{type:i.Input}]}});const We=class We{constructor(e,t,r){(typeof ngDevMode>"u"||ngDevMode)&&!r&&Pn("ngSwitchDefault","NgSwitchDefault"),r._addDefault(new Qt(e,t))}};u(We,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:We,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:j,host:!0,optional:!0}],target:s.ɵɵFactoryTarget.Directive})),u(We,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:We,isStandalone:!0,selector:"[ngSwitchDefault]",ngImport:s}));let Ce=We;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ce,decorators:[{type:i.Directive,args:[{selector:"[ngSwitchDefault]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:j,decorators:[{type:i.Optional},{type:i.Host}]}]});function Pn(n,e){throw new i.ɵRuntimeError(2e3,`An element with the "${n}" attribute (matching the "${e}" directive) must be located inside an element with the "ngSwitch" attribute (matching "NgSwitch" directive)`)}const Xe=class Xe{constructor(e){u(this,"_localization");u(this,"_activeView");u(this,"_caseViews",{});this._localization=e}set ngPlural(e){this._updateView(e)}addCase(e,t){this._caseViews[e]=t}_updateView(e){this._clearViews();const t=Object.keys(this._caseViews),r=Ln(e,t,this._localization);this._activateView(this._caseViews[r])}_clearViews(){this._activeView&&this._activeView.destroy()}_activateView(e){e&&(this._activeView=e,this._activeView.create())}};u(Xe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Xe,deps:[{token:Z}],target:s.ɵɵFactoryTarget.Directive})),u(Xe,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Xe,isStandalone:!0,selector:"[ngPlural]",inputs:{ngPlural:"ngPlural"},ngImport:s}));let K=Xe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:K,decorators:[{type:i.Directive,args:[{selector:"[ngPlural]"}]}],ctorParameters:()=>[{type:Z}],propDecorators:{ngPlural:[{type:i.Input}]}});const qe=class qe{constructor(e,t,r,o){u(this,"value");this.value=e;const a=!isNaN(Number(e));o.addCase(a?`=${e}`:e,new Qt(r,t))}};u(qe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:qe,deps:[{token:"ngPluralCase",attribute:!0},{token:s.TemplateRef},{token:s.ViewContainerRef},{token:K,host:!0}],target:s.ɵɵFactoryTarget.Directive})),u(qe,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:qe,isStandalone:!0,selector:"[ngPluralCase]",ngImport:s}));let Fe=qe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Fe,decorators:[{type:i.Directive,args:[{selector:"[ngPluralCase]"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Attribute,args:["ngPluralCase"]}]},{type:s.TemplateRef},{type:s.ViewContainerRef},{type:K,decorators:[{type:i.Host}]}]});const Je=class Je{constructor(e,t,r){u(this,"_ngEl");u(this,"_differs");u(this,"_renderer");u(this,"_ngStyle",null);u(this,"_differ",null);this._ngEl=e,this._differs=t,this._renderer=r}set ngStyle(e){this._ngStyle=e,!this._differ&&e&&(this._differ=this._differs.find(e).create())}ngDoCheck(){if(this._differ){const e=this._differ.diff(this._ngStyle);e&&this._applyChanges(e)}}_setStyle(e,t){const[r,o]=e.split("."),a=r.indexOf("-")===-1?void 0:i.RendererStyleFlags2.DashCase;t!=null?this._renderer.setStyle(this._ngEl.nativeElement,r,o?`${t}${o}`:t,a):this._renderer.removeStyle(this._ngEl.nativeElement,r,a)}_applyChanges(e){e.forEachRemovedItem(t=>this._setStyle(t.key,null)),e.forEachAddedItem(t=>this._setStyle(t.key,t.currentValue)),e.forEachChangedItem(t=>this._setStyle(t.key,t.currentValue))}};u(Je,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Je,deps:[{token:s.ElementRef},{token:s.KeyValueDiffers},{token:s.Renderer2}],target:s.ɵɵFactoryTarget.Directive})),u(Je,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Je,isStandalone:!0,selector:"[ngStyle]",inputs:{ngStyle:"ngStyle"},ngImport:s}));let Ee=Je;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ee,decorators:[{type:i.Directive,args:[{selector:"[ngStyle]"}]}],ctorParameters:()=>[{type:s.ElementRef},{type:s.KeyValueDiffers},{type:s.Renderer2}],propDecorators:{ngStyle:[{type:i.Input,args:["ngStyle"]}]}});const Qe=class Qe{constructor(e){u(this,"_viewContainerRef");u(this,"_viewRef",null);u(this,"ngTemplateOutletContext",null);u(this,"ngTemplateOutlet",null);u(this,"ngTemplateOutletInjector",null);u(this,"injector",i.inject(i.Injector));this._viewContainerRef=e}ngOnChanges(e){if(this._shouldRecreateView(e)){const t=this._viewContainerRef;if(this._viewRef&&t.remove(t.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}const r=this._createContextForwardProxy();this._viewRef=t.createEmbeddedView(this.ngTemplateOutlet,r,{injector:this._getInjector()})}}_getInjector(){return this.ngTemplateOutletInjector==="outlet"?this.injector:this.ngTemplateOutletInjector??void 0}_shouldRecreateView(e){return!!e.ngTemplateOutlet||!!e.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(e,t,r)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,t,r):!1,get:(e,t,r)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,t,r)}})}};u(Qe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Qe,deps:[{token:s.ViewContainerRef}],target:s.ɵɵFactoryTarget.Directive})),u(Qe,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Qe,isStandalone:!0,selector:"[ngTemplateOutlet]",inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},usesOnChanges:!0,ngImport:s}));let ve=Qe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ve,decorators:[{type:i.Directive,args:[{selector:"[ngTemplateOutlet]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef}],propDecorators:{ngTemplateOutletContext:[{type:i.Input}],ngTemplateOutlet:[{type:i.Input}],ngTemplateOutletInjector:[{type:i.Input}]}});const jn=[De,he,ge,me,ve,Ee,j,ye,Ce,K,Fe];function H(n,e){return new i.ɵRuntimeError(2100,ngDevMode&&`InvalidPipeArgument: '${e}' for pipe '${i.ɵstringify(n)}'`)}function Un(n,e){i.isSignal(e)&&console.warn(`The ${n} does not unwrap signals. Received a signal with value:`,e())}class as{createSubscription(e,t,r){return i.untracked(()=>e.subscribe({next:t,error:r}))}dispose(e){i.untracked(()=>e.unsubscribe())}}class us{createSubscription(e,t,r){return e.then(o=>t==null?void 0:t(o),o=>r==null?void 0:r(o)),{unsubscribe:()=>{t=null,r=null}}}dispose(e){e.unsubscribe()}}const cs=new us,ls=new as,te=class te{constructor(e){u(this,"_ref");u(this,"_latestValue",null);u(this,"markForCheckOnValueUpdate",!0);u(this,"_subscription",null);u(this,"_obj",null);u(this,"_strategy",null);u(this,"applicationErrorHandler",i.inject(i.ɵINTERNAL_APPLICATION_ERROR_HANDLER));this._ref=e}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(e){if(!this._obj){if(e)try{this.markForCheckOnValueUpdate=!1,this._subscribe(e)}finally{this.markForCheckOnValueUpdate=!0}return this._latestValue}return e!==this._obj?(this._dispose(),this.transform(e)):this._latestValue}_subscribe(e){this._obj=e,this._strategy=this._selectStrategy(e),this._subscription=this._strategy.createSubscription(e,t=>this._updateLatestValue(e,t),t=>this.applicationErrorHandler(t))}_selectStrategy(e){if(i.ɵisPromise(e))return cs;if(i.ɵisSubscribable(e))return ls;throw H(te,e)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(e,t){var r;e===this._obj&&(this._latestValue=t,this.markForCheckOnValueUpdate&&((r=this._ref)==null||r.markForCheck()))}};u(te,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:te,deps:[{token:s.ChangeDetectorRef}],target:s.ɵɵFactoryTarget.Pipe})),u(te,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:te,isStandalone:!0,name:"async",pure:!1}));let be=te;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:be,decorators:[{type:i.Pipe,args:[{name:"async",pure:!1}]}],ctorParameters:()=>[{type:s.ChangeDetectorRef}]});const ne=class ne{transform(e){return e==null?null:(en(ne,e),e.toLowerCase())}};u(ne,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ne,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(ne,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ne,isStandalone:!0,name:"lowercase"}));let Ae=ne;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ae,decorators:[{type:i.Pipe,args:[{name:"lowercase"}]}]});const ds=/(?:[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,re=class re{transform(e){return e==null?null:(en(re,e),e.replace(ds,t=>t[0].toUpperCase()+t.slice(1).toLowerCase()))}};u(re,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:re,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(re,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:re,isStandalone:!0,name:"titlecase"}));let _e=re;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:_e,decorators:[{type:i.Pipe,args:[{name:"titlecase"}]}]});const se=class se{transform(e){return e==null?null:(en(se,e),e.toUpperCase())}};u(se,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:se,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(se,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:se,isStandalone:!0,name:"uppercase"}));let Ie=se;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ie,decorators:[{type:i.Pipe,args:[{name:"uppercase"}]}]});function en(n,e){if(typeof e!="string")throw H(n,e)}const fs="mediumDate",Nn=new i.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"DATE_PIPE_DEFAULT_TIMEZONE":""),$n=new i.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"DATE_PIPE_DEFAULT_OPTIONS":""),oe=class oe{constructor(e,t,r){u(this,"locale");u(this,"defaultTimezone");u(this,"defaultOptions");this.locale=e,this.defaultTimezone=t,this.defaultOptions=r}transform(e,t,r,o){var a,c;if(e==null||e===""||e!==e)return null;try{const l=t??((a=this.defaultOptions)==null?void 0:a.dateFormat)??fs,p=r??((c=this.defaultOptions)==null?void 0:c.timezone)??this.defaultTimezone??void 0;return Mr(e,l,o||this.locale,p)}catch(l){throw H(oe,l.message)}}};u(oe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:oe,deps:[{token:i.LOCALE_ID},{token:Nn,optional:!0},{token:$n,optional:!0}],target:s.ɵɵFactoryTarget.Pipe})),u(oe,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:oe,isStandalone:!0,name:"date"}));let Se=oe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Se,decorators:[{type:i.Pipe,args:[{name:"date"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Inject,args:[i.LOCALE_ID]}]},{type:void 0,decorators:[{type:i.Inject,args:[Nn]},{type:i.Optional}]},{type:void 0,decorators:[{type:i.Inject,args:[$n]},{type:i.Optional}]}]});const ps=/#/g,ie=class ie{constructor(e){u(this,"_localization");this._localization=e}transform(e,t,r){if(e==null)return"";if(typeof t!="object"||t===null)throw H(ie,t);const o=Ln(e,Object.keys(t),this._localization,r);return t[o].replace(ps,e.toString())}};u(ie,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ie,deps:[{token:Z}],target:s.ɵɵFactoryTarget.Pipe})),u(ie,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ie,isStandalone:!0,name:"i18nPlural"}));let we=ie;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:we,decorators:[{type:i.Pipe,args:[{name:"i18nPlural"}]}],ctorParameters:()=>[{type:Z}]});const ae=class ae{transform(e,t){if(e==null)return"";if(typeof t!="object"||typeof e!="string")throw H(ae,t);return t.hasOwnProperty(e)?t[e]:t.hasOwnProperty("other")?t.other:""}};u(ae,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ae,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(ae,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ae,isStandalone:!0,name:"i18nSelect"}));let Te=ae;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Te,decorators:[{type:i.Pipe,args:[{name:"i18nSelect"}]}]});const et=class et{transform(e){return ngDevMode&&Un("JsonPipe",e),JSON.stringify(e,null,2)}};u(et,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:et,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(et,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:et,isStandalone:!0,name:"json",pure:!1}));let Oe=et;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Oe,decorators:[{type:i.Pipe,args:[{name:"json",pure:!1}]}]});function Ds(n,e){return{key:n,value:e}}const tt=class tt{constructor(e){u(this,"differs");u(this,"differ");u(this,"keyValues",[]);u(this,"compareFn",Gn);this.differs=e}transform(e,t=Gn){if(ngDevMode&&Un("KeyValuePipe",e),!e||!(e instanceof Map)&&typeof e!="object")return null;this.differ??(this.differ=this.differs.find(e).create());const r=this.differ.diff(e),o=t!==this.compareFn;return r&&(this.keyValues=[],r.forEachItem(a=>{this.keyValues.push(Ds(a.key,a.currentValue))})),(r||o)&&(t&&this.keyValues.sort(t),this.compareFn=t),this.keyValues}};u(tt,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:tt,deps:[{token:s.KeyValueDiffers}],target:s.ɵɵFactoryTarget.Pipe})),u(tt,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:tt,isStandalone:!0,name:"keyvalue",pure:!1}));let Be=tt;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Be,decorators:[{type:i.Pipe,args:[{name:"keyvalue",pure:!1}]}],ctorParameters:()=>[{type:s.KeyValueDiffers}]});function Gn(n,e){const t=n.key,r=e.key;if(t===r)return 0;if(t==null)return 1;if(r==null)return-1;if(typeof t=="string"&&typeof r=="string")return t<r?-1:1;if(typeof t=="number"&&typeof r=="number")return t-r;if(typeof t=="boolean"&&typeof r=="boolean")return t<r?-1:1;const o=String(t),a=String(r);return o==a?0:o<a?-1:1}const ue=class ue{constructor(e){u(this,"_locale");this._locale=e}transform(e,t,r){if(!tn(e))return null;r||(r=this._locale);try{const o=nn(e);return Qr(o,r,t)}catch(o){throw H(ue,o.message)}}};u(ue,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ue,deps:[{token:i.LOCALE_ID}],target:s.ɵɵFactoryTarget.Pipe})),u(ue,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ue,isStandalone:!0,name:"number"}));let Re=ue;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Re,decorators:[{type:i.Pipe,args:[{name:"number"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Inject,args:[i.LOCALE_ID]}]}]});const ce=class ce{constructor(e){u(this,"_locale");this._locale=e}transform(e,t,r){if(!tn(e))return null;r||(r=this._locale);try{const o=nn(e);return Jr(o,r,t)}catch(o){throw H(ce,o.message)}}};u(ce,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ce,deps:[{token:i.LOCALE_ID}],target:s.ɵɵFactoryTarget.Pipe})),u(ce,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ce,isStandalone:!0,name:"percent"}));let ke=ce;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ke,decorators:[{type:i.Pipe,args:[{name:"percent"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Inject,args:[i.LOCALE_ID]}]}]});const le=class le{constructor(e,t="USD"){u(this,"_locale");u(this,"_defaultCurrencyCode");this._locale=e,this._defaultCurrencyCode=t}transform(e,t=this._defaultCurrencyCode,r="symbol",o,a){if(!tn(e))return null;a||(a=this._locale),typeof r=="boolean"&&((typeof ngDevMode>"u"||ngDevMode)&&console.warn('Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".'),r=r?"symbol":"code");let c=t||this._defaultCurrencyCode;r!=="code"&&(r==="symbol"||r==="symbol-narrow"?c=Or(c,r==="symbol"?"wide":"narrow",a):c=r);try{const l=nn(e);return qr(l,a,c,t,o)}catch(l){throw H(le,l.message)}}};u(le,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:le,deps:[{token:i.LOCALE_ID},{token:i.DEFAULT_CURRENCY_CODE}],target:s.ɵɵFactoryTarget.Pipe})),u(le,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:le,isStandalone:!0,name:"currency"}));let Le=le;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Le,decorators:[{type:i.Pipe,args:[{name:"currency"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Inject,args:[i.LOCALE_ID]}]},{type:void 0,decorators:[{type:i.Inject,args:[i.DEFAULT_CURRENCY_CODE]}]}]});function tn(n){return!(n==null||n===""||n!==n)}function nn(n){if(typeof n=="string"&&!isNaN(Number(n)-parseFloat(n)))return Number(n);if(typeof n!="number")throw new i.ɵRuntimeError(2309,ngDevMode&&`${n} is not a number`);return n}const de=class de{transform(e,t,r){if(e==null)return null;if(!(typeof e=="string"||Array.isArray(e)))throw H(de,e);return e.slice(t,r)}};u(de,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:de,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(de,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:de,isStandalone:!0,name:"slice",pure:!1}));let Me=de;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Me,decorators:[{type:i.Pipe,args:[{name:"slice",pure:!1}]}]});const Hn=[be,Ie,Ae,Oe,Me,Re,ke,_e,Le,Se,we,Te,Be],X=class X{};u(X,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:X,deps:[],target:s.ɵɵFactoryTarget.NgModule})),u(X,"ɵmod",s.ɵɵngDeclareNgModule({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:X,imports:[De,he,ge,me,ve,Ee,j,ye,Ce,K,Fe,be,Ie,Ae,Oe,Me,Re,ke,_e,Le,Se,we,Te,Be],exports:[De,he,ge,me,ve,Ee,j,ye,Ce,K,Fe,be,Ie,Ae,Oe,Me,Re,ke,_e,Le,Se,we,Te,Be]})),u(X,"ɵinj",s.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:X}));let lt=X;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:lt,decorators:[{type:i.NgModule,args:[{imports:[jn,Hn],exports:[jn,Hn]}]}]});var hs=Object.defineProperty,gs=Object.getOwnPropertyDescriptor,b=(n,e,t,r)=>{for(var o=r>1?void 0:r?gs(e,t):e,a=n.length-1,c;a>=0;a--)(c=n[a])&&(o=(r?c(e,t,o):c(o))||o);return r&&o&&hs(e,t,o),o};D.LivenessComponent=class{constructor(e){this.liveness=e,this.duration=60,this.containerClass="",this.videoWrapperClass="",this.videoClass="",this.timerClass="",this.challengeTextClass="",this.buttonClass="",this.retryButtonClass="",this.statusOverlayClass="",this.successMessageClass="",this.errorMessageClass="",this.instructionBoxClass="",this.onComplete=new i.EventEmitter,this.onError=new i.EventEmitter}ngOnInit(){this.liveness.init({apiUrl:this.apiUrl,duration:this.duration,smileThreshold:this.smileThreshold,blinkThreshold:this.blinkThreshold,minturnHeadThreshold:this.minturnHeadThreshold,maxturnHeadThreshold:this.maxturnHeadThreshold,onComplete:e=>this.onComplete.emit(e),onError:e=>this.onError.emit(e)})}async ngAfterViewInit(){try{const e=await navigator.mediaDevices.getUserMedia({video:{width:640,height:480,facingMode:"user"}}),t=this.webcamRef.nativeElement;t.srcObject=e,t.onloadedmetadata=()=>{t.play(),this.liveness.attach(t)}}catch{this.onError.emit({success:!1,reason:"Camera access denied"})}}ngOnDestroy(){var t,r;const e=(r=(t=this.webcamRef)==null?void 0:t.nativeElement)==null?void 0:r.srcObject;e==null||e.getTracks().forEach(o=>o.stop())}},b([i.ViewChild("webcam")],D.LivenessComponent.prototype,"webcamRef",2),b([i.Input()],D.LivenessComponent.prototype,"apiUrl",2),b([i.Input()],D.LivenessComponent.prototype,"duration",2),b([i.Input()],D.LivenessComponent.prototype,"smileThreshold",2),b([i.Input()],D.LivenessComponent.prototype,"blinkThreshold",2),b([i.Input()],D.LivenessComponent.prototype,"minturnHeadThreshold",2),b([i.Input()],D.LivenessComponent.prototype,"maxturnHeadThreshold",2),b([i.Input()],D.LivenessComponent.prototype,"containerClass",2),b([i.Input()],D.LivenessComponent.prototype,"videoWrapperClass",2),b([i.Input()],D.LivenessComponent.prototype,"videoClass",2),b([i.Input()],D.LivenessComponent.prototype,"timerClass",2),b([i.Input()],D.LivenessComponent.prototype,"challengeTextClass",2),b([i.Input()],D.LivenessComponent.prototype,"buttonClass",2),b([i.Input()],D.LivenessComponent.prototype,"retryButtonClass",2),b([i.Input()],D.LivenessComponent.prototype,"statusOverlayClass",2),b([i.Input()],D.LivenessComponent.prototype,"successMessageClass",2),b([i.Input()],D.LivenessComponent.prototype,"errorMessageClass",2),b([i.Input()],D.LivenessComponent.prototype,"instructionBoxClass",2),b([i.Output()],D.LivenessComponent.prototype,"onComplete",2),b([i.Output()],D.LivenessComponent.prototype,"onError",2),D.LivenessComponent=b([i.Component({selector:"LivenessCheck",standalone:!1,imports:[lt],templateUrl:"./liveness.component.html",styleUrls:["./liveness.component.css"]})],D.LivenessComponent);var ms=Object.getOwnPropertyDescriptor,ys=(n,e,t,r)=>{for(var o=r>1?void 0:r?ms(e,t):e,a=n.length-1,c;a>=0;a--)(c=n[a])&&(o=c(o)||o);return o};D.LivenessModule=class{},D.LivenessModule=ys([i.NgModule({declarations:[D.LivenessComponent],imports:[lt],providers:[D.LivenessService],exports:[D.LivenessComponent]})],D.LivenessModule),D.LivenessEngine=Tt,D.LivenessSDK=nr,D.useLiveness=ln,D.verifyLiveness=cn,Object.defineProperty(D,Symbol.toStringTag,{value:"Module"})});
|
|
36
|
+
*/const Ne=class Ne extends z{constructor(t,r){super();u(this,"_platformLocation");u(this,"_baseHref","");u(this,"_removeListenerFns",[]);this._platformLocation=t,r!=null&&(this._baseHref=r)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}path(t=!1){const r=this._platformLocation.hash??"#";return r.length>0?r.substring(1):r}prepareExternalUrl(t){const r=Ut(this._baseHref,t);return r.length>0?"#"+r:r}pushState(t,r,o,a){const c=this.prepareExternalUrl(o+$(a))||this._platformLocation.pathname;this._platformLocation.pushState(t,r,c)}replaceState(t,r,o,a){const c=this.prepareExternalUrl(o+$(a))||this._platformLocation.pathname;this._platformLocation.replaceState(t,r,c)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){var r,o;(o=(r=this._platformLocation).historyGo)==null||o.call(r,t)}};u(Ne,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ne,deps:[{token:Y},{token:Dt,optional:!0}],target:s.ɵɵFactoryTarget.Injectable})),u(Ne,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ne}));let Gt=Ne;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Gt,decorators:[{type:i.Injectable}],ctorParameters:()=>[{type:Y},{type:void 0,decorators:[{type:i.Optional},{type:i.Inject,args:[Dt]}]}]});const In={ADP:[void 0,void 0,0],AFN:[void 0,"؋",0],ALL:[void 0,void 0,0],AMD:[void 0,"֏",2],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],AZN:[void 0,"₼"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"৳"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,void 0,2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN¥","¥"],COP:[void 0,"$",2],CRC:[void 0,"₡",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"Kč",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E£"],ESP:[void 0,"₧",0],EUR:["€"],FJD:[void 0,"$"],FKP:[void 0,"£"],GBP:["£"],GEL:[void 0,"₾"],GHS:[void 0,"GH₵"],GIP:[void 0,"£"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",2],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",2],ILS:["₪"],INR:["₹"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["¥",void 0,0],KGS:[void 0,"⃀"],KHR:[void 0,"៛"],KMF:[void 0,"CF",0],KPW:[void 0,"₩",0],KRW:["₩",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"₸"],LAK:[void 0,"₭",0],LBP:[void 0,"L£",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"₮",2],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",2],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"₦"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:["₱"],PKR:[void 0,"Rs",2],PLN:[void 0,"zł"],PYG:[void 0,"₲",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"₽"],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"£"],SLE:[void 0,void 0,2],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"£"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"£",0],THB:[void 0,"฿"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"₺"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,2],UAH:[void 0,"₴"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UYW:[void 0,void 0,4],UZS:[void 0,void 0,2],VEF:[void 0,"Bs",2],VND:["₫",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XCG:["Cg."],XOF:["F CFA",void 0,0],XPF:["CFPF",void 0,0],XXX:["¤"],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]};var at;(function(n){n[n.Decimal=0]="Decimal",n[n.Percent=1]="Percent",n[n.Currency=2]="Currency",n[n.Scientific=3]="Scientific"})(at||(at={}));var Q;(function(n){n[n.Zero=0]="Zero",n[n.One=1]="One",n[n.Two=2]="Two",n[n.Few=3]="Few",n[n.Many=4]="Many",n[n.Other=5]="Other"})(Q||(Q={}));var O;(function(n){n[n.Format=0]="Format",n[n.Standalone=1]="Standalone"})(O||(O={}));var F;(function(n){n[n.Narrow=0]="Narrow",n[n.Abbreviated=1]="Abbreviated",n[n.Wide=2]="Wide",n[n.Short=3]="Short"})(F||(F={}));var R;(function(n){n[n.Short=0]="Short",n[n.Medium=1]="Medium",n[n.Long=2]="Long",n[n.Full=3]="Full"})(R||(R={}));const A={Decimal:0,Group:1,PercentSign:3,MinusSign:5,Exponential:6,Infinity:9,CurrencyDecimal:12,CurrencyGroup:13};var Sn;(function(n){n[n.Sunday=0]="Sunday",n[n.Monday=1]="Monday",n[n.Tuesday=2]="Tuesday",n[n.Wednesday=3]="Wednesday",n[n.Thursday=4]="Thursday",n[n.Friday=5]="Friday",n[n.Saturday=6]="Saturday"})(Sn||(Sn={}));function Er(n){return i.ɵfindLocaleData(n)[i.ɵLocaleDataIndex.LocaleId]}function vr(n,e,t){const r=i.ɵfindLocaleData(n),o=[r[i.ɵLocaleDataIndex.DayPeriodsFormat],r[i.ɵLocaleDataIndex.DayPeriodsStandalone]],a=V(o,e);return V(a,t)}function br(n,e,t){const r=i.ɵfindLocaleData(n),o=[r[i.ɵLocaleDataIndex.DaysFormat],r[i.ɵLocaleDataIndex.DaysStandalone]],a=V(o,e);return V(a,t)}function Ar(n,e,t){const r=i.ɵfindLocaleData(n),o=[r[i.ɵLocaleDataIndex.MonthsFormat],r[i.ɵLocaleDataIndex.MonthsStandalone]],a=V(o,e);return V(a,t)}function _r(n,e){const r=i.ɵfindLocaleData(n)[i.ɵLocaleDataIndex.Eras];return V(r,e)}function gt(n,e){const t=i.ɵfindLocaleData(n);return V(t[i.ɵLocaleDataIndex.DateFormat],e)}function mt(n,e){const t=i.ɵfindLocaleData(n);return V(t[i.ɵLocaleDataIndex.TimeFormat],e)}function yt(n,e){const r=i.ɵfindLocaleData(n)[i.ɵLocaleDataIndex.DateTimeFormat];return V(r,e)}function L(n,e){const t=i.ɵfindLocaleData(n),r=t[i.ɵLocaleDataIndex.NumberSymbols][e];if(typeof r>"u"){if(e===A.CurrencyDecimal)return t[i.ɵLocaleDataIndex.NumberSymbols][A.Decimal];if(e===A.CurrencyGroup)return t[i.ɵLocaleDataIndex.NumberSymbols][A.Group]}return r}function Ht(n,e){return i.ɵfindLocaleData(n)[i.ɵLocaleDataIndex.NumberFormats][e]}function Ir(n){return i.ɵfindLocaleData(n)[i.ɵLocaleDataIndex.Currencies]}const Sr=i.ɵgetLocalePluralCase;function wn(n){if(!n[i.ɵLocaleDataIndex.ExtraData])throw new i.ɵRuntimeError(2303,ngDevMode&&`Missing extra locale data for the locale "${n[i.ɵLocaleDataIndex.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function wr(n){const e=i.ɵfindLocaleData(n);return wn(e),(e[i.ɵLocaleDataIndex.ExtraData][2]||[]).map(r=>typeof r=="string"?Yt(r):[Yt(r[0]),Yt(r[1])])}function Tr(n,e,t){const r=i.ɵfindLocaleData(n);wn(r);const o=[r[i.ɵLocaleDataIndex.ExtraData][0],r[i.ɵLocaleDataIndex.ExtraData][1]],a=V(o,e)||[];return V(a,t)||[]}function V(n,e){for(let t=e;t>-1;t--)if(typeof n[t]<"u")return n[t];throw new i.ɵRuntimeError(2304,ngDevMode&&"Locale data API: locale data undefined")}function Yt(n){const[e,t]=n.split(":");return{hours:+e,minutes:+t}}function Or(n,e,t="en"){const r=Ir(t)[n]||In[n]||[],o=r[1];return e==="narrow"&&typeof o=="string"?o:r[0]||n}const Br=2;function Rr(n){let e;const t=In[n];return t&&(e=t[2]),typeof e=="number"?e:Br}const kr=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,pe={},Mr=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;function Lr(n,e,t,r){let o=Yr(n);e=G(t,e)||e;let c=[],l;for(;e;)if(l=Mr.exec(e),l){c=c.concat(l.slice(1));const d=c.pop();if(!d)break;e=d}else{c.push(e);break}(typeof ngDevMode>"u"||ngDevMode)&&Vr(c);let p=o.getTimezoneOffset();r&&(p=On(r,p),o=Hr(o,r));let h="";return c.forEach(d=>{const D=$r(d);h+=D?D(o,t,p):d==="''"?"'":d.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),h}function Vr(n){if(n.some(e=>/^Y+$/.test(e))&&!n.some(e=>/^w+$/.test(e))){const e=`Suspicious use of week-based year "Y" in date pattern "${n.join("")}". Did you mean to use calendar year "y" instead?`;if(n.length===1)console.error(i.ɵformatRuntimeError(2300,e));else throw new i.ɵRuntimeError(2300,e)}}function Ct(n,e,t){const r=new Date(0);return r.setFullYear(n,e,t),r.setHours(0,0,0),r}function G(n,e){const t=Er(n);if(pe[t]??(pe[t]={}),pe[t][e])return pe[t][e];let r="";switch(e){case"shortDate":r=gt(n,R.Short);break;case"mediumDate":r=gt(n,R.Medium);break;case"longDate":r=gt(n,R.Long);break;case"fullDate":r=gt(n,R.Full);break;case"shortTime":r=mt(n,R.Short);break;case"mediumTime":r=mt(n,R.Medium);break;case"longTime":r=mt(n,R.Long);break;case"fullTime":r=mt(n,R.Full);break;case"short":const o=G(n,"shortTime"),a=G(n,"shortDate");r=Ft(yt(n,R.Short),[o,a]);break;case"medium":const c=G(n,"mediumTime"),l=G(n,"mediumDate");r=Ft(yt(n,R.Medium),[c,l]);break;case"long":const p=G(n,"longTime"),h=G(n,"longDate");r=Ft(yt(n,R.Long),[p,h]);break;case"full":const d=G(n,"fullTime"),D=G(n,"fullDate");r=Ft(yt(n,R.Full),[d,D]);break}return r&&(pe[t][e]=r),r}function Ft(n,e){return e&&(n=n.replace(/\{([^}]+)}/g,function(t,r){return e!=null&&r in e?e[r]:t})),n}function x(n,e,t="-",r,o){let a="";(n<0||o&&n<=0)&&(o?n=-n+1:(n=-n,a=t));let c=String(n);for(;c.length<e;)c="0"+c;return r&&(c=c.slice(c.length-e)),a+c}function xr(n,e){return x(n,3).substring(0,e)}function _(n,e,t=0,r=!1,o=!1){return function(a,c){let l=Pr(n,a);if((t>0||l>-t)&&(l+=t),n===3)l===0&&t===-12&&(l=12);else if(n===6)return xr(l,e);const p=L(c,A.MinusSign);return x(l,e,p,r,o)}}function Pr(n,e){switch(n){case 0:return e.getFullYear();case 1:return e.getMonth();case 2:return e.getDate();case 3:return e.getHours();case 4:return e.getMinutes();case 5:return e.getSeconds();case 6:return e.getMilliseconds();case 7:return e.getDay();default:throw new i.ɵRuntimeError(2301,ngDevMode&&`Unknown DateType value "${n}".`)}}function E(n,e,t=O.Format,r=!1){return function(o,a){return jr(o,a,n,e,t,r)}}function jr(n,e,t,r,o,a){switch(t){case 2:return Ar(e,o,r)[n.getMonth()];case 1:return br(e,o,r)[n.getDay()];case 0:const c=n.getHours(),l=n.getMinutes();if(a){const h=wr(e),d=Tr(e,o,r),D=h.findIndex(C=>{if(Array.isArray(C)){const[m,I]=C,S=c>=m.hours&&l>=m.minutes,P=c<I.hours||c===I.hours&&l<I.minutes;if(m.hours<I.hours){if(S&&P)return!0}else if(S||P)return!0}else if(C.hours===c&&C.minutes===l)return!0;return!1});if(D!==-1)return d[D]}return vr(e,o,r)[c<12?0:1];case 3:return _r(e,r)[n.getFullYear()<=0?0:1];default:const p=t;throw new i.ɵRuntimeError(2302,ngDevMode&&`unexpected translation type ${p}`)}}function Et(n){return function(e,t,r){const o=-1*r,a=L(t,A.MinusSign),c=o>0?Math.floor(o/60):Math.ceil(o/60);switch(n){case 0:return(o>=0?"+":"")+x(c,2,a)+x(Math.abs(o%60),2,a);case 1:return"GMT"+(o>=0?"+":"")+x(c,1,a);case 2:return"GMT"+(o>=0?"+":"")+x(c,2,a)+":"+x(Math.abs(o%60),2,a);case 3:return r===0?"Z":(o>=0?"+":"")+x(c,2,a)+":"+x(Math.abs(o%60),2,a);default:throw new i.ɵRuntimeError(2310,ngDevMode&&`Unknown zone width "${n}"`)}}}const Ur=0,vt=4;function Nr(n){const e=Ct(n,Ur,1).getDay();return Ct(n,0,1+(e<=vt?vt:vt+7)-e)}function Tn(n){const e=n.getDay(),t=e===0?-3:vt-e;return Ct(n.getFullYear(),n.getMonth(),n.getDate()+t)}function zt(n,e=!1){return function(t,r){let o;if(e){const a=new Date(t.getFullYear(),t.getMonth(),1).getDay()-1,c=t.getDate();o=1+Math.floor((c+a)/7)}else{const a=Tn(t),c=Nr(a.getFullYear()),l=a.getTime()-c.getTime();o=1+Math.round(l/6048e5)}return x(o,n,L(r,A.MinusSign))}}function bt(n,e=!1){return function(t,r){const a=Tn(t).getFullYear();return x(a,n,L(r,A.MinusSign),e)}}const Zt={};function $r(n){if(Zt[n])return Zt[n];let e;switch(n){case"G":case"GG":case"GGG":e=E(3,F.Abbreviated);break;case"GGGG":e=E(3,F.Wide);break;case"GGGGG":e=E(3,F.Narrow);break;case"y":e=_(0,1,0,!1,!0);break;case"yy":e=_(0,2,0,!0,!0);break;case"yyy":e=_(0,3,0,!1,!0);break;case"yyyy":e=_(0,4,0,!1,!0);break;case"Y":e=bt(1);break;case"YY":e=bt(2,!0);break;case"YYY":e=bt(3);break;case"YYYY":e=bt(4);break;case"M":case"L":e=_(1,1,1);break;case"MM":case"LL":e=_(1,2,1);break;case"MMM":e=E(2,F.Abbreviated);break;case"MMMM":e=E(2,F.Wide);break;case"MMMMM":e=E(2,F.Narrow);break;case"LLL":e=E(2,F.Abbreviated,O.Standalone);break;case"LLLL":e=E(2,F.Wide,O.Standalone);break;case"LLLLL":e=E(2,F.Narrow,O.Standalone);break;case"w":e=zt(1);break;case"ww":e=zt(2);break;case"W":e=zt(1,!0);break;case"d":e=_(2,1);break;case"dd":e=_(2,2);break;case"c":case"cc":e=_(7,1);break;case"ccc":e=E(1,F.Abbreviated,O.Standalone);break;case"cccc":e=E(1,F.Wide,O.Standalone);break;case"ccccc":e=E(1,F.Narrow,O.Standalone);break;case"cccccc":e=E(1,F.Short,O.Standalone);break;case"E":case"EE":case"EEE":e=E(1,F.Abbreviated);break;case"EEEE":e=E(1,F.Wide);break;case"EEEEE":e=E(1,F.Narrow);break;case"EEEEEE":e=E(1,F.Short);break;case"a":case"aa":case"aaa":e=E(0,F.Abbreviated);break;case"aaaa":e=E(0,F.Wide);break;case"aaaaa":e=E(0,F.Narrow);break;case"b":case"bb":case"bbb":e=E(0,F.Abbreviated,O.Standalone,!0);break;case"bbbb":e=E(0,F.Wide,O.Standalone,!0);break;case"bbbbb":e=E(0,F.Narrow,O.Standalone,!0);break;case"B":case"BB":case"BBB":e=E(0,F.Abbreviated,O.Format,!0);break;case"BBBB":e=E(0,F.Wide,O.Format,!0);break;case"BBBBB":e=E(0,F.Narrow,O.Format,!0);break;case"h":e=_(3,1,-12);break;case"hh":e=_(3,2,-12);break;case"H":e=_(3,1);break;case"HH":e=_(3,2);break;case"m":e=_(4,1);break;case"mm":e=_(4,2);break;case"s":e=_(5,1);break;case"ss":e=_(5,2);break;case"S":e=_(6,1);break;case"SS":e=_(6,2);break;case"SSS":e=_(6,3);break;case"Z":case"ZZ":case"ZZZ":e=Et(0);break;case"ZZZZZ":e=Et(3);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":e=Et(1);break;case"OOOO":case"ZZZZ":case"zzzz":e=Et(2);break;default:return null}return Zt[n]=e,e}function On(n,e){n=n.replace(/:/g,"");const t=Date.parse("Jan 01, 1970 00:00:00 "+n)/6e4;return isNaN(t)?e:t}function Gr(n,e){return n=new Date(n.getTime()),n.setMinutes(n.getMinutes()+e),n}function Hr(n,e,t){const o=n.getTimezoneOffset(),a=On(e,o);return Gr(n,-1*(a-o))}function Yr(n){if(Bn(n))return n;if(typeof n=="number"&&!isNaN(n))return new Date(n);if(typeof n=="string"){if(n=n.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(n)){const[o,a=1,c=1]=n.split("-").map(l=>+l);return Ct(o,a-1,c)}const t=parseFloat(n);if(!isNaN(n-t))return new Date(t);let r;if(r=n.match(kr))return zr(r)}const e=new Date(n);if(!Bn(e))throw new i.ɵRuntimeError(2311,ngDevMode&&`Unable to convert "${n}" into a date`);return e}function zr(n){const e=new Date(0);let t=0,r=0;const o=n[8]?e.setUTCFullYear:e.setFullYear,a=n[8]?e.setUTCHours:e.setHours;n[9]&&(t=Number(n[9]+n[10]),r=Number(n[9]+n[11])),o.call(e,Number(n[1]),Number(n[2])-1,Number(n[3]));const c=Number(n[4]||0)-t,l=Number(n[5]||0)-r,p=Number(n[6]||0),h=Math.floor(parseFloat("0."+(n[7]||0))*1e3);return a.call(e,c,l,p,h),e}function Bn(n){return n instanceof Date&&!isNaN(n.valueOf())}const Zr=/^(\d+)?\.((\d+)(-(\d+))?)?$/,Rn=22,At=".",ut="0",Kr=";",Wr=",",Kt="#",kn="¤",Xr="%";function Wt(n,e,t,r,o,a,c=!1){let l="",p=!1;if(!isFinite(n))l=L(t,A.Infinity);else{let h=ts(n);c&&(h=es(h));let d=e.minInt,D=e.minFrac,C=e.maxFrac;if(a){const q=a.match(Zr);if(q===null)throw new i.ɵRuntimeError(2306,ngDevMode&&`${a} is not a valid digit info`);const It=q[1],lt=q[3],St=q[5];It!=null&&(d=qt(It)),lt!=null&&(D=qt(lt)),St!=null?C=qt(St):lt!=null&&D>C&&(C=D)}ns(h,D,C);let m=h.digits,I=h.integerLen;const S=h.exponent;let P=[];for(p=m.every(q=>!q);I<d;I++)m.unshift(0);for(;I<0;I++)m.unshift(0);I>0?P=m.splice(I,m.length):(P=m,m=[0]);const nt=[];for(m.length>=e.lgSize&&nt.unshift(m.splice(-e.lgSize,m.length).join(""));m.length>e.gSize;)nt.unshift(m.splice(-e.gSize,m.length).join(""));m.length&&nt.unshift(m.join("")),l=nt.join(L(t,r)),P.length&&(l+=L(t,o)+P.join("")),S&&(l+=L(t,A.Exponential)+"+"+S)}return n<0&&!p?l=e.negPre+l+e.negSuf:l=e.posPre+l+e.posSuf,l}function qr(n,e,t,r,o){const a=Ht(e,at.Currency),c=Xt(a,L(e,A.MinusSign));return c.minFrac=Rr(r),c.maxFrac=c.minFrac,Wt(n,c,e,A.CurrencyGroup,A.CurrencyDecimal,o).replace(kn,t).replace(kn,"").trim()}function Jr(n,e,t){const r=Ht(e,at.Percent),o=Xt(r,L(e,A.MinusSign));return Wt(n,o,e,A.Group,A.Decimal,t,!0).replace(new RegExp(Xr,"g"),L(e,A.PercentSign))}function Qr(n,e,t){const r=Ht(e,at.Decimal),o=Xt(r,L(e,A.MinusSign));return Wt(n,o,e,A.Group,A.Decimal,t)}function Xt(n,e="-"){const t={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},r=n.split(Kr),o=r[0],a=r[1],c=o.indexOf(At)!==-1?o.split(At):[o.substring(0,o.lastIndexOf(ut)+1),o.substring(o.lastIndexOf(ut)+1)],l=c[0],p=c[1]||"";t.posPre=l.substring(0,l.indexOf(Kt));for(let d=0;d<p.length;d++){const D=p.charAt(d);D===ut?t.minFrac=t.maxFrac=d+1:D===Kt?t.maxFrac=d+1:t.posSuf+=D}const h=l.split(Wr);if(t.gSize=h[1]?h[1].length:0,t.lgSize=h[2]||h[1]?(h[2]||h[1]).length:0,a){const d=o.length-t.posPre.length-t.posSuf.length,D=a.indexOf(Kt);t.negPre=a.substring(0,D).replace(/'/g,""),t.negSuf=a.slice(D+d).replace(/'/g,"")}else t.negPre=e+t.posPre,t.negSuf=t.posSuf;return t}function es(n){if(n.digits[0]===0)return n;const e=n.digits.length-n.integerLen;return n.exponent?n.exponent+=2:(e===0?n.digits.push(0,0):e===1&&n.digits.push(0),n.integerLen+=2),n}function ts(n){let e=Math.abs(n)+"",t=0,r,o,a,c,l;for((o=e.indexOf(At))>-1&&(e=e.replace(At,"")),(a=e.search(/e/i))>0?(o<0&&(o=a),o+=+e.slice(a+1),e=e.substring(0,a)):o<0&&(o=e.length),a=0;e.charAt(a)===ut;a++);if(a===(l=e.length))r=[0],o=1;else{for(l--;e.charAt(l)===ut;)l--;for(o-=a,r=[],c=0;a<=l;a++,c++)r[c]=Number(e.charAt(a))}return o>Rn&&(r=r.splice(0,Rn-1),t=o-1,o=1),{digits:r,exponent:t,integerLen:o}}function ns(n,e,t){if(e>t)throw new i.ɵRuntimeError(2307,ngDevMode&&`The minimum number of digits after fraction (${e}) is higher than the maximum (${t}).`);let r=n.digits,o=r.length-n.integerLen;const a=Math.min(Math.max(e,o),t);let c=a+n.integerLen,l=r[c];if(c>0){r.splice(Math.max(n.integerLen,c));for(let D=c;D<r.length;D++)r[D]=0}else{o=Math.max(0,o),n.integerLen=1,r.length=Math.max(1,c=a+1),r[0]=0;for(let D=1;D<c;D++)r[D]=0}if(l>=5)if(c-1<0){for(let D=0;D>c;D--)r.unshift(0),n.integerLen++;r.unshift(1),n.integerLen++}else r[c-1]++;for(;o<Math.max(0,a);o++)r.push(0);let p=a!==0;const h=e+n.integerLen,d=r.reduceRight(function(D,C,m,I){return C=C+D,I[m]=C<10?C:C-10,p&&(I[m]===0&&m>=h?I.pop():p=!1),C>=10?1:0},0);d&&(r.unshift(d),n.integerLen++)}function qt(n){const e=parseInt(n);if(isNaN(e))throw new i.ɵRuntimeError(2305,ngDevMode&&"Invalid integer literal when parsing "+n);return e}const $e=class $e{};u($e,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:$e,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u($e,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:$e,providedIn:"root",useFactory:()=>new ct(i.inject(i.LOCALE_ID))}));let Z=$e;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Z,decorators:[{type:i.Injectable,args:[{providedIn:"root",useFactory:()=>new ct(i.inject(i.LOCALE_ID))}]}]});function Mn(n,e,t,r){let o=`=${n}`;if(e.indexOf(o)>-1||(o=t.getPluralCategory(n,r),e.indexOf(o)>-1))return o;if(e.indexOf("other")>-1)return"other";throw new i.ɵRuntimeError(2308,ngDevMode&&`No plural message found for value "${n}"`)}const Ge=class Ge extends Z{constructor(t){super();u(this,"locale");this.locale=t}getPluralCategory(t,r){switch(Sr(r||this.locale)(t)){case Q.Zero:return"zero";case Q.One:return"one";case Q.Two:return"two";case Q.Few:return"few";case Q.Many:return"many";default:return"other"}}};u(Ge,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ge,deps:[{token:i.LOCALE_ID}],target:s.ɵɵFactoryTarget.Injectable})),u(Ge,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ge}));let ct=Ge;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ct,decorators:[{type:i.Injectable}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Inject,args:[i.LOCALE_ID]}]}]});const Jt=/\s+/,Ln=[],He=class He{constructor(e,t){u(this,"_ngEl");u(this,"_renderer");u(this,"initialClasses",Ln);u(this,"rawClass");u(this,"stateMap",new Map);this._ngEl=e,this._renderer=t}set klass(e){this.initialClasses=e!=null?e.trim().split(Jt):Ln}set ngClass(e){this.rawClass=typeof e=="string"?e.trim().split(Jt):e}ngDoCheck(){for(const t of this.initialClasses)this._updateState(t,!0);const e=this.rawClass;if(Array.isArray(e)||e instanceof Set)for(const t of e)this._updateState(t,!0);else if(e!=null)for(const t of Object.keys(e))this._updateState(t,!!e[t]);this._applyStateDiff()}_updateState(e,t){const r=this.stateMap.get(e);r!==void 0?(r.enabled!==t&&(r.changed=!0,r.enabled=t),r.touched=!0):this.stateMap.set(e,{enabled:t,changed:!0,touched:!0})}_applyStateDiff(){for(const e of this.stateMap){const t=e[0],r=e[1];r.changed?(this._toggleClass(t,r.enabled),r.changed=!1):r.touched||(r.enabled&&this._toggleClass(t,!1),this.stateMap.delete(t)),r.touched=!1}}_toggleClass(e,t){if(ngDevMode&&typeof e!="string")throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${i.ɵstringify(e)}`);e=e.trim(),e.length>0&&e.split(Jt).forEach(r=>{t?this._renderer.addClass(this._ngEl.nativeElement,r):this._renderer.removeClass(this._ngEl.nativeElement,r)})}};u(He,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:He,deps:[{token:s.ElementRef},{token:s.Renderer2}],target:s.ɵɵFactoryTarget.Directive})),u(He,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:He,isStandalone:!0,selector:"[ngClass]",inputs:{klass:["class","klass"],ngClass:"ngClass"},ngImport:s}));let De=He;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:De,decorators:[{type:i.Directive,args:[{selector:"[ngClass]"}]}],ctorParameters:()=>[{type:s.ElementRef},{type:s.Renderer2}],propDecorators:{klass:[{type:i.Input,args:["class"]}],ngClass:[{type:i.Input,args:["ngClass"]}]}});const Ye=class Ye{constructor(e){u(this,"_viewContainerRef");u(this,"ngComponentOutlet",null);u(this,"ngComponentOutletInputs");u(this,"ngComponentOutletInjector");u(this,"ngComponentOutletEnvironmentInjector");u(this,"ngComponentOutletContent");u(this,"ngComponentOutletNgModule");u(this,"_componentRef");u(this,"_moduleRef");u(this,"_inputsUsed",new Map);this._viewContainerRef=e}get componentInstance(){var e;return((e=this._componentRef)==null?void 0:e.instance)??null}_needToReCreateNgModuleInstance(e){return e.ngComponentOutletNgModule!==void 0}_needToReCreateComponentInstance(e){return e.ngComponentOutlet!==void 0||e.ngComponentOutletContent!==void 0||e.ngComponentOutletInjector!==void 0||e.ngComponentOutletEnvironmentInjector!==void 0||this._needToReCreateNgModuleInstance(e)}ngOnChanges(e){var t;if(this._needToReCreateComponentInstance(e)&&(this._viewContainerRef.clear(),this._inputsUsed.clear(),this._componentRef=void 0,this.ngComponentOutlet)){const r=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;this._needToReCreateNgModuleInstance(e)&&((t=this._moduleRef)==null||t.destroy(),this.ngComponentOutletNgModule?this._moduleRef=i.createNgModule(this.ngComponentOutletNgModule,rs(r)):this._moduleRef=void 0),this._componentRef=this._viewContainerRef.createComponent(this.ngComponentOutlet,{injector:r,ngModuleRef:this._moduleRef,projectableNodes:this.ngComponentOutletContent,environmentInjector:this.ngComponentOutletEnvironmentInjector})}}ngDoCheck(){if(this._componentRef){if(this.ngComponentOutletInputs)for(const e of Object.keys(this.ngComponentOutletInputs))this._inputsUsed.set(e,!0);this._applyInputStateDiff(this._componentRef)}}ngOnDestroy(){var e;(e=this._moduleRef)==null||e.destroy()}_applyInputStateDiff(e){for(const[t,r]of this._inputsUsed)r?(e.setInput(t,this.ngComponentOutletInputs[t]),this._inputsUsed.set(t,!1)):(e.setInput(t,void 0),this._inputsUsed.delete(t))}};u(Ye,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ye,deps:[{token:s.ViewContainerRef}],target:s.ɵɵFactoryTarget.Directive})),u(Ye,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ye,isStandalone:!0,selector:"[ngComponentOutlet]",inputs:{ngComponentOutlet:"ngComponentOutlet",ngComponentOutletInputs:"ngComponentOutletInputs",ngComponentOutletInjector:"ngComponentOutletInjector",ngComponentOutletEnvironmentInjector:"ngComponentOutletEnvironmentInjector",ngComponentOutletContent:"ngComponentOutletContent",ngComponentOutletNgModule:"ngComponentOutletNgModule"},exportAs:["ngComponentOutlet"],usesOnChanges:!0,ngImport:s}));let he=Ye;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:he,decorators:[{type:i.Directive,args:[{selector:"[ngComponentOutlet]",exportAs:"ngComponentOutlet"}]}],ctorParameters:()=>[{type:s.ViewContainerRef}],propDecorators:{ngComponentOutlet:[{type:i.Input}],ngComponentOutletInputs:[{type:i.Input}],ngComponentOutletInjector:[{type:i.Input}],ngComponentOutletEnvironmentInjector:[{type:i.Input}],ngComponentOutletContent:[{type:i.Input}],ngComponentOutletNgModule:[{type:i.Input}]}});function rs(n){return n.get(i.NgModuleRef).injector}class ss{constructor(e,t,r,o){u(this,"$implicit");u(this,"ngForOf");u(this,"index");u(this,"count");this.$implicit=e,this.ngForOf=t,this.index=r,this.count=o}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}}const ze=class ze{constructor(e,t,r){u(this,"_viewContainer");u(this,"_template");u(this,"_differs");u(this,"_ngForOf",null);u(this,"_ngForOfDirty",!0);u(this,"_differ",null);u(this,"_trackByFn");this._viewContainer=e,this._template=t,this._differs=r}set ngForOf(e){this._ngForOf=e,this._ngForOfDirty=!0}set ngForTrackBy(e){(typeof ngDevMode>"u"||ngDevMode)&&e!=null&&typeof e!="function"&&console.warn(`trackBy must be a function, but received ${JSON.stringify(e)}. See https://angular.dev/api/common/NgForOf#change-propagation for more information.`),this._trackByFn=e}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(e){e&&(this._template=e)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const e=this._ngForOf;if(!this._differ&&e)if(typeof ngDevMode>"u"||ngDevMode)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch{let t=`Cannot find a differ supporting object '${e}' of type '${os(e)}'. NgFor only supports binding to Iterables, such as Arrays.`;throw typeof e=="object"&&(t+=" Did you mean to use the keyvalue pipe?"),new i.ɵRuntimeError(-2200,t)}else this._differ=this._differs.find(e).create(this.ngForTrackBy)}if(this._differ){const e=this._differ.diff(this._ngForOf);e&&this._applyChanges(e)}}_applyChanges(e){const t=this._viewContainer;e.forEachOperation((r,o,a)=>{if(r.previousIndex==null)t.createEmbeddedView(this._template,new ss(r.item,this._ngForOf,-1,-1),a===null?void 0:a);else if(a==null)t.remove(o===null?void 0:o);else if(o!==null){const c=t.get(o);t.move(c,a),Vn(c,r)}});for(let r=0,o=t.length;r<o;r++){const c=t.get(r).context;c.index=r,c.count=o,c.ngForOf=this._ngForOf}e.forEachIdentityChange(r=>{const o=t.get(r.currentIndex);Vn(o,r)})}static ngTemplateContextGuard(e,t){return!0}};u(ze,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ze,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:s.IterableDiffers}],target:s.ɵɵFactoryTarget.Directive})),u(ze,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:ze,isStandalone:!0,selector:"[ngFor][ngForOf]",inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},ngImport:s}));let ge=ze;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ge,decorators:[{type:i.Directive,args:[{selector:"[ngFor][ngForOf]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:s.IterableDiffers}],propDecorators:{ngForOf:[{type:i.Input}],ngForTrackBy:[{type:i.Input}],ngForTemplate:[{type:i.Input}]}});function Vn(n,e){n.context.$implicit=e.item}function os(n){return n.name||typeof n}const W=class W{constructor(e,t){u(this,"_viewContainer");u(this,"_context",new is);u(this,"_thenTemplateRef",null);u(this,"_elseTemplateRef",null);u(this,"_thenViewRef",null);u(this,"_elseViewRef",null);this._viewContainer=e,this._thenTemplateRef=t}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){xn(e,(typeof ngDevMode>"u"||ngDevMode)&&"ngIfThen"),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){xn(e,(typeof ngDevMode>"u"||ngDevMode)&&"ngIfElse"),this._elseTemplateRef=e,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(e,t){return!0}};u(W,"ngIfUseIfTypeGuard"),u(W,"ngTemplateGuard_ngIf"),u(W,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:W,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef}],target:s.ɵɵFactoryTarget.Directive})),u(W,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:W,isStandalone:!0,selector:"[ngIf]",inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},ngImport:s}));let me=W;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:me,decorators:[{type:i.Directive,args:[{selector:"[ngIf]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef}],propDecorators:{ngIf:[{type:i.Input}],ngIfThen:[{type:i.Input}],ngIfElse:[{type:i.Input}]}});class is{constructor(){u(this,"$implicit",null);u(this,"ngIf",null)}}function xn(n,e){if(n&&!n.createEmbeddedView)throw new i.ɵRuntimeError(2020,(typeof ngDevMode>"u"||ngDevMode)&&`${e} must be a TemplateRef, but received '${i.ɵstringify(n)}'.`)}class Qt{constructor(e,t){u(this,"_viewContainerRef");u(this,"_templateRef");u(this,"_created",!1);this._viewContainerRef=e,this._templateRef=t}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(e){e&&!this._created?this.create():!e&&this._created&&this.destroy()}}const Ze=class Ze{constructor(){u(this,"_defaultViews",[]);u(this,"_defaultUsed",!1);u(this,"_caseCount",0);u(this,"_lastCaseCheckIndex",0);u(this,"_lastCasesMatched",!1);u(this,"_ngSwitch")}set ngSwitch(e){this._ngSwitch=e,this._caseCount===0&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(e){this._defaultViews.push(e)}_matchCase(e){const t=e===this._ngSwitch;return this._lastCasesMatched||(this._lastCasesMatched=t),this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),t}_updateDefaultCases(e){if(this._defaultViews.length>0&&e!==this._defaultUsed){this._defaultUsed=e;for(const t of this._defaultViews)t.enforceState(e)}}};u(Ze,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ze,deps:[],target:s.ɵɵFactoryTarget.Directive})),u(Ze,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ze,isStandalone:!0,selector:"[ngSwitch]",inputs:{ngSwitch:"ngSwitch"},ngImport:s}));let j=Ze;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:j,decorators:[{type:i.Directive,args:[{selector:"[ngSwitch]"}]}],propDecorators:{ngSwitch:[{type:i.Input}]}});const Ke=class Ke{constructor(e,t,r){u(this,"ngSwitch");u(this,"_view");u(this,"ngSwitchCase");this.ngSwitch=r,(typeof ngDevMode>"u"||ngDevMode)&&!r&&Pn("ngSwitchCase","NgSwitchCase"),r._addCase(),this._view=new Qt(e,t)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}};u(Ke,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ke,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:j,host:!0,optional:!0}],target:s.ɵɵFactoryTarget.Directive})),u(Ke,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ke,isStandalone:!0,selector:"[ngSwitchCase]",inputs:{ngSwitchCase:"ngSwitchCase"},ngImport:s}));let ye=Ke;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ye,decorators:[{type:i.Directive,args:[{selector:"[ngSwitchCase]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:j,decorators:[{type:i.Optional},{type:i.Host}]}],propDecorators:{ngSwitchCase:[{type:i.Input}]}});const We=class We{constructor(e,t,r){(typeof ngDevMode>"u"||ngDevMode)&&!r&&Pn("ngSwitchDefault","NgSwitchDefault"),r._addDefault(new Qt(e,t))}};u(We,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:We,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:j,host:!0,optional:!0}],target:s.ɵɵFactoryTarget.Directive})),u(We,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:We,isStandalone:!0,selector:"[ngSwitchDefault]",ngImport:s}));let Ce=We;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ce,decorators:[{type:i.Directive,args:[{selector:"[ngSwitchDefault]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:j,decorators:[{type:i.Optional},{type:i.Host}]}]});function Pn(n,e){throw new i.ɵRuntimeError(2e3,`An element with the "${n}" attribute (matching the "${e}" directive) must be located inside an element with the "ngSwitch" attribute (matching "NgSwitch" directive)`)}const Xe=class Xe{constructor(e){u(this,"_localization");u(this,"_activeView");u(this,"_caseViews",{});this._localization=e}set ngPlural(e){this._updateView(e)}addCase(e,t){this._caseViews[e]=t}_updateView(e){this._clearViews();const t=Object.keys(this._caseViews),r=Mn(e,t,this._localization);this._activateView(this._caseViews[r])}_clearViews(){this._activeView&&this._activeView.destroy()}_activateView(e){e&&(this._activeView=e,this._activeView.create())}};u(Xe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Xe,deps:[{token:Z}],target:s.ɵɵFactoryTarget.Directive})),u(Xe,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Xe,isStandalone:!0,selector:"[ngPlural]",inputs:{ngPlural:"ngPlural"},ngImport:s}));let K=Xe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:K,decorators:[{type:i.Directive,args:[{selector:"[ngPlural]"}]}],ctorParameters:()=>[{type:Z}],propDecorators:{ngPlural:[{type:i.Input}]}});const qe=class qe{constructor(e,t,r,o){u(this,"value");this.value=e;const a=!isNaN(Number(e));o.addCase(a?`=${e}`:e,new Qt(r,t))}};u(qe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:qe,deps:[{token:"ngPluralCase",attribute:!0},{token:s.TemplateRef},{token:s.ViewContainerRef},{token:K,host:!0}],target:s.ɵɵFactoryTarget.Directive})),u(qe,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:qe,isStandalone:!0,selector:"[ngPluralCase]",ngImport:s}));let Fe=qe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Fe,decorators:[{type:i.Directive,args:[{selector:"[ngPluralCase]"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Attribute,args:["ngPluralCase"]}]},{type:s.TemplateRef},{type:s.ViewContainerRef},{type:K,decorators:[{type:i.Host}]}]});const Je=class Je{constructor(e,t,r){u(this,"_ngEl");u(this,"_differs");u(this,"_renderer");u(this,"_ngStyle",null);u(this,"_differ",null);this._ngEl=e,this._differs=t,this._renderer=r}set ngStyle(e){this._ngStyle=e,!this._differ&&e&&(this._differ=this._differs.find(e).create())}ngDoCheck(){if(this._differ){const e=this._differ.diff(this._ngStyle);e&&this._applyChanges(e)}}_setStyle(e,t){const[r,o]=e.split("."),a=r.indexOf("-")===-1?void 0:i.RendererStyleFlags2.DashCase;t!=null?this._renderer.setStyle(this._ngEl.nativeElement,r,o?`${t}${o}`:t,a):this._renderer.removeStyle(this._ngEl.nativeElement,r,a)}_applyChanges(e){e.forEachRemovedItem(t=>this._setStyle(t.key,null)),e.forEachAddedItem(t=>this._setStyle(t.key,t.currentValue)),e.forEachChangedItem(t=>this._setStyle(t.key,t.currentValue))}};u(Je,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Je,deps:[{token:s.ElementRef},{token:s.KeyValueDiffers},{token:s.Renderer2}],target:s.ɵɵFactoryTarget.Directive})),u(Je,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Je,isStandalone:!0,selector:"[ngStyle]",inputs:{ngStyle:"ngStyle"},ngImport:s}));let Ee=Je;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ee,decorators:[{type:i.Directive,args:[{selector:"[ngStyle]"}]}],ctorParameters:()=>[{type:s.ElementRef},{type:s.KeyValueDiffers},{type:s.Renderer2}],propDecorators:{ngStyle:[{type:i.Input,args:["ngStyle"]}]}});const Qe=class Qe{constructor(e){u(this,"_viewContainerRef");u(this,"_viewRef",null);u(this,"ngTemplateOutletContext",null);u(this,"ngTemplateOutlet",null);u(this,"ngTemplateOutletInjector",null);u(this,"injector",i.inject(i.Injector));this._viewContainerRef=e}ngOnChanges(e){if(this._shouldRecreateView(e)){const t=this._viewContainerRef;if(this._viewRef&&t.remove(t.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}const r=this._createContextForwardProxy();this._viewRef=t.createEmbeddedView(this.ngTemplateOutlet,r,{injector:this._getInjector()})}}_getInjector(){return this.ngTemplateOutletInjector==="outlet"?this.injector:this.ngTemplateOutletInjector??void 0}_shouldRecreateView(e){return!!e.ngTemplateOutlet||!!e.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(e,t,r)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,t,r):!1,get:(e,t,r)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,t,r)}})}};u(Qe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Qe,deps:[{token:s.ViewContainerRef}],target:s.ɵɵFactoryTarget.Directive})),u(Qe,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Qe,isStandalone:!0,selector:"[ngTemplateOutlet]",inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},usesOnChanges:!0,ngImport:s}));let ve=Qe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ve,decorators:[{type:i.Directive,args:[{selector:"[ngTemplateOutlet]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef}],propDecorators:{ngTemplateOutletContext:[{type:i.Input}],ngTemplateOutlet:[{type:i.Input}],ngTemplateOutletInjector:[{type:i.Input}]}});const jn=[De,he,ge,me,ve,Ee,j,ye,Ce,K,Fe];function H(n,e){return new i.ɵRuntimeError(2100,ngDevMode&&`InvalidPipeArgument: '${e}' for pipe '${i.ɵstringify(n)}'`)}function Un(n,e){i.isSignal(e)&&console.warn(`The ${n} does not unwrap signals. Received a signal with value:`,e())}class as{createSubscription(e,t,r){return i.untracked(()=>e.subscribe({next:t,error:r}))}dispose(e){i.untracked(()=>e.unsubscribe())}}class us{createSubscription(e,t,r){return e.then(o=>t==null?void 0:t(o),o=>r==null?void 0:r(o)),{unsubscribe:()=>{t=null,r=null}}}dispose(e){e.unsubscribe()}}const cs=new us,ls=new as,te=class te{constructor(e){u(this,"_ref");u(this,"_latestValue",null);u(this,"markForCheckOnValueUpdate",!0);u(this,"_subscription",null);u(this,"_obj",null);u(this,"_strategy",null);u(this,"applicationErrorHandler",i.inject(i.ɵINTERNAL_APPLICATION_ERROR_HANDLER));this._ref=e}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(e){if(!this._obj){if(e)try{this.markForCheckOnValueUpdate=!1,this._subscribe(e)}finally{this.markForCheckOnValueUpdate=!0}return this._latestValue}return e!==this._obj?(this._dispose(),this.transform(e)):this._latestValue}_subscribe(e){this._obj=e,this._strategy=this._selectStrategy(e),this._subscription=this._strategy.createSubscription(e,t=>this._updateLatestValue(e,t),t=>this.applicationErrorHandler(t))}_selectStrategy(e){if(i.ɵisPromise(e))return cs;if(i.ɵisSubscribable(e))return ls;throw H(te,e)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(e,t){var r;e===this._obj&&(this._latestValue=t,this.markForCheckOnValueUpdate&&((r=this._ref)==null||r.markForCheck()))}};u(te,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:te,deps:[{token:s.ChangeDetectorRef}],target:s.ɵɵFactoryTarget.Pipe})),u(te,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:te,isStandalone:!0,name:"async",pure:!1}));let be=te;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:be,decorators:[{type:i.Pipe,args:[{name:"async",pure:!1}]}],ctorParameters:()=>[{type:s.ChangeDetectorRef}]});const ne=class ne{transform(e){return e==null?null:(en(ne,e),e.toLowerCase())}};u(ne,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ne,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(ne,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ne,isStandalone:!0,name:"lowercase"}));let Ae=ne;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ae,decorators:[{type:i.Pipe,args:[{name:"lowercase"}]}]});const fs=/(?:[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,re=class re{transform(e){return e==null?null:(en(re,e),e.replace(fs,t=>t[0].toUpperCase()+t.slice(1).toLowerCase()))}};u(re,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:re,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(re,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:re,isStandalone:!0,name:"titlecase"}));let _e=re;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:_e,decorators:[{type:i.Pipe,args:[{name:"titlecase"}]}]});const se=class se{transform(e){return e==null?null:(en(se,e),e.toUpperCase())}};u(se,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:se,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(se,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:se,isStandalone:!0,name:"uppercase"}));let Ie=se;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ie,decorators:[{type:i.Pipe,args:[{name:"uppercase"}]}]});function en(n,e){if(typeof e!="string")throw H(n,e)}const ds="mediumDate",Nn=new i.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"DATE_PIPE_DEFAULT_TIMEZONE":""),$n=new i.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"DATE_PIPE_DEFAULT_OPTIONS":""),oe=class oe{constructor(e,t,r){u(this,"locale");u(this,"defaultTimezone");u(this,"defaultOptions");this.locale=e,this.defaultTimezone=t,this.defaultOptions=r}transform(e,t,r,o){var a,c;if(e==null||e===""||e!==e)return null;try{const l=t??((a=this.defaultOptions)==null?void 0:a.dateFormat)??ds,p=r??((c=this.defaultOptions)==null?void 0:c.timezone)??this.defaultTimezone??void 0;return Lr(e,l,o||this.locale,p)}catch(l){throw H(oe,l.message)}}};u(oe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:oe,deps:[{token:i.LOCALE_ID},{token:Nn,optional:!0},{token:$n,optional:!0}],target:s.ɵɵFactoryTarget.Pipe})),u(oe,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:oe,isStandalone:!0,name:"date"}));let Se=oe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Se,decorators:[{type:i.Pipe,args:[{name:"date"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Inject,args:[i.LOCALE_ID]}]},{type:void 0,decorators:[{type:i.Inject,args:[Nn]},{type:i.Optional}]},{type:void 0,decorators:[{type:i.Inject,args:[$n]},{type:i.Optional}]}]});const ps=/#/g,ie=class ie{constructor(e){u(this,"_localization");this._localization=e}transform(e,t,r){if(e==null)return"";if(typeof t!="object"||t===null)throw H(ie,t);const o=Mn(e,Object.keys(t),this._localization,r);return t[o].replace(ps,e.toString())}};u(ie,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ie,deps:[{token:Z}],target:s.ɵɵFactoryTarget.Pipe})),u(ie,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ie,isStandalone:!0,name:"i18nPlural"}));let we=ie;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:we,decorators:[{type:i.Pipe,args:[{name:"i18nPlural"}]}],ctorParameters:()=>[{type:Z}]});const ae=class ae{transform(e,t){if(e==null)return"";if(typeof t!="object"||typeof e!="string")throw H(ae,t);return t.hasOwnProperty(e)?t[e]:t.hasOwnProperty("other")?t.other:""}};u(ae,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ae,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(ae,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ae,isStandalone:!0,name:"i18nSelect"}));let Te=ae;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Te,decorators:[{type:i.Pipe,args:[{name:"i18nSelect"}]}]});const et=class et{transform(e){return ngDevMode&&Un("JsonPipe",e),JSON.stringify(e,null,2)}};u(et,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:et,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(et,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:et,isStandalone:!0,name:"json",pure:!1}));let Oe=et;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Oe,decorators:[{type:i.Pipe,args:[{name:"json",pure:!1}]}]});function Ds(n,e){return{key:n,value:e}}const tt=class tt{constructor(e){u(this,"differs");u(this,"differ");u(this,"keyValues",[]);u(this,"compareFn",Gn);this.differs=e}transform(e,t=Gn){if(ngDevMode&&Un("KeyValuePipe",e),!e||!(e instanceof Map)&&typeof e!="object")return null;this.differ??(this.differ=this.differs.find(e).create());const r=this.differ.diff(e),o=t!==this.compareFn;return r&&(this.keyValues=[],r.forEachItem(a=>{this.keyValues.push(Ds(a.key,a.currentValue))})),(r||o)&&(t&&this.keyValues.sort(t),this.compareFn=t),this.keyValues}};u(tt,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:tt,deps:[{token:s.KeyValueDiffers}],target:s.ɵɵFactoryTarget.Pipe})),u(tt,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:tt,isStandalone:!0,name:"keyvalue",pure:!1}));let Be=tt;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Be,decorators:[{type:i.Pipe,args:[{name:"keyvalue",pure:!1}]}],ctorParameters:()=>[{type:s.KeyValueDiffers}]});function Gn(n,e){const t=n.key,r=e.key;if(t===r)return 0;if(t==null)return 1;if(r==null)return-1;if(typeof t=="string"&&typeof r=="string")return t<r?-1:1;if(typeof t=="number"&&typeof r=="number")return t-r;if(typeof t=="boolean"&&typeof r=="boolean")return t<r?-1:1;const o=String(t),a=String(r);return o==a?0:o<a?-1:1}const ue=class ue{constructor(e){u(this,"_locale");this._locale=e}transform(e,t,r){if(!tn(e))return null;r||(r=this._locale);try{const o=nn(e);return Qr(o,r,t)}catch(o){throw H(ue,o.message)}}};u(ue,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ue,deps:[{token:i.LOCALE_ID}],target:s.ɵɵFactoryTarget.Pipe})),u(ue,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ue,isStandalone:!0,name:"number"}));let Re=ue;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Re,decorators:[{type:i.Pipe,args:[{name:"number"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Inject,args:[i.LOCALE_ID]}]}]});const ce=class ce{constructor(e){u(this,"_locale");this._locale=e}transform(e,t,r){if(!tn(e))return null;r||(r=this._locale);try{const o=nn(e);return Jr(o,r,t)}catch(o){throw H(ce,o.message)}}};u(ce,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ce,deps:[{token:i.LOCALE_ID}],target:s.ɵɵFactoryTarget.Pipe})),u(ce,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ce,isStandalone:!0,name:"percent"}));let ke=ce;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ke,decorators:[{type:i.Pipe,args:[{name:"percent"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Inject,args:[i.LOCALE_ID]}]}]});const le=class le{constructor(e,t="USD"){u(this,"_locale");u(this,"_defaultCurrencyCode");this._locale=e,this._defaultCurrencyCode=t}transform(e,t=this._defaultCurrencyCode,r="symbol",o,a){if(!tn(e))return null;a||(a=this._locale),typeof r=="boolean"&&((typeof ngDevMode>"u"||ngDevMode)&&console.warn('Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".'),r=r?"symbol":"code");let c=t||this._defaultCurrencyCode;r!=="code"&&(r==="symbol"||r==="symbol-narrow"?c=Or(c,r==="symbol"?"wide":"narrow",a):c=r);try{const l=nn(e);return qr(l,a,c,t,o)}catch(l){throw H(le,l.message)}}};u(le,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:le,deps:[{token:i.LOCALE_ID},{token:i.DEFAULT_CURRENCY_CODE}],target:s.ɵɵFactoryTarget.Pipe})),u(le,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:le,isStandalone:!0,name:"currency"}));let Me=le;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Me,decorators:[{type:i.Pipe,args:[{name:"currency"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:i.Inject,args:[i.LOCALE_ID]}]},{type:void 0,decorators:[{type:i.Inject,args:[i.DEFAULT_CURRENCY_CODE]}]}]});function tn(n){return!(n==null||n===""||n!==n)}function nn(n){if(typeof n=="string"&&!isNaN(Number(n)-parseFloat(n)))return Number(n);if(typeof n!="number")throw new i.ɵRuntimeError(2309,ngDevMode&&`${n} is not a number`);return n}const fe=class fe{transform(e,t,r){if(e==null)return null;if(!(typeof e=="string"||Array.isArray(e)))throw H(fe,e);return e.slice(t,r)}};u(fe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:fe,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(fe,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:fe,isStandalone:!0,name:"slice",pure:!1}));let Le=fe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Le,decorators:[{type:i.Pipe,args:[{name:"slice",pure:!1}]}]});const Hn=[be,Ie,Ae,Oe,Le,Re,ke,_e,Me,Se,we,Te,Be],X=class X{};u(X,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:X,deps:[],target:s.ɵɵFactoryTarget.NgModule})),u(X,"ɵmod",s.ɵɵngDeclareNgModule({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:X,imports:[De,he,ge,me,ve,Ee,j,ye,Ce,K,Fe,be,Ie,Ae,Oe,Le,Re,ke,_e,Me,Se,we,Te,Be],exports:[De,he,ge,me,ve,Ee,j,ye,Ce,K,Fe,be,Ie,Ae,Oe,Le,Re,ke,_e,Me,Se,we,Te,Be]})),u(X,"ɵinj",s.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:X}));let _t=X;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:_t,decorators:[{type:i.NgModule,args:[{imports:[jn,Hn],exports:[jn,Hn]}]}]});var hs=Object.defineProperty,gs=Object.getOwnPropertyDescriptor,b=(n,e,t,r)=>{for(var o=r>1?void 0:r?gs(e,t):e,a=n.length-1,c;a>=0;a--)(c=n[a])&&(o=(r?c(e,t,o):c(o))||o);return r&&o&&hs(e,t,o),o};g.LivenessComponent=class{constructor(e){this.liveness=e,this.duration=60,this.containerClass="",this.videoWrapperClass="",this.videoClass="",this.timerClass="",this.challengeTextClass="",this.buttonClass="",this.retryButtonClass="",this.statusOverlayClass="",this.successMessageClass="",this.errorMessageClass="",this.instructionBoxClass="",this.onComplete=new i.EventEmitter,this.onError=new i.EventEmitter}ngOnInit(){this.liveness.init({apiUrl:this.apiUrl,duration:this.duration,smileThreshold:this.smileThreshold,blinkThreshold:this.blinkThreshold,minturnHeadThreshold:this.minturnHeadThreshold,maxturnHeadThreshold:this.maxturnHeadThreshold,onComplete:e=>this.onComplete.emit(e),onError:e=>this.onError.emit(e)})}async ngAfterViewInit(){try{const e=await navigator.mediaDevices.getUserMedia({video:{width:640,height:480,facingMode:"user"}}),t=this.webcamRef.nativeElement;t.srcObject=e,t.onloadedmetadata=()=>{t.play(),this.liveness.attach(t)}}catch{this.onError.emit({success:!1,reason:"Camera access denied"})}}ngOnDestroy(){var t,r;const e=(r=(t=this.webcamRef)==null?void 0:t.nativeElement)==null?void 0:r.srcObject;e==null||e.getTracks().forEach(o=>o.stop())}},b([i.ViewChild("webcam")],g.LivenessComponent.prototype,"webcamRef",2),b([i.Input()],g.LivenessComponent.prototype,"apiUrl",2),b([i.Input()],g.LivenessComponent.prototype,"duration",2),b([i.Input()],g.LivenessComponent.prototype,"smileThreshold",2),b([i.Input()],g.LivenessComponent.prototype,"blinkThreshold",2),b([i.Input()],g.LivenessComponent.prototype,"minturnHeadThreshold",2),b([i.Input()],g.LivenessComponent.prototype,"maxturnHeadThreshold",2),b([i.Input()],g.LivenessComponent.prototype,"containerClass",2),b([i.Input()],g.LivenessComponent.prototype,"videoWrapperClass",2),b([i.Input()],g.LivenessComponent.prototype,"videoClass",2),b([i.Input()],g.LivenessComponent.prototype,"timerClass",2),b([i.Input()],g.LivenessComponent.prototype,"challengeTextClass",2),b([i.Input()],g.LivenessComponent.prototype,"buttonClass",2),b([i.Input()],g.LivenessComponent.prototype,"retryButtonClass",2),b([i.Input()],g.LivenessComponent.prototype,"statusOverlayClass",2),b([i.Input()],g.LivenessComponent.prototype,"successMessageClass",2),b([i.Input()],g.LivenessComponent.prototype,"errorMessageClass",2),b([i.Input()],g.LivenessComponent.prototype,"instructionBoxClass",2),b([i.Output()],g.LivenessComponent.prototype,"onComplete",2),b([i.Output()],g.LivenessComponent.prototype,"onError",2),g.LivenessComponent=b([i.Component({selector:"LivenessCheck",standalone:!0,imports:[_t],templateUrl:"./liveness.component.html",styleUrls:["./liveness.component.css"]})],g.LivenessComponent),g.LivenessEngine=Tt,g.LivenessSDK=nr,g.useLiveness=ln,g.verifyLiveness=cn,Object.defineProperty(g,Symbol.toStringTag,{value:"Module"})});
|