@richard.fadiora/liveness-detection 4.2.10 → 4.2.12

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/index.cjs.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var rr=Object.defineProperty;var sr=(n,e,t)=>e in n?rr(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var u=(n,e,t)=>sr(n,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Rt=require("@mediapipe/tasks-vision"),G=require("react"),ir=require("react-webcam"),o=require("@angular/core");function or(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=or(o),kn=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 i=await fetch(`${n}/v1/verify`,{method:"POST",body:r});if(!i.ok)throw new Error("Network response was not ok");return await i.json()},ar=Object.freeze(Object.defineProperty({__proto__:null,verifyLiveness:kn},Symbol.toStringTag,{value:"Module"}));class Xt{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 i=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(i,a,c)){this.handleStepSuccess();return}}catch(i){console.error("[LivenessEngine] Loop detection error:",i)}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 Rt.FilesetResolver.forVisionTasks("https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.3/wasm");this.models.face=await Rt.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 Rt.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 i,a;if(this.isStepTransitioningRef)return!1;if(r==="Thumbs_Up"&&((i=t==null?void 0:t.landmarks)==null?void 0:i.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 i="";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]),f=await new Promise(D=>h.toBlob(D,"image/jpeg",.9));f&&r.push(f),l===4&&(i=h.toDataURL("image/jpeg"))}await new Promise(h=>setTimeout(h,100))}const{verifyLiveness:a}=await Promise.resolve().then(()=>ar),c=await a(this.config.apiUrl,r,this.state.sequence);if(c.is_live)this.updateState({status:"success"}),this.config.onComplete({success:!0,image:i,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"),i=t.map(g=>g.x*e.videoWidth),a=t.map(g=>g.y*e.videoHeight),c=Math.min(...i),l=Math.max(...i),p=Math.min(...a),h=Math.max(...a),f=l-c,D=h-p,y=f*.3;return r.clearRect(0,0,224,224),r.drawImage(e,c-y,p-y,f+y*2,D+y*2,0,0,224,224),this.offscreenCanvas}}const Mn=n=>{const[e,t]=G.useState({status:"loading",sequence:[],currentStep:0,timeLeft:n.duration||60,isStepTransitioning:!1,errorMsg:""}),r=G.useRef(null),i=G.useRef(null);G.useEffect(()=>{const l=new Xt({...n,onStateChange:p=>t({...p})});return r.current=l,l.loadModels(),()=>l.stop()},[]),G.useEffect(()=>{var l,p;if(e.status!=="loading"&&e.status!=="error"){const h=(l=i.current)==null?void 0:l.video;if(h&&h.readyState>=2)(p=r.current)==null||p.attachVideo(h);else{const f=setInterval(()=>{var y,g;const D=(y=i.current)==null?void 0:y.video;D&&D.readyState>=2&&((g=r.current)==null||g.attachVideo(D),clearInterval(f))},100);return()=>clearInterval(f)}}},[e.status]);const a=G.useCallback(()=>{var l;console.log("[Hook] Start Clicked"),(l=r.current)==null||l.start()},[]),c=G.useCallback(()=>{var l;console.log("[Hook] Reset Clicked"),(l=r.current)==null||l.reset()},[]);return{...e,webcamRef:i,start:a,reset:c}};var Nt={exports:{}},rt={};/**
1
+ "use strict";var rr=Object.defineProperty;var sr=(n,e,t)=>e in n?rr(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var u=(n,e,t)=>sr(n,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Rt=require("@mediapipe/tasks-vision"),G=require("react"),ir=require("react-webcam"),o=require("@angular/core");function or(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=or(o),kn=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 i=await fetch(`${n}/v1/verify`,{method:"POST",body:r});if(!i.ok)throw new Error("Network response was not ok");return await i.json()},ar=Object.freeze(Object.defineProperty({__proto__:null,verifyLiveness:kn},Symbol.toStringTag,{value:"Module"}));class Xt{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 i=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(i,a,c)){this.handleStepSuccess();return}}catch(i){console.error("[LivenessEngine] Loop detection error:",i)}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 Rt.FilesetResolver.forVisionTasks("https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.3/wasm");this.models.face=await Rt.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 Rt.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 i,a;if(this.isStepTransitioningRef)return!1;if(r==="Thumbs_Up"&&((i=t==null?void 0:t.landmarks)==null?void 0:i.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 i="";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&&(i=h.toDataURL("image/jpeg"))}await new Promise(h=>setTimeout(h,100))}const{verifyLiveness:a}=await Promise.resolve().then(()=>ar),c=await a(this.config.apiUrl,r,this.state.sequence);if(c.is_live)this.updateState({status:"success"}),this.config.onComplete({success:!0,image:i,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"),i=t.map(g=>g.x*e.videoWidth),a=t.map(g=>g.y*e.videoHeight),c=Math.min(...i),l=Math.max(...i),p=Math.min(...a),h=Math.max(...a),d=l-c,D=h-p,y=d*.3;return r.clearRect(0,0,224,224),r.drawImage(e,c-y,p-y,d+y*2,D+y*2,0,0,224,224),this.offscreenCanvas}}const Mn=n=>{const[e,t]=G.useState({status:"loading",sequence:[],currentStep:0,timeLeft:n.duration||60,isStepTransitioning:!1,errorMsg:""}),r=G.useRef(null),i=G.useRef(null);G.useEffect(()=>{const l=new Xt({...n,onStateChange:p=>t({...p})});return r.current=l,l.loadModels(),()=>l.stop()},[]),G.useEffect(()=>{var l,p;if(e.status!=="loading"&&e.status!=="error"){const h=(l=i.current)==null?void 0:l.video;if(h&&h.readyState>=2)(p=r.current)==null||p.attachVideo(h);else{const d=setInterval(()=>{var y,g;const D=(y=i.current)==null?void 0:y.video;D&&D.readyState>=2&&((g=r.current)==null||g.attachVideo(D),clearInterval(d))},100);return()=>clearInterval(d)}}},[e.status]);const a=G.useCallback(()=>{var l;console.log("[Hook] Start Clicked"),(l=r.current)==null||l.start()},[]),c=G.useCallback(()=>{var l;console.log("[Hook] Reset Clicked"),(l=r.current)==null||l.reset()},[]);return{...e,webcamRef:i,start:a,reset:c}};var Nt={exports:{}},rt={};/**
2
2
  * @license React
3
3
  * react-jsx-runtime.production.js
4
4
  *
@@ -14,14 +14,14 @@
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 hn;function cr(){return hn||(hn=1,process.env.NODE_ENV!=="production"&&function(){function n(d){if(d==null)return null;if(typeof d=="function")return d.$$typeof===er?null:d.displayName||d.name||null;if(typeof d=="string")return d;switch(d){case M:return"Fragment";case $:return"Profiler";case le:return"StrictMode";case Wn:return"Suspense";case Xn:return"SuspenseList";case Qn:return"Activity"}if(typeof d=="object")switch(typeof d.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),d.$$typeof){case I:return"Portal";case nt:return d.displayName||"Context";case lt:return(d._context.displayName||"Context")+".Consumer";case dt:var m=d.render;return d=d.displayName,d||(d=m.displayName||m.name||"",d=d!==""?"ForwardRef("+d+")":"ForwardRef"),d;case Jn:return m=d.displayName||null,m!==null?m:n(d.type)||"Memo";case St:m=d._payload,d=d._init;try{return n(d(m))}catch{}}return null}function e(d){return""+d}function t(d){try{e(d);var m=!1}catch{m=!0}if(m){m=console;var E=m.error,S=typeof Symbol=="function"&&Symbol.toStringTag&&d[Symbol.toStringTag]||d.constructor.name||"Object";return E.call(m,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",S),e(d)}}function r(d){if(d===M)return"<>";if(typeof d=="object"&&d!==null&&d.$$typeof===St)return"<...>";try{var m=n(d);return m?"<"+m+">":"<...>"}catch{return"<...>"}}function i(){var d=wt.A;return d===null?null:d.getOwner()}function a(){return Error("react-stack-top-frame")}function c(d){if(un.call(d,"key")){var m=Object.getOwnPropertyDescriptor(d,"key").get;if(m&&m.isReactWarning)return!1}return d.key!==void 0}function l(d,m){function E(){cn||(cn=!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)",m))}E.isReactWarning=!0,Object.defineProperty(d,"key",{get:E,configurable:!0})}function p(){var d=n(this.type);return ln[d]||(ln[d]=!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.")),d=this.props.ref,d!==void 0?d:null}function h(d,m,E,S,ft,Ot){var w=E.ref;return d={$$typeof:b,type:d,key:m,props:E,_owner:S},(w!==void 0?w:null)!==null?Object.defineProperty(d,"ref",{enumerable:!1,get:p}):Object.defineProperty(d,"ref",{enumerable:!1,value:null}),d._store={},Object.defineProperty(d._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(d,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(d,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:ft}),Object.defineProperty(d,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:Ot}),Object.freeze&&(Object.freeze(d.props),Object.freeze(d)),d}function f(d,m,E,S,ft,Ot){var w=m.children;if(w!==void 0)if(S)if(tr(w)){for(S=0;S<w.length;S++)D(w[S]);Object.freeze&&Object.freeze(w)}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(w);if(un.call(m,"key")){w=n(d);var de=Object.keys(m).filter(function(nr){return nr!=="key"});S=0<de.length?"{key: someKey, "+de.join(": ..., ")+": ...}":"{key: someKey}",pn[w+S]||(de=0<de.length?"{"+de.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var hn;function cr(){return hn||(hn=1,process.env.NODE_ENV!=="production"&&function(){function n(f){if(f==null)return null;if(typeof f=="function")return f.$$typeof===er?null:f.displayName||f.name||null;if(typeof f=="string")return f;switch(f){case M:return"Fragment";case $:return"Profiler";case le:return"StrictMode";case Wn:return"Suspense";case Xn:return"SuspenseList";case Qn: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 I:return"Portal";case nt:return f.displayName||"Context";case ct:return(f._context.displayName||"Context")+".Consumer";case lt:var m=f.render;return f=f.displayName,f||(f=m.displayName||m.name||"",f=f!==""?"ForwardRef("+f+")":"ForwardRef"),f;case Jn:return m=f.displayName||null,m!==null?m:n(f.type)||"Memo";case St:m=f._payload,f=f._init;try{return n(f(m))}catch{}}return null}function e(f){return""+f}function t(f){try{e(f);var m=!1}catch{m=!0}if(m){m=console;var E=m.error,S=typeof Symbol=="function"&&Symbol.toStringTag&&f[Symbol.toStringTag]||f.constructor.name||"Object";return E.call(m,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",S),e(f)}}function r(f){if(f===M)return"<>";if(typeof f=="object"&&f!==null&&f.$$typeof===St)return"<...>";try{var m=n(f);return m?"<"+m+">":"<...>"}catch{return"<...>"}}function i(){var f=wt.A;return f===null?null:f.getOwner()}function a(){return Error("react-stack-top-frame")}function c(f){if(un.call(f,"key")){var m=Object.getOwnPropertyDescriptor(f,"key").get;if(m&&m.isReactWarning)return!1}return f.key!==void 0}function l(f,m){function E(){cn||(cn=!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)",m))}E.isReactWarning=!0,Object.defineProperty(f,"key",{get:E,configurable:!0})}function p(){var f=n(this.type);return ln[f]||(ln[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,m,E,S,ft,Ot){var w=E.ref;return f={$$typeof:b,type:f,key:m,props:E,_owner:S},(w!==void 0?w: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:ft}),Object.defineProperty(f,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:Ot}),Object.freeze&&(Object.freeze(f.props),Object.freeze(f)),f}function d(f,m,E,S,ft,Ot){var w=m.children;if(w!==void 0)if(S)if(tr(w)){for(S=0;S<w.length;S++)D(w[S]);Object.freeze&&Object.freeze(w)}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(w);if(un.call(m,"key")){w=n(f);var fe=Object.keys(m).filter(function(nr){return nr!=="key"});S=0<fe.length?"{key: someKey, "+fe.join(": ..., ")+": ...}":"{key: someKey}",pn[w+S]||(fe=0<fe.length?"{"+fe.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} />`,S,w,de,w),pn[w+S]=!0)}if(w=null,E!==void 0&&(t(E),w=""+E),c(m)&&(t(m.key),w=""+m.key),"key"in m){E={};for(var Bt in m)Bt!=="key"&&(E[Bt]=m[Bt])}else E=m;return w&&l(E,typeof d=="function"?d.displayName||d.name||"Unknown":d),h(d,w,E,i(),ft,Ot)}function D(d){y(d)?d._store&&(d._store.validated=1):typeof d=="object"&&d!==null&&d.$$typeof===St&&(d._payload.status==="fulfilled"?y(d._payload.value)&&d._payload.value._store&&(d._payload.value._store.validated=1):d._store&&(d._store.validated=1))}function y(d){return typeof d=="object"&&d!==null&&d.$$typeof===b}var g=G,b=Symbol.for("react.transitional.element"),I=Symbol.for("react.portal"),M=Symbol.for("react.fragment"),le=Symbol.for("react.strict_mode"),$=Symbol.for("react.profiler"),lt=Symbol.for("react.consumer"),nt=Symbol.for("react.context"),dt=Symbol.for("react.forward_ref"),Wn=Symbol.for("react.suspense"),Xn=Symbol.for("react.suspense_list"),Jn=Symbol.for("react.memo"),St=Symbol.for("react.lazy"),Qn=Symbol.for("react.activity"),er=Symbol.for("react.client.reference"),wt=g.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,un=Object.prototype.hasOwnProperty,tr=Array.isArray,Tt=console.createTask?console.createTask:function(){return null};g={react_stack_bottom_frame:function(d){return d()}};var cn,ln={},dn=g.react_stack_bottom_frame.bind(g,a)(),fn=Tt(r(a)),pn={};st.Fragment=M,st.jsx=function(d,m,E){var S=1e4>wt.recentlyCreatedOwnerStacks++;return f(d,m,E,!1,S?Error("react-stack-top-frame"):dn,S?Tt(r(d)):fn)},st.jsxs=function(d,m,E){var S=1e4>wt.recentlyCreatedOwnerStacks++;return f(d,m,E,!0,S?Error("react-stack-top-frame"):dn,S?Tt(r(d)):fn)}}()),st}process.env.NODE_ENV==="production"?Nt.exports=ur():Nt.exports=cr();var B=Nt.exports;const lr=({apiUrl:n,duration:e,onComplete:t,onError:r,classNames:i={},render:a,smileThreshold:c,blinkThreshold:l,minturnHeadThreshold:p,maxturnHeadThreshold:h})=>{var D;const f=Mn({apiUrl:n,duration:e,smileThreshold:c,blinkThreshold:l,minturnHeadThreshold:p,maxturnHeadThreshold:h,onComplete:t,onError:r});return a?a(f):B.jsxs("div",{className:i.container,children:[f.status==="loading"&&B.jsx("div",{children:"Initializing..."}),["ready","capturing","verifying"].includes(f.status)&&B.jsxs(B.Fragment,{children:[B.jsx(ir,{ref:f.webcamRef,mirrored:!0,screenshotFormat:"image/jpeg",className:i.webcam}),f.status==="capturing"&&B.jsx("div",{className:"liveness-challenge",children:f.isStepTransitioning?"Step verified! Get ready for the next...":`Do this: ${(D=f.sequence[f.currentStep])==null?void 0:D.replace("_"," ")}`}),["capturing","ready"].includes(f.status)&&B.jsxs("div",{className:i.timer,children:[f.timeLeft,"s"]}),f.status==="ready"&&B.jsx("button",{onClick:f.start,className:i.button,children:"Start Challenge"}),f.status==="verifying"&&B.jsx("div",{children:"Analyzing..."})]}),f.status==="error"&&B.jsxs("div",{className:i.error,children:[f.errorMsg,B.jsx("button",{onClick:f.reset,className:i.button,children:"Retry"})]}),f.status==="success"&&B.jsx("div",{className:i.success,children:"Verification Complete"})]})};var $t=function(n,e){return $t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,r){t.__proto__=r}||function(t,r){for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(t[i]=r[i])},$t(n,e)};function ct(n,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");$t(n,e);function t(){this.constructor=n}n.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function Gt(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 Ht(n,e){var t=typeof Symbol=="function"&&n[Symbol.iterator];if(!t)return n;var r=t.call(n),i,a=[],c;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)a.push(i.value)}catch(l){c={error:l}}finally{try{i&&!i.done&&(t=r.return)&&t.call(r)}finally{if(c)throw c.error}}return a}function Yt(n,e,t){if(t||arguments.length===2)for(var r=0,i=e.length,a;r<i;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))}function U(n){return typeof n=="function"}function Ln(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 kt=Ln(function(n){return function(t){n(this),this.message=t?t.length+` errors occurred during unsubscription:
22
+ <%s key={someKey} {...props} />`,S,w,fe,w),pn[w+S]=!0)}if(w=null,E!==void 0&&(t(E),w=""+E),c(m)&&(t(m.key),w=""+m.key),"key"in m){E={};for(var Bt in m)Bt!=="key"&&(E[Bt]=m[Bt])}else E=m;return w&&l(E,typeof f=="function"?f.displayName||f.name||"Unknown":f),h(f,w,E,i(),ft,Ot)}function D(f){y(f)?f._store&&(f._store.validated=1):typeof f=="object"&&f!==null&&f.$$typeof===St&&(f._payload.status==="fulfilled"?y(f._payload.value)&&f._payload.value._store&&(f._payload.value._store.validated=1):f._store&&(f._store.validated=1))}function y(f){return typeof f=="object"&&f!==null&&f.$$typeof===b}var g=G,b=Symbol.for("react.transitional.element"),I=Symbol.for("react.portal"),M=Symbol.for("react.fragment"),le=Symbol.for("react.strict_mode"),$=Symbol.for("react.profiler"),ct=Symbol.for("react.consumer"),nt=Symbol.for("react.context"),lt=Symbol.for("react.forward_ref"),Wn=Symbol.for("react.suspense"),Xn=Symbol.for("react.suspense_list"),Jn=Symbol.for("react.memo"),St=Symbol.for("react.lazy"),Qn=Symbol.for("react.activity"),er=Symbol.for("react.client.reference"),wt=g.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,un=Object.prototype.hasOwnProperty,tr=Array.isArray,Tt=console.createTask?console.createTask:function(){return null};g={react_stack_bottom_frame:function(f){return f()}};var cn,ln={},fn=g.react_stack_bottom_frame.bind(g,a)(),dn=Tt(r(a)),pn={};st.Fragment=M,st.jsx=function(f,m,E){var S=1e4>wt.recentlyCreatedOwnerStacks++;return d(f,m,E,!1,S?Error("react-stack-top-frame"):fn,S?Tt(r(f)):dn)},st.jsxs=function(f,m,E){var S=1e4>wt.recentlyCreatedOwnerStacks++;return d(f,m,E,!0,S?Error("react-stack-top-frame"):fn,S?Tt(r(f)):dn)}}()),st}process.env.NODE_ENV==="production"?Nt.exports=ur():Nt.exports=cr();var B=Nt.exports;const lr=({apiUrl:n,duration:e,onComplete:t,onError:r,classNames:i={},render:a,smileThreshold:c,blinkThreshold:l,minturnHeadThreshold:p,maxturnHeadThreshold:h})=>{var D;const d=Mn({apiUrl:n,duration:e,smileThreshold:c,blinkThreshold:l,minturnHeadThreshold:p,maxturnHeadThreshold:h,onComplete:t,onError:r});return a?a(d):B.jsxs("div",{className:i.container,children:[d.status==="loading"&&B.jsx("div",{children:"Initializing..."}),["ready","capturing","verifying"].includes(d.status)&&B.jsxs(B.Fragment,{children:[B.jsx(ir,{ref:d.webcamRef,mirrored:!0,screenshotFormat:"image/jpeg",className:i.webcam}),d.status==="capturing"&&B.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)&&B.jsxs("div",{className:i.timer,children:[d.timeLeft,"s"]}),d.status==="ready"&&B.jsx("button",{onClick:d.start,className:i.button,children:"Start Challenge"}),d.status==="verifying"&&B.jsx("div",{children:"Analyzing..."})]}),d.status==="error"&&B.jsxs("div",{className:i.error,children:[d.errorMsg,B.jsx("button",{onClick:d.reset,className:i.button,children:"Retry"})]}),d.status==="success"&&B.jsx("div",{className:i.success,children:"Verification Complete"})]})};var $t=function(n,e){return $t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,r){t.__proto__=r}||function(t,r){for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(t[i]=r[i])},$t(n,e)};function ut(n,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");$t(n,e);function t(){this.constructor=n}n.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function Gt(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 Ht(n,e){var t=typeof Symbol=="function"&&n[Symbol.iterator];if(!t)return n;var r=t.call(n),i,a=[],c;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)a.push(i.value)}catch(l){c={error:l}}finally{try{i&&!i.done&&(t=r.return)&&t.call(r)}finally{if(c)throw c.error}}return a}function Yt(n,e,t){if(t||arguments.length===2)for(var r=0,i=e.length,a;r<i;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))}function U(n){return typeof n=="function"}function Ln(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 kt=Ln(function(n){return function(t){n(this),this.message=t?t.length+` errors occurred during unsubscription:
23
23
  `+t.map(function(r,i){return i+1+") "+r.toString()}).join(`
24
- `):"",this.name="UnsubscriptionError",this.errors=t}});function zt(n,e){if(n){var t=n.indexOf(e);0<=t&&n.splice(t,1)}}var _t=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,i,a;if(!this.closed){this.closed=!0;var c=this._parentage;if(c)if(this._parentage=null,Array.isArray(c))try{for(var l=Gt(c),p=l.next();!p.done;p=l.next()){var h=p.value;h.remove(this)}}catch(I){e={error:I}}finally{try{p&&!p.done&&(t=l.return)&&t.call(l)}finally{if(e)throw e.error}}else c.remove(this);var f=this.initialTeardown;if(U(f))try{f()}catch(I){a=I instanceof kt?I.errors:[I]}var D=this._finalizers;if(D){this._finalizers=null;try{for(var y=Gt(D),g=y.next();!g.done;g=y.next()){var b=g.value;try{gn(b)}catch(I){a=a??[],I instanceof kt?a=Yt(Yt([],Ht(a)),Ht(I.errors)):a.push(I)}}}catch(I){r={error:I}}finally{try{g&&!g.done&&(i=y.return)&&i.call(y)}finally{if(r)throw r.error}}}if(a)throw new kt(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)&&zt(t,e)},n.prototype.remove=function(e){var t=this._finalizers;t&&zt(t,e),e instanceof n&&e._removeParent(this)},n.EMPTY=function(){var e=new n;return e.closed=!0,e}(),n}(),xn=_t.EMPTY;function Vn(n){return n instanceof _t||n&&"closed"in n&&U(n.remove)&&U(n.add)&&U(n.unsubscribe)}function gn(n){U(n)?n():n.unsubscribe()}var dr={Promise:void 0},fr={setTimeout:function(n,e){for(var t=[],r=2;r<arguments.length;r++)t[r-2]=arguments[r];return setTimeout.apply(void 0,Yt([n,e],Ht(t)))},clearTimeout:function(n){return clearTimeout(n)},delegate:void 0};function pr(n){fr.setTimeout(function(){throw n})}function mn(){}function Ft(n){n()}var Pn=function(n){ct(e,n);function e(t){var r=n.call(this)||this;return r.isStopped=!1,t?(r.destination=t,Vn(t)&&t.add(r)):r.destination=gr,r}return e.create=function(t,r,i){return new Zt(t,r,i)},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}(_t),Dr=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}(),Zt=function(n){ct(e,n);function e(t,r,i){var a=n.call(this)||this,c;return U(t)||!t?c={next:t??void 0,error:r??void 0,complete:i??void 0}:c=t,a.destination=new Dr(c),a}return e}(Pn);function pt(n){pr(n)}function hr(n){throw n}var gr={closed:!0,next:mn,error:hr,complete:mn},mr=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}();function yr(n){return n}function Cr(n){return n.length===0?yr:n.length===1?n[0]:function(t){return n.reduce(function(r,i){return i(r)},t)}}var yn=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 i=this,a=Er(e)?e:new Zt(e,t,r);return Ft(function(){var c=i,l=c.operator,p=c.source;a.add(l?l.call(a,p):p?i._subscribe(a):i._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=Cn(t),new t(function(i,a){var c=new Zt({next:function(l){try{e(l)}catch(p){a(p),c.unsubscribe()}},error:a,complete:i});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[mr]=function(){return this},n.prototype.pipe=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return Cr(e)(this)},n.prototype.toPromise=function(e){var t=this;return e=Cn(e),new e(function(r,i){var a;t.subscribe(function(c){return a=c},function(c){return i(c)},function(){return r(a)})})},n.create=function(e){return new n(e)},n}();function Cn(n){var e;return(e=n??dr.Promise)!==null&&e!==void 0?e:Promise}function Fr(n){return n&&U(n.next)&&U(n.error)&&U(n.complete)}function Er(n){return n&&n instanceof Pn||Fr(n)&&Vn(n)}var vr=Ln(function(n){return function(){n(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),Jt=function(n){ct(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 Fn(this,this);return r.operator=t,r},e.prototype._throwIfClosed=function(){if(this.closed)throw new vr},e.prototype.next=function(t){var r=this;Ft(function(){var i,a;if(r._throwIfClosed(),!r.isStopped){r.currentObservers||(r.currentObservers=Array.from(r.observers));try{for(var c=Gt(r.currentObservers),l=c.next();!l.done;l=c.next()){var p=l.value;p.next(t)}}catch(h){i={error:h}}finally{try{l&&!l.done&&(a=c.return)&&a.call(c)}finally{if(i)throw i.error}}}})},e.prototype.error=function(t){var r=this;Ft(function(){if(r._throwIfClosed(),!r.isStopped){r.hasError=r.isStopped=!0,r.thrownError=t;for(var i=r.observers;i.length;)i.shift().error(t)}})},e.prototype.complete=function(){var t=this;Ft(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,i=this,a=i.hasError,c=i.isStopped,l=i.observers;return a||c?xn:(this.currentObservers=null,l.push(t),new _t(function(){r.currentObservers=null,zt(l,t)}))},e.prototype._checkFinalizedStatuses=function(t){var r=this,i=r.hasError,a=r.thrownError,c=r.isStopped;i?t.error(a):c&&t.complete()},e.prototype.asObservable=function(){var t=new yn;return t.source=this,t},e.create=function(t,r){return new Fn(t,r)},e}(yn),Fn=function(n){ct(e,n);function e(t,r){var i=n.call(this)||this;return i.destination=t,i.source=r,i}return e.prototype.next=function(t){var r,i;(i=(r=this.destination)===null||r===void 0?void 0:r.next)===null||i===void 0||i.call(r,t)},e.prototype.error=function(t){var r,i;(i=(r=this.destination)===null||r===void 0?void 0:r.error)===null||i===void 0||i.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,i;return(i=(r=this.source)===null||r===void 0?void 0:r.subscribe(t))!==null&&i!==void 0?i:xn},e}(Jt),br=function(n){ct(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,i=t.thrownError,a=t._value;if(r)throw i;return this._throwIfClosed(),a},e.prototype.next=function(t){n.prototype.next.call(this,this._value=t)},e}(Jt),Ar=Object.getOwnPropertyDescriptor,_r=(n,e,t,r)=>{for(var i=r>1?void 0:r?Ar(e,t):e,a=n.length-1,c;a>=0;a--)(c=n[a])&&(i=c(i)||i);return i};exports.LivenessService=class{constructor(e){this.ngZone=e,this.stateSubject=new br(null),this.state$=this.stateSubject.asObservable()}init(e){this.ngZone.runOutsideAngular(()=>{this.engine=new Xt({...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()}};exports.LivenessService=_r([o.Injectable({providedIn:"root"})],exports.LivenessService);/**
24
+ `):"",this.name="UnsubscriptionError",this.errors=t}});function zt(n,e){if(n){var t=n.indexOf(e);0<=t&&n.splice(t,1)}}var _t=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,i,a;if(!this.closed){this.closed=!0;var c=this._parentage;if(c)if(this._parentage=null,Array.isArray(c))try{for(var l=Gt(c),p=l.next();!p.done;p=l.next()){var h=p.value;h.remove(this)}}catch(I){e={error:I}}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(U(d))try{d()}catch(I){a=I instanceof kt?I.errors:[I]}var D=this._finalizers;if(D){this._finalizers=null;try{for(var y=Gt(D),g=y.next();!g.done;g=y.next()){var b=g.value;try{gn(b)}catch(I){a=a??[],I instanceof kt?a=Yt(Yt([],Ht(a)),Ht(I.errors)):a.push(I)}}}catch(I){r={error:I}}finally{try{g&&!g.done&&(i=y.return)&&i.call(y)}finally{if(r)throw r.error}}}if(a)throw new kt(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)&&zt(t,e)},n.prototype.remove=function(e){var t=this._finalizers;t&&zt(t,e),e instanceof n&&e._removeParent(this)},n.EMPTY=function(){var e=new n;return e.closed=!0,e}(),n}(),xn=_t.EMPTY;function Vn(n){return n instanceof _t||n&&"closed"in n&&U(n.remove)&&U(n.add)&&U(n.unsubscribe)}function gn(n){U(n)?n():n.unsubscribe()}var fr={Promise:void 0},dr={setTimeout:function(n,e){for(var t=[],r=2;r<arguments.length;r++)t[r-2]=arguments[r];return setTimeout.apply(void 0,Yt([n,e],Ht(t)))},clearTimeout:function(n){return clearTimeout(n)},delegate:void 0};function pr(n){dr.setTimeout(function(){throw n})}function mn(){}function Ct(n){n()}var Pn=function(n){ut(e,n);function e(t){var r=n.call(this)||this;return r.isStopped=!1,t?(r.destination=t,Vn(t)&&t.add(r)):r.destination=gr,r}return e.create=function(t,r,i){return new Zt(t,r,i)},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}(_t),Dr=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){dt(r)}},n.prototype.error=function(e){var t=this.partialObserver;if(t.error)try{t.error(e)}catch(r){dt(r)}else dt(e)},n.prototype.complete=function(){var e=this.partialObserver;if(e.complete)try{e.complete()}catch(t){dt(t)}},n}(),Zt=function(n){ut(e,n);function e(t,r,i){var a=n.call(this)||this,c;return U(t)||!t?c={next:t??void 0,error:r??void 0,complete:i??void 0}:c=t,a.destination=new Dr(c),a}return e}(Pn);function dt(n){pr(n)}function hr(n){throw n}var gr={closed:!0,next:mn,error:hr,complete:mn},mr=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}();function yr(n){return n}function Cr(n){return n.length===0?yr:n.length===1?n[0]:function(t){return n.reduce(function(r,i){return i(r)},t)}}var yn=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 i=this,a=Er(e)?e:new Zt(e,t,r);return Ct(function(){var c=i,l=c.operator,p=c.source;a.add(l?l.call(a,p):p?i._subscribe(a):i._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=Cn(t),new t(function(i,a){var c=new Zt({next:function(l){try{e(l)}catch(p){a(p),c.unsubscribe()}},error:a,complete:i});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[mr]=function(){return this},n.prototype.pipe=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return Cr(e)(this)},n.prototype.toPromise=function(e){var t=this;return e=Cn(e),new e(function(r,i){var a;t.subscribe(function(c){return a=c},function(c){return i(c)},function(){return r(a)})})},n.create=function(e){return new n(e)},n}();function Cn(n){var e;return(e=n??fr.Promise)!==null&&e!==void 0?e:Promise}function Fr(n){return n&&U(n.next)&&U(n.error)&&U(n.complete)}function Er(n){return n&&n instanceof Pn||Fr(n)&&Vn(n)}var vr=Ln(function(n){return function(){n(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),Jt=function(n){ut(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 Fn(this,this);return r.operator=t,r},e.prototype._throwIfClosed=function(){if(this.closed)throw new vr},e.prototype.next=function(t){var r=this;Ct(function(){var i,a;if(r._throwIfClosed(),!r.isStopped){r.currentObservers||(r.currentObservers=Array.from(r.observers));try{for(var c=Gt(r.currentObservers),l=c.next();!l.done;l=c.next()){var p=l.value;p.next(t)}}catch(h){i={error:h}}finally{try{l&&!l.done&&(a=c.return)&&a.call(c)}finally{if(i)throw i.error}}}})},e.prototype.error=function(t){var r=this;Ct(function(){if(r._throwIfClosed(),!r.isStopped){r.hasError=r.isStopped=!0,r.thrownError=t;for(var i=r.observers;i.length;)i.shift().error(t)}})},e.prototype.complete=function(){var t=this;Ct(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,i=this,a=i.hasError,c=i.isStopped,l=i.observers;return a||c?xn:(this.currentObservers=null,l.push(t),new _t(function(){r.currentObservers=null,zt(l,t)}))},e.prototype._checkFinalizedStatuses=function(t){var r=this,i=r.hasError,a=r.thrownError,c=r.isStopped;i?t.error(a):c&&t.complete()},e.prototype.asObservable=function(){var t=new yn;return t.source=this,t},e.create=function(t,r){return new Fn(t,r)},e}(yn),Fn=function(n){ut(e,n);function e(t,r){var i=n.call(this)||this;return i.destination=t,i.source=r,i}return e.prototype.next=function(t){var r,i;(i=(r=this.destination)===null||r===void 0?void 0:r.next)===null||i===void 0||i.call(r,t)},e.prototype.error=function(t){var r,i;(i=(r=this.destination)===null||r===void 0?void 0:r.error)===null||i===void 0||i.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,i;return(i=(r=this.source)===null||r===void 0?void 0:r.subscribe(t))!==null&&i!==void 0?i:xn},e}(Jt),br=function(n){ut(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,i=t.thrownError,a=t._value;if(r)throw i;return this._throwIfClosed(),a},e.prototype.next=function(t){n.prototype.next.call(this,this._value=t)},e}(Jt),Ar=Object.getOwnPropertyDescriptor,_r=(n,e,t,r)=>{for(var i=r>1?void 0:r?Ar(e,t):e,a=n.length-1,c;a>=0;a--)(c=n[a])&&(i=c(i)||i);return i};exports.LivenessService=class{constructor(e){this.ngZone=e,this.stateSubject=new br(null),this.state$=this.stateSubject.asObservable()}init(e){this.ngZone.runOutsideAngular(()=>{this.engine=new Xt({...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()}};exports.LivenessService=_r([o.Injectable({providedIn:"root"})],exports.LivenessService);/**
25
25
  * @license Angular v21.2.3
26
26
  * (c) 2010-2026 Google LLC. https://angular.dev/
27
27
  * License: MIT
@@ -29,8 +29,8 @@ React keys must be passed directly to JSX without using spread:
29
29
  * @license Angular v21.2.3
30
30
  * (c) 2010-2026 Google LLC. https://angular.dev/
31
31
  * License: MIT
32
- */function Qt(n,e){return n?e?n.endsWith("/")?e.startsWith("/")?n+e.slice(1):n+e:e.startsWith("/")?n+e:`${n}/${e}`:n:e}function En(n){const e=n.search(/#|\?|$/);return n[e-1]==="/"?n.slice(0,e-1)+n.slice(e):n}function j(n){return n&&n[0]!=="?"?`?${n}`:n}const De=class De{historyGo(e){throw new Error(ngDevMode?"Not implemented":"")}};u(De,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:De,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u(De,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:De,providedIn:"root",useFactory:()=>o.inject(ce)}));let Z=De;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Z,decorators:[{type:o.Injectable,args:[{providedIn:"root",useFactory:()=>o.inject(ce)}]}]});const It=new o.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"appBaseHref":""),he=class he extends Z{constructor(t,r){var i;super();u(this,"_platformLocation");u(this,"_baseHref");u(this,"_removeListenerFns",[]);this._platformLocation=t,this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??((i=o.inject(o.DOCUMENT).location)==null?void 0:i.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 Qt(this._baseHref,t)}path(t=!1){const r=this._platformLocation.pathname+j(this._platformLocation.search),i=this._platformLocation.hash;return i&&t?`${r}${i}`:r}pushState(t,r,i,a){const c=this.prepareExternalUrl(i+j(a));this._platformLocation.pushState(t,r,c)}replaceState(t,r,i,a){const c=this.prepareExternalUrl(i+j(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,i;(i=(r=this._platformLocation).historyGo)==null||i.call(r,t)}};u(he,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:he,deps:[{token:z},{token:It,optional:!0}],target:s.ɵɵFactoryTarget.Injectable})),u(he,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:he,providedIn:"root"}));let ce=he;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ce,decorators:[{type:o.Injectable,args:[{providedIn:"root"}]}],ctorParameters:()=>[{type:z},{type:void 0,decorators:[{type:o.Optional},{type:o.Inject,args:[It]}]}]});const ge=class ge extends ce{prepareExternalUrl(e){const t=jn(e);return t.endsWith("/")&&t.length>1&&(e=t.slice(0,-1)+e.slice(t.length)),super.prepareExternalUrl(e)}};u(ge,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ge,deps:null,target:s.ɵɵFactoryTarget.Injectable})),u(ge,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ge,providedIn:"root"}));let Kt=ge;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Kt,decorators:[{type:o.Injectable,args:[{providedIn:"root"}]}]});const me=class me extends ce{prepareExternalUrl(e){const t=jn(e);return t.endsWith("/")||(e=t+"/"+e.slice(t.length)),super.prepareExternalUrl(e)}};u(me,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:me,deps:null,target:s.ɵɵFactoryTarget.Injectable})),u(me,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:me,providedIn:"root"}));let qt=me;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:qt,decorators:[{type:o.Injectable,args:[{providedIn:"root"}]}]});function jn(n){const e=n.search(/[?#]/),t=e>-1?e:n.length;return n.slice(0,t)}const x=class x{constructor(e){u(this,"_subject",new Jt);u(this,"_basePath");u(this,"_locationStrategy");u(this,"_urlChangeListeners",[]);u(this,"_urlChangeSubscription",null);this._locationStrategy=e;const t=this._locationStrategy.getBaseHref();this._basePath=wr(En(vn(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+j(t))}normalize(e){return x.stripTrailingSlash(Sr(this._basePath,vn(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+j(t)),r)}replaceState(e,t="",r=null){this._locationStrategy.replaceState(r,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+j(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(x,"normalizeQueryParams",j),u(x,"joinWithSlash",Qt),u(x,"stripTrailingSlash",En),u(x,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:x,deps:[{token:Z}],target:s.ɵɵFactoryTarget.Injectable})),u(x,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:x,providedIn:"root",useFactory:Un}));let vt=x;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:vt,decorators:[{type:o.Injectable,args:[{providedIn:"root",useFactory:Un}]}],ctorParameters:()=>[{type:Z}]});function Un(){return new vt(o.ɵɵinject(Z))}function Sr(n,e){if(!n||!e.startsWith(n))return e;const t=e.substring(n.length);return t===""||["/",";","?","#"].includes(t[0])?t:e}function vn(n){return n.replace(/\/index.html$/,"")}function wr(n){if(new RegExp("^(https?:)?//").test(n)){const[,t]=n.split(/\/\/[^\/]+/);return t}return n}/**
32
+ */function Qt(n,e){return n?e?n.endsWith("/")?e.startsWith("/")?n+e.slice(1):n+e:e.startsWith("/")?n+e:`${n}/${e}`:n:e}function En(n){const e=n.search(/#|\?|$/);return n[e-1]==="/"?n.slice(0,e-1)+n.slice(e):n}function j(n){return n&&n[0]!=="?"?`?${n}`:n}const De=class De{historyGo(e){throw new Error(ngDevMode?"Not implemented":"")}};u(De,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:De,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u(De,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:De,providedIn:"root",useFactory:()=>o.inject(ce)}));let Z=De;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Z,decorators:[{type:o.Injectable,args:[{providedIn:"root",useFactory:()=>o.inject(ce)}]}]});const It=new o.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"appBaseHref":""),he=class he extends Z{constructor(t,r){var i;super();u(this,"_platformLocation");u(this,"_baseHref");u(this,"_removeListenerFns",[]);this._platformLocation=t,this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??((i=o.inject(o.DOCUMENT).location)==null?void 0:i.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 Qt(this._baseHref,t)}path(t=!1){const r=this._platformLocation.pathname+j(this._platformLocation.search),i=this._platformLocation.hash;return i&&t?`${r}${i}`:r}pushState(t,r,i,a){const c=this.prepareExternalUrl(i+j(a));this._platformLocation.pushState(t,r,c)}replaceState(t,r,i,a){const c=this.prepareExternalUrl(i+j(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,i;(i=(r=this._platformLocation).historyGo)==null||i.call(r,t)}};u(he,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:he,deps:[{token:z},{token:It,optional:!0}],target:s.ɵɵFactoryTarget.Injectable})),u(he,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:he,providedIn:"root"}));let ce=he;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ce,decorators:[{type:o.Injectable,args:[{providedIn:"root"}]}],ctorParameters:()=>[{type:z},{type:void 0,decorators:[{type:o.Optional},{type:o.Inject,args:[It]}]}]});const ge=class ge extends ce{prepareExternalUrl(e){const t=jn(e);return t.endsWith("/")&&t.length>1&&(e=t.slice(0,-1)+e.slice(t.length)),super.prepareExternalUrl(e)}};u(ge,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ge,deps:null,target:s.ɵɵFactoryTarget.Injectable})),u(ge,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ge,providedIn:"root"}));let Kt=ge;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Kt,decorators:[{type:o.Injectable,args:[{providedIn:"root"}]}]});const me=class me extends ce{prepareExternalUrl(e){const t=jn(e);return t.endsWith("/")||(e=t+"/"+e.slice(t.length)),super.prepareExternalUrl(e)}};u(me,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:me,deps:null,target:s.ɵɵFactoryTarget.Injectable})),u(me,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:me,providedIn:"root"}));let qt=me;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:qt,decorators:[{type:o.Injectable,args:[{providedIn:"root"}]}]});function jn(n){const e=n.search(/[?#]/),t=e>-1?e:n.length;return n.slice(0,t)}const x=class x{constructor(e){u(this,"_subject",new Jt);u(this,"_basePath");u(this,"_locationStrategy");u(this,"_urlChangeListeners",[]);u(this,"_urlChangeSubscription",null);this._locationStrategy=e;const t=this._locationStrategy.getBaseHref();this._basePath=wr(En(vn(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+j(t))}normalize(e){return x.stripTrailingSlash(Sr(this._basePath,vn(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+j(t)),r)}replaceState(e,t="",r=null){this._locationStrategy.replaceState(r,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+j(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(x,"normalizeQueryParams",j),u(x,"joinWithSlash",Qt),u(x,"stripTrailingSlash",En),u(x,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:x,deps:[{token:Z}],target:s.ɵɵFactoryTarget.Injectable})),u(x,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:x,providedIn:"root",useFactory:Un}));let Et=x;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Et,decorators:[{type:o.Injectable,args:[{providedIn:"root",useFactory:Un}]}],ctorParameters:()=>[{type:Z}]});function Un(){return new Et(o.ɵɵinject(Z))}function Sr(n,e){if(!n||!e.startsWith(n))return e;const t=e.substring(n.length);return t===""||["/",";","?","#"].includes(t[0])?t:e}function vn(n){return n.replace(/\/index.html$/,"")}function wr(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 ye=class ye 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=Qt(this._baseHref,t);return r.length>0?"#"+r:r}pushState(t,r,i,a){const c=this.prepareExternalUrl(i+j(a))||this._platformLocation.pathname;this._platformLocation.pushState(t,r,c)}replaceState(t,r,i,a){const c=this.prepareExternalUrl(i+j(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,i;(i=(r=this._platformLocation).historyGo)==null||i.call(r,t)}};u(ye,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ye,deps:[{token:z},{token:It,optional:!0}],target:s.ɵɵFactoryTarget.Injectable})),u(ye,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ye}));let Wt=ye;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Wt,decorators:[{type:o.Injectable}],ctorParameters:()=>[{type:z},{type:void 0,decorators:[{type:o.Optional},{type:o.Inject,args:[It]}]}]});const Nn={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 ot;(function(n){n[n.Decimal=0]="Decimal",n[n.Percent=1]="Percent",n[n.Currency=2]="Currency",n[n.Scientific=3]="Scientific"})(ot||(ot={}));var W;(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"})(W||(W={}));var T;(function(n){n[n.Format=0]="Format",n[n.Standalone=1]="Standalone"})(T||(T={}));var C;(function(n){n[n.Narrow=0]="Narrow",n[n.Abbreviated=1]="Abbreviated",n[n.Wide=2]="Wide",n[n.Short=3]="Short"})(C||(C={}));var O;(function(n){n[n.Short=0]="Short",n[n.Medium=1]="Medium",n[n.Long=2]="Long",n[n.Full=3]="Full"})(O||(O={}));const _={Decimal:0,Group:1,PercentSign:3,MinusSign:5,Exponential:6,Infinity:9,CurrencyDecimal:12,CurrencyGroup:13};var bn;(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"})(bn||(bn={}));function Tr(n){return o.ɵfindLocaleData(n)[o.ɵLocaleDataIndex.LocaleId]}function Or(n,e,t){const r=o.ɵfindLocaleData(n),i=[r[o.ɵLocaleDataIndex.DayPeriodsFormat],r[o.ɵLocaleDataIndex.DayPeriodsStandalone]],a=k(i,e);return k(a,t)}function Br(n,e,t){const r=o.ɵfindLocaleData(n),i=[r[o.ɵLocaleDataIndex.DaysFormat],r[o.ɵLocaleDataIndex.DaysStandalone]],a=k(i,e);return k(a,t)}function Rr(n,e,t){const r=o.ɵfindLocaleData(n),i=[r[o.ɵLocaleDataIndex.MonthsFormat],r[o.ɵLocaleDataIndex.MonthsStandalone]],a=k(i,e);return k(a,t)}function kr(n,e){const r=o.ɵfindLocaleData(n)[o.ɵLocaleDataIndex.Eras];return k(r,e)}function Dt(n,e){const t=o.ɵfindLocaleData(n);return k(t[o.ɵLocaleDataIndex.DateFormat],e)}function ht(n,e){const t=o.ɵfindLocaleData(n);return k(t[o.ɵLocaleDataIndex.TimeFormat],e)}function gt(n,e){const r=o.ɵfindLocaleData(n)[o.ɵLocaleDataIndex.DateTimeFormat];return k(r,e)}function R(n,e){const t=o.ɵfindLocaleData(n),r=t[o.ɵLocaleDataIndex.NumberSymbols][e];if(typeof r>"u"){if(e===_.CurrencyDecimal)return t[o.ɵLocaleDataIndex.NumberSymbols][_.Decimal];if(e===_.CurrencyGroup)return t[o.ɵLocaleDataIndex.NumberSymbols][_.Group]}return r}function en(n,e){return o.ɵfindLocaleData(n)[o.ɵLocaleDataIndex.NumberFormats][e]}function Mr(n){return o.ɵfindLocaleData(n)[o.ɵLocaleDataIndex.Currencies]}const Lr=o.ɵgetLocalePluralCase;function $n(n){if(!n[o.ɵLocaleDataIndex.ExtraData])throw new o.ɵRuntimeError(2303,ngDevMode&&`Missing extra locale data for the locale "${n[o.ɵLocaleDataIndex.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function xr(n){const e=o.ɵfindLocaleData(n);return $n(e),(e[o.ɵLocaleDataIndex.ExtraData][2]||[]).map(r=>typeof r=="string"?Lt(r):[Lt(r[0]),Lt(r[1])])}function Vr(n,e,t){const r=o.ɵfindLocaleData(n);$n(r);const i=[r[o.ɵLocaleDataIndex.ExtraData][0],r[o.ɵLocaleDataIndex.ExtraData][1]],a=k(i,e)||[];return k(a,t)||[]}function k(n,e){for(let t=e;t>-1;t--)if(typeof n[t]<"u")return n[t];throw new o.ɵRuntimeError(2304,ngDevMode&&"Locale data API: locale data undefined")}function Lt(n){const[e,t]=n.split(":");return{hours:+e,minutes:+t}}function Pr(n,e,t="en"){const r=Mr(t)[n]||Nn[n]||[],i=r[1];return e==="narrow"&&typeof i=="string"?i:r[0]||n}const jr=2;function Ur(n){let e;const t=Nn[n];return t&&(e=t[2]),typeof e=="number"?e:jr}const Nr=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,fe={},$r=/((?:[^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 Gr(n,e,t,r){let i=Qr(n);e=P(t,e)||e;let c=[],l;for(;e;)if(l=$r.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)&&Hr(c);let p=i.getTimezoneOffset();r&&(p=Hn(r,p),i=Jr(i,r));let h="";return c.forEach(f=>{const D=Wr(f);h+=D?D(i,t,p):f==="''"?"'":f.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),h}function Hr(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(o.ɵformatRuntimeError(2300,e));else throw new o.ɵRuntimeError(2300,e)}}function bt(n,e,t){const r=new Date(0);return r.setFullYear(n,e,t),r.setHours(0,0,0),r}function P(n,e){const t=Tr(n);if(fe[t]??(fe[t]={}),fe[t][e])return fe[t][e];let r="";switch(e){case"shortDate":r=Dt(n,O.Short);break;case"mediumDate":r=Dt(n,O.Medium);break;case"longDate":r=Dt(n,O.Long);break;case"fullDate":r=Dt(n,O.Full);break;case"shortTime":r=ht(n,O.Short);break;case"mediumTime":r=ht(n,O.Medium);break;case"longTime":r=ht(n,O.Long);break;case"fullTime":r=ht(n,O.Full);break;case"short":const i=P(n,"shortTime"),a=P(n,"shortDate");r=mt(gt(n,O.Short),[i,a]);break;case"medium":const c=P(n,"mediumTime"),l=P(n,"mediumDate");r=mt(gt(n,O.Medium),[c,l]);break;case"long":const p=P(n,"longTime"),h=P(n,"longDate");r=mt(gt(n,O.Long),[p,h]);break;case"full":const f=P(n,"fullTime"),D=P(n,"fullDate");r=mt(gt(n,O.Full),[f,D]);break}return r&&(fe[t][e]=r),r}function mt(n,e){return e&&(n=n.replace(/\{([^}]+)}/g,function(t,r){return e!=null&&r in e?e[r]:t})),n}function L(n,e,t="-",r,i){let a="";(n<0||i&&n<=0)&&(i?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 Yr(n,e){return L(n,3).substring(0,e)}function A(n,e,t=0,r=!1,i=!1){return function(a,c){let l=zr(n,a);if((t>0||l>-t)&&(l+=t),n===3)l===0&&t===-12&&(l=12);else if(n===6)return Yr(l,e);const p=R(c,_.MinusSign);return L(l,e,p,r,i)}}function zr(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 o.ɵRuntimeError(2301,ngDevMode&&`Unknown DateType value "${n}".`)}}function F(n,e,t=T.Format,r=!1){return function(i,a){return Zr(i,a,n,e,t,r)}}function Zr(n,e,t,r,i,a){switch(t){case 2:return Rr(e,i,r)[n.getMonth()];case 1:return Br(e,i,r)[n.getDay()];case 0:const c=n.getHours(),l=n.getMinutes();if(a){const h=xr(e),f=Vr(e,i,r),D=h.findIndex(y=>{if(Array.isArray(y)){const[g,b]=y,I=c>=g.hours&&l>=g.minutes,M=c<b.hours||c===b.hours&&l<b.minutes;if(g.hours<b.hours){if(I&&M)return!0}else if(I||M)return!0}else if(y.hours===c&&y.minutes===l)return!0;return!1});if(D!==-1)return f[D]}return Or(e,i,r)[c<12?0:1];case 3:return kr(e,r)[n.getFullYear()<=0?0:1];default:const p=t;throw new o.ɵRuntimeError(2302,ngDevMode&&`unexpected translation type ${p}`)}}function yt(n){return function(e,t,r){const i=-1*r,a=R(t,_.MinusSign),c=i>0?Math.floor(i/60):Math.ceil(i/60);switch(n){case 0:return(i>=0?"+":"")+L(c,2,a)+L(Math.abs(i%60),2,a);case 1:return"GMT"+(i>=0?"+":"")+L(c,1,a);case 2:return"GMT"+(i>=0?"+":"")+L(c,2,a)+":"+L(Math.abs(i%60),2,a);case 3:return r===0?"Z":(i>=0?"+":"")+L(c,2,a)+":"+L(Math.abs(i%60),2,a);default:throw new o.ɵRuntimeError(2310,ngDevMode&&`Unknown zone width "${n}"`)}}}const Kr=0,Et=4;function qr(n){const e=bt(n,Kr,1).getDay();return bt(n,0,1+(e<=Et?Et:Et+7)-e)}function Gn(n){const e=n.getDay(),t=e===0?-3:Et-e;return bt(n.getFullYear(),n.getMonth(),n.getDate()+t)}function xt(n,e=!1){return function(t,r){let i;if(e){const a=new Date(t.getFullYear(),t.getMonth(),1).getDay()-1,c=t.getDate();i=1+Math.floor((c+a)/7)}else{const a=Gn(t),c=qr(a.getFullYear()),l=a.getTime()-c.getTime();i=1+Math.round(l/6048e5)}return L(i,n,R(r,_.MinusSign))}}function Ct(n,e=!1){return function(t,r){const a=Gn(t).getFullYear();return L(a,n,R(r,_.MinusSign),e)}}const Vt={};function Wr(n){if(Vt[n])return Vt[n];let e;switch(n){case"G":case"GG":case"GGG":e=F(3,C.Abbreviated);break;case"GGGG":e=F(3,C.Wide);break;case"GGGGG":e=F(3,C.Narrow);break;case"y":e=A(0,1,0,!1,!0);break;case"yy":e=A(0,2,0,!0,!0);break;case"yyy":e=A(0,3,0,!1,!0);break;case"yyyy":e=A(0,4,0,!1,!0);break;case"Y":e=Ct(1);break;case"YY":e=Ct(2,!0);break;case"YYY":e=Ct(3);break;case"YYYY":e=Ct(4);break;case"M":case"L":e=A(1,1,1);break;case"MM":case"LL":e=A(1,2,1);break;case"MMM":e=F(2,C.Abbreviated);break;case"MMMM":e=F(2,C.Wide);break;case"MMMMM":e=F(2,C.Narrow);break;case"LLL":e=F(2,C.Abbreviated,T.Standalone);break;case"LLLL":e=F(2,C.Wide,T.Standalone);break;case"LLLLL":e=F(2,C.Narrow,T.Standalone);break;case"w":e=xt(1);break;case"ww":e=xt(2);break;case"W":e=xt(1,!0);break;case"d":e=A(2,1);break;case"dd":e=A(2,2);break;case"c":case"cc":e=A(7,1);break;case"ccc":e=F(1,C.Abbreviated,T.Standalone);break;case"cccc":e=F(1,C.Wide,T.Standalone);break;case"ccccc":e=F(1,C.Narrow,T.Standalone);break;case"cccccc":e=F(1,C.Short,T.Standalone);break;case"E":case"EE":case"EEE":e=F(1,C.Abbreviated);break;case"EEEE":e=F(1,C.Wide);break;case"EEEEE":e=F(1,C.Narrow);break;case"EEEEEE":e=F(1,C.Short);break;case"a":case"aa":case"aaa":e=F(0,C.Abbreviated);break;case"aaaa":e=F(0,C.Wide);break;case"aaaaa":e=F(0,C.Narrow);break;case"b":case"bb":case"bbb":e=F(0,C.Abbreviated,T.Standalone,!0);break;case"bbbb":e=F(0,C.Wide,T.Standalone,!0);break;case"bbbbb":e=F(0,C.Narrow,T.Standalone,!0);break;case"B":case"BB":case"BBB":e=F(0,C.Abbreviated,T.Format,!0);break;case"BBBB":e=F(0,C.Wide,T.Format,!0);break;case"BBBBB":e=F(0,C.Narrow,T.Format,!0);break;case"h":e=A(3,1,-12);break;case"hh":e=A(3,2,-12);break;case"H":e=A(3,1);break;case"HH":e=A(3,2);break;case"m":e=A(4,1);break;case"mm":e=A(4,2);break;case"s":e=A(5,1);break;case"ss":e=A(5,2);break;case"S":e=A(6,1);break;case"SS":e=A(6,2);break;case"SSS":e=A(6,3);break;case"Z":case"ZZ":case"ZZZ":e=yt(0);break;case"ZZZZZ":e=yt(3);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":e=yt(1);break;case"OOOO":case"ZZZZ":case"zzzz":e=yt(2);break;default:return null}return Vt[n]=e,e}function Hn(n,e){n=n.replace(/:/g,"");const t=Date.parse("Jan 01, 1970 00:00:00 "+n)/6e4;return isNaN(t)?e:t}function Xr(n,e){return n=new Date(n.getTime()),n.setMinutes(n.getMinutes()+e),n}function Jr(n,e,t){const i=n.getTimezoneOffset(),a=Hn(e,i);return Xr(n,-1*(a-i))}function Qr(n){if(An(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[i,a=1,c=1]=n.split("-").map(l=>+l);return bt(i,a-1,c)}const t=parseFloat(n);if(!isNaN(n-t))return new Date(t);let r;if(r=n.match(Nr))return es(r)}const e=new Date(n);if(!An(e))throw new o.ɵRuntimeError(2311,ngDevMode&&`Unable to convert "${n}" into a date`);return e}function es(n){const e=new Date(0);let t=0,r=0;const i=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])),i.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 An(n){return n instanceof Date&&!isNaN(n.valueOf())}const ts=/^(\d+)?\.((\d+)(-(\d+))?)?$/,_n=22,At=".",it="0",ns=";",rs=",",Pt="#",In="¤",ss="%";function tn(n,e,t,r,i,a,c=!1){let l="",p=!1;if(!isFinite(n))l=R(t,_.Infinity);else{let h=cs(n);c&&(h=us(h));let f=e.minInt,D=e.minFrac,y=e.maxFrac;if(a){const $=a.match(ts);if($===null)throw new o.ɵRuntimeError(2306,ngDevMode&&`${a} is not a valid digit info`);const lt=$[1],nt=$[3],dt=$[5];lt!=null&&(f=jt(lt)),nt!=null&&(D=jt(nt)),dt!=null?y=jt(dt):nt!=null&&D>y&&(y=D)}ls(h,D,y);let g=h.digits,b=h.integerLen;const I=h.exponent;let M=[];for(p=g.every($=>!$);b<f;b++)g.unshift(0);for(;b<0;b++)g.unshift(0);b>0?M=g.splice(b,g.length):(M=g,g=[0]);const le=[];for(g.length>=e.lgSize&&le.unshift(g.splice(-e.lgSize,g.length).join(""));g.length>e.gSize;)le.unshift(g.splice(-e.gSize,g.length).join(""));g.length&&le.unshift(g.join("")),l=le.join(R(t,r)),M.length&&(l+=R(t,i)+M.join("")),I&&(l+=R(t,_.Exponential)+"+"+I)}return n<0&&!p?l=e.negPre+l+e.negSuf:l=e.posPre+l+e.posSuf,l}function is(n,e,t,r,i){const a=en(e,ot.Currency),c=nn(a,R(e,_.MinusSign));return c.minFrac=Ur(r),c.maxFrac=c.minFrac,tn(n,c,e,_.CurrencyGroup,_.CurrencyDecimal,i).replace(In,t).replace(In,"").trim()}function os(n,e,t){const r=en(e,ot.Percent),i=nn(r,R(e,_.MinusSign));return tn(n,i,e,_.Group,_.Decimal,t,!0).replace(new RegExp(ss,"g"),R(e,_.PercentSign))}function as(n,e,t){const r=en(e,ot.Decimal),i=nn(r,R(e,_.MinusSign));return tn(n,i,e,_.Group,_.Decimal,t)}function nn(n,e="-"){const t={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},r=n.split(ns),i=r[0],a=r[1],c=i.indexOf(At)!==-1?i.split(At):[i.substring(0,i.lastIndexOf(it)+1),i.substring(i.lastIndexOf(it)+1)],l=c[0],p=c[1]||"";t.posPre=l.substring(0,l.indexOf(Pt));for(let f=0;f<p.length;f++){const D=p.charAt(f);D===it?t.minFrac=t.maxFrac=f+1:D===Pt?t.maxFrac=f+1:t.posSuf+=D}const h=l.split(rs);if(t.gSize=h[1]?h[1].length:0,t.lgSize=h[2]||h[1]?(h[2]||h[1]).length:0,a){const f=i.length-t.posPre.length-t.posSuf.length,D=a.indexOf(Pt);t.negPre=a.substring(0,D).replace(/'/g,""),t.negSuf=a.slice(D+f).replace(/'/g,"")}else t.negPre=e+t.posPre,t.negSuf=t.posSuf;return t}function us(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 cs(n){let e=Math.abs(n)+"",t=0,r,i,a,c,l;for((i=e.indexOf(At))>-1&&(e=e.replace(At,"")),(a=e.search(/e/i))>0?(i<0&&(i=a),i+=+e.slice(a+1),e=e.substring(0,a)):i<0&&(i=e.length),a=0;e.charAt(a)===it;a++);if(a===(l=e.length))r=[0],i=1;else{for(l--;e.charAt(l)===it;)l--;for(i-=a,r=[],c=0;a<=l;a++,c++)r[c]=Number(e.charAt(a))}return i>_n&&(r=r.splice(0,_n-1),t=i-1,i=1),{digits:r,exponent:t,integerLen:i}}function ls(n,e,t){if(e>t)throw new o.ɵRuntimeError(2307,ngDevMode&&`The minimum number of digits after fraction (${e}) is higher than the maximum (${t}).`);let r=n.digits,i=r.length-n.integerLen;const a=Math.min(Math.max(e,i),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{i=Math.max(0,i),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(;i<Math.max(0,a);i++)r.push(0);let p=a!==0;const h=e+n.integerLen,f=r.reduceRight(function(D,y,g,b){return y=y+D,b[g]=y<10?y:y-10,p&&(b[g]===0&&g>=h?b.pop():p=!1),y>=10?1:0},0);f&&(r.unshift(f),n.integerLen++)}function jt(n){const e=parseInt(n);if(isNaN(e))throw new o.ɵRuntimeError(2305,ngDevMode&&"Invalid integer literal when parsing "+n);return e}const Ce=class Ce{};u(Ce,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ce,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u(Ce,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ce,providedIn:"root",useFactory:()=>new at(o.inject(o.LOCALE_ID))}));let K=Ce;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:K,decorators:[{type:o.Injectable,args:[{providedIn:"root",useFactory:()=>new at(o.inject(o.LOCALE_ID))}]}]});function Yn(n,e,t,r){let i=`=${n}`;if(e.indexOf(i)>-1||(i=t.getPluralCategory(n,r),e.indexOf(i)>-1))return i;if(e.indexOf("other")>-1)return"other";throw new o.ɵRuntimeError(2308,ngDevMode&&`No plural message found for value "${n}"`)}const Fe=class Fe extends K{constructor(t){super();u(this,"locale");this.locale=t}getPluralCategory(t,r){switch(Lr(r||this.locale)(t)){case W.Zero:return"zero";case W.One:return"one";case W.Two:return"two";case W.Few:return"few";case W.Many:return"many";default:return"other"}}};u(Fe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Fe,deps:[{token:o.LOCALE_ID}],target:s.ɵɵFactoryTarget.Injectable})),u(Fe,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Fe}));let at=Fe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:at,decorators:[{type:o.Injectable}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Inject,args:[o.LOCALE_ID]}]}]});const Ut=/\s+/,Sn=[],Ee=class Ee{constructor(e,t){u(this,"_ngEl");u(this,"_renderer");u(this,"initialClasses",Sn);u(this,"rawClass");u(this,"stateMap",new Map);this._ngEl=e,this._renderer=t}set klass(e){this.initialClasses=e!=null?e.trim().split(Ut):Sn}set ngClass(e){this.rawClass=typeof e=="string"?e.trim().split(Ut):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 ${o.ɵstringify(e)}`);e=e.trim(),e.length>0&&e.split(Ut).forEach(r=>{t?this._renderer.addClass(this._ngEl.nativeElement,r):this._renderer.removeClass(this._ngEl.nativeElement,r)})}};u(Ee,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ee,deps:[{token:s.ElementRef},{token:s.Renderer2}],target:s.ɵɵFactoryTarget.Directive})),u(Ee,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ee,isStandalone:!0,selector:"[ngClass]",inputs:{klass:["class","klass"],ngClass:"ngClass"},ngImport:s}));let Me=Ee;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Me,decorators:[{type:o.Directive,args:[{selector:"[ngClass]"}]}],ctorParameters:()=>[{type:s.ElementRef},{type:s.Renderer2}],propDecorators:{klass:[{type:o.Input,args:["class"]}],ngClass:[{type:o.Input,args:["ngClass"]}]}});const ve=class ve{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=o.createNgModule(this.ngComponentOutletNgModule,ds(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(ve,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ve,deps:[{token:s.ViewContainerRef}],target:s.ɵɵFactoryTarget.Directive})),u(ve,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:ve,isStandalone:!0,selector:"[ngComponentOutlet]",inputs:{ngComponentOutlet:"ngComponentOutlet",ngComponentOutletInputs:"ngComponentOutletInputs",ngComponentOutletInjector:"ngComponentOutletInjector",ngComponentOutletEnvironmentInjector:"ngComponentOutletEnvironmentInjector",ngComponentOutletContent:"ngComponentOutletContent",ngComponentOutletNgModule:"ngComponentOutletNgModule"},exportAs:["ngComponentOutlet"],usesOnChanges:!0,ngImport:s}));let Le=ve;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Le,decorators:[{type:o.Directive,args:[{selector:"[ngComponentOutlet]",exportAs:"ngComponentOutlet"}]}],ctorParameters:()=>[{type:s.ViewContainerRef}],propDecorators:{ngComponentOutlet:[{type:o.Input}],ngComponentOutletInputs:[{type:o.Input}],ngComponentOutletInjector:[{type:o.Input}],ngComponentOutletEnvironmentInjector:[{type:o.Input}],ngComponentOutletContent:[{type:o.Input}],ngComponentOutletNgModule:[{type:o.Input}]}});function ds(n){return n.get(o.NgModuleRef).injector}class fs{constructor(e,t,r,i){u(this,"$implicit");u(this,"ngForOf");u(this,"index");u(this,"count");this.$implicit=e,this.ngForOf=t,this.index=r,this.count=i}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 be=class be{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 '${ps(e)}'. NgFor only supports binding to Iterables, such as Arrays.`;throw typeof e=="object"&&(t+=" Did you mean to use the keyvalue pipe?"),new o.ɵ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,i,a)=>{if(r.previousIndex==null)t.createEmbeddedView(this._template,new fs(r.item,this._ngForOf,-1,-1),a===null?void 0:a);else if(a==null)t.remove(i===null?void 0:i);else if(i!==null){const c=t.get(i);t.move(c,a),wn(c,r)}});for(let r=0,i=t.length;r<i;r++){const c=t.get(r).context;c.index=r,c.count=i,c.ngForOf=this._ngForOf}e.forEachIdentityChange(r=>{const i=t.get(r.currentIndex);wn(i,r)})}static ngTemplateContextGuard(e,t){return!0}};u(be,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:be,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:s.IterableDiffers}],target:s.ɵɵFactoryTarget.Directive})),u(be,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:be,isStandalone:!0,selector:"[ngFor][ngForOf]",inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},ngImport:s}));let xe=be;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:xe,decorators:[{type:o.Directive,args:[{selector:"[ngFor][ngForOf]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:s.IterableDiffers}],propDecorators:{ngForOf:[{type:o.Input}],ngForTrackBy:[{type:o.Input}],ngForTemplate:[{type:o.Input}]}});function wn(n,e){n.context.$implicit=e.item}function ps(n){return n.name||typeof n}const H=class H{constructor(e,t){u(this,"_viewContainer");u(this,"_context",new Ds);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){Tn(e,(typeof ngDevMode>"u"||ngDevMode)&&"ngIfThen"),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){Tn(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(H,"ngIfUseIfTypeGuard"),u(H,"ngTemplateGuard_ngIf"),u(H,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:H,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef}],target:s.ɵɵFactoryTarget.Directive})),u(H,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:H,isStandalone:!0,selector:"[ngIf]",inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},ngImport:s}));let Ve=H;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ve,decorators:[{type:o.Directive,args:[{selector:"[ngIf]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef}],propDecorators:{ngIf:[{type:o.Input}],ngIfThen:[{type:o.Input}],ngIfElse:[{type:o.Input}]}});class Ds{constructor(){u(this,"$implicit",null);u(this,"ngIf",null)}}function Tn(n,e){if(n&&!n.createEmbeddedView)throw new o.ɵRuntimeError(2020,(typeof ngDevMode>"u"||ngDevMode)&&`${e} must be a TemplateRef, but received '${o.ɵstringify(n)}'.`)}class rn{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 Ae=class Ae{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(Ae,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ae,deps:[],target:s.ɵɵFactoryTarget.Directive})),u(Ae,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ae,isStandalone:!0,selector:"[ngSwitch]",inputs:{ngSwitch:"ngSwitch"},ngImport:s}));let V=Ae;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:V,decorators:[{type:o.Directive,args:[{selector:"[ngSwitch]"}]}],propDecorators:{ngSwitch:[{type:o.Input}]}});const _e=class _e{constructor(e,t,r){u(this,"ngSwitch");u(this,"_view");u(this,"ngSwitchCase");this.ngSwitch=r,(typeof ngDevMode>"u"||ngDevMode)&&!r&&zn("ngSwitchCase","NgSwitchCase"),r._addCase(),this._view=new rn(e,t)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}};u(_e,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:_e,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:V,host:!0,optional:!0}],target:s.ɵɵFactoryTarget.Directive})),u(_e,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:_e,isStandalone:!0,selector:"[ngSwitchCase]",inputs:{ngSwitchCase:"ngSwitchCase"},ngImport:s}));let Pe=_e;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Pe,decorators:[{type:o.Directive,args:[{selector:"[ngSwitchCase]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:V,decorators:[{type:o.Optional},{type:o.Host}]}],propDecorators:{ngSwitchCase:[{type:o.Input}]}});const Ie=class Ie{constructor(e,t,r){(typeof ngDevMode>"u"||ngDevMode)&&!r&&zn("ngSwitchDefault","NgSwitchDefault"),r._addDefault(new rn(e,t))}};u(Ie,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ie,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:V,host:!0,optional:!0}],target:s.ɵɵFactoryTarget.Directive})),u(Ie,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ie,isStandalone:!0,selector:"[ngSwitchDefault]",ngImport:s}));let je=Ie;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:je,decorators:[{type:o.Directive,args:[{selector:"[ngSwitchDefault]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:V,decorators:[{type:o.Optional},{type:o.Host}]}]});function zn(n,e){throw new o.ɵ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 Se=class Se{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=Yn(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(Se,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Se,deps:[{token:K}],target:s.ɵɵFactoryTarget.Directive})),u(Se,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Se,isStandalone:!0,selector:"[ngPlural]",inputs:{ngPlural:"ngPlural"},ngImport:s}));let q=Se;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:q,decorators:[{type:o.Directive,args:[{selector:"[ngPlural]"}]}],ctorParameters:()=>[{type:K}],propDecorators:{ngPlural:[{type:o.Input}]}});const we=class we{constructor(e,t,r,i){u(this,"value");this.value=e;const a=!isNaN(Number(e));i.addCase(a?`=${e}`:e,new rn(r,t))}};u(we,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:we,deps:[{token:"ngPluralCase",attribute:!0},{token:s.TemplateRef},{token:s.ViewContainerRef},{token:q,host:!0}],target:s.ɵɵFactoryTarget.Directive})),u(we,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:we,isStandalone:!0,selector:"[ngPluralCase]",ngImport:s}));let Ue=we;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ue,decorators:[{type:o.Directive,args:[{selector:"[ngPluralCase]"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Attribute,args:["ngPluralCase"]}]},{type:s.TemplateRef},{type:s.ViewContainerRef},{type:q,decorators:[{type:o.Host}]}]});const Te=class Te{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,i]=e.split("."),a=r.indexOf("-")===-1?void 0:o.RendererStyleFlags2.DashCase;t!=null?this._renderer.setStyle(this._ngEl.nativeElement,r,i?`${t}${i}`: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(Te,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Te,deps:[{token:s.ElementRef},{token:s.KeyValueDiffers},{token:s.Renderer2}],target:s.ɵɵFactoryTarget.Directive})),u(Te,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Te,isStandalone:!0,selector:"[ngStyle]",inputs:{ngStyle:"ngStyle"},ngImport:s}));let Ne=Te;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ne,decorators:[{type:o.Directive,args:[{selector:"[ngStyle]"}]}],ctorParameters:()=>[{type:s.ElementRef},{type:s.KeyValueDiffers},{type:s.Renderer2}],propDecorators:{ngStyle:[{type:o.Input,args:["ngStyle"]}]}});const Oe=class Oe{constructor(e){u(this,"_viewContainerRef");u(this,"_viewRef",null);u(this,"ngTemplateOutletContext",null);u(this,"ngTemplateOutlet",null);u(this,"ngTemplateOutletInjector",null);u(this,"injector",o.inject(o.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(Oe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Oe,deps:[{token:s.ViewContainerRef}],target:s.ɵɵFactoryTarget.Directive})),u(Oe,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Oe,isStandalone:!0,selector:"[ngTemplateOutlet]",inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},usesOnChanges:!0,ngImport:s}));let $e=Oe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:$e,decorators:[{type:o.Directive,args:[{selector:"[ngTemplateOutlet]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef}],propDecorators:{ngTemplateOutletContext:[{type:o.Input}],ngTemplateOutlet:[{type:o.Input}],ngTemplateOutletInjector:[{type:o.Input}]}});const On=[Me,Le,xe,Ve,$e,Ne,V,Pe,je,q,Ue];function N(n,e){return new o.ɵRuntimeError(2100,ngDevMode&&`InvalidPipeArgument: '${e}' for pipe '${o.ɵstringify(n)}'`)}function Zn(n,e){o.isSignal(e)&&console.warn(`The ${n} does not unwrap signals. Received a signal with value:`,e())}class hs{createSubscription(e,t,r){return o.untracked(()=>e.subscribe({next:t,error:r}))}dispose(e){o.untracked(()=>e.unsubscribe())}}class gs{createSubscription(e,t,r){return e.then(i=>t==null?void 0:t(i),i=>r==null?void 0:r(i)),{unsubscribe:()=>{t=null,r=null}}}dispose(e){e.unsubscribe()}}const ms=new gs,ys=new hs,J=class J{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",o.inject(o.ɵ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(o.ɵisPromise(e))return ms;if(o.ɵisSubscribable(e))return ys;throw N(J,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(J,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:J,deps:[{token:s.ChangeDetectorRef}],target:s.ɵɵFactoryTarget.Pipe})),u(J,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:J,isStandalone:!0,name:"async",pure:!1}));let Ge=J;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ge,decorators:[{type:o.Pipe,args:[{name:"async",pure:!1}]}],ctorParameters:()=>[{type:s.ChangeDetectorRef}]});const Q=class Q{transform(e){return e==null?null:(sn(Q,e),e.toLowerCase())}};u(Q,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Q,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(Q,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:Q,isStandalone:!0,name:"lowercase"}));let He=Q;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:He,decorators:[{type:o.Pipe,args:[{name:"lowercase"}]}]});const Cs=/(?:[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,ee=class ee{transform(e){return e==null?null:(sn(ee,e),e.replace(Cs,t=>t[0].toUpperCase()+t.slice(1).toLowerCase()))}};u(ee,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ee,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(ee,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ee,isStandalone:!0,name:"titlecase"}));let Ye=ee;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ye,decorators:[{type:o.Pipe,args:[{name:"titlecase"}]}]});const te=class te{transform(e){return e==null?null:(sn(te,e),e.toUpperCase())}};u(te,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:te,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(te,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:te,isStandalone:!0,name:"uppercase"}));let ze=te;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ze,decorators:[{type:o.Pipe,args:[{name:"uppercase"}]}]});function sn(n,e){if(typeof e!="string")throw N(n,e)}const Fs="mediumDate",Kn=new o.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"DATE_PIPE_DEFAULT_TIMEZONE":""),qn=new o.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"DATE_PIPE_DEFAULT_OPTIONS":""),ne=class ne{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,i){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 Gr(e,l,i||this.locale,p)}catch(l){throw N(ne,l.message)}}};u(ne,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ne,deps:[{token:o.LOCALE_ID},{token:Kn,optional:!0},{token:qn,optional:!0}],target:s.ɵɵFactoryTarget.Pipe})),u(ne,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ne,isStandalone:!0,name:"date"}));let Ze=ne;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ze,decorators:[{type:o.Pipe,args:[{name:"date"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Inject,args:[o.LOCALE_ID]}]},{type:void 0,decorators:[{type:o.Inject,args:[Kn]},{type:o.Optional}]},{type:void 0,decorators:[{type:o.Inject,args:[qn]},{type:o.Optional}]}]});const Es=/#/g,re=class re{constructor(e){u(this,"_localization");this._localization=e}transform(e,t,r){if(e==null)return"";if(typeof t!="object"||t===null)throw N(re,t);const i=Yn(e,Object.keys(t),this._localization,r);return t[i].replace(Es,e.toString())}};u(re,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:re,deps:[{token:K}],target:s.ɵɵFactoryTarget.Pipe})),u(re,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:re,isStandalone:!0,name:"i18nPlural"}));let Ke=re;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ke,decorators:[{type:o.Pipe,args:[{name:"i18nPlural"}]}],ctorParameters:()=>[{type:K}]});const se=class se{transform(e,t){if(e==null)return"";if(typeof t!="object"||typeof e!="string")throw N(se,t);return t.hasOwnProperty(e)?t[e]:t.hasOwnProperty("other")?t.other:""}};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:"i18nSelect"}));let qe=se;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:qe,decorators:[{type:o.Pipe,args:[{name:"i18nSelect"}]}]});const Be=class Be{transform(e){return ngDevMode&&Zn("JsonPipe",e),JSON.stringify(e,null,2)}};u(Be,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Be,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(Be,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:Be,isStandalone:!0,name:"json",pure:!1}));let We=Be;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:We,decorators:[{type:o.Pipe,args:[{name:"json",pure:!1}]}]});function vs(n,e){return{key:n,value:e}}const Re=class Re{constructor(e){u(this,"differs");u(this,"differ");u(this,"keyValues",[]);u(this,"compareFn",Bn);this.differs=e}transform(e,t=Bn){if(ngDevMode&&Zn("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),i=t!==this.compareFn;return r&&(this.keyValues=[],r.forEachItem(a=>{this.keyValues.push(vs(a.key,a.currentValue))})),(r||i)&&(t&&this.keyValues.sort(t),this.compareFn=t),this.keyValues}};u(Re,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Re,deps:[{token:s.KeyValueDiffers}],target:s.ɵɵFactoryTarget.Pipe})),u(Re,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:Re,isStandalone:!0,name:"keyvalue",pure:!1}));let Xe=Re;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Xe,decorators:[{type:o.Pipe,args:[{name:"keyvalue",pure:!1}]}],ctorParameters:()=>[{type:s.KeyValueDiffers}]});function Bn(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 i=String(t),a=String(r);return i==a?0:i<a?-1:1}const ie=class ie{constructor(e){u(this,"_locale");this._locale=e}transform(e,t,r){if(!on(e))return null;r||(r=this._locale);try{const i=an(e);return as(i,r,t)}catch(i){throw N(ie,i.message)}}};u(ie,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ie,deps:[{token:o.LOCALE_ID}],target:s.ɵɵFactoryTarget.Pipe})),u(ie,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ie,isStandalone:!0,name:"number"}));let Je=ie;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Je,decorators:[{type:o.Pipe,args:[{name:"number"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Inject,args:[o.LOCALE_ID]}]}]});const oe=class oe{constructor(e){u(this,"_locale");this._locale=e}transform(e,t,r){if(!on(e))return null;r||(r=this._locale);try{const i=an(e);return os(i,r,t)}catch(i){throw N(oe,i.message)}}};u(oe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:oe,deps:[{token:o.LOCALE_ID}],target:s.ɵɵFactoryTarget.Pipe})),u(oe,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:oe,isStandalone:!0,name:"percent"}));let Qe=oe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Qe,decorators:[{type:o.Pipe,args:[{name:"percent"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Inject,args:[o.LOCALE_ID]}]}]});const ae=class ae{constructor(e,t="USD"){u(this,"_locale");u(this,"_defaultCurrencyCode");this._locale=e,this._defaultCurrencyCode=t}transform(e,t=this._defaultCurrencyCode,r="symbol",i,a){if(!on(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=Pr(c,r==="symbol"?"wide":"narrow",a):c=r);try{const l=an(e);return is(l,a,c,t,i)}catch(l){throw N(ae,l.message)}}};u(ae,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ae,deps:[{token:o.LOCALE_ID},{token:o.DEFAULT_CURRENCY_CODE}],target:s.ɵɵFactoryTarget.Pipe})),u(ae,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ae,isStandalone:!0,name:"currency"}));let et=ae;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:et,decorators:[{type:o.Pipe,args:[{name:"currency"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Inject,args:[o.LOCALE_ID]}]},{type:void 0,decorators:[{type:o.Inject,args:[o.DEFAULT_CURRENCY_CODE]}]}]});function on(n){return!(n==null||n===""||n!==n)}function an(n){if(typeof n=="string"&&!isNaN(Number(n)-parseFloat(n)))return Number(n);if(typeof n!="number")throw new o.ɵRuntimeError(2309,ngDevMode&&`${n} is not a number`);return n}const ue=class ue{transform(e,t,r){if(e==null)return null;if(!(typeof e=="string"||Array.isArray(e)))throw N(ue,e);return e.slice(t,r)}};u(ue,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ue,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(ue,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ue,isStandalone:!0,name:"slice",pure:!1}));let tt=ue;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:tt,decorators:[{type:o.Pipe,args:[{name:"slice",pure:!1}]}]});const Rn=[Ge,ze,He,We,tt,Je,Qe,Ye,et,Ze,Ke,qe,Xe],Y=class Y{};u(Y,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Y,deps:[],target:s.ɵɵFactoryTarget.NgModule})),u(Y,"ɵmod",s.ɵɵngDeclareNgModule({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:Y,imports:[Me,Le,xe,Ve,$e,Ne,V,Pe,je,q,Ue,Ge,ze,He,We,tt,Je,Qe,Ye,et,Ze,Ke,qe,Xe],exports:[Me,Le,xe,Ve,$e,Ne,V,Pe,je,q,Ue,Ge,ze,He,We,tt,Je,Qe,Ye,et,Ze,Ke,qe,Xe]})),u(Y,"ɵinj",s.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Y}));let ut=Y;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ut,decorators:[{type:o.NgModule,args:[{imports:[On,Rn],exports:[On,Rn]}]}]});var bs=Object.defineProperty,As=Object.getOwnPropertyDescriptor,v=(n,e,t,r)=>{for(var i=r>1?void 0:r?As(e,t):e,a=n.length-1,c;a>=0;a--)(c=n[a])&&(i=(r?c(e,t,i):c(i))||i);return r&&i&&bs(e,t,i),i};exports.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 o.EventEmitter,this.onError=new o.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(i=>i.stop())}};v([o.ViewChild("webcam")],exports.LivenessComponent.prototype,"webcamRef",2);v([o.Input()],exports.LivenessComponent.prototype,"apiUrl",2);v([o.Input()],exports.LivenessComponent.prototype,"duration",2);v([o.Input()],exports.LivenessComponent.prototype,"smileThreshold",2);v([o.Input()],exports.LivenessComponent.prototype,"blinkThreshold",2);v([o.Input()],exports.LivenessComponent.prototype,"minturnHeadThreshold",2);v([o.Input()],exports.LivenessComponent.prototype,"maxturnHeadThreshold",2);v([o.Input()],exports.LivenessComponent.prototype,"containerClass",2);v([o.Input()],exports.LivenessComponent.prototype,"videoWrapperClass",2);v([o.Input()],exports.LivenessComponent.prototype,"videoClass",2);v([o.Input()],exports.LivenessComponent.prototype,"timerClass",2);v([o.Input()],exports.LivenessComponent.prototype,"challengeTextClass",2);v([o.Input()],exports.LivenessComponent.prototype,"buttonClass",2);v([o.Input()],exports.LivenessComponent.prototype,"retryButtonClass",2);v([o.Input()],exports.LivenessComponent.prototype,"statusOverlayClass",2);v([o.Input()],exports.LivenessComponent.prototype,"successMessageClass",2);v([o.Input()],exports.LivenessComponent.prototype,"errorMessageClass",2);v([o.Input()],exports.LivenessComponent.prototype,"instructionBoxClass",2);v([o.Output()],exports.LivenessComponent.prototype,"onComplete",2);v([o.Output()],exports.LivenessComponent.prototype,"onError",2);exports.LivenessComponent=v([o.Component({selector:"LivenessCheck",standalone:!0,imports:[ut],templateUrl:"./liveness.component.html",styleUrls:["./liveness.component.css"]})],exports.LivenessComponent);var _s=Object.getOwnPropertyDescriptor,Is=(n,e,t,r)=>{for(var i=r>1?void 0:r?_s(e,t):e,a=n.length-1,c;a>=0;a--)(c=n[a])&&(i=c(i)||i);return i};exports.LivenessModule=class{};exports.LivenessModule=Is([o.NgModule({declarations:[],imports:[ut,exports.LivenessComponent],providers:[exports.LivenessService],exports:[exports.LivenessComponent]})],exports.LivenessModule);exports.LivenessEngine=Xt;exports.LivenessSDK=lr;exports.useLiveness=Mn;exports.verifyLiveness=kn;
36
+ */const ye=class ye 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=Qt(this._baseHref,t);return r.length>0?"#"+r:r}pushState(t,r,i,a){const c=this.prepareExternalUrl(i+j(a))||this._platformLocation.pathname;this._platformLocation.pushState(t,r,c)}replaceState(t,r,i,a){const c=this.prepareExternalUrl(i+j(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,i;(i=(r=this._platformLocation).historyGo)==null||i.call(r,t)}};u(ye,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ye,deps:[{token:z},{token:It,optional:!0}],target:s.ɵɵFactoryTarget.Injectable})),u(ye,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ye}));let Wt=ye;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Wt,decorators:[{type:o.Injectable}],ctorParameters:()=>[{type:z},{type:void 0,decorators:[{type:o.Optional},{type:o.Inject,args:[It]}]}]});const Nn={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 ot;(function(n){n[n.Decimal=0]="Decimal",n[n.Percent=1]="Percent",n[n.Currency=2]="Currency",n[n.Scientific=3]="Scientific"})(ot||(ot={}));var W;(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"})(W||(W={}));var T;(function(n){n[n.Format=0]="Format",n[n.Standalone=1]="Standalone"})(T||(T={}));var C;(function(n){n[n.Narrow=0]="Narrow",n[n.Abbreviated=1]="Abbreviated",n[n.Wide=2]="Wide",n[n.Short=3]="Short"})(C||(C={}));var O;(function(n){n[n.Short=0]="Short",n[n.Medium=1]="Medium",n[n.Long=2]="Long",n[n.Full=3]="Full"})(O||(O={}));const _={Decimal:0,Group:1,PercentSign:3,MinusSign:5,Exponential:6,Infinity:9,CurrencyDecimal:12,CurrencyGroup:13};var bn;(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"})(bn||(bn={}));function Tr(n){return o.ɵfindLocaleData(n)[o.ɵLocaleDataIndex.LocaleId]}function Or(n,e,t){const r=o.ɵfindLocaleData(n),i=[r[o.ɵLocaleDataIndex.DayPeriodsFormat],r[o.ɵLocaleDataIndex.DayPeriodsStandalone]],a=k(i,e);return k(a,t)}function Br(n,e,t){const r=o.ɵfindLocaleData(n),i=[r[o.ɵLocaleDataIndex.DaysFormat],r[o.ɵLocaleDataIndex.DaysStandalone]],a=k(i,e);return k(a,t)}function Rr(n,e,t){const r=o.ɵfindLocaleData(n),i=[r[o.ɵLocaleDataIndex.MonthsFormat],r[o.ɵLocaleDataIndex.MonthsStandalone]],a=k(i,e);return k(a,t)}function kr(n,e){const r=o.ɵfindLocaleData(n)[o.ɵLocaleDataIndex.Eras];return k(r,e)}function pt(n,e){const t=o.ɵfindLocaleData(n);return k(t[o.ɵLocaleDataIndex.DateFormat],e)}function Dt(n,e){const t=o.ɵfindLocaleData(n);return k(t[o.ɵLocaleDataIndex.TimeFormat],e)}function ht(n,e){const r=o.ɵfindLocaleData(n)[o.ɵLocaleDataIndex.DateTimeFormat];return k(r,e)}function R(n,e){const t=o.ɵfindLocaleData(n),r=t[o.ɵLocaleDataIndex.NumberSymbols][e];if(typeof r>"u"){if(e===_.CurrencyDecimal)return t[o.ɵLocaleDataIndex.NumberSymbols][_.Decimal];if(e===_.CurrencyGroup)return t[o.ɵLocaleDataIndex.NumberSymbols][_.Group]}return r}function en(n,e){return o.ɵfindLocaleData(n)[o.ɵLocaleDataIndex.NumberFormats][e]}function Mr(n){return o.ɵfindLocaleData(n)[o.ɵLocaleDataIndex.Currencies]}const Lr=o.ɵgetLocalePluralCase;function $n(n){if(!n[o.ɵLocaleDataIndex.ExtraData])throw new o.ɵRuntimeError(2303,ngDevMode&&`Missing extra locale data for the locale "${n[o.ɵLocaleDataIndex.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function xr(n){const e=o.ɵfindLocaleData(n);return $n(e),(e[o.ɵLocaleDataIndex.ExtraData][2]||[]).map(r=>typeof r=="string"?Lt(r):[Lt(r[0]),Lt(r[1])])}function Vr(n,e,t){const r=o.ɵfindLocaleData(n);$n(r);const i=[r[o.ɵLocaleDataIndex.ExtraData][0],r[o.ɵLocaleDataIndex.ExtraData][1]],a=k(i,e)||[];return k(a,t)||[]}function k(n,e){for(let t=e;t>-1;t--)if(typeof n[t]<"u")return n[t];throw new o.ɵRuntimeError(2304,ngDevMode&&"Locale data API: locale data undefined")}function Lt(n){const[e,t]=n.split(":");return{hours:+e,minutes:+t}}function Pr(n,e,t="en"){const r=Mr(t)[n]||Nn[n]||[],i=r[1];return e==="narrow"&&typeof i=="string"?i:r[0]||n}const jr=2;function Ur(n){let e;const t=Nn[n];return t&&(e=t[2]),typeof e=="number"?e:jr}const Nr=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,de={},$r=/((?:[^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 Gr(n,e,t,r){let i=Qr(n);e=P(t,e)||e;let c=[],l;for(;e;)if(l=$r.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)&&Hr(c);let p=i.getTimezoneOffset();r&&(p=Hn(r,p),i=Jr(i,r));let h="";return c.forEach(d=>{const D=Wr(d);h+=D?D(i,t,p):d==="''"?"'":d.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),h}function Hr(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(o.ɵformatRuntimeError(2300,e));else throw new o.ɵRuntimeError(2300,e)}}function vt(n,e,t){const r=new Date(0);return r.setFullYear(n,e,t),r.setHours(0,0,0),r}function P(n,e){const t=Tr(n);if(de[t]??(de[t]={}),de[t][e])return de[t][e];let r="";switch(e){case"shortDate":r=pt(n,O.Short);break;case"mediumDate":r=pt(n,O.Medium);break;case"longDate":r=pt(n,O.Long);break;case"fullDate":r=pt(n,O.Full);break;case"shortTime":r=Dt(n,O.Short);break;case"mediumTime":r=Dt(n,O.Medium);break;case"longTime":r=Dt(n,O.Long);break;case"fullTime":r=Dt(n,O.Full);break;case"short":const i=P(n,"shortTime"),a=P(n,"shortDate");r=gt(ht(n,O.Short),[i,a]);break;case"medium":const c=P(n,"mediumTime"),l=P(n,"mediumDate");r=gt(ht(n,O.Medium),[c,l]);break;case"long":const p=P(n,"longTime"),h=P(n,"longDate");r=gt(ht(n,O.Long),[p,h]);break;case"full":const d=P(n,"fullTime"),D=P(n,"fullDate");r=gt(ht(n,O.Full),[d,D]);break}return r&&(de[t][e]=r),r}function gt(n,e){return e&&(n=n.replace(/\{([^}]+)}/g,function(t,r){return e!=null&&r in e?e[r]:t})),n}function L(n,e,t="-",r,i){let a="";(n<0||i&&n<=0)&&(i?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 Yr(n,e){return L(n,3).substring(0,e)}function A(n,e,t=0,r=!1,i=!1){return function(a,c){let l=zr(n,a);if((t>0||l>-t)&&(l+=t),n===3)l===0&&t===-12&&(l=12);else if(n===6)return Yr(l,e);const p=R(c,_.MinusSign);return L(l,e,p,r,i)}}function zr(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 o.ɵRuntimeError(2301,ngDevMode&&`Unknown DateType value "${n}".`)}}function F(n,e,t=T.Format,r=!1){return function(i,a){return Zr(i,a,n,e,t,r)}}function Zr(n,e,t,r,i,a){switch(t){case 2:return Rr(e,i,r)[n.getMonth()];case 1:return Br(e,i,r)[n.getDay()];case 0:const c=n.getHours(),l=n.getMinutes();if(a){const h=xr(e),d=Vr(e,i,r),D=h.findIndex(y=>{if(Array.isArray(y)){const[g,b]=y,I=c>=g.hours&&l>=g.minutes,M=c<b.hours||c===b.hours&&l<b.minutes;if(g.hours<b.hours){if(I&&M)return!0}else if(I||M)return!0}else if(y.hours===c&&y.minutes===l)return!0;return!1});if(D!==-1)return d[D]}return Or(e,i,r)[c<12?0:1];case 3:return kr(e,r)[n.getFullYear()<=0?0:1];default:const p=t;throw new o.ɵRuntimeError(2302,ngDevMode&&`unexpected translation type ${p}`)}}function mt(n){return function(e,t,r){const i=-1*r,a=R(t,_.MinusSign),c=i>0?Math.floor(i/60):Math.ceil(i/60);switch(n){case 0:return(i>=0?"+":"")+L(c,2,a)+L(Math.abs(i%60),2,a);case 1:return"GMT"+(i>=0?"+":"")+L(c,1,a);case 2:return"GMT"+(i>=0?"+":"")+L(c,2,a)+":"+L(Math.abs(i%60),2,a);case 3:return r===0?"Z":(i>=0?"+":"")+L(c,2,a)+":"+L(Math.abs(i%60),2,a);default:throw new o.ɵRuntimeError(2310,ngDevMode&&`Unknown zone width "${n}"`)}}}const Kr=0,Ft=4;function qr(n){const e=vt(n,Kr,1).getDay();return vt(n,0,1+(e<=Ft?Ft:Ft+7)-e)}function Gn(n){const e=n.getDay(),t=e===0?-3:Ft-e;return vt(n.getFullYear(),n.getMonth(),n.getDate()+t)}function xt(n,e=!1){return function(t,r){let i;if(e){const a=new Date(t.getFullYear(),t.getMonth(),1).getDay()-1,c=t.getDate();i=1+Math.floor((c+a)/7)}else{const a=Gn(t),c=qr(a.getFullYear()),l=a.getTime()-c.getTime();i=1+Math.round(l/6048e5)}return L(i,n,R(r,_.MinusSign))}}function yt(n,e=!1){return function(t,r){const a=Gn(t).getFullYear();return L(a,n,R(r,_.MinusSign),e)}}const Vt={};function Wr(n){if(Vt[n])return Vt[n];let e;switch(n){case"G":case"GG":case"GGG":e=F(3,C.Abbreviated);break;case"GGGG":e=F(3,C.Wide);break;case"GGGGG":e=F(3,C.Narrow);break;case"y":e=A(0,1,0,!1,!0);break;case"yy":e=A(0,2,0,!0,!0);break;case"yyy":e=A(0,3,0,!1,!0);break;case"yyyy":e=A(0,4,0,!1,!0);break;case"Y":e=yt(1);break;case"YY":e=yt(2,!0);break;case"YYY":e=yt(3);break;case"YYYY":e=yt(4);break;case"M":case"L":e=A(1,1,1);break;case"MM":case"LL":e=A(1,2,1);break;case"MMM":e=F(2,C.Abbreviated);break;case"MMMM":e=F(2,C.Wide);break;case"MMMMM":e=F(2,C.Narrow);break;case"LLL":e=F(2,C.Abbreviated,T.Standalone);break;case"LLLL":e=F(2,C.Wide,T.Standalone);break;case"LLLLL":e=F(2,C.Narrow,T.Standalone);break;case"w":e=xt(1);break;case"ww":e=xt(2);break;case"W":e=xt(1,!0);break;case"d":e=A(2,1);break;case"dd":e=A(2,2);break;case"c":case"cc":e=A(7,1);break;case"ccc":e=F(1,C.Abbreviated,T.Standalone);break;case"cccc":e=F(1,C.Wide,T.Standalone);break;case"ccccc":e=F(1,C.Narrow,T.Standalone);break;case"cccccc":e=F(1,C.Short,T.Standalone);break;case"E":case"EE":case"EEE":e=F(1,C.Abbreviated);break;case"EEEE":e=F(1,C.Wide);break;case"EEEEE":e=F(1,C.Narrow);break;case"EEEEEE":e=F(1,C.Short);break;case"a":case"aa":case"aaa":e=F(0,C.Abbreviated);break;case"aaaa":e=F(0,C.Wide);break;case"aaaaa":e=F(0,C.Narrow);break;case"b":case"bb":case"bbb":e=F(0,C.Abbreviated,T.Standalone,!0);break;case"bbbb":e=F(0,C.Wide,T.Standalone,!0);break;case"bbbbb":e=F(0,C.Narrow,T.Standalone,!0);break;case"B":case"BB":case"BBB":e=F(0,C.Abbreviated,T.Format,!0);break;case"BBBB":e=F(0,C.Wide,T.Format,!0);break;case"BBBBB":e=F(0,C.Narrow,T.Format,!0);break;case"h":e=A(3,1,-12);break;case"hh":e=A(3,2,-12);break;case"H":e=A(3,1);break;case"HH":e=A(3,2);break;case"m":e=A(4,1);break;case"mm":e=A(4,2);break;case"s":e=A(5,1);break;case"ss":e=A(5,2);break;case"S":e=A(6,1);break;case"SS":e=A(6,2);break;case"SSS":e=A(6,3);break;case"Z":case"ZZ":case"ZZZ":e=mt(0);break;case"ZZZZZ":e=mt(3);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":e=mt(1);break;case"OOOO":case"ZZZZ":case"zzzz":e=mt(2);break;default:return null}return Vt[n]=e,e}function Hn(n,e){n=n.replace(/:/g,"");const t=Date.parse("Jan 01, 1970 00:00:00 "+n)/6e4;return isNaN(t)?e:t}function Xr(n,e){return n=new Date(n.getTime()),n.setMinutes(n.getMinutes()+e),n}function Jr(n,e,t){const i=n.getTimezoneOffset(),a=Hn(e,i);return Xr(n,-1*(a-i))}function Qr(n){if(An(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[i,a=1,c=1]=n.split("-").map(l=>+l);return vt(i,a-1,c)}const t=parseFloat(n);if(!isNaN(n-t))return new Date(t);let r;if(r=n.match(Nr))return es(r)}const e=new Date(n);if(!An(e))throw new o.ɵRuntimeError(2311,ngDevMode&&`Unable to convert "${n}" into a date`);return e}function es(n){const e=new Date(0);let t=0,r=0;const i=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])),i.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 An(n){return n instanceof Date&&!isNaN(n.valueOf())}const ts=/^(\d+)?\.((\d+)(-(\d+))?)?$/,_n=22,bt=".",it="0",ns=";",rs=",",Pt="#",In="¤",ss="%";function tn(n,e,t,r,i,a,c=!1){let l="",p=!1;if(!isFinite(n))l=R(t,_.Infinity);else{let h=cs(n);c&&(h=us(h));let d=e.minInt,D=e.minFrac,y=e.maxFrac;if(a){const $=a.match(ts);if($===null)throw new o.ɵRuntimeError(2306,ngDevMode&&`${a} is not a valid digit info`);const ct=$[1],nt=$[3],lt=$[5];ct!=null&&(d=jt(ct)),nt!=null&&(D=jt(nt)),lt!=null?y=jt(lt):nt!=null&&D>y&&(y=D)}ls(h,D,y);let g=h.digits,b=h.integerLen;const I=h.exponent;let M=[];for(p=g.every($=>!$);b<d;b++)g.unshift(0);for(;b<0;b++)g.unshift(0);b>0?M=g.splice(b,g.length):(M=g,g=[0]);const le=[];for(g.length>=e.lgSize&&le.unshift(g.splice(-e.lgSize,g.length).join(""));g.length>e.gSize;)le.unshift(g.splice(-e.gSize,g.length).join(""));g.length&&le.unshift(g.join("")),l=le.join(R(t,r)),M.length&&(l+=R(t,i)+M.join("")),I&&(l+=R(t,_.Exponential)+"+"+I)}return n<0&&!p?l=e.negPre+l+e.negSuf:l=e.posPre+l+e.posSuf,l}function is(n,e,t,r,i){const a=en(e,ot.Currency),c=nn(a,R(e,_.MinusSign));return c.minFrac=Ur(r),c.maxFrac=c.minFrac,tn(n,c,e,_.CurrencyGroup,_.CurrencyDecimal,i).replace(In,t).replace(In,"").trim()}function os(n,e,t){const r=en(e,ot.Percent),i=nn(r,R(e,_.MinusSign));return tn(n,i,e,_.Group,_.Decimal,t,!0).replace(new RegExp(ss,"g"),R(e,_.PercentSign))}function as(n,e,t){const r=en(e,ot.Decimal),i=nn(r,R(e,_.MinusSign));return tn(n,i,e,_.Group,_.Decimal,t)}function nn(n,e="-"){const t={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},r=n.split(ns),i=r[0],a=r[1],c=i.indexOf(bt)!==-1?i.split(bt):[i.substring(0,i.lastIndexOf(it)+1),i.substring(i.lastIndexOf(it)+1)],l=c[0],p=c[1]||"";t.posPre=l.substring(0,l.indexOf(Pt));for(let d=0;d<p.length;d++){const D=p.charAt(d);D===it?t.minFrac=t.maxFrac=d+1:D===Pt?t.maxFrac=d+1:t.posSuf+=D}const h=l.split(rs);if(t.gSize=h[1]?h[1].length:0,t.lgSize=h[2]||h[1]?(h[2]||h[1]).length:0,a){const d=i.length-t.posPre.length-t.posSuf.length,D=a.indexOf(Pt);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 us(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 cs(n){let e=Math.abs(n)+"",t=0,r,i,a,c,l;for((i=e.indexOf(bt))>-1&&(e=e.replace(bt,"")),(a=e.search(/e/i))>0?(i<0&&(i=a),i+=+e.slice(a+1),e=e.substring(0,a)):i<0&&(i=e.length),a=0;e.charAt(a)===it;a++);if(a===(l=e.length))r=[0],i=1;else{for(l--;e.charAt(l)===it;)l--;for(i-=a,r=[],c=0;a<=l;a++,c++)r[c]=Number(e.charAt(a))}return i>_n&&(r=r.splice(0,_n-1),t=i-1,i=1),{digits:r,exponent:t,integerLen:i}}function ls(n,e,t){if(e>t)throw new o.ɵRuntimeError(2307,ngDevMode&&`The minimum number of digits after fraction (${e}) is higher than the maximum (${t}).`);let r=n.digits,i=r.length-n.integerLen;const a=Math.min(Math.max(e,i),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{i=Math.max(0,i),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(;i<Math.max(0,a);i++)r.push(0);let p=a!==0;const h=e+n.integerLen,d=r.reduceRight(function(D,y,g,b){return y=y+D,b[g]=y<10?y:y-10,p&&(b[g]===0&&g>=h?b.pop():p=!1),y>=10?1:0},0);d&&(r.unshift(d),n.integerLen++)}function jt(n){const e=parseInt(n);if(isNaN(e))throw new o.ɵRuntimeError(2305,ngDevMode&&"Invalid integer literal when parsing "+n);return e}const Ce=class Ce{};u(Ce,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ce,deps:[],target:s.ɵɵFactoryTarget.Injectable})),u(Ce,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ce,providedIn:"root",useFactory:()=>new at(o.inject(o.LOCALE_ID))}));let K=Ce;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:K,decorators:[{type:o.Injectable,args:[{providedIn:"root",useFactory:()=>new at(o.inject(o.LOCALE_ID))}]}]});function Yn(n,e,t,r){let i=`=${n}`;if(e.indexOf(i)>-1||(i=t.getPluralCategory(n,r),e.indexOf(i)>-1))return i;if(e.indexOf("other")>-1)return"other";throw new o.ɵRuntimeError(2308,ngDevMode&&`No plural message found for value "${n}"`)}const Fe=class Fe extends K{constructor(t){super();u(this,"locale");this.locale=t}getPluralCategory(t,r){switch(Lr(r||this.locale)(t)){case W.Zero:return"zero";case W.One:return"one";case W.Two:return"two";case W.Few:return"few";case W.Many:return"many";default:return"other"}}};u(Fe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Fe,deps:[{token:o.LOCALE_ID}],target:s.ɵɵFactoryTarget.Injectable})),u(Fe,"ɵprov",s.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Fe}));let at=Fe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:at,decorators:[{type:o.Injectable}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Inject,args:[o.LOCALE_ID]}]}]});const Ut=/\s+/,Sn=[],Ee=class Ee{constructor(e,t){u(this,"_ngEl");u(this,"_renderer");u(this,"initialClasses",Sn);u(this,"rawClass");u(this,"stateMap",new Map);this._ngEl=e,this._renderer=t}set klass(e){this.initialClasses=e!=null?e.trim().split(Ut):Sn}set ngClass(e){this.rawClass=typeof e=="string"?e.trim().split(Ut):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 ${o.ɵstringify(e)}`);e=e.trim(),e.length>0&&e.split(Ut).forEach(r=>{t?this._renderer.addClass(this._ngEl.nativeElement,r):this._renderer.removeClass(this._ngEl.nativeElement,r)})}};u(Ee,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ee,deps:[{token:s.ElementRef},{token:s.Renderer2}],target:s.ɵɵFactoryTarget.Directive})),u(Ee,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ee,isStandalone:!0,selector:"[ngClass]",inputs:{klass:["class","klass"],ngClass:"ngClass"},ngImport:s}));let Me=Ee;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Me,decorators:[{type:o.Directive,args:[{selector:"[ngClass]"}]}],ctorParameters:()=>[{type:s.ElementRef},{type:s.Renderer2}],propDecorators:{klass:[{type:o.Input,args:["class"]}],ngClass:[{type:o.Input,args:["ngClass"]}]}});const ve=class ve{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=o.createNgModule(this.ngComponentOutletNgModule,fs(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(ve,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ve,deps:[{token:s.ViewContainerRef}],target:s.ɵɵFactoryTarget.Directive})),u(ve,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:ve,isStandalone:!0,selector:"[ngComponentOutlet]",inputs:{ngComponentOutlet:"ngComponentOutlet",ngComponentOutletInputs:"ngComponentOutletInputs",ngComponentOutletInjector:"ngComponentOutletInjector",ngComponentOutletEnvironmentInjector:"ngComponentOutletEnvironmentInjector",ngComponentOutletContent:"ngComponentOutletContent",ngComponentOutletNgModule:"ngComponentOutletNgModule"},exportAs:["ngComponentOutlet"],usesOnChanges:!0,ngImport:s}));let Le=ve;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Le,decorators:[{type:o.Directive,args:[{selector:"[ngComponentOutlet]",exportAs:"ngComponentOutlet"}]}],ctorParameters:()=>[{type:s.ViewContainerRef}],propDecorators:{ngComponentOutlet:[{type:o.Input}],ngComponentOutletInputs:[{type:o.Input}],ngComponentOutletInjector:[{type:o.Input}],ngComponentOutletEnvironmentInjector:[{type:o.Input}],ngComponentOutletContent:[{type:o.Input}],ngComponentOutletNgModule:[{type:o.Input}]}});function fs(n){return n.get(o.NgModuleRef).injector}class ds{constructor(e,t,r,i){u(this,"$implicit");u(this,"ngForOf");u(this,"index");u(this,"count");this.$implicit=e,this.ngForOf=t,this.index=r,this.count=i}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 be=class be{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 '${ps(e)}'. NgFor only supports binding to Iterables, such as Arrays.`;throw typeof e=="object"&&(t+=" Did you mean to use the keyvalue pipe?"),new o.ɵ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,i,a)=>{if(r.previousIndex==null)t.createEmbeddedView(this._template,new ds(r.item,this._ngForOf,-1,-1),a===null?void 0:a);else if(a==null)t.remove(i===null?void 0:i);else if(i!==null){const c=t.get(i);t.move(c,a),wn(c,r)}});for(let r=0,i=t.length;r<i;r++){const c=t.get(r).context;c.index=r,c.count=i,c.ngForOf=this._ngForOf}e.forEachIdentityChange(r=>{const i=t.get(r.currentIndex);wn(i,r)})}static ngTemplateContextGuard(e,t){return!0}};u(be,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:be,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:s.IterableDiffers}],target:s.ɵɵFactoryTarget.Directive})),u(be,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:be,isStandalone:!0,selector:"[ngFor][ngForOf]",inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},ngImport:s}));let xe=be;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:xe,decorators:[{type:o.Directive,args:[{selector:"[ngFor][ngForOf]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:s.IterableDiffers}],propDecorators:{ngForOf:[{type:o.Input}],ngForTrackBy:[{type:o.Input}],ngForTemplate:[{type:o.Input}]}});function wn(n,e){n.context.$implicit=e.item}function ps(n){return n.name||typeof n}const H=class H{constructor(e,t){u(this,"_viewContainer");u(this,"_context",new Ds);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){Tn(e,(typeof ngDevMode>"u"||ngDevMode)&&"ngIfThen"),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){Tn(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(H,"ngIfUseIfTypeGuard"),u(H,"ngTemplateGuard_ngIf"),u(H,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:H,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef}],target:s.ɵɵFactoryTarget.Directive})),u(H,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:H,isStandalone:!0,selector:"[ngIf]",inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},ngImport:s}));let Ve=H;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ve,decorators:[{type:o.Directive,args:[{selector:"[ngIf]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef}],propDecorators:{ngIf:[{type:o.Input}],ngIfThen:[{type:o.Input}],ngIfElse:[{type:o.Input}]}});class Ds{constructor(){u(this,"$implicit",null);u(this,"ngIf",null)}}function Tn(n,e){if(n&&!n.createEmbeddedView)throw new o.ɵRuntimeError(2020,(typeof ngDevMode>"u"||ngDevMode)&&`${e} must be a TemplateRef, but received '${o.ɵstringify(n)}'.`)}class rn{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 Ae=class Ae{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(Ae,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ae,deps:[],target:s.ɵɵFactoryTarget.Directive})),u(Ae,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ae,isStandalone:!0,selector:"[ngSwitch]",inputs:{ngSwitch:"ngSwitch"},ngImport:s}));let V=Ae;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:V,decorators:[{type:o.Directive,args:[{selector:"[ngSwitch]"}]}],propDecorators:{ngSwitch:[{type:o.Input}]}});const _e=class _e{constructor(e,t,r){u(this,"ngSwitch");u(this,"_view");u(this,"ngSwitchCase");this.ngSwitch=r,(typeof ngDevMode>"u"||ngDevMode)&&!r&&zn("ngSwitchCase","NgSwitchCase"),r._addCase(),this._view=new rn(e,t)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}};u(_e,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:_e,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:V,host:!0,optional:!0}],target:s.ɵɵFactoryTarget.Directive})),u(_e,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:_e,isStandalone:!0,selector:"[ngSwitchCase]",inputs:{ngSwitchCase:"ngSwitchCase"},ngImport:s}));let Pe=_e;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Pe,decorators:[{type:o.Directive,args:[{selector:"[ngSwitchCase]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:V,decorators:[{type:o.Optional},{type:o.Host}]}],propDecorators:{ngSwitchCase:[{type:o.Input}]}});const Ie=class Ie{constructor(e,t,r){(typeof ngDevMode>"u"||ngDevMode)&&!r&&zn("ngSwitchDefault","NgSwitchDefault"),r._addDefault(new rn(e,t))}};u(Ie,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ie,deps:[{token:s.ViewContainerRef},{token:s.TemplateRef},{token:V,host:!0,optional:!0}],target:s.ɵɵFactoryTarget.Directive})),u(Ie,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Ie,isStandalone:!0,selector:"[ngSwitchDefault]",ngImport:s}));let je=Ie;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:je,decorators:[{type:o.Directive,args:[{selector:"[ngSwitchDefault]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef},{type:s.TemplateRef},{type:V,decorators:[{type:o.Optional},{type:o.Host}]}]});function zn(n,e){throw new o.ɵ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 Se=class Se{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=Yn(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(Se,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Se,deps:[{token:K}],target:s.ɵɵFactoryTarget.Directive})),u(Se,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Se,isStandalone:!0,selector:"[ngPlural]",inputs:{ngPlural:"ngPlural"},ngImport:s}));let q=Se;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:q,decorators:[{type:o.Directive,args:[{selector:"[ngPlural]"}]}],ctorParameters:()=>[{type:K}],propDecorators:{ngPlural:[{type:o.Input}]}});const we=class we{constructor(e,t,r,i){u(this,"value");this.value=e;const a=!isNaN(Number(e));i.addCase(a?`=${e}`:e,new rn(r,t))}};u(we,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:we,deps:[{token:"ngPluralCase",attribute:!0},{token:s.TemplateRef},{token:s.ViewContainerRef},{token:q,host:!0}],target:s.ɵɵFactoryTarget.Directive})),u(we,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:we,isStandalone:!0,selector:"[ngPluralCase]",ngImport:s}));let Ue=we;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ue,decorators:[{type:o.Directive,args:[{selector:"[ngPluralCase]"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Attribute,args:["ngPluralCase"]}]},{type:s.TemplateRef},{type:s.ViewContainerRef},{type:q,decorators:[{type:o.Host}]}]});const Te=class Te{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,i]=e.split("."),a=r.indexOf("-")===-1?void 0:o.RendererStyleFlags2.DashCase;t!=null?this._renderer.setStyle(this._ngEl.nativeElement,r,i?`${t}${i}`: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(Te,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Te,deps:[{token:s.ElementRef},{token:s.KeyValueDiffers},{token:s.Renderer2}],target:s.ɵɵFactoryTarget.Directive})),u(Te,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Te,isStandalone:!0,selector:"[ngStyle]",inputs:{ngStyle:"ngStyle"},ngImport:s}));let Ne=Te;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ne,decorators:[{type:o.Directive,args:[{selector:"[ngStyle]"}]}],ctorParameters:()=>[{type:s.ElementRef},{type:s.KeyValueDiffers},{type:s.Renderer2}],propDecorators:{ngStyle:[{type:o.Input,args:["ngStyle"]}]}});const Oe=class Oe{constructor(e){u(this,"_viewContainerRef");u(this,"_viewRef",null);u(this,"ngTemplateOutletContext",null);u(this,"ngTemplateOutlet",null);u(this,"ngTemplateOutletInjector",null);u(this,"injector",o.inject(o.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(Oe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Oe,deps:[{token:s.ViewContainerRef}],target:s.ɵɵFactoryTarget.Directive})),u(Oe,"ɵdir",s.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"21.2.3",type:Oe,isStandalone:!0,selector:"[ngTemplateOutlet]",inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},usesOnChanges:!0,ngImport:s}));let $e=Oe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:$e,decorators:[{type:o.Directive,args:[{selector:"[ngTemplateOutlet]"}]}],ctorParameters:()=>[{type:s.ViewContainerRef}],propDecorators:{ngTemplateOutletContext:[{type:o.Input}],ngTemplateOutlet:[{type:o.Input}],ngTemplateOutletInjector:[{type:o.Input}]}});const On=[Me,Le,xe,Ve,$e,Ne,V,Pe,je,q,Ue];function N(n,e){return new o.ɵRuntimeError(2100,ngDevMode&&`InvalidPipeArgument: '${e}' for pipe '${o.ɵstringify(n)}'`)}function Zn(n,e){o.isSignal(e)&&console.warn(`The ${n} does not unwrap signals. Received a signal with value:`,e())}class hs{createSubscription(e,t,r){return o.untracked(()=>e.subscribe({next:t,error:r}))}dispose(e){o.untracked(()=>e.unsubscribe())}}class gs{createSubscription(e,t,r){return e.then(i=>t==null?void 0:t(i),i=>r==null?void 0:r(i)),{unsubscribe:()=>{t=null,r=null}}}dispose(e){e.unsubscribe()}}const ms=new gs,ys=new hs,J=class J{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",o.inject(o.ɵ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(o.ɵisPromise(e))return ms;if(o.ɵisSubscribable(e))return ys;throw N(J,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(J,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:J,deps:[{token:s.ChangeDetectorRef}],target:s.ɵɵFactoryTarget.Pipe})),u(J,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:J,isStandalone:!0,name:"async",pure:!1}));let Ge=J;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ge,decorators:[{type:o.Pipe,args:[{name:"async",pure:!1}]}],ctorParameters:()=>[{type:s.ChangeDetectorRef}]});const Q=class Q{transform(e){return e==null?null:(sn(Q,e),e.toLowerCase())}};u(Q,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Q,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(Q,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:Q,isStandalone:!0,name:"lowercase"}));let He=Q;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:He,decorators:[{type:o.Pipe,args:[{name:"lowercase"}]}]});const Cs=/(?:[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,ee=class ee{transform(e){return e==null?null:(sn(ee,e),e.replace(Cs,t=>t[0].toUpperCase()+t.slice(1).toLowerCase()))}};u(ee,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ee,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(ee,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ee,isStandalone:!0,name:"titlecase"}));let Ye=ee;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ye,decorators:[{type:o.Pipe,args:[{name:"titlecase"}]}]});const te=class te{transform(e){return e==null?null:(sn(te,e),e.toUpperCase())}};u(te,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:te,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(te,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:te,isStandalone:!0,name:"uppercase"}));let ze=te;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ze,decorators:[{type:o.Pipe,args:[{name:"uppercase"}]}]});function sn(n,e){if(typeof e!="string")throw N(n,e)}const Fs="mediumDate",Kn=new o.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"DATE_PIPE_DEFAULT_TIMEZONE":""),qn=new o.InjectionToken(typeof ngDevMode<"u"&&ngDevMode?"DATE_PIPE_DEFAULT_OPTIONS":""),ne=class ne{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,i){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 Gr(e,l,i||this.locale,p)}catch(l){throw N(ne,l.message)}}};u(ne,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ne,deps:[{token:o.LOCALE_ID},{token:Kn,optional:!0},{token:qn,optional:!0}],target:s.ɵɵFactoryTarget.Pipe})),u(ne,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ne,isStandalone:!0,name:"date"}));let Ze=ne;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ze,decorators:[{type:o.Pipe,args:[{name:"date"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Inject,args:[o.LOCALE_ID]}]},{type:void 0,decorators:[{type:o.Inject,args:[Kn]},{type:o.Optional}]},{type:void 0,decorators:[{type:o.Inject,args:[qn]},{type:o.Optional}]}]});const Es=/#/g,re=class re{constructor(e){u(this,"_localization");this._localization=e}transform(e,t,r){if(e==null)return"";if(typeof t!="object"||t===null)throw N(re,t);const i=Yn(e,Object.keys(t),this._localization,r);return t[i].replace(Es,e.toString())}};u(re,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:re,deps:[{token:K}],target:s.ɵɵFactoryTarget.Pipe})),u(re,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:re,isStandalone:!0,name:"i18nPlural"}));let Ke=re;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Ke,decorators:[{type:o.Pipe,args:[{name:"i18nPlural"}]}],ctorParameters:()=>[{type:K}]});const se=class se{transform(e,t){if(e==null)return"";if(typeof t!="object"||typeof e!="string")throw N(se,t);return t.hasOwnProperty(e)?t[e]:t.hasOwnProperty("other")?t.other:""}};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:"i18nSelect"}));let qe=se;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:qe,decorators:[{type:o.Pipe,args:[{name:"i18nSelect"}]}]});const Be=class Be{transform(e){return ngDevMode&&Zn("JsonPipe",e),JSON.stringify(e,null,2)}};u(Be,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Be,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(Be,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:Be,isStandalone:!0,name:"json",pure:!1}));let We=Be;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:We,decorators:[{type:o.Pipe,args:[{name:"json",pure:!1}]}]});function vs(n,e){return{key:n,value:e}}const Re=class Re{constructor(e){u(this,"differs");u(this,"differ");u(this,"keyValues",[]);u(this,"compareFn",Bn);this.differs=e}transform(e,t=Bn){if(ngDevMode&&Zn("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),i=t!==this.compareFn;return r&&(this.keyValues=[],r.forEachItem(a=>{this.keyValues.push(vs(a.key,a.currentValue))})),(r||i)&&(t&&this.keyValues.sort(t),this.compareFn=t),this.keyValues}};u(Re,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Re,deps:[{token:s.KeyValueDiffers}],target:s.ɵɵFactoryTarget.Pipe})),u(Re,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:Re,isStandalone:!0,name:"keyvalue",pure:!1}));let Xe=Re;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Xe,decorators:[{type:o.Pipe,args:[{name:"keyvalue",pure:!1}]}],ctorParameters:()=>[{type:s.KeyValueDiffers}]});function Bn(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 i=String(t),a=String(r);return i==a?0:i<a?-1:1}const ie=class ie{constructor(e){u(this,"_locale");this._locale=e}transform(e,t,r){if(!on(e))return null;r||(r=this._locale);try{const i=an(e);return as(i,r,t)}catch(i){throw N(ie,i.message)}}};u(ie,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ie,deps:[{token:o.LOCALE_ID}],target:s.ɵɵFactoryTarget.Pipe})),u(ie,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ie,isStandalone:!0,name:"number"}));let Je=ie;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Je,decorators:[{type:o.Pipe,args:[{name:"number"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Inject,args:[o.LOCALE_ID]}]}]});const oe=class oe{constructor(e){u(this,"_locale");this._locale=e}transform(e,t,r){if(!on(e))return null;r||(r=this._locale);try{const i=an(e);return os(i,r,t)}catch(i){throw N(oe,i.message)}}};u(oe,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:oe,deps:[{token:o.LOCALE_ID}],target:s.ɵɵFactoryTarget.Pipe})),u(oe,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:oe,isStandalone:!0,name:"percent"}));let Qe=oe;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Qe,decorators:[{type:o.Pipe,args:[{name:"percent"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Inject,args:[o.LOCALE_ID]}]}]});const ae=class ae{constructor(e,t="USD"){u(this,"_locale");u(this,"_defaultCurrencyCode");this._locale=e,this._defaultCurrencyCode=t}transform(e,t=this._defaultCurrencyCode,r="symbol",i,a){if(!on(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=Pr(c,r==="symbol"?"wide":"narrow",a):c=r);try{const l=an(e);return is(l,a,c,t,i)}catch(l){throw N(ae,l.message)}}};u(ae,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ae,deps:[{token:o.LOCALE_ID},{token:o.DEFAULT_CURRENCY_CODE}],target:s.ɵɵFactoryTarget.Pipe})),u(ae,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ae,isStandalone:!0,name:"currency"}));let et=ae;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:et,decorators:[{type:o.Pipe,args:[{name:"currency"}]}],ctorParameters:()=>[{type:void 0,decorators:[{type:o.Inject,args:[o.LOCALE_ID]}]},{type:void 0,decorators:[{type:o.Inject,args:[o.DEFAULT_CURRENCY_CODE]}]}]});function on(n){return!(n==null||n===""||n!==n)}function an(n){if(typeof n=="string"&&!isNaN(Number(n)-parseFloat(n)))return Number(n);if(typeof n!="number")throw new o.ɵRuntimeError(2309,ngDevMode&&`${n} is not a number`);return n}const ue=class ue{transform(e,t,r){if(e==null)return null;if(!(typeof e=="string"||Array.isArray(e)))throw N(ue,e);return e.slice(t,r)}};u(ue,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:ue,deps:[],target:s.ɵɵFactoryTarget.Pipe})),u(ue,"ɵpipe",s.ɵɵngDeclarePipe({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:ue,isStandalone:!0,name:"slice",pure:!1}));let tt=ue;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:tt,decorators:[{type:o.Pipe,args:[{name:"slice",pure:!1}]}]});const Rn=[Ge,ze,He,We,tt,Je,Qe,Ye,et,Ze,Ke,qe,Xe],Y=class Y{};u(Y,"ɵfac",s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Y,deps:[],target:s.ɵɵFactoryTarget.NgModule})),u(Y,"ɵmod",s.ɵɵngDeclareNgModule({minVersion:"14.0.0",version:"21.2.3",ngImport:s,type:Y,imports:[Me,Le,xe,Ve,$e,Ne,V,Pe,je,q,Ue,Ge,ze,He,We,tt,Je,Qe,Ye,et,Ze,Ke,qe,Xe],exports:[Me,Le,xe,Ve,$e,Ne,V,Pe,je,q,Ue,Ge,ze,He,We,tt,Je,Qe,Ye,et,Ze,Ke,qe,Xe]})),u(Y,"ɵinj",s.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:Y}));let At=Y;s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"21.2.3",ngImport:s,type:At,decorators:[{type:o.NgModule,args:[{imports:[On,Rn],exports:[On,Rn]}]}]});var bs=Object.defineProperty,As=Object.getOwnPropertyDescriptor,v=(n,e,t,r)=>{for(var i=r>1?void 0:r?As(e,t):e,a=n.length-1,c;a>=0;a--)(c=n[a])&&(i=(r?c(e,t,i):c(i))||i);return r&&i&&bs(e,t,i),i};exports.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 o.EventEmitter,this.onError=new o.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(i=>i.stop())}};v([o.ViewChild("webcam")],exports.LivenessComponent.prototype,"webcamRef",2);v([o.Input()],exports.LivenessComponent.prototype,"apiUrl",2);v([o.Input()],exports.LivenessComponent.prototype,"duration",2);v([o.Input()],exports.LivenessComponent.prototype,"smileThreshold",2);v([o.Input()],exports.LivenessComponent.prototype,"blinkThreshold",2);v([o.Input()],exports.LivenessComponent.prototype,"minturnHeadThreshold",2);v([o.Input()],exports.LivenessComponent.prototype,"maxturnHeadThreshold",2);v([o.Input()],exports.LivenessComponent.prototype,"containerClass",2);v([o.Input()],exports.LivenessComponent.prototype,"videoWrapperClass",2);v([o.Input()],exports.LivenessComponent.prototype,"videoClass",2);v([o.Input()],exports.LivenessComponent.prototype,"timerClass",2);v([o.Input()],exports.LivenessComponent.prototype,"challengeTextClass",2);v([o.Input()],exports.LivenessComponent.prototype,"buttonClass",2);v([o.Input()],exports.LivenessComponent.prototype,"retryButtonClass",2);v([o.Input()],exports.LivenessComponent.prototype,"statusOverlayClass",2);v([o.Input()],exports.LivenessComponent.prototype,"successMessageClass",2);v([o.Input()],exports.LivenessComponent.prototype,"errorMessageClass",2);v([o.Input()],exports.LivenessComponent.prototype,"instructionBoxClass",2);v([o.Output()],exports.LivenessComponent.prototype,"onComplete",2);v([o.Output()],exports.LivenessComponent.prototype,"onError",2);exports.LivenessComponent=v([o.Component({selector:"LivenessCheck",standalone:!0,imports:[At],templateUrl:"./liveness.component.html",styleUrls:["./liveness.component.css"]})],exports.LivenessComponent);exports.LivenessEngine=Xt;exports.LivenessSDK=lr;exports.useLiveness=Mn;exports.verifyLiveness=kn;
package/dist/index.d.ts CHANGED
@@ -82,9 +82,6 @@ export declare interface LivenessEngineConfig {
82
82
  onError?: (error: LivenessSDKResult) => void;
83
83
  }
84
84
 
85
- export declare class LivenessModule {
86
- }
87
-
88
85
  export declare interface LivenessResponse {
89
86
  is_live: boolean;
90
87
  reason?: string;