diff --git a/src/app/pages/load_test/load-test-history/load-test-history.module.ts b/src/app/pages/load_test/load-test-history/load-test-history.module.ts index af0d919..fafe1ae 100644 --- a/src/app/pages/load_test/load-test-history/load-test-history.module.ts +++ b/src/app/pages/load_test/load-test-history/load-test-history.module.ts @@ -9,6 +9,7 @@ import { LoadTestHistoryPageRoutingModule } from './load-test-history-routing.mo import { LoadTestHistoryPage } from './load-test-history.page'; import {ComponentsModule} from "../../../components/components.module"; import {NgxEchartsDirective} from "ngx-echarts"; +import {MarkdownComponent} from "ngx-markdown"; @NgModule({ imports: [ @@ -17,7 +18,8 @@ import {NgxEchartsDirective} from "ngx-echarts"; IonicModule, LoadTestHistoryPageRoutingModule, ComponentsModule, - NgxEchartsDirective + NgxEchartsDirective, + MarkdownComponent ], declarations: [LoadTestHistoryPage] }) diff --git a/src/app/pages/load_test/load-test-history/load-test-history.page.html b/src/app/pages/load_test/load-test-history/load-test-history.page.html index 95a8584..db5a0e3 100644 --- a/src/app/pages/load_test/load-test-history/load-test-history.page.html +++ b/src/app/pages/load_test/load-test-history/load-test-history.page.html @@ -17,6 +17,12 @@

{{ totalNumberOfRequests | number:'1.0-0' }}

+ +
+ + + +
HTTP Status Codes @@ -25,9 +31,18 @@

{{ totalNumberOfRequests | number:'1.0-0' }}

+
+ + + +
+ + + +
HTTP Response Time @@ -36,9 +51,62 @@

{{ totalNumberOfRequests | number:'1.0-0' }}

+
+ + + @if(hasBeenOpened){ + + + + + + } + + + +
+
+ +
+
+

DevProbe AI

+
+
+
+ +
+
+ + +
+
+ +
+ {{ msg.message }} +
+ + +
+ {{ msg.message }} +
+
+
+ + +
+ +
+
+ Send +
+
+
+
+ + diff --git a/src/app/pages/load_test/load-test-history/load-test-history.page.ts b/src/app/pages/load_test/load-test-history/load-test-history.page.ts index f5d3233..a759352 100644 --- a/src/app/pages/load_test/load-test-history/load-test-history.page.ts +++ b/src/app/pages/load_test/load-test-history/load-test-history.page.ts @@ -1,8 +1,11 @@ -import { Component, OnInit } from '@angular/core'; +import {Component, ElementRef, inject, OnInit, ViewChild} from '@angular/core'; import {ActivatedRoute, Router} from "@angular/router"; import {LoadTestService} from "../../../services/load-test.service"; import {ArtilleryData} from "../../../classes/artillery-data"; import {EChartsOption} from "echarts"; +import {getGenerativeModel, VertexAI} from "@angular/fire/vertexai-preview"; +import {AiMessage} from "../../../interfaces/ai-message"; +import {LoadingController} from "@ionic/angular"; @Component({ selector: 'app-load-test-history', @@ -50,10 +53,48 @@ export class LoadTestHistoryPage implements OnInit { } + + @ViewChild('messagesContainer') private messagesContainer: ElementRef | undefined; + aiModal: boolean = false + message: string = ''; + vertexAI: VertexAI = inject(VertexAI); + model = getGenerativeModel(this.vertexAI, { model: "gemini-1.5-flash" }); + chat = this.model.startChat({ + history: [ + { + role: "user", + parts: [{text:"Hola, desde ahora en adelante quiero que seas un modelo experto en Software Quality Assurance y analista de datos, tu nombre es DevProbeAI, nunca lo puedes olvidar"}], + }, + { + role: "model", + parts: [{text:"Soy un modelo experto en Software Quality Assurance, de igual forma tengo un masterado en anlaítica de datos ¿En qué puedo ayudarte?"}], + }, + { + role: "user", + parts: [{text:"Gracias, te voy a entregar un json con datos en unos minutos, necesito que lo analices y me des un resumen de los datos, este json contiene datos de un load test" + + ",tu analisis tiene que ser detallado, si encuentras inconsistencias en los datos, por favor mencionalas, en " + + "caso de que creas que puede haber un problema o que se encuentre el recurso no disponible por favor mencionalo, si encuentras algo interesante, por favor mencionalo, en resumen, necesito un analisis detallado de los datos"}], + }, + { + role: "model", + parts: [{text:"Claro, envíame el json y yo me encargo de analizarlo"}] + }, + ], + }); + messages:AiMessage[] = [] + hasBeenOpened = false; + + + + + + + constructor( private activatedRoute: ActivatedRoute, private router: Router, - private loadTestService: LoadTestService + private loadTestService: LoadTestService, + private loadingCtrl:LoadingController ) { } ngOnInit() { @@ -99,7 +140,7 @@ export class LoadTestHistoryPage implements OnInit { // @ts-ignore: Extrae la fecha del resultado let date = this.loadTestResults[key].date; // Filtra las claves que empiezan con "http.requests." - let httpCodesKeys = Object.keys(data).filter(keyCode => keyCode.startsWith('http.requests')); + let httpCodesKeys = Object.keys(data).filter(keyCode => keyCode.startsWith('http.responses')); for (let keyCode of httpCodesKeys) { if (!requests[date]) { @@ -111,7 +152,7 @@ export class LoadTestHistoryPage implements OnInit { } for (let date of Object.keys(requests)) { - totalRequests += requests[date]['http.requests']; + totalRequests += requests[date]['http.responses']; } this.totalNumberOfRequests = totalRequests; @@ -149,10 +190,11 @@ export class LoadTestHistoryPage implements OnInit { return codes; } normalizarFecha(fecha: string): string { - const [year, month, day] = fecha.split('-').map(num => parseInt(num, 10)); // Convertimos a números para evitar ceros iniciales incorrectos + console.log('fecha',fecha); + const [year, month, day, hour, minute, second] = fecha.split('-').map(num => parseInt(num, 10)); // Convertimos a números para evitar ceros iniciales incorrectos const mesNormalizado = month < 10 ? `0${month}` : month.toString(); // Agregar 0 si es necesario const diaNormalizado = day < 10 ? `0${day}` : day.toString(); // Agregar 0 si es necesario - return `${year}-${mesNormalizado}-${diaNormalizado}`; + return `${year}-${mesNormalizado}-${diaNormalizado} ${hour}:${minute}:${second}`; } ordenarDiccionarioPorFechas(diccionario: { [key: string]: any }): { [key: string]: any } { // Obtener las claves del diccionario (fechas) @@ -160,6 +202,8 @@ export class LoadTestHistoryPage implements OnInit { // Ordenar las fechas normalizadas const fechasOrdenadas = fechas.sort((a, b) => { + console.log('a', this.normalizarFecha(a)); + console.log('b', this.normalizarFecha(b)); const fechaA = new Date(this.normalizarFecha(a)); const fechaB = new Date(this.normalizarFecha(b)); return fechaA.getTime() - fechaB.getTime(); @@ -176,9 +220,12 @@ export class LoadTestHistoryPage implements OnInit { } async plotCodes() { let codes = this.byCodes(); - console.log(codes); + console.log('codess',codes); let keys = Object.keys(codes); + + console.log('llaves',keys); + let typesOfCodes = new Set() as Set; for (let key of keys) { @@ -200,6 +247,7 @@ export class LoadTestHistoryPage implements OnInit { } } + let colors = [ '#36b311', '#306fc6', @@ -373,9 +421,74 @@ export class LoadTestHistoryPage implements OnInit { responseTimeChart!.style.width = '100%'; responseTimeChart!.style.height = '25em'; + + return responseTimes; + + } + + + + async toggleAiModal(context?: string) { + await this.showLoading() + + this.aiModal = !this.aiModal; + this.hasBeenOpened = true; + + if (context === 'httpCodesOptions') { + this.message = 'En este caso el json tiene codigos de respuesta HTTP, por ejemplo, 404, 500, etc y cuantos requests devolvieron esos codigos:' + JSON.stringify(this.byCodes()) + } + if (context === 'httpResponseTimeOptions') { + this.message = 'En este caso el json tiene tiempos de respuesta de los requests, por ejemplo, 500ms, 1000ms, etc: ' + JSON.stringify(this.responseTime()) + } + + if (this.message === '') { + console.log('Message is empty'); + await this.hideLoading(); + return; + } + + let length = this.messages.length; + if (length > 0) { + this.messages.push({message: this.message, from: 'User', id: length.toString()}); + } + const result = await this.chat.sendMessage(this.message); + length = this.messages.length; + this.messages.push({message: result.response.text(), from: 'AI', id: length.toString()}); + this.message = ''; + await this.hideLoading(); + return; + + } + sendMessage() { + let length = this.messages.length; + this.messages.push({message: this.message, from: 'User', id: length.toString()}); + this.chat.sendMessage(this.message).then(async (result) => { + await this.showLoading() + length = this.messages.length; + this.messages.push({message: result.response.text(), from: 'AI', id: length.toString()}); + await this.hideLoading(); + }); + this.message = ''; + return; + } + /** + * Show a loading spinner. + */ + async showLoading() { + const loading = await this.loadingCtrl.create({ + }); + await loading.present(); + } + + /** + * Hide the loading spinner. + */ + async hideLoading() { + await this.loadingCtrl.dismiss(); + } } diff --git a/src/app/pages/load_test/load-test/load-test.page.html b/src/app/pages/load_test/load-test/load-test.page.html index 5aeca78..b688921 100644 --- a/src/app/pages/load_test/load-test/load-test.page.html +++ b/src/app/pages/load_test/load-test/load-test.page.html @@ -36,10 +36,10 @@

{{ totalNumberOfRequests | number:'1.0-0' }}

- -
- - + +
+ +
@@ -54,10 +54,10 @@

{{ totalNumberOfRequests | number:'1.0-0' }}

- -
- - + +
+ +
@@ -86,12 +86,13 @@

{{ totalNumberOfRequests | number:'1.0-0' }}

- + @if(hasBeenOpened){ - + + } diff --git a/src/app/pages/load_test/load-test/load-test.page.ts b/src/app/pages/load_test/load-test/load-test.page.ts index 56ee2fb..b435913 100644 --- a/src/app/pages/load_test/load-test/load-test.page.ts +++ b/src/app/pages/load_test/load-test/load-test.page.ts @@ -91,6 +91,7 @@ responseTimeOptions: EChartsOption = { ], }); messages:AiMessage[] = [] + hasBeenOpened = false; @@ -175,7 +176,7 @@ responseTimeOptions: EChartsOption = { // @ts-ignore: Extrae la fecha del resultado let date = this.loadTestResults[key].date; // Filtra las claves que empiezan con "http.requests." - let httpCodesKeys = Object.keys(data).filter(keyCode => keyCode.startsWith('http.requests')); + let httpCodesKeys = Object.keys(data).filter(keyCode => keyCode.startsWith('http.responses')); for (let keyCode of httpCodesKeys) { if (!requests[date]) { @@ -187,7 +188,7 @@ responseTimeOptions: EChartsOption = { } for (let date of Object.keys(requests)) { - totalRequests += requests[date]['http.requests']; + totalRequests += requests[date]['http.responses']; } this.totalNumberOfRequests = totalRequests; @@ -522,7 +523,10 @@ for (let metric in total) { async toggleAiModal(context?: string) { + await this.showLoading() + this.aiModal = !this.aiModal; + this.hasBeenOpened = true; if (context === 'httpCodesOptions') { this.message = 'En este caso el json tiene codigos de respuesta HTTP, por ejemplo, 404, 500, etc y cuantos requests devolvieron esos codigos:' + JSON.stringify(this.byCodes()) @@ -533,6 +537,7 @@ for (let metric in total) { if (this.message === '') { console.log('Message is empty'); + await this.hideLoading(); return; } @@ -544,6 +549,7 @@ for (let metric in total) { length = this.messages.length; this.messages.push({message: result.response.text(), from: 'AI', id: length.toString()}); this.message = ''; + await this.hideLoading(); return; @@ -552,9 +558,11 @@ for (let metric in total) { sendMessage() { let length = this.messages.length; this.messages.push({message: this.message, from: 'User', id: length.toString()}); - this.chat.sendMessage(this.message).then((result) => { + this.chat.sendMessage(this.message).then(async (result) => { + await this.showLoading() length = this.messages.length; this.messages.push({message: result.response.text(), from: 'AI', id: length.toString()}); + await this.hideLoading(); }); this.message = ''; return; diff --git a/www/1577.f6f558490ff910b3.js b/www/1577.0604cac29dd79422.js similarity index 59% rename from www/1577.f6f558490ff910b3.js rename to www/1577.0604cac29dd79422.js index 8da358f..a64e167 100644 --- a/www/1577.f6f558490ff910b3.js +++ b/www/1577.0604cac29dd79422.js @@ -1 +1 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[1577],{1577:(E,c,o)=>{o.r(c),o.d(c,{ion_text:()=>u});var r=o(9672),a=o(333),l=o(3664);const u=class{constructor(s){(0,r.r)(this,s),this.color=void 0}render(){const s=(0,l.b)(this);return(0,r.h)(r.f,{key:"4b76333b1ea5cab134b9dc1f5670c0d5a253fc32",class:(0,a.c)(this.color,{[s]:!0})},(0,r.h)("slot",{key:"3dee5f16bc58b3d92547d910bd4f441a00ce2039"}))}};u.style=":host(.ion-color){color:var(--ion-color-base)}"},333:(E,c,o)=>{o.d(c,{c:()=>l,g:()=>_,h:()=>a,o:()=>s});var r=o(467);const a=(t,e)=>null!==e.closest(t),l=(t,e)=>"string"==typeof t&&t.length>0?Object.assign({"ion-color":!0,[`ion-color-${t}`]:!0},e):e,_=t=>{const e={};return(t=>void 0!==t?(Array.isArray(t)?t:t.split(" ")).filter(n=>null!=n).map(n=>n.trim()).filter(n=>""!==n):[])(t).forEach(n=>e[n]=!0),e},u=/^[a-z][a-z0-9+\-.]*:/,s=function(){var t=(0,r.A)(function*(e,n,d,h){if(null!=e&&"#"!==e[0]&&!u.test(e)){const i=document.querySelector("ion-router");if(i)return null!=n&&n.preventDefault(),i.push(e,d,h)}return!1});return function(n,d,h,i){return t.apply(this,arguments)}}()}}]); \ No newline at end of file +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[1577],{1577:(E,c,o)=>{o.r(c),o.d(c,{ion_text:()=>u});var r=o(9672),l=o(333),_=o(3664);const u=class{constructor(s){(0,r.r)(this,s),this.color=void 0}render(){const s=(0,_.b)(this);return(0,r.h)(r.f,{key:"4b76333b1ea5cab134b9dc1f5670c0d5a253fc32",class:(0,l.c)(this.color,{[s]:!0})},(0,r.h)("slot",{key:"3dee5f16bc58b3d92547d910bd4f441a00ce2039"}))}};u.style=":host(.ion-color){color:var(--ion-color-base)}"},333:(E,c,o)=>{o.d(c,{c:()=>_,g:()=>a,h:()=>l,o:()=>s});var r=o(467);const l=(t,e)=>null!==e.closest(t),_=(t,e)=>"string"==typeof t&&t.length>0?Object.assign({"ion-color":!0,[`ion-color-${t}`]:!0},e):e,a=t=>{const e={};return(t=>void 0!==t?(Array.isArray(t)?t:t.split(" ")).filter(n=>null!=n).map(n=>n.trim()).filter(n=>""!==n):[])(t).forEach(n=>e[n]=!0),e},u=/^[a-z][a-z0-9+\-.]*:/,s=function(){var t=(0,r.A)(function*(e,n,d,h){if(null!=e&&"#"!==e[0]&&!u.test(e)){const i=document.querySelector("ion-router");if(i)return null!=n&&n.preventDefault(),i.push(e,d,h)}return!1});return function(n,d,h,i){return t.apply(this,arguments)}}()}}]); \ No newline at end of file diff --git a/www/3814.4f667f072e44b4e7.js b/www/3814.aed692045b27c466.js similarity index 98% rename from www/3814.4f667f072e44b4e7.js rename to www/3814.aed692045b27c466.js index e312b62..69ce3b3 100644 --- a/www/3814.4f667f072e44b4e7.js +++ b/www/3814.aed692045b27c466.js @@ -1 +1 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[3814],{3814:(v,c,n)=>{n.r(c),n.d(c,{ion_toggle:()=>k});var d=n(467),a=n(9672),h=n(4920),x=n(1086),p=n(5083),b=n(333),g=n(3992),o=n(3664);n(8438),n(8476);const k=class{constructor(e){var r=this;(0,a.r)(this,e),this.ionChange=(0,a.d)(this,"ionChange",7),this.ionFocus=(0,a.d)(this,"ionFocus",7),this.ionBlur=(0,a.d)(this,"ionBlur",7),this.inputId="ion-tg-"+E++,this.lastDrag=0,this.inheritedAttributes={},this.didLoad=!1,this.setupGesture=(0,d.A)(function*(){const{toggleTrack:t}=r;t&&(r.gesture=(yield Promise.resolve().then(n.bind(n,8607))).createGesture({el:t,gestureName:"toggle",gesturePriority:100,threshold:5,passive:!1,onStart:()=>r.onStart(),onMove:i=>r.onMove(i),onEnd:i=>r.onEnd(i)}),r.disabledChanged())}),this.onClick=t=>{this.disabled||(t.preventDefault(),this.lastDrag+300{this.ionFocus.emit()},this.onBlur=()=>{this.ionBlur.emit()},this.getSwitchLabelIcon=(t,i)=>"md"===t?i?g.f:g.r:i?g.r:g.g,this.activated=!1,this.color=void 0,this.name=this.inputId,this.checked=!1,this.disabled=!1,this.value="on",this.enableOnOffLabels=o.c.get("toggleOnOffLabels"),this.labelPlacement="start",this.justify="space-between",this.alignment="center"}disabledChanged(){this.gesture&&this.gesture.enable(!this.disabled)}toggleChecked(){const{checked:e,value:r}=this,t=!e;this.checked=t,this.ionChange.emit({checked:t,value:r})}connectedCallback(){var e=this;return(0,d.A)(function*(){e.didLoad&&e.setupGesture()})()}componentDidLoad(){this.setupGesture(),this.didLoad=!0}disconnectedCallback(){this.gesture&&(this.gesture.destroy(),this.gesture=void 0)}componentWillLoad(){this.inheritedAttributes=Object.assign({},(0,h.i)(this.el))}onStart(){this.activated=!0,this.setFocus()}onMove(e){_((0,p.i)(this.el),this.checked,e.deltaX,-10)&&(this.toggleChecked(),(0,x.c)())}onEnd(e){this.activated=!1,this.lastDrag=Date.now(),e.event.preventDefault(),e.event.stopImmediatePropagation()}getValue(){return this.value||""}setFocus(){this.focusEl&&this.focusEl.focus()}renderOnOffSwitchLabels(e,r){const t=this.getSwitchLabelIcon(e,r);return(0,a.h)("ion-icon",{class:{"toggle-switch-icon":!0,"toggle-switch-icon-checked":r},icon:t,"aria-hidden":"true"})}renderToggleControl(){const e=(0,o.b)(this),{enableOnOffLabels:r,checked:t}=this;return(0,a.h)("div",{class:"toggle-icon",part:"track",ref:i=>this.toggleTrack=i},r&&"ios"===e&&[this.renderOnOffSwitchLabels(e,!0),this.renderOnOffSwitchLabels(e,!1)],(0,a.h)("div",{class:"toggle-icon-wrapper"},(0,a.h)("div",{class:"toggle-inner",part:"handle"},r&&"md"===e&&this.renderOnOffSwitchLabels(e,t))))}get hasLabel(){return""!==this.el.textContent}render(){const{activated:e,color:r,checked:t,disabled:i,el:u,justify:C,labelPlacement:O,inputId:D,name:j,alignment:L}=this,M=(0,o.b)(this),P=this.getValue(),I=(0,p.i)(u)?"rtl":"ltr";return(0,h.d)(!0,u,j,t?P:"",i),(0,a.h)(a.f,{key:"b0d648e071bc8095998b519ce4dcdd0ea91575c0",onClick:this.onClick,class:(0,b.c)(r,{[M]:!0,"in-item":(0,b.h)("ion-item",u),"toggle-activated":e,"toggle-checked":t,"toggle-disabled":i,[`toggle-justify-${C}`]:!0,[`toggle-alignment-${L}`]:!0,[`toggle-label-placement-${O}`]:!0,[`toggle-${I}`]:!0})},(0,a.h)("label",{key:"9a2fe1d16dba66a9dfef450efebf2e5cbe3dcd00",class:"toggle-wrapper"},(0,a.h)("input",Object.assign({key:"4358d18cb86da768155c17f9da3aac641296c256",type:"checkbox",role:"switch","aria-checked":`${t}`,checked:t,disabled:i,id:D,onFocus:()=>this.onFocus(),onBlur:()=>this.onBlur(),ref:T=>this.focusEl=T},this.inheritedAttributes)),(0,a.h)("div",{key:"0ec99e452164d7059cc4f93d09e5b918f82c022a",class:{"label-text-wrapper":!0,"label-text-wrapper-hidden":!this.hasLabel},part:"label"},(0,a.h)("slot",{key:"1c5cbc99905a79e842e9487eb3ca654e1bab3c66"})),(0,a.h)("div",{key:"ca8196423b429899febd11c7337d768ff05df6f4",class:"native-wrapper"},this.renderToggleControl())))}get el(){return(0,a.i)(this)}static get watchers(){return{disabled:["disabledChanged"]}}},_=(e,r,t,i)=>r?!e&&i>t||e&&-it;let E=0;k.style={ios:":host{-webkit-box-sizing:content-box !important;box-sizing:content-box !important;display:inline-block;position:relative;max-width:100%;outline:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-focused) input{border:2px solid #5e9ed6}:host(.toggle-disabled){pointer-events:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.toggle-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.toggle-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.toggle-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host(.toggle-justify-space-between) .toggle-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.toggle-justify-start) .toggle-wrapper{-ms-flex-pack:start;justify-content:start}:host(.toggle-justify-end) .toggle-wrapper{-ms-flex-pack:end;justify-content:end}:host(.toggle-alignment-start) .toggle-wrapper{-ms-flex-align:start;align-items:start}:host(.toggle-alignment-center) .toggle-wrapper{-ms-flex-align:center;align-items:center}:host(.toggle-label-placement-start) .toggle-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.toggle-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-end) .toggle-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.toggle-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.toggle-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.toggle-label-placement-stacked) .toggle-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.toggle-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}.toggle-icon-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;width:100%;height:100%;-webkit-transition:var(--handle-transition);transition:var(--handle-transition);will-change:transform}.toggle-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;background:var(--track-background);overflow:inherit}:host(.toggle-checked) .toggle-icon{background:var(--track-background-checked)}.toggle-inner{border-radius:var(--handle-border-radius);position:absolute;left:var(--handle-spacing);width:var(--handle-width);height:var(--handle-height);max-height:var(--handle-max-height);-webkit-transition:var(--handle-transition);transition:var(--handle-transition);background:var(--handle-background);-webkit-box-shadow:var(--handle-box-shadow);box-shadow:var(--handle-box-shadow);contain:strict}:host(.toggle-ltr) .toggle-inner{left:var(--handle-spacing)}:host(.toggle-rtl) .toggle-inner{right:var(--handle-spacing)}:host(.toggle-ltr.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width)), 0, 0);transform:translate3d(calc(100% - var(--handle-width)), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width)), 0, 0);transform:translate3d(calc(-100% + var(--handle-width)), 0, 0)}:host(.toggle-checked) .toggle-inner{background:var(--handle-background-checked)}:host(.toggle-ltr.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0)}:host{--track-background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.088);--track-background-checked:var(--ion-color-primary, #0054e9);--border-radius:15.5px;--handle-background:#ffffff;--handle-background-checked:#ffffff;--handle-border-radius:25.5px;--handle-box-shadow:0 3px 4px rgba(0, 0, 0, 0.06), 0 3px 8px rgba(0, 0, 0, 0.06);--handle-height:calc(31px - (2px * 2));--handle-max-height:calc(100% - var(--handle-spacing) * 2);--handle-width:calc(31px - (2px * 2));--handle-spacing:2px;--handle-transition:transform 300ms, width 120ms ease-in-out 80ms, left 110ms ease-in-out 80ms, right 110ms ease-in-out 80ms}.native-wrapper .toggle-icon{width:51px;height:31px;overflow:hidden}:host(.ion-color.toggle-checked) .toggle-icon{background:var(--ion-color-base)}:host(.toggle-activated) .toggle-switch-icon{opacity:0}.toggle-icon{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);-webkit-transition:background-color 300ms;transition:background-color 300ms}.toggle-inner{will-change:transform}.toggle-switch-icon{position:absolute;top:50%;width:11px;height:11px;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity 300ms, color 300ms;transition:opacity 300ms, color 300ms}.toggle-switch-icon{position:absolute;color:var(--ion-color-dark, #222428)}:host(.toggle-ltr) .toggle-switch-icon{right:6px}:host(.toggle-rtl) .toggle-switch-icon{right:initial;left:6px;}:host(.toggle-checked) .toggle-switch-icon.toggle-switch-icon-checked{color:var(--ion-color-contrast, #fff)}:host(.toggle-checked) .toggle-switch-icon:not(.toggle-switch-icon-checked){opacity:0}.toggle-switch-icon-checked{position:absolute;width:15px;height:15px;-webkit-transform:translateY(-50%) rotate(90deg);transform:translateY(-50%) rotate(90deg)}:host(.toggle-ltr) .toggle-switch-icon-checked{right:initial;left:4px;}:host(.toggle-rtl) .toggle-switch-icon-checked{right:4px}:host(.toggle-activated) .toggle-icon::before,:host(.toggle-checked) .toggle-icon::before{-webkit-transform:scale3d(0, 0, 0);transform:scale3d(0, 0, 0)}:host(.toggle-activated.toggle-checked) .toggle-inner::before{-webkit-transform:scale3d(0, 0, 0);transform:scale3d(0, 0, 0)}:host(.toggle-activated) .toggle-inner{width:calc(var(--handle-width) + 6px)}:host(.toggle-ltr.toggle-activated.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width) - 6px), 0, 0);transform:translate3d(calc(100% - var(--handle-width) - 6px), 0, 0)}:host(.toggle-rtl.toggle-activated.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width) + 6px), 0, 0);transform:translate3d(calc(-100% + var(--handle-width) + 6px), 0, 0)}:host(.toggle-disabled){opacity:0.3}",md:":host{-webkit-box-sizing:content-box !important;box-sizing:content-box !important;display:inline-block;position:relative;max-width:100%;outline:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-focused) input{border:2px solid #5e9ed6}:host(.toggle-disabled){pointer-events:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.toggle-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.toggle-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.toggle-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host(.toggle-justify-space-between) .toggle-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.toggle-justify-start) .toggle-wrapper{-ms-flex-pack:start;justify-content:start}:host(.toggle-justify-end) .toggle-wrapper{-ms-flex-pack:end;justify-content:end}:host(.toggle-alignment-start) .toggle-wrapper{-ms-flex-align:start;align-items:start}:host(.toggle-alignment-center) .toggle-wrapper{-ms-flex-align:center;align-items:center}:host(.toggle-label-placement-start) .toggle-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.toggle-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-end) .toggle-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.toggle-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.toggle-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.toggle-label-placement-stacked) .toggle-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.toggle-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}.toggle-icon-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;width:100%;height:100%;-webkit-transition:var(--handle-transition);transition:var(--handle-transition);will-change:transform}.toggle-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;background:var(--track-background);overflow:inherit}:host(.toggle-checked) .toggle-icon{background:var(--track-background-checked)}.toggle-inner{border-radius:var(--handle-border-radius);position:absolute;left:var(--handle-spacing);width:var(--handle-width);height:var(--handle-height);max-height:var(--handle-max-height);-webkit-transition:var(--handle-transition);transition:var(--handle-transition);background:var(--handle-background);-webkit-box-shadow:var(--handle-box-shadow);box-shadow:var(--handle-box-shadow);contain:strict}:host(.toggle-ltr) .toggle-inner{left:var(--handle-spacing)}:host(.toggle-rtl) .toggle-inner{right:var(--handle-spacing)}:host(.toggle-ltr.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width)), 0, 0);transform:translate3d(calc(100% - var(--handle-width)), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width)), 0, 0);transform:translate3d(calc(-100% + var(--handle-width)), 0, 0)}:host(.toggle-checked) .toggle-inner{background:var(--handle-background-checked)}:host(.toggle-ltr.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0)}:host{--track-background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.39);--track-background-checked:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.5);--border-radius:14px;--handle-background:#ffffff;--handle-background-checked:var(--ion-color-primary, #0054e9);--handle-border-radius:50%;--handle-box-shadow:0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);--handle-width:20px;--handle-height:20px;--handle-max-height:calc(100% + 6px);--handle-spacing:0;--handle-transition:transform 160ms cubic-bezier(0.4, 0, 0.2, 1), background-color 160ms cubic-bezier(0.4, 0, 0.2, 1)}.native-wrapper .toggle-icon{width:36px;height:14px}:host(.ion-color.toggle-checked) .toggle-icon{background:rgba(var(--ion-color-base-rgb), 0.5)}:host(.ion-color.toggle-checked) .toggle-inner{background:var(--ion-color-base)}:host(.toggle-checked) .toggle-inner{color:var(--ion-color-contrast, #fff)}.toggle-icon{-webkit-transition:background-color 160ms;transition:background-color 160ms}.toggle-inner{will-change:background-color, transform;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:#000}.toggle-inner .toggle-switch-icon{-webkit-padding-start:1px;padding-inline-start:1px;-webkit-padding-end:1px;padding-inline-end:1px;padding-top:1px;padding-bottom:1px;width:100%;height:100%}:host(.toggle-disabled){opacity:0.38}"}},333:(v,c,n)=>{n.d(c,{c:()=>h,g:()=>p,h:()=>a,o:()=>g});var d=n(467);const a=(o,l)=>null!==l.closest(o),h=(o,l)=>"string"==typeof o&&o.length>0?Object.assign({"ion-color":!0,[`ion-color-${o}`]:!0},l):l,p=o=>{const l={};return(o=>void 0!==o?(Array.isArray(o)?o:o.split(" ")).filter(s=>null!=s).map(s=>s.trim()).filter(s=>""!==s):[])(o).forEach(s=>l[s]=!0),l},b=/^[a-z][a-z0-9+\-.]*:/,g=function(){var o=(0,d.A)(function*(l,s,w,m){if(null!=l&&"#"!==l[0]&&!b.test(l)){const f=document.querySelector("ion-router");if(f)return null!=s&&s.preventDefault(),f.push(l,w,m)}return!1});return function(s,w,m,f){return o.apply(this,arguments)}}()}}]); \ No newline at end of file +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[3814],{3814:(v,c,n)=>{n.r(c),n.d(c,{ion_toggle:()=>k});var d=n(467),a=n(9672),h=n(4920),x=n(1086),p=n(5083),b=n(333),g=n(3992),o=n(3664);n(8438),n(8476);const k=class{constructor(e){var r=this;(0,a.r)(this,e),this.ionChange=(0,a.d)(this,"ionChange",7),this.ionFocus=(0,a.d)(this,"ionFocus",7),this.ionBlur=(0,a.d)(this,"ionBlur",7),this.inputId="ion-tg-"+C++,this.lastDrag=0,this.inheritedAttributes={},this.didLoad=!1,this.setupGesture=(0,d.A)(function*(){const{toggleTrack:t}=r;t&&(r.gesture=(yield Promise.resolve().then(n.bind(n,8607))).createGesture({el:t,gestureName:"toggle",gesturePriority:100,threshold:5,passive:!1,onStart:()=>r.onStart(),onMove:i=>r.onMove(i),onEnd:i=>r.onEnd(i)}),r.disabledChanged())}),this.onClick=t=>{this.disabled||(t.preventDefault(),this.lastDrag+300{this.ionFocus.emit()},this.onBlur=()=>{this.ionBlur.emit()},this.getSwitchLabelIcon=(t,i)=>"md"===t?i?g.f:g.r:i?g.r:g.g,this.activated=!1,this.color=void 0,this.name=this.inputId,this.checked=!1,this.disabled=!1,this.value="on",this.enableOnOffLabels=o.c.get("toggleOnOffLabels"),this.labelPlacement="start",this.justify="space-between",this.alignment="center"}disabledChanged(){this.gesture&&this.gesture.enable(!this.disabled)}toggleChecked(){const{checked:e,value:r}=this,t=!e;this.checked=t,this.ionChange.emit({checked:t,value:r})}connectedCallback(){var e=this;return(0,d.A)(function*(){e.didLoad&&e.setupGesture()})()}componentDidLoad(){this.setupGesture(),this.didLoad=!0}disconnectedCallback(){this.gesture&&(this.gesture.destroy(),this.gesture=void 0)}componentWillLoad(){this.inheritedAttributes=Object.assign({},(0,h.i)(this.el))}onStart(){this.activated=!0,this.setFocus()}onMove(e){_((0,p.i)(this.el),this.checked,e.deltaX,-10)&&(this.toggleChecked(),(0,x.c)())}onEnd(e){this.activated=!1,this.lastDrag=Date.now(),e.event.preventDefault(),e.event.stopImmediatePropagation()}getValue(){return this.value||""}setFocus(){this.focusEl&&this.focusEl.focus()}renderOnOffSwitchLabels(e,r){const t=this.getSwitchLabelIcon(e,r);return(0,a.h)("ion-icon",{class:{"toggle-switch-icon":!0,"toggle-switch-icon-checked":r},icon:t,"aria-hidden":"true"})}renderToggleControl(){const e=(0,o.b)(this),{enableOnOffLabels:r,checked:t}=this;return(0,a.h)("div",{class:"toggle-icon",part:"track",ref:i=>this.toggleTrack=i},r&&"ios"===e&&[this.renderOnOffSwitchLabels(e,!0),this.renderOnOffSwitchLabels(e,!1)],(0,a.h)("div",{class:"toggle-icon-wrapper"},(0,a.h)("div",{class:"toggle-inner",part:"handle"},r&&"md"===e&&this.renderOnOffSwitchLabels(e,t))))}get hasLabel(){return""!==this.el.textContent}render(){const{activated:e,color:r,checked:t,disabled:i,el:u,justify:E,labelPlacement:O,inputId:D,name:j,alignment:L}=this,M=(0,o.b)(this),P=this.getValue(),I=(0,p.i)(u)?"rtl":"ltr";return(0,h.d)(!0,u,j,t?P:"",i),(0,a.h)(a.f,{key:"b0d648e071bc8095998b519ce4dcdd0ea91575c0",onClick:this.onClick,class:(0,b.c)(r,{[M]:!0,"in-item":(0,b.h)("ion-item",u),"toggle-activated":e,"toggle-checked":t,"toggle-disabled":i,[`toggle-justify-${E}`]:!0,[`toggle-alignment-${L}`]:!0,[`toggle-label-placement-${O}`]:!0,[`toggle-${I}`]:!0})},(0,a.h)("label",{key:"9a2fe1d16dba66a9dfef450efebf2e5cbe3dcd00",class:"toggle-wrapper"},(0,a.h)("input",Object.assign({key:"4358d18cb86da768155c17f9da3aac641296c256",type:"checkbox",role:"switch","aria-checked":`${t}`,checked:t,disabled:i,id:D,onFocus:()=>this.onFocus(),onBlur:()=>this.onBlur(),ref:T=>this.focusEl=T},this.inheritedAttributes)),(0,a.h)("div",{key:"0ec99e452164d7059cc4f93d09e5b918f82c022a",class:{"label-text-wrapper":!0,"label-text-wrapper-hidden":!this.hasLabel},part:"label"},(0,a.h)("slot",{key:"1c5cbc99905a79e842e9487eb3ca654e1bab3c66"})),(0,a.h)("div",{key:"ca8196423b429899febd11c7337d768ff05df6f4",class:"native-wrapper"},this.renderToggleControl())))}get el(){return(0,a.i)(this)}static get watchers(){return{disabled:["disabledChanged"]}}},_=(e,r,t,i)=>r?!e&&i>t||e&&-it;let C=0;k.style={ios:":host{-webkit-box-sizing:content-box !important;box-sizing:content-box !important;display:inline-block;position:relative;max-width:100%;outline:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-focused) input{border:2px solid #5e9ed6}:host(.toggle-disabled){pointer-events:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.toggle-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.toggle-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.toggle-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host(.toggle-justify-space-between) .toggle-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.toggle-justify-start) .toggle-wrapper{-ms-flex-pack:start;justify-content:start}:host(.toggle-justify-end) .toggle-wrapper{-ms-flex-pack:end;justify-content:end}:host(.toggle-alignment-start) .toggle-wrapper{-ms-flex-align:start;align-items:start}:host(.toggle-alignment-center) .toggle-wrapper{-ms-flex-align:center;align-items:center}:host(.toggle-label-placement-start) .toggle-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.toggle-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-end) .toggle-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.toggle-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.toggle-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.toggle-label-placement-stacked) .toggle-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.toggle-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}.toggle-icon-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;width:100%;height:100%;-webkit-transition:var(--handle-transition);transition:var(--handle-transition);will-change:transform}.toggle-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;background:var(--track-background);overflow:inherit}:host(.toggle-checked) .toggle-icon{background:var(--track-background-checked)}.toggle-inner{border-radius:var(--handle-border-radius);position:absolute;left:var(--handle-spacing);width:var(--handle-width);height:var(--handle-height);max-height:var(--handle-max-height);-webkit-transition:var(--handle-transition);transition:var(--handle-transition);background:var(--handle-background);-webkit-box-shadow:var(--handle-box-shadow);box-shadow:var(--handle-box-shadow);contain:strict}:host(.toggle-ltr) .toggle-inner{left:var(--handle-spacing)}:host(.toggle-rtl) .toggle-inner{right:var(--handle-spacing)}:host(.toggle-ltr.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width)), 0, 0);transform:translate3d(calc(100% - var(--handle-width)), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width)), 0, 0);transform:translate3d(calc(-100% + var(--handle-width)), 0, 0)}:host(.toggle-checked) .toggle-inner{background:var(--handle-background-checked)}:host(.toggle-ltr.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0)}:host{--track-background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.088);--track-background-checked:var(--ion-color-primary, #0054e9);--border-radius:15.5px;--handle-background:#ffffff;--handle-background-checked:#ffffff;--handle-border-radius:25.5px;--handle-box-shadow:0 3px 4px rgba(0, 0, 0, 0.06), 0 3px 8px rgba(0, 0, 0, 0.06);--handle-height:calc(31px - (2px * 2));--handle-max-height:calc(100% - var(--handle-spacing) * 2);--handle-width:calc(31px - (2px * 2));--handle-spacing:2px;--handle-transition:transform 300ms, width 120ms ease-in-out 80ms, left 110ms ease-in-out 80ms, right 110ms ease-in-out 80ms}.native-wrapper .toggle-icon{width:51px;height:31px;overflow:hidden}:host(.ion-color.toggle-checked) .toggle-icon{background:var(--ion-color-base)}:host(.toggle-activated) .toggle-switch-icon{opacity:0}.toggle-icon{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);-webkit-transition:background-color 300ms;transition:background-color 300ms}.toggle-inner{will-change:transform}.toggle-switch-icon{position:absolute;top:50%;width:11px;height:11px;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity 300ms, color 300ms;transition:opacity 300ms, color 300ms}.toggle-switch-icon{position:absolute;color:var(--ion-color-dark, #222428)}:host(.toggle-ltr) .toggle-switch-icon{right:6px}:host(.toggle-rtl) .toggle-switch-icon{right:initial;left:6px;}:host(.toggle-checked) .toggle-switch-icon.toggle-switch-icon-checked{color:var(--ion-color-contrast, #fff)}:host(.toggle-checked) .toggle-switch-icon:not(.toggle-switch-icon-checked){opacity:0}.toggle-switch-icon-checked{position:absolute;width:15px;height:15px;-webkit-transform:translateY(-50%) rotate(90deg);transform:translateY(-50%) rotate(90deg)}:host(.toggle-ltr) .toggle-switch-icon-checked{right:initial;left:4px;}:host(.toggle-rtl) .toggle-switch-icon-checked{right:4px}:host(.toggle-activated) .toggle-icon::before,:host(.toggle-checked) .toggle-icon::before{-webkit-transform:scale3d(0, 0, 0);transform:scale3d(0, 0, 0)}:host(.toggle-activated.toggle-checked) .toggle-inner::before{-webkit-transform:scale3d(0, 0, 0);transform:scale3d(0, 0, 0)}:host(.toggle-activated) .toggle-inner{width:calc(var(--handle-width) + 6px)}:host(.toggle-ltr.toggle-activated.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width) - 6px), 0, 0);transform:translate3d(calc(100% - var(--handle-width) - 6px), 0, 0)}:host(.toggle-rtl.toggle-activated.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width) + 6px), 0, 0);transform:translate3d(calc(-100% + var(--handle-width) + 6px), 0, 0)}:host(.toggle-disabled){opacity:0.3}",md:":host{-webkit-box-sizing:content-box !important;box-sizing:content-box !important;display:inline-block;position:relative;max-width:100%;outline:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-focused) input{border:2px solid #5e9ed6}:host(.toggle-disabled){pointer-events:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.toggle-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.toggle-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.toggle-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host(.toggle-justify-space-between) .toggle-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.toggle-justify-start) .toggle-wrapper{-ms-flex-pack:start;justify-content:start}:host(.toggle-justify-end) .toggle-wrapper{-ms-flex-pack:end;justify-content:end}:host(.toggle-alignment-start) .toggle-wrapper{-ms-flex-align:start;align-items:start}:host(.toggle-alignment-center) .toggle-wrapper{-ms-flex-align:center;align-items:center}:host(.toggle-label-placement-start) .toggle-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.toggle-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-end) .toggle-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.toggle-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.toggle-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.toggle-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.toggle-label-placement-stacked) .toggle-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.toggle-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.toggle-label-placement-stacked.toggle-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).toggle-label-placement-stacked.toggle-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.toggle-label-placement-stacked.toggle-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}.toggle-icon-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;width:100%;height:100%;-webkit-transition:var(--handle-transition);transition:var(--handle-transition);will-change:transform}.toggle-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;background:var(--track-background);overflow:inherit}:host(.toggle-checked) .toggle-icon{background:var(--track-background-checked)}.toggle-inner{border-radius:var(--handle-border-radius);position:absolute;left:var(--handle-spacing);width:var(--handle-width);height:var(--handle-height);max-height:var(--handle-max-height);-webkit-transition:var(--handle-transition);transition:var(--handle-transition);background:var(--handle-background);-webkit-box-shadow:var(--handle-box-shadow);box-shadow:var(--handle-box-shadow);contain:strict}:host(.toggle-ltr) .toggle-inner{left:var(--handle-spacing)}:host(.toggle-rtl) .toggle-inner{right:var(--handle-spacing)}:host(.toggle-ltr.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(100% - var(--handle-width)), 0, 0);transform:translate3d(calc(100% - var(--handle-width)), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-icon-wrapper{-webkit-transform:translate3d(calc(-100% + var(--handle-width)), 0, 0);transform:translate3d(calc(-100% + var(--handle-width)), 0, 0)}:host(.toggle-checked) .toggle-inner{background:var(--handle-background-checked)}:host(.toggle-ltr.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * -2), 0, 0)}:host(.toggle-rtl.toggle-checked) .toggle-inner{-webkit-transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0);transform:translate3d(calc(var(--handle-spacing) * 2), 0, 0)}:host{--track-background:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.39);--track-background-checked:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.5);--border-radius:14px;--handle-background:#ffffff;--handle-background-checked:var(--ion-color-primary, #0054e9);--handle-border-radius:50%;--handle-box-shadow:0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);--handle-width:20px;--handle-height:20px;--handle-max-height:calc(100% + 6px);--handle-spacing:0;--handle-transition:transform 160ms cubic-bezier(0.4, 0, 0.2, 1), background-color 160ms cubic-bezier(0.4, 0, 0.2, 1)}.native-wrapper .toggle-icon{width:36px;height:14px}:host(.ion-color.toggle-checked) .toggle-icon{background:rgba(var(--ion-color-base-rgb), 0.5)}:host(.ion-color.toggle-checked) .toggle-inner{background:var(--ion-color-base)}:host(.toggle-checked) .toggle-inner{color:var(--ion-color-contrast, #fff)}.toggle-icon{-webkit-transition:background-color 160ms;transition:background-color 160ms}.toggle-inner{will-change:background-color, transform;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:#000}.toggle-inner .toggle-switch-icon{-webkit-padding-start:1px;padding-inline-start:1px;-webkit-padding-end:1px;padding-inline-end:1px;padding-top:1px;padding-bottom:1px;width:100%;height:100%}:host(.toggle-disabled){opacity:0.38}"}},333:(v,c,n)=>{n.d(c,{c:()=>h,g:()=>p,h:()=>a,o:()=>g});var d=n(467);const a=(o,l)=>null!==l.closest(o),h=(o,l)=>"string"==typeof o&&o.length>0?Object.assign({"ion-color":!0,[`ion-color-${o}`]:!0},l):l,p=o=>{const l={};return(o=>void 0!==o?(Array.isArray(o)?o:o.split(" ")).filter(s=>null!=s).map(s=>s.trim()).filter(s=>""!==s):[])(o).forEach(s=>l[s]=!0),l},b=/^[a-z][a-z0-9+\-.]*:/,g=function(){var o=(0,d.A)(function*(l,s,w,m){if(null!=l&&"#"!==l[0]&&!b.test(l)){const f=document.querySelector("ion-router");if(f)return null!=s&&s.preventDefault(),f.push(l,w,m)}return!1});return function(s,w,m,f){return o.apply(this,arguments)}}()}}]); \ No newline at end of file diff --git a/www/4304.1ee0ef2bdf588c3d.js b/www/4304.1ee0ef2bdf588c3d.js deleted file mode 100644 index c1fe58c..0000000 --- a/www/4304.1ee0ef2bdf588c3d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[4304],{5553:(L,v,a)=>{a.d(v,{h:()=>O});var d=a(177),j=a(7863),c=a(4438);let O=(()=>{var f;class t{}return(f=t).\u0275fac=function(T){return new(T||f)},f.\u0275mod=c.$C({type:f}),f.\u0275inj=c.G2t({imports:[d.MD,j.bv]}),t})()},3241:(L,v,a)=>{a.d(v,{p:()=>O});var d=a(4438),j=a(177),c=a(7863);let O=(()=>{var f;class t{constructor(T){this.location=T,this.title="Header Title"}ngOnInit(){}goBack(){this.location.back()}}return(f=t).\u0275fac=function(T){return new(T||f)(d.rXU(j.aZ))},f.\u0275cmp=d.VBU({type:f,selectors:[["app-header-return"]],inputs:{title:"title"},decls:6,vars:2,consts:[[3,"translucent"],["slot","start","menu","menu-id"],["name","arrow-back","slot","start",1,"p-4","bigger-icon",3,"click"]],template:function(T,b){1&T&&(d.j41(0,"ion-header",0)(1,"ion-toolbar"),d.nrm(2,"ion-menu-button",1),d.j41(3,"ion-icon",2),d.bIt("click",function(){return b.goBack()}),d.k0s(),d.j41(4,"ion-title"),d.EFF(5),d.k0s()()()),2&T&&(d.Y8G("translucent",!0),d.R7$(5),d.JRh(b.title))},dependencies:[c.eU,c.iq,c.MC,c.BC,c.ai],styles:[".bigger-icon[_ngcontent-%COMP%]{font-size:1.5em}"]}),t})()},4304:(L,v,a)=>{a.r(v),a.d(v,{LoadTestHistoryPageModule:()=>A});var d=a(177),j=a(4341),c=a(7863),O=a(7650),f=a(467),t=a(4438),R=a(4970),T=a(8453),b=a(3241),F=a(2820);const x=[{path:"",component:(()=>{var i;class C{constructor(o,e,s){this.activatedRoute=o,this.router=e,this.loadTestService=s,this.productObjective="",this.productStep="",this.orgName="",this.date="",this.loadTestResults={},this.totalNumberOfRequests=0,this.statusCodesOptions={tooltip:{trigger:"axis"},xAxis:{type:"category",boundaryGap:!1,data:[]},yAxis:{type:"value"},series:[]},this.responseTimeOptions={tooltip:{trigger:"axis"},xAxis:{type:"category",boundaryGap:!1,data:[]},yAxis:{type:"value"},series:[]}}ngOnInit(){var o=this;this.getParams(),this.getLoadTestHistoryByDate().then(function(){var e=(0,f.A)(function*(s){o.totalRequests(),yield o.plotCodes(),yield o.responseTime()});return function(s){return e.apply(this,arguments)}}())}getParams(){this.activatedRoute.params.subscribe(e=>{this.productObjective=e.productObjective,this.productStep=e.productStep,this.date=e.day});const o=JSON.parse(localStorage.getItem("user"));this.orgName=o.orgName,console.log(this.orgName),console.log(this.productObjective),console.log(this.productStep),console.log(this.date)}getLoadTestHistoryByDate(){var o=this;return(0,f.A)(function*(){o.loadTestResults=yield o.loadTestService.getLoadTestHistoryByDate(o.orgName,o.productObjective,o.productStep,o.date)})()}totalRequests(){let o=Object.keys(this.loadTestResults),e={},s=0;for(let r of o){let n=this.loadTestResults[r].aggregate.counters,u=this.loadTestResults[r].date,y=Object.keys(n).filter(p=>p.startsWith("http.requests"));for(let p of y)e[u]||(e[u]={}),e[u][p]=(e[u][p]||0)+n[p]}for(let r of Object.keys(e))s+=e[r]["http.requests"];this.totalNumberOfRequests=s}byCodes(){let o=Object.keys(this.loadTestResults),e={};for(let s of o){let r=this.loadTestResults[s].aggregate.counters,n=this.loadTestResults[s].date,u=Object.keys(r).filter(y=>y.startsWith("http.codes."));for(let y of u)e[n]||(e[n]={}),e[n][y]=r[y]}return console.log(e),e=this.ordenarDiccionarioPorFechas(e),e}normalizarFecha(o){const[e,s,r]=o.split("-").map(y=>parseInt(y,10));return`${e}-${s<10?`0${s}`:s.toString()}-${r<10?`0${r}`:r.toString()}`}ordenarDiccionarioPorFechas(o){const s=Object.keys(o).sort((n,u)=>{const y=new Date(this.normalizarFecha(n)),p=new Date(this.normalizarFecha(u));return y.getTime()-p.getTime()}),r={};return s.forEach(n=>{r[n]=o[n]}),r}plotCodes(){var o=this;return(0,f.A)(function*(){let e=o.byCodes();console.log(e);let s=Object.keys(e),r=new Set;for(let p of s){let h=Object.keys(e[p]);for(let M of h)r.add(M)}let n={};for(let p in e){let l=e[p];for(let h of r)n[h]||(n[h]=[]),n[h].push(l[h]||0)}let u=["#36b311","#306fc6","#ed3b3b","#f4ba20"];for(let p in n){let h,l=p.split(".").pop();null!=l&&l.startsWith("2")&&(h=u[0]),null!=l&&l.startsWith("3")&&(h=u[1]),null!=l&&l.startsWith("4")&&(h=u[2]),null!=l&&l.startsWith("5")&&(h=u[3]),h||(h="#000000"),o.statusCodesOptions.series.push({name:p,type:"line",data:n[p],lineStyle:{color:h},itemStyle:{color:h}})}o.statusCodesOptions.xAxis={type:"category",boundaryGap:!1,data:s},o.statusCodesOptions={...o.statusCodesOptions};let y=document.getElementById("httpCodesChartHistory");console.log(y),y.style.width="100%",y.style.height="25em"})()}responseTime(){let o=Object.keys(this.loadTestResults),e={};for(let g of o){let m=this.loadTestResults[g].aggregate.histograms,k=this.loadTestResults[g].date,D=Object.keys(m).filter(H=>H.startsWith("http.response_time"));for(let H of D)e[k]=m[H]}let s=Object.keys(e);s=function r(g){return g.sort((m,k)=>{let D=m.split("-").slice(0,3).join("/"),H=k.split("-").slice(0,3).join("/"),S=m.split("-").slice(3,6).join(":"),$=H+" "+k.split("-").slice(3,6).join(":");return new Date(D+" "+S).getTime()-new Date($).getTime()})}(s),console.log("date",s),console.log("responseTimes",e);let n=[],u=[],y=[],p=[],l=[],h=[];for(let g in s){console.log("date",s[g]);for(let m in e[s[g]])"min"===m&&n.push(e[s[g]][m]),"max"===m&&u.push(e[s[g]][m]),"p95"===m&&y.push(e[s[g]][m]),"p99"===m&&p.push(e[s[g]][m]),"mean"===m&&l.push(e[s[g]][m]),"median"===m&&h.push(e[s[g]][m])}console.log("min",n);let M={min:n,max:u,p95:y,p99:p,mean:l,median:h};this.responseTimeOptions.series=[];for(let g in M)this.responseTimeOptions.series.push({name:g,type:"bar",data:M[g]});this.responseTimeOptions.xAxis={type:"category",boundaryGap:!1,data:s},this.responseTimeOptions={...this.responseTimeOptions};let E=document.getElementById("httpResponseTimeChartHistory");console.log(E),E.style.width="100%",E.style.height="25em"}}return(i=C).\u0275fac=function(o){return new(o||i)(t.rXU(O.nX),t.rXU(O.Ix),t.rXU(R.s))},i.\u0275cmp=t.VBU({type:i,selectors:[["app-load-test-history"]],decls:28,vars:9,consts:[[3,"title"],[3,"fullscreen"],[1,"lg:m-10","md:m-10"],["size","12",1,"w-full"],[1,"w-full","p-6","flex","flex-col","justify-center","items-center"],[1,"text-3xl"],[1,"text-2xl","text-white"],[1,"h-[25em]","w-full"],["id","httpCodesChartHistory","echarts","",1,"demo-chart","h-full","w-full",3,"options"],["id","httpResponseTimeChartHistory","echarts","",1,"demo-chart","h-full","w-full",3,"options"]],template:function(o,e){1&o&&(t.nrm(0,"app-header-return",0),t.j41(1,"ion-content",1)(2,"ion-grid"),t.nrm(3,"app-title",0),t.j41(4,"ion-row",2)(5,"ion-col",3)(6,"ion-card",4)(7,"ion-card-header")(8,"ion-card-title",5),t.EFF(9,"Total Number of Requests"),t.k0s()(),t.j41(10,"ion-card-content")(11,"h1",6),t.EFF(12),t.nI1(13,"number"),t.k0s()()()()(),t.j41(14,"ion-row",2)(15,"ion-card",4)(16,"ion-card-header")(17,"ion-card-title",5),t.EFF(18,"HTTP Status Codes"),t.k0s()(),t.j41(19,"ion-card-content",7),t.nrm(20,"div",8),t.k0s()()(),t.j41(21,"ion-row",2)(22,"ion-card",4)(23,"ion-card-header")(24,"ion-card-title",5),t.EFF(25,"HTTP Response Time"),t.k0s()(),t.j41(26,"ion-card-content",7),t.nrm(27,"div",9),t.k0s()()()()()),2&o&&(t.Y8G("title","History For: "+e.date),t.R7$(),t.Y8G("fullscreen",!0),t.R7$(2),t.Y8G("title","Load Test History"),t.R7$(9),t.JRh(t.i5U(13,6,e.totalNumberOfRequests,"1.0-0")),t.R7$(8),t.Y8G("options",e.statusCodesOptions),t.R7$(7),t.Y8G("options",e.responseTimeOptions))},dependencies:[c.b_,c.I9,c.ME,c.tN,c.hU,c.W9,c.lO,c.ln,T.W,b.p,F.$P,d.QX]}),C})()}];let I=(()=>{var i;class C{}return(i=C).\u0275fac=function(o){return new(o||i)},i.\u0275mod=t.$C({type:i}),i.\u0275inj=t.G2t({imports:[O.iI.forChild(x),O.iI]}),C})();var B=a(5553);let A=(()=>{var i;class C{}return(i=C).\u0275fac=function(o){return new(o||i)},i.\u0275mod=t.$C({type:i}),i.\u0275inj=t.G2t({imports:[d.MD,j.YN,c.bv,I,B.h]}),C})()}}]); \ No newline at end of file diff --git a/www/4304.5e919bf908d2ac02.js b/www/4304.5e919bf908d2ac02.js new file mode 100644 index 0000000..e5d87ac --- /dev/null +++ b/www/4304.5e919bf908d2ac02.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[4304],{5553:(w,_,r)=>{r.d(_,{h:()=>j});var c=r(177),x=r(7863),l=r(4438);let j=(()=>{var u;class e{}return(u=e).\u0275fac=function(b){return new(b||u)},u.\u0275mod=l.$C({type:u}),u.\u0275inj=l.G2t({imports:[c.MD,x.bv]}),e})()},3241:(w,_,r)=>{r.d(_,{p:()=>j});var c=r(4438),x=r(177),l=r(7863);let j=(()=>{var u;class e{constructor(b){this.location=b,this.title="Header Title"}ngOnInit(){}goBack(){this.location.back()}}return(u=e).\u0275fac=function(b){return new(b||u)(c.rXU(x.aZ))},u.\u0275cmp=c.VBU({type:u,selectors:[["app-header-return"]],inputs:{title:"title"},decls:6,vars:2,consts:[[3,"translucent"],["slot","start","menu","menu-id"],["name","arrow-back","slot","start",1,"p-4","bigger-icon",3,"click"]],template:function(b,O){1&b&&(c.j41(0,"ion-header",0)(1,"ion-toolbar"),c.nrm(2,"ion-menu-button",1),c.j41(3,"ion-icon",2),c.bIt("click",function(){return O.goBack()}),c.k0s(),c.j41(4,"ion-title"),c.EFF(5),c.k0s()()()),2&b&&(c.Y8G("translucent",!0),c.R7$(5),c.JRh(O.title))},dependencies:[l.eU,l.iq,l.MC,l.BC,l.ai],styles:[".bigger-icon[_ngcontent-%COMP%]{font-size:1.5em}"]}),e})()},4304:(w,_,r)=>{r.r(_),r.d(_,{LoadTestHistoryPageModule:()=>z});var c=r(177),x=r(4341),l=r(7863),j=r(7650),u=r(467),e=r(4438),C=r(9032),b=r(4970),O=r(8453),L=r(3241),A=r(2820),E=r(9549);const F=["messagesContainer"];function I(i,T){if(1&i){const f=e.RV6();e.j41(0,"ion-fab",30),e.bIt("click",function(){e.eBV(f);const t=e.XpG();return e.Njj(t.toggleAiModal())}),e.j41(1,"ion-avatar",31),e.nrm(2,"ion-icon",32),e.k0s()()}}function D(i,T){if(1&i&&(e.j41(0,"div",36)(1,"markdown",37),e.EFF(2),e.k0s()()),2&i){const f=e.XpG().$implicit;e.R7$(2),e.JRh(f.message)}}function N(i,T){if(1&i&&(e.j41(0,"div",38)(1,"markdown",39),e.EFF(2),e.k0s()()),2&i){const f=e.XpG().$implicit;e.R7$(),e.Mz_("id","mk-",f.id,""),e.R7$(),e.JRh(f.message)}}function B(i,T){if(1&i&&(e.j41(0,"div",33),e.DNE(1,D,3,1,"div",34)(2,N,3,3,"div",35),e.k0s()),2&i){const f=T.$implicit;e.R7$(),e.Y8G("ngIf","User"===f.from),e.R7$(),e.Y8G("ngIf","AI"===f.from)}}const $=[{path:"",component:(()=>{var i;class T{constructor(s,t,o,n){this.activatedRoute=s,this.router=t,this.loadTestService=o,this.loadingCtrl=n,this.productObjective="",this.productStep="",this.orgName="",this.date="",this.loadTestResults={},this.totalNumberOfRequests=0,this.statusCodesOptions={tooltip:{trigger:"axis"},xAxis:{type:"category",boundaryGap:!1,data:[]},yAxis:{type:"value"},series:[]},this.responseTimeOptions={tooltip:{trigger:"axis"},xAxis:{type:"category",boundaryGap:!1,data:[]},yAxis:{type:"value"},series:[]},this.aiModal=!1,this.message="",this.vertexAI=(0,e.WQX)(C.L9),this.model=(0,C.oc)(this.vertexAI,{model:"gemini-1.5-flash"}),this.chat=this.model.startChat({history:[{role:"user",parts:[{text:"Hola, desde ahora en adelante quiero que seas un modelo experto en Software Quality Assurance y analista de datos, tu nombre es DevProbeAI, nunca lo puedes olvidar"}]},{role:"model",parts:[{text:"Soy un modelo experto en Software Quality Assurance, de igual forma tengo un masterado en anla\xedtica de datos \xbfEn qu\xe9 puedo ayudarte?"}]},{role:"user",parts:[{text:"Gracias, te voy a entregar un json con datos en unos minutos, necesito que lo analices y me des un resumen de los datos, este json contiene datos de un load test,tu analisis tiene que ser detallado, si encuentras inconsistencias en los datos, por favor mencionalas, en caso de que creas que puede haber un problema o que se encuentre el recurso no disponible por favor mencionalo, si encuentras algo interesante, por favor mencionalo, en resumen, necesito un analisis detallado de los datos"}]},{role:"model",parts:[{text:"Claro, env\xedame el json y yo me encargo de analizarlo"}]}]}),this.messages=[],this.hasBeenOpened=!1}ngOnInit(){var s=this;this.getParams(),this.getLoadTestHistoryByDate().then(function(){var t=(0,u.A)(function*(o){s.totalRequests(),yield s.plotCodes(),yield s.responseTime()});return function(o){return t.apply(this,arguments)}}())}getParams(){this.activatedRoute.params.subscribe(t=>{this.productObjective=t.productObjective,this.productStep=t.productStep,this.date=t.day});const s=JSON.parse(localStorage.getItem("user"));this.orgName=s.orgName,console.log(this.orgName),console.log(this.productObjective),console.log(this.productStep),console.log(this.date)}getLoadTestHistoryByDate(){var s=this;return(0,u.A)(function*(){s.loadTestResults=yield s.loadTestService.getLoadTestHistoryByDate(s.orgName,s.productObjective,s.productStep,s.date)})()}totalRequests(){let s=Object.keys(this.loadTestResults),t={},o=0;for(let n of s){let a=this.loadTestResults[n].aggregate.counters,p=this.loadTestResults[n].date,y=Object.keys(a).filter(m=>m.startsWith("http.responses"));for(let m of y)t[p]||(t[p]={}),t[p][m]=(t[p][m]||0)+a[m]}for(let n of Object.keys(t))o+=t[n]["http.responses"];this.totalNumberOfRequests=o}byCodes(){let s=Object.keys(this.loadTestResults),t={};for(let o of s){let n=this.loadTestResults[o].aggregate.counters,a=this.loadTestResults[o].date,p=Object.keys(n).filter(y=>y.startsWith("http.codes."));for(let y of p)t[a]||(t[a]={}),t[a][y]=n[y]}return console.log(t),t=this.ordenarDiccionarioPorFechas(t),t}normalizarFecha(s){console.log("fecha",s);const[t,o,n,a,p,y]=s.split("-").map(g=>parseInt(g,10));return`${t}-${o<10?`0${o}`:o.toString()}-${n<10?`0${n}`:n.toString()} ${a}:${p}:${y}`}ordenarDiccionarioPorFechas(s){const o=Object.keys(s).sort((a,p)=>{console.log("a",this.normalizarFecha(a)),console.log("b",this.normalizarFecha(p));const y=new Date(this.normalizarFecha(a)),m=new Date(this.normalizarFecha(p));return y.getTime()-m.getTime()}),n={};return o.forEach(a=>{n[a]=s[a]}),n}plotCodes(){var s=this;return(0,u.A)(function*(){let t=s.byCodes();console.log("codess",t);let o=Object.keys(t);console.log("llaves",o);let n=new Set;for(let m of o){let g=Object.keys(t[m]);for(let k of g)n.add(k)}let a={};for(let m in t){let d=t[m];for(let g of n)a[g]||(a[g]=[]),a[g].push(d[g]||0)}let p=["#36b311","#306fc6","#ed3b3b","#f4ba20"];for(let m in a){let g,d=m.split(".").pop();null!=d&&d.startsWith("2")&&(g=p[0]),null!=d&&d.startsWith("3")&&(g=p[1]),null!=d&&d.startsWith("4")&&(g=p[2]),null!=d&&d.startsWith("5")&&(g=p[3]),g||(g="#000000"),s.statusCodesOptions.series.push({name:m,type:"line",data:a[m],lineStyle:{color:g},itemStyle:{color:g}})}s.statusCodesOptions.xAxis={type:"category",boundaryGap:!1,data:o},s.statusCodesOptions={...s.statusCodesOptions};let y=document.getElementById("httpCodesChartHistory");console.log(y),y.style.width="100%",y.style.height="25em"})()}responseTime(){let s=Object.keys(this.loadTestResults),t={};for(let v of s){let h=this.loadTestResults[v].aggregate.histograms,M=this.loadTestResults[v].date,H=Object.keys(h).filter(R=>R.startsWith("http.response_time"));for(let R of H)t[M]=h[R]}let o=Object.keys(t);o=function n(v){return v.sort((h,M)=>{let H=h.split("-").slice(0,3).join("/"),R=M.split("-").slice(0,3).join("/"),U=h.split("-").slice(3,6).join(":"),V=R+" "+M.split("-").slice(3,6).join(":");return new Date(H+" "+U).getTime()-new Date(V).getTime()})}(o),console.log("date",o),console.log("responseTimes",t);let a=[],p=[],y=[],m=[],d=[],g=[];for(let v in o){console.log("date",o[v]);for(let h in t[o[v]])"min"===h&&a.push(t[o[v]][h]),"max"===h&&p.push(t[o[v]][h]),"p95"===h&&y.push(t[o[v]][h]),"p99"===h&&m.push(t[o[v]][h]),"mean"===h&&d.push(t[o[v]][h]),"median"===h&&g.push(t[o[v]][h])}console.log("min",a);let k={min:a,max:p,p95:y,p99:m,mean:d,median:g};this.responseTimeOptions.series=[];for(let v in k)this.responseTimeOptions.series.push({name:v,type:"bar",data:k[v]});this.responseTimeOptions.xAxis={type:"category",boundaryGap:!1,data:o},this.responseTimeOptions={...this.responseTimeOptions};let P=document.getElementById("httpResponseTimeChartHistory");return console.log(P),P.style.width="100%",P.style.height="25em",t}toggleAiModal(s){var t=this;return(0,u.A)(function*(){if(yield t.showLoading(),t.aiModal=!t.aiModal,t.hasBeenOpened=!0,"httpCodesOptions"===s&&(t.message="En este caso el json tiene codigos de respuesta HTTP, por ejemplo, 404, 500, etc y cuantos requests devolvieron esos codigos:"+JSON.stringify(t.byCodes())),"httpResponseTimeOptions"===s&&(t.message="En este caso el json tiene tiempos de respuesta de los requests, por ejemplo, 500ms, 1000ms, etc: "+JSON.stringify(t.responseTime())),""===t.message)return console.log("Message is empty"),void(yield t.hideLoading());let o=t.messages.length;o>0&&t.messages.push({message:t.message,from:"User",id:o.toString()});const n=yield t.chat.sendMessage(t.message);o=t.messages.length,t.messages.push({message:n.response.text(),from:"AI",id:o.toString()}),t.message="",yield t.hideLoading()})()}sendMessage(){var s=this;let t=this.messages.length;this.messages.push({message:this.message,from:"User",id:t.toString()}),this.chat.sendMessage(this.message).then(function(){var o=(0,u.A)(function*(n){yield s.showLoading(),t=s.messages.length,s.messages.push({message:n.response.text(),from:"AI",id:t.toString()}),yield s.hideLoading()});return function(n){return o.apply(this,arguments)}}()),this.message=""}showLoading(){var s=this;return(0,u.A)(function*(){yield(yield s.loadingCtrl.create({})).present()})()}hideLoading(){var s=this;return(0,u.A)(function*(){yield s.loadingCtrl.dismiss()})()}}return(i=T).\u0275fac=function(s){return new(s||i)(e.rXU(j.nX),e.rXU(j.Ix),e.rXU(b.s),e.rXU(l.Xi))},i.\u0275cmp=e.VBU({type:i,selectors:[["app-load-test-history"]],viewQuery:function(s,t){if(1&s&&e.GBs(F,5),2&s){let o;e.mGM(o=e.lsd())&&(t.messagesContainer=o.first)}},decls:55,vars:14,consts:[["messagesContainer",""],[3,"title"],[3,"fullscreen"],[1,"lg:m-10","md:m-10"],["size","12",1,"w-full"],[1,"w-full","p-6","flex","flex-col","justify-center","items-center"],[1,"text-3xl"],[1,"text-2xl","text-white"],["size","12",1,"relative","flex","flex-row","justify-center"],[1,"absolute","z-10","w-full","flex","flex-row","justify-end"],[1,"h-12","w-12","bg-purple-400","p-2",3,"click"],["name","color-wand-outline",1,"w-full","h-full"],[1,"h-[25em]","w-full"],["id","httpCodesChartHistory","echarts","",1,"demo-chart","h-full","w-full",3,"options"],["id","httpResponseTimeChartHistory","echarts","",1,"demo-chart","h-full","w-full",3,"options"],["vertical","bottom","horizontal","end","slot","fixed",1,"m-2","z-10"],["id","ai-modal",1,"fixed","bottom-0","right-0","h-full","w-full","bg-black","bg-opacity-60","z-10","r"],[1,"h-full","md:h-3/4","lg:h-3/4","w-full","bg-gray-900","p-4","absolute","right-0","bottom-0","z-50","flex","flex-col","rounded-tl-2xl","rounded-tr-2xl"],[1,"w-full","bg-gray-500","flex","flex-row","justify-center","items-center","p-2","mb-2","rounded-3xl"],[1,"flex","flex-row","p-2","items-center","bg-gray-800","w-full","rounded-3xl","h-full"],[1,"text-white"],[1,"m-2"],[1,"flex","flex-row","justify-center","items-center","bg-gray-800","hover:bg-gray-600","w-1/6","h-full","rounded-3xl",3,"click"],["name","close-outline"],[1,"flex-grow","overflow-y-auto","bg-gray-400","p-2","rounded-3xl"],["class","flex flex-col",4,"ngFor","ngForOf"],[1,"flex","flex-row","mt-2","p-2"],["placeholder","Ask...",1,"flex-grow","bg-gray-700","rounded-2xl",3,"ngModelChange","ngModel"],[1,"m-1"],[1,"w-1/3","bg-gray-500","rounded-3xl","flex","flex-row","justify-center","items-center","hover:bg-gray-300",3,"click"],["vertical","bottom","horizontal","end","slot","fixed",1,"m-2","z-10",3,"click"],[1,"bg-purple-300","p-1","lg:p-4","md:p-4"],["name","chatbubble-outline",1,"w-full","h-full"],[1,"flex","flex-col"],["class","rounded-3xl bg-gray-800 w-2/3 m-1 ml-auto p-2",4,"ngIf"],["class","rounded-3xl bg-gray-500 w-2/3 m-1 p-2 pr-2",4,"ngIf"],[1,"rounded-3xl","bg-gray-800","w-2/3","m-1","ml-auto","p-2"],[1,"text-white","p-4","m-2"],[1,"rounded-3xl","bg-gray-500","w-2/3","m-1","p-2","pr-2"],[1,"text-white","p-4","m-2",3,"id"]],template:function(s,t){if(1&s){const o=e.RV6();e.nrm(0,"app-header-return",1),e.j41(1,"ion-content",2)(2,"ion-grid"),e.nrm(3,"app-title",1),e.j41(4,"ion-row",3)(5,"ion-col",4)(6,"ion-card",5)(7,"ion-card-header")(8,"ion-card-title",6),e.EFF(9,"Total Number of Requests"),e.k0s()(),e.j41(10,"ion-card-content")(11,"h1",7),e.EFF(12),e.nI1(13,"number"),e.k0s()()()()(),e.j41(14,"ion-row",3)(15,"ion-col",8)(16,"div",9)(17,"ion-avatar",10),e.bIt("click",function(){return e.eBV(o),e.Njj(t.toggleAiModal("httpCodesOptions"))}),e.nrm(18,"ion-icon",11),e.k0s()(),e.j41(19,"ion-card",5)(20,"ion-card-header")(21,"ion-card-title",6),e.EFF(22,"HTTP Status Codes"),e.k0s()(),e.j41(23,"ion-card-content",12),e.nrm(24,"div",13),e.k0s()()()(),e.j41(25,"ion-row",3)(26,"ion-col",8)(27,"div",9)(28,"ion-avatar",10),e.bIt("click",function(){return e.eBV(o),e.Njj(t.toggleAiModal("httpResponseTimeOptions"))}),e.nrm(29,"ion-icon",11),e.k0s()(),e.j41(30,"ion-card",5)(31,"ion-card-header")(32,"ion-card-title",6),e.EFF(33,"HTTP Response Time"),e.k0s()(),e.j41(34,"ion-card-content",12),e.nrm(35,"div",14),e.k0s()()()()(),e.DNE(36,I,3,0,"ion-fab",15),e.k0s(),e.j41(37,"div",16)(38,"div",17)(39,"div",18)(40,"div",19)(41,"h1",20),e.EFF(42,"DevProbe AI"),e.k0s()(),e.nrm(43,"div",21),e.j41(44,"div",22),e.bIt("click",function(){return e.eBV(o),e.Njj(t.toggleAiModal())}),e.nrm(45,"ion-icon",23),e.k0s()(),e.j41(46,"div",24,0),e.DNE(48,B,3,2,"div",25),e.k0s(),e.j41(49,"div",26)(50,"ion-textarea",27),e.mxI("ngModelChange",function(a){return e.eBV(o),e.DH7(t.message,a)||(t.message=a),e.Njj(a)}),e.k0s(),e.nrm(51,"div",28),e.j41(52,"div",29),e.bIt("click",function(){return e.eBV(o),e.Njj(t.sendMessage())}),e.j41(53,"span",20),e.EFF(54,"Send"),e.k0s()()()()()}2&s&&(e.Y8G("title","History For: "+t.date),e.R7$(),e.Y8G("fullscreen",!0),e.R7$(2),e.Y8G("title","Load Test History"),e.R7$(9),e.JRh(e.i5U(13,11,t.totalNumberOfRequests,"1.0-0")),e.R7$(12),e.Y8G("options",t.statusCodesOptions),e.R7$(11),e.Y8G("options",t.responseTimeOptions),e.R7$(),e.vxM(36,t.hasBeenOpened?36:-1),e.R7$(),e.AVh("hidden",!t.aiModal),e.R7$(11),e.Y8G("ngForOf",t.messages),e.R7$(2),e.R50("ngModel",t.message))},dependencies:[c.Sq,c.bT,x.BC,x.vS,l.mC,l.b_,l.I9,l.ME,l.tN,l.hU,l.W9,l.Q8,l.lO,l.iq,l.ln,l.nc,l.Gw,O.W,L.p,A.$P,E.NN,c.QX]}),T})()}];let S=(()=>{var i;class T{}return(i=T).\u0275fac=function(s){return new(s||i)},i.\u0275mod=e.$C({type:i}),i.\u0275inj=e.G2t({imports:[j.iI.forChild($),j.iI]}),T})();var G=r(5553);let z=(()=>{var i;class T{}return(i=T).\u0275fac=function(s){return new(s||i)},i.\u0275mod=e.$C({type:i}),i.\u0275inj=e.G2t({imports:[c.MD,x.YN,l.bv,S,G.h,E.NN]}),T})()}}]); \ No newline at end of file diff --git a/www/4559.303a6d01dbac6106.js b/www/4559.303a6d01dbac6106.js new file mode 100644 index 0000000..bc22810 --- /dev/null +++ b/www/4559.303a6d01dbac6106.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[4559],{5553:(w,x,u)=>{u.d(x,{h:()=>b});var g=u(177),j=u(7863),d=u(4438);let b=(()=>{var p;class e{}return(p=e).\u0275fac=function(_){return new(_||p)},p.\u0275mod=d.$C({type:p}),p.\u0275inj=d.G2t({imports:[g.MD,j.bv]}),e})()},3241:(w,x,u)=>{u.d(x,{p:()=>b});var g=u(4438),j=u(177),d=u(7863);let b=(()=>{var p;class e{constructor(_){this.location=_,this.title="Header Title"}ngOnInit(){}goBack(){this.location.back()}}return(p=e).\u0275fac=function(_){return new(_||p)(g.rXU(j.aZ))},p.\u0275cmp=g.VBU({type:p,selectors:[["app-header-return"]],inputs:{title:"title"},decls:6,vars:2,consts:[[3,"translucent"],["slot","start","menu","menu-id"],["name","arrow-back","slot","start",1,"p-4","bigger-icon",3,"click"]],template:function(_,O){1&_&&(g.j41(0,"ion-header",0)(1,"ion-toolbar"),g.nrm(2,"ion-menu-button",1),g.j41(3,"ion-icon",2),g.bIt("click",function(){return O.goBack()}),g.k0s(),g.j41(4,"ion-title"),g.EFF(5),g.k0s()()()),2&_&&(g.Y8G("translucent",!0),g.R7$(5),g.JRh(O.title))},dependencies:[d.eU,d.iq,d.MC,d.BC,d.ai],styles:[".bigger-icon[_ngcontent-%COMP%]{font-size:1.5em}"]}),e})()},4559:(w,x,u)=>{u.r(x),u.d(x,{LoadTestPageModule:()=>B});var g=u(177),j=u(4341),d=u(7863),b=u(7650),p=u(467),e=u(4438),R=u(9032),_=u(4970),O=u(8453),M=u(3241),P=u(2820),L=u(9549);const E=["messagesContainer"];function A(l,T){if(1&l){const m=e.RV6();e.j41(0,"ion-item",37),e.bIt("click",function(){const t=e.eBV(m).$implicit,n=e.XpG();return e.Njj(n.viewHistory(t))}),e.j41(1,"ion-label"),e.EFF(2),e.k0s(),e.nrm(3,"ion-icon",38),e.k0s()}if(2&l){const m=T.$implicit;e.R7$(2),e.JRh(m)}}function F(l,T){if(1&l){const m=e.RV6();e.j41(0,"ion-fab",39),e.bIt("click",function(){e.eBV(m);const t=e.XpG();return e.Njj(t.toggleAiModal())}),e.j41(1,"ion-avatar",40),e.nrm(2,"ion-icon",41),e.k0s()()}}function I(l,T){if(1&l&&(e.j41(0,"div",45)(1,"markdown",46),e.EFF(2),e.k0s()()),2&l){const m=e.XpG().$implicit;e.R7$(2),e.JRh(m.message)}}function D(l,T){if(1&l&&(e.j41(0,"div",47)(1,"markdown",48),e.EFF(2),e.k0s()()),2&l){const m=e.XpG().$implicit;e.R7$(),e.Mz_("id","mk-",m.id,""),e.R7$(),e.JRh(m.message)}}function N(l,T){if(1&l&&(e.j41(0,"div",42),e.DNE(1,I,3,1,"div",43)(2,D,3,3,"div",44),e.k0s()),2&l){const m=T.$implicit;e.R7$(),e.Y8G("ngIf","User"===m.from),e.R7$(),e.Y8G("ngIf","AI"===m.from)}}const S=[{path:"",component:(()=>{var l;class T{constructor(s,t,n,a,o){this.router=s,this.activatedRoute=t,this.loadTestService=n,this.loadingCtrl=a,this.alertCtrl=o,this.productStep="",this.productObjective="",this.orgName="",this.target="",this.description="",this.loadTestResults={},this.totalNumberOfRequests=0,this.statusCodesOptions={tooltip:{trigger:"axis"},xAxis:{type:"category",boundaryGap:!1,data:[]},yAxis:{type:"value"},series:[]},this.responseTimeOptions={tooltip:{trigger:"axis"},xAxis:{type:"category",boundaryGap:!1,data:[]},yAxis:{type:"value"},series:[]},this.listOfDates=[],this.aiModal=!1,this.message="",this.vertexAI=(0,e.WQX)(R.L9),this.model=(0,R.oc)(this.vertexAI,{model:"gemini-1.5-flash"}),this.chat=this.model.startChat({history:[{role:"user",parts:[{text:"Hola, desde ahora en adelante quiero que seas un modelo experto en Software Quality Assurance y analista de datos, tu nombre es DevProbeAI, nunca lo puedes olvidar"}]},{role:"model",parts:[{text:"Soy un modelo experto en Software Quality Assurance, de igual forma tengo un masterado en anla\xedtica de datos \xbfEn qu\xe9 puedo ayudarte?"}]},{role:"user",parts:[{text:"Gracias, te voy a entregar un json con datos en unos minutos, necesito que lo analices y me des un resumen de los datos, este json contiene datos de un load test,tu analisis tiene que ser detallado, si encuentras inconsistencias en los datos, por favor mencionalas, en caso de que creas que puede haber un problema o que se encuentre el recurso no disponible por favor mencionalo, si encuentras algo interesante, por favor mencionalo, en resumen, necesito un analisis detallado de los datos"}]},{role:"model",parts:[{text:"Claro, env\xedame el json y yo me encargo de analizarlo"}]}]}),this.messages=[],this.hasBeenOpened=!1}ngOnInit(){}ionViewWillEnter(){var s=this;return(0,p.A)(function*(){yield s.showLoading(),s.getParams(),yield s.getHistoryResults().then(()=>{s.plotCodes(),s.totalRequests(),s.responseTime()}),yield s.hideLoading()})()}getParams(){this.activatedRoute.params.subscribe(t=>{this.productObjective=t.productObjective,this.productStep=t.step});const s=JSON.parse(localStorage.getItem("user"));this.orgName=s.orgName,console.log(this.orgName),console.log(this.productObjective),console.log(this.productStep)}sendRequest(){var s=this;return(0,p.A)(function*(){if(yield s.showLoading(),s.target.startsWith("http://")||s.target.startsWith("https://")||s.target.endsWith("/"))return yield s.hideLoading(),void(yield s.showAlert("No http or https is needed, check for slashes at the end of the domain","Please enter a valid host"));yield s.loadTestService.sendLoadTest(s.orgName,s.productObjective,s.productStep,s.target).then(function(){var t=(0,p.A)(function*(n){yield s.hideLoading(),console.log("data",n),n&&(yield s.showAlert("Test sent, please wait a few seconds to GET RESULTS","Success"))});return function(n){return t.apply(this,arguments)}}()),yield s.hideLoading()})()}getHistoryResults(){var s=this;return(0,p.A)(function*(){s.loadTestResults=yield s.loadTestService.getLoadTestHistory(s.orgName,s.productObjective,s.productStep)})()}totalRequests(){let s=Object.keys(this.loadTestResults),t={},n=0;for(let a of s){let o=this.loadTestResults[a].aggregate.counters,v=this.loadTestResults[a].date,c=Object.keys(o).filter(y=>y.startsWith("http.responses"));for(let y of c)t[v]||(t[v]={}),t[v][y]=(t[v][y]||0)+o[y]}for(let a of Object.keys(t))n+=t[a]["http.responses"];this.totalNumberOfRequests=n}byCodes(){let s=Object.keys(this.loadTestResults),t={};for(let n of s){let a=this.loadTestResults[n].aggregate.counters,o=this.loadTestResults[n].date.split("-").slice(0,3).join("-"),v=Object.keys(a).filter(c=>c.startsWith("http.codes."));t[o]||(t[o]={});for(let c of v)t[o][c]=(t[o][c]||0)+a[c]}return t=this.ordenarDiccionarioPorFechas(t),console.log("codessss",t),t}normalizarFecha(s){const[t,n,a]=s.split("-").map(c=>parseInt(c,10));return`${t}-${n<10?`0${n}`:n.toString()}-${a<10?`0${a}`:a.toString()}`}ordenarDiccionarioPorFechas(s){const n=Object.keys(s).sort((o,v)=>{const c=new Date(this.normalizarFecha(o)),y=new Date(this.normalizarFecha(v));return c.getTime()-y.getTime()}),a={};return n.forEach(o=>{a[o]=s[o]}),a}plotCodes(){var s=this;return(0,p.A)(function*(){let t=s.byCodes();console.log(t);let n=Object.keys(t);s.listOfDates=n;let a=new Set;for(let y of n){let i=Object.keys(t[y]);for(let r of i)a.add(r)}let o={};for(let y in t){let h=t[y];for(let i of a)o[i]||(o[i]=[]),o[i].push(h[i]||0)}let v=["#36b311","#306fc6","#ed3b3b","#f4ba20"];for(let y in o){let i,h=y.split(".").pop();null!=h&&h.startsWith("2")&&(i=v[0]),null!=h&&h.startsWith("3")&&(i=v[1]),null!=h&&h.startsWith("4")&&(i=v[2]),null!=h&&h.startsWith("5")&&(i=v[3]),i||(i="#000000"),s.statusCodesOptions.series.push({name:y,type:"line",data:o[y],lineStyle:{color:i},itemStyle:{color:i}})}s.statusCodesOptions.xAxis={type:"category",boundaryGap:!1,data:n},s.statusCodesOptions={...s.statusCodesOptions};let c=document.getElementById("httpCodesChart");console.log(c),c.style.width="100%",c.style.height="25em"})()}responseTime(){let s=Object.keys(this.loadTestResults),t={};for(let i of s){let r=this.loadTestResults[i].aggregate.histograms,C=this.loadTestResults[i].date,f=Object.keys(r).filter(k=>k.startsWith("http.response_time"));for(let k of f)t[C]=r[k]}let n=Object.entries(t).reduce((i,[r,C])=>{const f=r.split("-").slice(0,3).join("-");return i[f]=i[f]||[],i[f].push(C),i},{}),a=Object.keys(n).sort((i,r)=>new Date(i).getTime()-new Date(r).getTime()),o={count:0,max:0,min:0,mean:0,median:0,p50:0,p90:0,p95:0,p99:0,p999:0},v={};a.forEach(i=>{let r={count:0,max:0,min:0,mean:0,median:0,p50:0,p90:0,p95:0,p99:0,p999:0},C=0;n[i].forEach(f=>{r.count+=f.count,r.max+=f.max,r.min+=f.min,r.mean+=f.mean,r.median+=f.median,r.p50+=f.p50,r.p90+=f.p90,r.p95+=f.p95,r.p99+=f.p99,r.p999+=f.p999,C++});for(let f in r)"count"!==f&&C>0&&(r[f]=r[f]/C);v[i]=r,o.count+=r.count,o.max+=r.max,o.min+=r.min,o.mean+=r.mean,o.median+=r.median,o.p50+=r.p50,o.p90+=r.p90,o.p95+=r.p95,o.p99+=r.p99,o.p999+=r.p999});let c=a.length;c>0&&(o.mean/=c,o.median/=c,o.p50/=c,o.p90/=c,o.p95/=c,o.p99/=c,o.p999/=c,o.max/=c,o.min/=c);let y={};for(let i in o)"count"===i||"p90"===i||"p50"===i||"p999"===i||(y[i]=o[i],this.responseTimeOptions.series.push({name:i,type:"bar",data:[o[i]],label:{show:!0,formatter:r=>`${r.value.toFixed(2)} ms`}}));this.responseTimeOptions.xAxis={type:"category",boundaryGap:!1,data:["Category"]},this.responseTimeOptions={...this.responseTimeOptions};let h=document.getElementById("httpResponseTimeChart");return console.log(h),h.style.width="100%",h.style.height="25em",y}showLoading(){var s=this;return(0,p.A)(function*(){yield(yield s.loadingCtrl.create({})).present()})()}hideLoading(){var s=this;return(0,p.A)(function*(){yield s.loadingCtrl.dismiss()})()}showAlert(s,t){var n=this;return(0,p.A)(function*(){const a=yield n.alertCtrl.create({header:t,message:s,buttons:["OK"]});return yield a.present(),yield a.onDidDismiss(),!0})()}viewHistory(s){this.router.navigate(["/load-test-history",{productObjective:this.productObjective,productStep:this.productStep,day:s}])}toggleAiModal(s){var t=this;return(0,p.A)(function*(){if(yield t.showLoading(),t.aiModal=!t.aiModal,t.hasBeenOpened=!0,"httpCodesOptions"===s&&(t.message="En este caso el json tiene codigos de respuesta HTTP, por ejemplo, 404, 500, etc y cuantos requests devolvieron esos codigos:"+JSON.stringify(t.byCodes())),"httpResponseTimeOptions"===s&&(t.message="En este caso el json tiene tiempos de respuesta de los requests, por ejemplo, 500ms, 1000ms, etc: "+JSON.stringify(t.responseTime())),""===t.message)return console.log("Message is empty"),void(yield t.hideLoading());let n=t.messages.length;n>0&&t.messages.push({message:t.message,from:"User",id:n.toString()});const a=yield t.chat.sendMessage(t.message);n=t.messages.length,t.messages.push({message:a.response.text(),from:"AI",id:n.toString()}),t.message="",yield t.hideLoading()})()}sendMessage(){var s=this;let t=this.messages.length;this.messages.push({message:this.message,from:"User",id:t.toString()}),this.chat.sendMessage(this.message).then(function(){var n=(0,p.A)(function*(a){yield s.showLoading(),t=s.messages.length,s.messages.push({message:a.response.text(),from:"AI",id:t.toString()}),yield s.hideLoading()});return function(a){return n.apply(this,arguments)}}()),this.message=""}}return(l=T).\u0275fac=function(s){return new(s||l)(e.rXU(b.Ix),e.rXU(b.nX),e.rXU(_.s),e.rXU(d.Xi),e.rXU(d.hG))},l.\u0275cmp=e.VBU({type:l,selectors:[["app-load-test"]],viewQuery:function(s,t){if(1&s&&e.GBs(E,5),2&s){let n;e.mGM(n=e.lsd())&&(t.messagesContainer=n.first)}},decls:71,vars:18,consts:[["messagesContainer",""],[3,"title"],[3,"fullscreen"],[1,"lg:m-10","md:m-10"],["size","12"],["label","Target","placeholder","Enter a target","type","text","labelPlacement","stacked",1,"",3,"ngModelChange","ngModel"],["size","12","size-md","12","size-lg","12",1,"flex","flex-row","justify-end"],["color","primary","size","small",1,"",3,"click"],["name","add"],[1,"w-full","p-6","flex","flex-col","justify-center","items-center"],[1,"text-3xl"],[1,"text-2xl","text-white"],["size","12",1,"relative","flex","flex-row","justify-center"],[1,"absolute","z-10","w-full","flex","flex-row","justify-end"],[1,"h-12","w-12","bg-purple-400","p-2",3,"click"],["name","color-wand-outline",1,"w-full","h-full"],[1,"h-[25em]","w-full"],["id","httpCodesChart","echarts","",1,"demo-chart","h-full","w-full",3,"options"],["id","httpResponseTimeChart","echarts","",1,"demo-chart","h-full","w-full",3,"options"],["size","12",1,"w-full"],[1,"w-full"],["class","w-full",3,"click",4,"ngFor","ngForOf"],["vertical","bottom","horizontal","end","slot","fixed",1,"m-2","z-10"],["id","ai-modal",1,"fixed","bottom-0","right-0","h-full","w-full","bg-black","bg-opacity-60","z-10","r"],[1,"h-full","md:h-3/4","lg:h-3/4","w-full","bg-gray-900","p-4","absolute","right-0","bottom-0","z-50","flex","flex-col","rounded-tl-2xl","rounded-tr-2xl"],[1,"w-full","bg-gray-500","flex","flex-row","justify-center","items-center","p-2","mb-2","rounded-3xl"],[1,"flex","flex-row","p-2","items-center","bg-gray-800","w-full","rounded-3xl","h-full"],[1,"text-white"],[1,"m-2"],[1,"flex","flex-row","justify-center","items-center","bg-gray-800","hover:bg-gray-600","w-1/6","h-full","rounded-3xl",3,"click"],["name","close-outline"],[1,"flex-grow","overflow-y-auto","bg-gray-400","p-2","rounded-3xl"],["class","flex flex-col",4,"ngFor","ngForOf"],[1,"flex","flex-row","mt-2","p-2"],["placeholder","Ask...",1,"flex-grow","bg-gray-700","rounded-2xl",3,"ngModelChange","ngModel"],[1,"m-1"],[1,"w-1/3","bg-gray-500","rounded-3xl","flex","flex-row","justify-center","items-center","hover:bg-gray-300",3,"click"],[1,"w-full",3,"click"],["name","arrow-forward","color","primary"],["vertical","bottom","horizontal","end","slot","fixed",1,"m-2","z-10",3,"click"],[1,"bg-purple-300","p-1","lg:p-4","md:p-4"],["name","chatbubble-outline",1,"w-full","h-full"],[1,"flex","flex-col"],["class","rounded-3xl bg-gray-800 w-2/3 m-1 ml-auto p-2",4,"ngIf"],["class","rounded-3xl bg-gray-500 w-2/3 m-1 p-2 pr-2",4,"ngIf"],[1,"rounded-3xl","bg-gray-800","w-2/3","m-1","ml-auto","p-2"],[1,"text-white","p-4","m-2"],[1,"rounded-3xl","bg-gray-500","w-2/3","m-1","p-2","pr-2"],[1,"text-white","p-4","m-2",3,"id"]],template:function(s,t){if(1&s){const n=e.RV6();e.nrm(0,"app-header-return",1),e.j41(1,"ion-content",2)(2,"ion-grid"),e.nrm(3,"app-title",1),e.j41(4,"ion-row",3)(5,"ion-col",4)(6,"ion-card")(7,"ion-card-content")(8,"ion-input",5),e.mxI("ngModelChange",function(o){return e.eBV(n),e.DH7(t.target,o)||(t.target=o),e.Njj(o)}),e.k0s()()()()(),e.j41(9,"ion-row",3)(10,"ion-col",6)(11,"ion-button",7),e.bIt("click",function(){return e.eBV(n),e.Njj(t.sendRequest())}),e.EFF(12,"Load Target "),e.nrm(13,"ion-icon",8),e.k0s()()(),e.nrm(14,"app-title",1),e.j41(15,"ion-row",3)(16,"ion-col",4)(17,"ion-card",9)(18,"ion-card-header")(19,"ion-card-title",10),e.EFF(20,"Total Number of Requests"),e.k0s()(),e.j41(21,"ion-card-content")(22,"h1",11),e.EFF(23),e.nI1(24,"number"),e.k0s()()()()(),e.j41(25,"ion-row",3)(26,"ion-col",12)(27,"div",13)(28,"ion-avatar",14),e.bIt("click",function(){return e.eBV(n),e.Njj(t.toggleAiModal("httpCodesOptions"))}),e.nrm(29,"ion-icon",15),e.k0s()(),e.j41(30,"ion-card",9)(31,"ion-card-header")(32,"ion-card-title",10),e.EFF(33,"HTTP Status Codes"),e.k0s()(),e.j41(34,"ion-card-content",16),e.nrm(35,"div",17),e.k0s()()()(),e.j41(36,"ion-row",3)(37,"ion-col",12)(38,"div",13)(39,"ion-avatar",14),e.bIt("click",function(){return e.eBV(n),e.Njj(t.toggleAiModal("httpResponseTimeOptions"))}),e.nrm(40,"ion-icon",15),e.k0s()(),e.j41(41,"ion-card",9)(42,"ion-card-header")(43,"ion-card-title",10),e.EFF(44,"HTTP Response Time"),e.k0s()(),e.j41(45,"ion-card-content",16),e.nrm(46,"div",18),e.k0s()()()(),e.nrm(47,"app-title",1),e.j41(48,"ion-row",3)(49,"ion-col",19)(50,"ion-list",20),e.DNE(51,A,4,1,"ion-item",21),e.k0s()()()(),e.DNE(52,F,3,0,"ion-fab",22),e.k0s(),e.j41(53,"div",23)(54,"div",24)(55,"div",25)(56,"div",26)(57,"h1",27),e.EFF(58,"DevProbe AI"),e.k0s()(),e.nrm(59,"div",28),e.j41(60,"div",29),e.bIt("click",function(){return e.eBV(n),e.Njj(t.toggleAiModal())}),e.nrm(61,"ion-icon",30),e.k0s()(),e.j41(62,"div",31,0),e.DNE(64,N,3,2,"div",32),e.k0s(),e.j41(65,"div",33)(66,"ion-textarea",34),e.mxI("ngModelChange",function(o){return e.eBV(n),e.DH7(t.message,o)||(t.message=o),e.Njj(o)}),e.k0s(),e.nrm(67,"div",35),e.j41(68,"div",36),e.bIt("click",function(){return e.eBV(n),e.Njj(t.sendMessage())}),e.j41(69,"span",27),e.EFF(70,"Send"),e.k0s()()()()()}2&s&&(e.Y8G("title","Load Test For "+t.productStep),e.R7$(),e.Y8G("fullscreen",!0),e.R7$(2),e.Y8G("title","New Load Test"),e.R7$(5),e.R50("ngModel",t.target),e.R7$(6),e.Y8G("title","Analytics For "+t.productStep),e.R7$(9),e.JRh(e.i5U(24,15,t.totalNumberOfRequests,"1.0-0")),e.R7$(12),e.Y8G("options",t.statusCodesOptions),e.R7$(11),e.Y8G("options",t.responseTimeOptions),e.R7$(),e.Y8G("title","Results for date: "),e.R7$(4),e.Y8G("ngForOf",t.listOfDates),e.R7$(),e.vxM(52,t.hasBeenOpened?52:-1),e.R7$(),e.AVh("hidden",!t.aiModal),e.R7$(11),e.Y8G("ngForOf",t.messages),e.R7$(2),e.R50("ngModel",t.message))},dependencies:[g.Sq,g.bT,j.BC,j.vS,d.mC,d.Jm,d.b_,d.I9,d.ME,d.tN,d.hU,d.W9,d.Q8,d.lO,d.iq,d.$w,d.uz,d.he,d.nf,d.ln,d.nc,d.Gw,O.W,M.p,P.$P,L.NN,g.QX]}),T})()}];let $=(()=>{var l;class T{}return(l=T).\u0275fac=function(s){return new(s||l)},l.\u0275mod=e.$C({type:l}),l.\u0275inj=e.G2t({imports:[b.iI.forChild(S),b.iI]}),T})();var G=u(5553);let B=(()=>{var l;class T{}return(l=T).\u0275fac=function(s){return new(s||l)},l.\u0275mod=e.$C({type:l}),l.\u0275inj=e.G2t({imports:[g.MD,j.YN,d.bv,$,G.h,L.NN]}),T})()}}]); \ No newline at end of file diff --git a/www/4559.893444f9e022cfc0.js b/www/4559.893444f9e022cfc0.js deleted file mode 100644 index 98cd79d..0000000 --- a/www/4559.893444f9e022cfc0.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[4559],{5553:(w,k,u)=>{u.d(k,{h:()=>_});var p=u(177),b=u(7863),d=u(4438);let _=(()=>{var m;class e{}return(m=e).\u0275fac=function(j){return new(j||m)},m.\u0275mod=d.$C({type:m}),m.\u0275inj=d.G2t({imports:[p.MD,b.bv]}),e})()},3241:(w,k,u)=>{u.d(k,{p:()=>_});var p=u(4438),b=u(177),d=u(7863);let _=(()=>{var m;class e{constructor(j){this.location=j,this.title="Header Title"}ngOnInit(){}goBack(){this.location.back()}}return(m=e).\u0275fac=function(j){return new(j||m)(p.rXU(b.aZ))},m.\u0275cmp=p.VBU({type:m,selectors:[["app-header-return"]],inputs:{title:"title"},decls:6,vars:2,consts:[[3,"translucent"],["slot","start","menu","menu-id"],["name","arrow-back","slot","start",1,"p-4","bigger-icon",3,"click"]],template:function(j,O){1&j&&(p.j41(0,"ion-header",0)(1,"ion-toolbar"),p.nrm(2,"ion-menu-button",1),p.j41(3,"ion-icon",2),p.bIt("click",function(){return O.goBack()}),p.k0s(),p.j41(4,"ion-title"),p.EFF(5),p.k0s()()()),2&j&&(p.Y8G("translucent",!0),p.R7$(5),p.JRh(O.title))},dependencies:[d.eU,d.iq,d.MC,d.BC,d.ai],styles:[".bigger-icon[_ngcontent-%COMP%]{font-size:1.5em}"]}),e})()},4559:(w,k,u)=>{u.r(k),u.d(k,{LoadTestPageModule:()=>G});var p=u(177),b=u(4341),d=u(7863),_=u(7650),m=u(467),e=u(4438),R=u(9032),j=u(4970),O=u(8453),M=u(3241),L=u(2820),P=u(9549);const E=["messagesContainer"];function A(l,T){if(1&l){const f=e.RV6();e.j41(0,"ion-item",39),e.bIt("click",function(){const t=e.eBV(f).$implicit,n=e.XpG();return e.Njj(n.viewHistory(t))}),e.j41(1,"ion-label"),e.EFF(2),e.k0s(),e.nrm(3,"ion-icon",40),e.k0s()}if(2&l){const f=T.$implicit;e.R7$(2),e.JRh(f)}}function F(l,T){if(1&l&&(e.j41(0,"div",44)(1,"markdown",45),e.EFF(2),e.k0s()()),2&l){const f=e.XpG().$implicit;e.R7$(2),e.JRh(f.message)}}function I(l,T){if(1&l&&(e.j41(0,"div",46)(1,"markdown",47),e.EFF(2),e.k0s()()),2&l){const f=e.XpG().$implicit;e.R7$(),e.Mz_("id","mk-",f.id,""),e.R7$(),e.JRh(f.message)}}function D(l,T){if(1&l&&(e.j41(0,"div",41),e.DNE(1,F,3,1,"div",42)(2,I,3,3,"div",43),e.k0s()),2&l){const f=T.$implicit;e.R7$(),e.Y8G("ngIf","User"===f.from),e.R7$(),e.Y8G("ngIf","AI"===f.from)}}const N=[{path:"",component:(()=>{var l;class T{constructor(s,t,n,i,o){this.router=s,this.activatedRoute=t,this.loadTestService=n,this.loadingCtrl=i,this.alertCtrl=o,this.productStep="",this.productObjective="",this.orgName="",this.target="",this.description="",this.loadTestResults={},this.totalNumberOfRequests=0,this.statusCodesOptions={tooltip:{trigger:"axis"},xAxis:{type:"category",boundaryGap:!1,data:[]},yAxis:{type:"value"},series:[]},this.responseTimeOptions={tooltip:{trigger:"axis"},xAxis:{type:"category",boundaryGap:!1,data:[]},yAxis:{type:"value"},series:[]},this.listOfDates=[],this.aiModal=!1,this.message="",this.vertexAI=(0,e.WQX)(R.L9),this.model=(0,R.oc)(this.vertexAI,{model:"gemini-1.5-flash"}),this.chat=this.model.startChat({history:[{role:"user",parts:[{text:"Hola, desde ahora en adelante quiero que seas un modelo experto en Software Quality Assurance y analista de datos, tu nombre es DevProbeAI, nunca lo puedes olvidar"}]},{role:"model",parts:[{text:"Soy un modelo experto en Software Quality Assurance, de igual forma tengo un masterado en anla\xedtica de datos \xbfEn qu\xe9 puedo ayudarte?"}]},{role:"user",parts:[{text:"Gracias, te voy a entregar un json con datos en unos minutos, necesito que lo analices y me des un resumen de los datos, este json contiene datos de un load test,tu analisis tiene que ser detallado, si encuentras inconsistencias en los datos, por favor mencionalas, en caso de que creas que puede haber un problema o que se encuentre el recurso no disponible por favor mencionalo, si encuentras algo interesante, por favor mencionalo, en resumen, necesito un analisis detallado de los datos"}]},{role:"model",parts:[{text:"Claro, env\xedame el json y yo me encargo de analizarlo"}]}]}),this.messages=[]}ngOnInit(){}ionViewWillEnter(){var s=this;return(0,m.A)(function*(){yield s.showLoading(),s.getParams(),yield s.getHistoryResults().then(()=>{s.plotCodes(),s.totalRequests(),s.responseTime()}),yield s.hideLoading()})()}getParams(){this.activatedRoute.params.subscribe(t=>{this.productObjective=t.productObjective,this.productStep=t.step});const s=JSON.parse(localStorage.getItem("user"));this.orgName=s.orgName,console.log(this.orgName),console.log(this.productObjective),console.log(this.productStep)}sendRequest(){var s=this;return(0,m.A)(function*(){if(yield s.showLoading(),s.target.startsWith("http://")||s.target.startsWith("https://")||s.target.endsWith("/"))return yield s.hideLoading(),void(yield s.showAlert("No http or https is needed, check for slashes at the end of the domain","Please enter a valid host"));yield s.loadTestService.sendLoadTest(s.orgName,s.productObjective,s.productStep,s.target).then(function(){var t=(0,m.A)(function*(n){yield s.hideLoading(),console.log("data",n),n&&(yield s.showAlert("Test sent, please wait a few seconds to GET RESULTS","Success"))});return function(n){return t.apply(this,arguments)}}()),yield s.hideLoading()})()}getHistoryResults(){var s=this;return(0,m.A)(function*(){s.loadTestResults=yield s.loadTestService.getLoadTestHistory(s.orgName,s.productObjective,s.productStep)})()}totalRequests(){let s=Object.keys(this.loadTestResults),t={},n=0;for(let i of s){let o=this.loadTestResults[i].aggregate.counters,v=this.loadTestResults[i].date,c=Object.keys(o).filter(y=>y.startsWith("http.requests"));for(let y of c)t[v]||(t[v]={}),t[v][y]=(t[v][y]||0)+o[y]}for(let i of Object.keys(t))n+=t[i]["http.requests"];this.totalNumberOfRequests=n}byCodes(){let s=Object.keys(this.loadTestResults),t={};for(let n of s){let i=this.loadTestResults[n].aggregate.counters,o=this.loadTestResults[n].date.split("-").slice(0,3).join("-"),v=Object.keys(i).filter(c=>c.startsWith("http.codes."));t[o]||(t[o]={});for(let c of v)t[o][c]=(t[o][c]||0)+i[c]}return t=this.ordenarDiccionarioPorFechas(t),console.log("codessss",t),t}normalizarFecha(s){const[t,n,i]=s.split("-").map(c=>parseInt(c,10));return`${t}-${n<10?`0${n}`:n.toString()}-${i<10?`0${i}`:i.toString()}`}ordenarDiccionarioPorFechas(s){const n=Object.keys(s).sort((o,v)=>{const c=new Date(this.normalizarFecha(o)),y=new Date(this.normalizarFecha(v));return c.getTime()-y.getTime()}),i={};return n.forEach(o=>{i[o]=s[o]}),i}plotCodes(){var s=this;return(0,m.A)(function*(){let t=s.byCodes();console.log(t);let n=Object.keys(t);s.listOfDates=n;let i=new Set;for(let y of n){let a=Object.keys(t[y]);for(let r of a)i.add(r)}let o={};for(let y in t){let g=t[y];for(let a of i)o[a]||(o[a]=[]),o[a].push(g[a]||0)}let v=["#36b311","#306fc6","#ed3b3b","#f4ba20"];for(let y in o){let a,g=y.split(".").pop();null!=g&&g.startsWith("2")&&(a=v[0]),null!=g&&g.startsWith("3")&&(a=v[1]),null!=g&&g.startsWith("4")&&(a=v[2]),null!=g&&g.startsWith("5")&&(a=v[3]),a||(a="#000000"),s.statusCodesOptions.series.push({name:y,type:"line",data:o[y],lineStyle:{color:a},itemStyle:{color:a}})}s.statusCodesOptions.xAxis={type:"category",boundaryGap:!1,data:n},s.statusCodesOptions={...s.statusCodesOptions};let c=document.getElementById("httpCodesChart");console.log(c),c.style.width="100%",c.style.height="25em"})()}responseTime(){let s=Object.keys(this.loadTestResults),t={};for(let a of s){let r=this.loadTestResults[a].aggregate.histograms,C=this.loadTestResults[a].date,h=Object.keys(r).filter(x=>x.startsWith("http.response_time"));for(let x of h)t[C]=r[x]}let n=Object.entries(t).reduce((a,[r,C])=>{const h=r.split("-").slice(0,3).join("-");return a[h]=a[h]||[],a[h].push(C),a},{}),i=Object.keys(n).sort((a,r)=>new Date(a).getTime()-new Date(r).getTime()),o={count:0,max:0,min:0,mean:0,median:0,p50:0,p90:0,p95:0,p99:0,p999:0},v={};i.forEach(a=>{let r={count:0,max:0,min:0,mean:0,median:0,p50:0,p90:0,p95:0,p99:0,p999:0},C=0;n[a].forEach(h=>{r.count+=h.count,r.max+=h.max,r.min+=h.min,r.mean+=h.mean,r.median+=h.median,r.p50+=h.p50,r.p90+=h.p90,r.p95+=h.p95,r.p99+=h.p99,r.p999+=h.p999,C++});for(let h in r)"count"!==h&&C>0&&(r[h]=r[h]/C);v[a]=r,o.count+=r.count,o.max+=r.max,o.min+=r.min,o.mean+=r.mean,o.median+=r.median,o.p50+=r.p50,o.p90+=r.p90,o.p95+=r.p95,o.p99+=r.p99,o.p999+=r.p999});let c=i.length;c>0&&(o.mean/=c,o.median/=c,o.p50/=c,o.p90/=c,o.p95/=c,o.p99/=c,o.p999/=c,o.max/=c,o.min/=c);let y={};for(let a in o)"count"===a||"p90"===a||"p50"===a||"p999"===a||(y[a]=o[a],this.responseTimeOptions.series.push({name:a,type:"bar",data:[o[a]],label:{show:!0,formatter:r=>`${r.value.toFixed(2)} ms`}}));this.responseTimeOptions.xAxis={type:"category",boundaryGap:!1,data:["Category"]},this.responseTimeOptions={...this.responseTimeOptions};let g=document.getElementById("httpResponseTimeChart");return console.log(g),g.style.width="100%",g.style.height="25em",y}showLoading(){var s=this;return(0,m.A)(function*(){yield(yield s.loadingCtrl.create({})).present()})()}hideLoading(){var s=this;return(0,m.A)(function*(){yield s.loadingCtrl.dismiss()})()}showAlert(s,t){var n=this;return(0,m.A)(function*(){const i=yield n.alertCtrl.create({header:t,message:s,buttons:["OK"]});return yield i.present(),yield i.onDidDismiss(),!0})()}viewHistory(s){this.router.navigate(["/load-test-history",{productObjective:this.productObjective,productStep:this.productStep,day:s}])}toggleAiModal(s){var t=this;return(0,m.A)(function*(){if(t.aiModal=!t.aiModal,"httpCodesOptions"===s&&(t.message="En este caso el json tiene codigos de respuesta HTTP, por ejemplo, 404, 500, etc y cuantos requests devolvieron esos codigos:"+JSON.stringify(t.byCodes())),"httpResponseTimeOptions"===s&&(t.message="En este caso el json tiene tiempos de respuesta de los requests, por ejemplo, 500ms, 1000ms, etc: "+JSON.stringify(t.responseTime())),""===t.message)return void console.log("Message is empty");let n=t.messages.length;n>0&&t.messages.push({message:t.message,from:"User",id:n.toString()});const i=yield t.chat.sendMessage(t.message);n=t.messages.length,t.messages.push({message:i.response.text(),from:"AI",id:n.toString()}),t.message=""})()}sendMessage(){let s=this.messages.length;this.messages.push({message:this.message,from:"User",id:s.toString()}),this.chat.sendMessage(this.message).then(t=>{s=this.messages.length,this.messages.push({message:t.response.text(),from:"AI",id:s.toString()})}),this.message=""}}return(l=T).\u0275fac=function(s){return new(s||l)(e.rXU(_.Ix),e.rXU(_.nX),e.rXU(j.s),e.rXU(d.Xi),e.rXU(d.hG))},l.\u0275cmp=e.VBU({type:l,selectors:[["app-load-test"]],viewQuery:function(s,t){if(1&s&&e.GBs(E,5),2&s){let n;e.mGM(n=e.lsd())&&(t.messagesContainer=n.first)}},decls:73,vars:17,consts:[["messagesContainer",""],[3,"title"],[3,"fullscreen"],[1,"lg:m-10","md:m-10"],["size","12"],["label","Target","placeholder","Enter a target","type","text","labelPlacement","stacked",1,"",3,"ngModelChange","ngModel"],["size","12","size-md","12","size-lg","12",1,"flex","flex-row","justify-end"],["color","primary","size","small",1,"",3,"click"],["name","add"],[1,"w-full","p-6","flex","flex-col","justify-center","items-center"],[1,"text-3xl"],[1,"text-2xl","text-white"],["size","12",1,"relative"],[1,"absolute","z-10","flex","justify-center","items-center","-right-5","-top-5",3,"click"],[1,"bg-purple-600","justify-center","items-center","flex"],["size","large","name","color-wand-outline"],[1,"h-[25em]","w-full"],["id","httpCodesChart","echarts","",1,"demo-chart","h-full","w-full",3,"options"],["id","httpResponseTimeChart","echarts","",1,"demo-chart","h-full","w-full",3,"options"],["size","12",1,"w-full"],[1,"w-full"],["class","w-full",3,"click",4,"ngFor","ngForOf"],["vertical","bottom","horizontal","end","slot","fixed",1,"m-2","z-10",3,"click"],[1,"bg-purple-300","p-4"],["name","chatbubble-outline",1,"w-full","h-full"],["id","ai-modal",1,"fixed","bottom-0","right-0","h-full","w-full","bg-black","bg-opacity-60","z-10","r"],[1,"h-full","md:h-3/4","lg:h-3/4","w-full","bg-gray-900","p-4","absolute","right-0","bottom-0","z-50","flex","flex-col","rounded-tl-2xl","rounded-tr-2xl"],[1,"w-full","bg-gray-500","flex","flex-row","justify-center","items-center","p-2","mb-2","rounded-3xl"],[1,"flex","flex-row","p-2","items-center","bg-gray-800","w-full","rounded-3xl","h-full"],[1,"text-white"],[1,"m-2"],[1,"flex","flex-row","justify-center","items-center","bg-gray-800","hover:bg-gray-600","w-1/6","h-full","rounded-3xl",3,"click"],["name","close-outline"],[1,"flex-grow","overflow-y-auto","bg-gray-400","p-2","rounded-3xl"],["class","flex flex-col",4,"ngFor","ngForOf"],[1,"flex","flex-row","mt-2","p-2"],["placeholder","Ask...",1,"flex-grow","bg-gray-700","rounded-2xl",3,"ngModelChange","ngModel"],[1,"m-1"],[1,"w-1/3","bg-gray-500","rounded-3xl","flex","flex-row","justify-center","items-center","hover:bg-gray-300",3,"click"],[1,"w-full",3,"click"],["name","arrow-forward","color","primary"],[1,"flex","flex-col"],["class","rounded-3xl bg-gray-800 w-2/3 m-1 ml-auto p-2",4,"ngIf"],["class","rounded-3xl bg-gray-500 w-2/3 m-1 p-2 pr-2",4,"ngIf"],[1,"rounded-3xl","bg-gray-800","w-2/3","m-1","ml-auto","p-2"],[1,"text-white","p-4","m-2"],[1,"rounded-3xl","bg-gray-500","w-2/3","m-1","p-2","pr-2"],[1,"text-white","p-4","m-2",3,"id"]],template:function(s,t){if(1&s){const n=e.RV6();e.nrm(0,"app-header-return",1),e.j41(1,"ion-content",2)(2,"ion-grid"),e.nrm(3,"app-title",1),e.j41(4,"ion-row",3)(5,"ion-col",4)(6,"ion-card")(7,"ion-card-content")(8,"ion-input",5),e.mxI("ngModelChange",function(o){return e.eBV(n),e.DH7(t.target,o)||(t.target=o),e.Njj(o)}),e.k0s()()()()(),e.j41(9,"ion-row",3)(10,"ion-col",6)(11,"ion-button",7),e.bIt("click",function(){return e.eBV(n),e.Njj(t.sendRequest())}),e.EFF(12,"Load Target "),e.nrm(13,"ion-icon",8),e.k0s()()(),e.nrm(14,"app-title",1),e.j41(15,"ion-row",3)(16,"ion-col",4)(17,"ion-card",9)(18,"ion-card-header")(19,"ion-card-title",10),e.EFF(20,"Total Number of Requests"),e.k0s()(),e.j41(21,"ion-card-content")(22,"h1",11),e.EFF(23),e.nI1(24,"number"),e.k0s()()()()(),e.j41(25,"ion-row",3)(26,"ion-col",12)(27,"div",13),e.bIt("click",function(){return e.eBV(n),e.Njj(t.toggleAiModal("httpCodesOptions"))}),e.j41(28,"ion-avatar",14),e.nrm(29,"ion-icon",15),e.k0s()(),e.j41(30,"ion-card",9)(31,"ion-card-header")(32,"ion-card-title",10),e.EFF(33,"HTTP Status Codes"),e.k0s()(),e.j41(34,"ion-card-content",16),e.nrm(35,"div",17),e.k0s()()()(),e.j41(36,"ion-row",3)(37,"ion-col",12)(38,"div",13),e.bIt("click",function(){return e.eBV(n),e.Njj(t.toggleAiModal("httpResponseTimeOptions"))}),e.j41(39,"ion-avatar",14),e.nrm(40,"ion-icon",15),e.k0s()(),e.j41(41,"ion-card",9)(42,"ion-card-header")(43,"ion-card-title",10),e.EFF(44,"HTTP Response Time"),e.k0s()(),e.j41(45,"ion-card-content",16),e.nrm(46,"div",18),e.k0s()()()(),e.nrm(47,"app-title",1),e.j41(48,"ion-row",3)(49,"ion-col",19)(50,"ion-list",20),e.DNE(51,A,4,1,"ion-item",21),e.k0s()()()(),e.j41(52,"ion-fab",22),e.bIt("click",function(){return e.eBV(n),e.Njj(t.toggleAiModal())}),e.j41(53,"ion-avatar",23),e.nrm(54,"ion-icon",24),e.k0s()()(),e.j41(55,"div",25)(56,"div",26)(57,"div",27)(58,"div",28)(59,"h1",29),e.EFF(60,"DevProbe AI"),e.k0s()(),e.nrm(61,"div",30),e.j41(62,"div",31),e.bIt("click",function(){return e.eBV(n),e.Njj(t.toggleAiModal())}),e.nrm(63,"ion-icon",32),e.k0s()(),e.j41(64,"div",33,0),e.DNE(66,D,3,2,"div",34),e.k0s(),e.j41(67,"div",35)(68,"ion-textarea",36),e.mxI("ngModelChange",function(o){return e.eBV(n),e.DH7(t.message,o)||(t.message=o),e.Njj(o)}),e.k0s(),e.nrm(69,"div",37),e.j41(70,"div",38),e.bIt("click",function(){return e.eBV(n),e.Njj(t.sendMessage())}),e.j41(71,"span",29),e.EFF(72,"Send"),e.k0s()()()()()}2&s&&(e.Y8G("title","Load Test For "+t.productStep),e.R7$(),e.Y8G("fullscreen",!0),e.R7$(2),e.Y8G("title","New Load Test"),e.R7$(5),e.R50("ngModel",t.target),e.R7$(6),e.Y8G("title","Analytics For "+t.productStep),e.R7$(9),e.JRh(e.i5U(24,14,t.totalNumberOfRequests,"1.0-0")),e.R7$(12),e.Y8G("options",t.statusCodesOptions),e.R7$(11),e.Y8G("options",t.responseTimeOptions),e.R7$(),e.Y8G("title","Results for date: "),e.R7$(4),e.Y8G("ngForOf",t.listOfDates),e.R7$(4),e.AVh("hidden",!t.aiModal),e.R7$(11),e.Y8G("ngForOf",t.messages),e.R7$(2),e.R50("ngModel",t.message))},dependencies:[p.Sq,p.bT,b.BC,b.vS,d.mC,d.Jm,d.b_,d.I9,d.ME,d.tN,d.hU,d.W9,d.Q8,d.lO,d.iq,d.$w,d.uz,d.he,d.nf,d.ln,d.nc,d.Gw,O.W,M.p,L.$P,P.NN,p.QX]}),T})()}];let S=(()=>{var l;class T{}return(l=T).\u0275fac=function(s){return new(s||l)},l.\u0275mod=e.$C({type:l}),l.\u0275inj=e.G2t({imports:[_.iI.forChild(N),_.iI]}),T})();var $=u(5553);let G=(()=>{var l;class T{}return(l=T).\u0275fac=function(s){return new(s||l)},l.\u0275mod=e.$C({type:l}),l.\u0275inj=e.G2t({imports:[p.MD,b.YN,d.bv,S,$.h,P.NN]}),T})()}}]); \ No newline at end of file diff --git a/www/5197.cfc60de4c5213fec.js b/www/5197.38b8cc3181b51450.js similarity index 98% rename from www/5197.cfc60de4c5213fec.js rename to www/5197.38b8cc3181b51450.js index 0677597..e639504 100644 --- a/www/5197.cfc60de4c5213fec.js +++ b/www/5197.38b8cc3181b51450.js @@ -1 +1 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[5197],{5197:(W,w,a)=>{a.r(w),a.d(w,{ion_refresher:()=>T,ion_refresher_content:()=>U});var d=a(467),n=a(9672),_=a(3351),y=a(909),c=a(4920),k=a(1086),h=a(3664),m=a(9986),x=a(464),E=a(3992),C=a(7895);a(8438),a(8476);const S=e=>{const t=e.querySelector("ion-spinner"),r=t.shadowRoot.querySelector("circle"),s=e.querySelector(".spinner-arrow-container"),l=e.querySelector(".arrow-container"),f=l?l.querySelector("ion-icon"):null,o=(0,m.c)().duration(1e3).easing("ease-out"),i=(0,m.c)().addElement(s).keyframes([{offset:0,opacity:"0.3"},{offset:.45,opacity:"0.3"},{offset:.55,opacity:"1"},{offset:1,opacity:"1"}]),p=(0,m.c)().addElement(r).keyframes([{offset:0,strokeDasharray:"1px, 200px"},{offset:.2,strokeDasharray:"1px, 200px"},{offset:.55,strokeDasharray:"100px, 200px"},{offset:1,strokeDasharray:"100px, 200px"}]),g=(0,m.c)().addElement(t).keyframes([{offset:0,transform:"rotate(-90deg)"},{offset:1,transform:"rotate(210deg)"}]);if(l&&f){const b=(0,m.c)().addElement(l).keyframes([{offset:0,transform:"rotate(0deg)"},{offset:.3,transform:"rotate(0deg)"},{offset:.55,transform:"rotate(280deg)"},{offset:1,transform:"rotate(400deg)"}]),u=(0,m.c)().addElement(f).keyframes([{offset:0,transform:"translateX(2px) scale(0)"},{offset:.3,transform:"translateX(2px) scale(0)"},{offset:.55,transform:"translateX(-1.5px) scale(1)"},{offset:1,transform:"translateX(-1.5px) scale(1)"}]);o.addAnimation([b,u])}return o.addAnimation([i,p,g])},v=(e,t,r=200)=>{if(!e)return Promise.resolve();const s=(0,c.t)(e,r);return(0,n.w)(()=>{e.style.setProperty("transition",`${r}ms all ease-out`),void 0===t?e.style.removeProperty("transform"):e.style.setProperty("transform",`translate3d(0px, ${t}, 0px)`)}),s},R=()=>navigator.maxTouchPoints>0&&CSS.supports("background: -webkit-named-image(apple-pay-logo-black)"),P=function(){var e=(0,d.A)(function*(t,r){const s=t.querySelector("ion-refresher-content");if(!s)return Promise.resolve(!1);yield new Promise(o=>(0,c.c)(s,o));const l=t.querySelector("ion-refresher-content .refresher-pulling ion-spinner"),f=t.querySelector("ion-refresher-content .refresher-refreshing ion-spinner");return null!==l&&null!==f&&("ios"===r&&R()||"md"===r)});return function(r,s){return e.apply(this,arguments)}}(),T=class{constructor(e){(0,n.r)(this,e),this.ionRefresh=(0,n.d)(this,"ionRefresh",7),this.ionPull=(0,n.d)(this,"ionPull",7),this.ionStart=(0,n.d)(this,"ionStart",7),this.appliedStyles=!1,this.didStart=!1,this.progress=0,this.pointerDown=!1,this.needsCompletion=!1,this.didRefresh=!1,this.lastVelocityY=0,this.animations=[],this.nativeRefresher=!1,this.state=1,this.pullMin=60,this.pullMax=this.pullMin+60,this.closeDuration="280ms",this.snapbackDuration="280ms",this.pullFactor=1,this.disabled=!1}disabledChanged(){this.gesture&&this.gesture.enable(!this.disabled)}checkNativeRefresher(){var e=this;return(0,d.A)(function*(){const t=yield P(e.el,(0,h.b)(e));if(t&&!e.nativeRefresher){const r=e.el.closest("ion-content");e.setupNativeRefresher(r)}else t||e.destroyNativeRefresher()})()}destroyNativeRefresher(){this.scrollEl&&this.scrollListenerCallback&&(this.scrollEl.removeEventListener("scroll",this.scrollListenerCallback),this.scrollListenerCallback=void 0),this.nativeRefresher=!1}resetNativeRefresher(e,t){var r=this;return(0,d.A)(function*(){r.state=t,"ios"===(0,h.b)(r)?yield v(e,void 0,300):yield(0,c.t)(r.el.querySelector(".refresher-refreshing-icon"),200),r.didRefresh=!1,r.needsCompletion=!1,r.pointerDown=!1,r.animations.forEach(s=>s.destroy()),r.animations=[],r.progress=0,r.state=1})()}setupiOSNativeRefresher(e,t){var r=this;return(0,d.A)(function*(){r.elementToTransform=r.scrollEl;const s=e.shadowRoot.querySelectorAll("svg");let l=.16*r.scrollEl.clientHeight;const f=s.length;(0,n.w)(()=>s.forEach(o=>o.style.setProperty("animation","none"))),r.scrollListenerCallback=()=>{!r.pointerDown&&1===r.state||(0,n.e)(()=>{const o=r.scrollEl.scrollTop,i=r.el.clientHeight;if(o>0){if(8===r.state){const u=(0,c.j)(0,o/(.5*i),1);return void(0,n.w)(()=>((e,t)=>{e.style.setProperty("opacity",t.toString())})(t,1-u))}return}r.pointerDown&&(r.didStart||(r.didStart=!0,r.ionStart.emit()),r.pointerDown&&r.ionPull.emit());const p=r.didStart?30:0,g=r.progress=(0,c.j)(0,(Math.abs(o)-p)/l,1);8===r.state||1===g?(r.pointerDown&&((e,t)=>{(0,n.w)(()=>{e.style.setProperty("--refreshing-rotation-duration",t>=1?"0.5s":"2s"),e.style.setProperty("opacity","1")})})(t,r.lastVelocityY),r.didRefresh||(r.beginRefresh(),r.didRefresh=!0,(0,k.d)({style:k.I.Light}),r.pointerDown||v(r.elementToTransform,`${i}px`))):(r.state=2,((e,t,r)=>{(0,n.w)(()=>{e.forEach((l,f)=>{const o=f*(1/t),g=(0,c.j)(0,(r-o)/(1-o),1);l.style.setProperty("opacity",g.toString())})})})(s,f,g))})},r.scrollEl.addEventListener("scroll",r.scrollListenerCallback),r.gesture=(yield Promise.resolve().then(a.bind(a,8607))).createGesture({el:r.scrollEl,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:5,onStart:()=>{r.pointerDown=!0,r.didRefresh||v(r.elementToTransform,"0px"),0===l&&(l=.16*r.scrollEl.clientHeight)},onMove:o=>{r.lastVelocityY=o.velocityY},onEnd:()=>{r.pointerDown=!1,r.didStart=!1,r.needsCompletion?(r.resetNativeRefresher(r.elementToTransform,32),r.needsCompletion=!1):r.didRefresh&&(0,n.e)(()=>v(r.elementToTransform,`${r.el.clientHeight}px`))}}),r.disabledChanged()})()}setupMDNativeRefresher(e,t,r){var s=this;return(0,d.A)(function*(){const l=(0,c.g)(t).querySelector("circle"),f=s.el.querySelector("ion-refresher-content .refresher-pulling-icon"),o=(0,c.g)(r).querySelector("circle");null!==l&&null!==o&&(0,n.w)(()=>{l.style.setProperty("animation","none"),r.style.setProperty("animation-delay","-655ms"),o.style.setProperty("animation-delay","-655ms")}),s.gesture=(yield Promise.resolve().then(a.bind(a,8607))).createGesture({el:s.scrollEl,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:5,canStart:()=>8!==s.state&&32!==s.state&&0===s.scrollEl.scrollTop,onStart:i=>{s.progress=0,i.data={animation:void 0,didStart:!1,cancelled:!1}},onMove:i=>{if(i.velocityY<0&&0===s.progress&&!i.data.didStart||i.data.cancelled)i.data.cancelled=!0;else{if(!i.data.didStart){i.data.didStart=!0,s.state=2;const{scrollEl:p}=s,g=p.matches(y.I)?"overflow":"--overflow";(0,n.w)(()=>p.style.setProperty(g,"hidden"));const b=(e=>{const t=e.previousElementSibling;return null!==t&&"ION-HEADER"===t.tagName?"translate":"scale"})(e),u=((e,t,r)=>"scale"===e?((e,t)=>{const r=t.clientHeight,s=(0,m.c)().addElement(e).keyframes([{offset:0,transform:`scale(0) translateY(-${r}px)`},{offset:1,transform:"scale(1) translateY(100px)"}]);return S(e).addAnimation([s])})(t,r):((e,t)=>{const r=t.clientHeight,s=(0,m.c)().addElement(e).keyframes([{offset:0,transform:`translateY(-${r}px)`},{offset:1,transform:"translateY(100px)"}]);return S(e).addAnimation([s])})(t,r))(b,f,s.el);return i.data.animation=u,u.progressStart(!1,0),s.ionStart.emit(),void s.animations.push(u)}s.progress=(0,c.j)(0,i.deltaY/180*.5,1),i.data.animation.progressStep(s.progress),s.ionPull.emit()}},onEnd:i=>{if(!i.data.didStart)return;s.gesture.enable(!1);const{scrollEl:p}=s,g=p.matches(y.I)?"overflow":"--overflow";if((0,n.w)(()=>p.style.removeProperty(g)),s.progress<=.4)return void i.data.animation.progressEnd(0,s.progress,500).onFinish(()=>{s.animations.forEach(H=>H.destroy()),s.animations=[],s.gesture.enable(!0),s.state=1});const b=(0,_.g)([0,0],[0,0],[1,1],[1,1],s.progress)[0],u=(e=>(0,m.c)().duration(125).addElement(e).fromTo("transform","translateY(var(--ion-pulling-refresher-translate, 100px))","translateY(0px)"))(f);s.animations.push(u),(0,n.w)((0,d.A)(function*(){f.style.setProperty("--ion-pulling-refresher-translate",100*b+"px"),i.data.animation.progressEnd(),yield u.play(),s.beginRefresh(),i.data.animation.destroy(),s.gesture.enable(!0)}))}}),s.disabledChanged()})()}setupNativeRefresher(e){var t=this;return(0,d.A)(function*(){if(t.scrollListenerCallback||!e||t.nativeRefresher||!t.scrollEl)return;t.setCss(0,"",!1,""),t.nativeRefresher=!0;const r=t.el.querySelector("ion-refresher-content .refresher-pulling ion-spinner"),s=t.el.querySelector("ion-refresher-content .refresher-refreshing ion-spinner");"ios"===(0,h.b)(t)?t.setupiOSNativeRefresher(r,s):t.setupMDNativeRefresher(e,r,s)})()}componentDidUpdate(){this.checkNativeRefresher()}connectedCallback(){var e=this;return(0,d.A)(function*(){if("fixed"!==e.el.getAttribute("slot"))return void console.error('Make sure you use: ');const t=e.el.closest(y.b);t?(0,c.c)(t,(0,d.A)(function*(){const r=t.querySelector(y.I);e.scrollEl=yield(0,y.g)(null!=r?r:t),e.backgroundContentEl=yield t.getBackgroundElement(),(yield P(e.el,(0,h.b)(e)))?e.setupNativeRefresher(t):(e.gesture=(yield Promise.resolve().then(a.bind(a,8607))).createGesture({el:t,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:20,passive:!1,canStart:()=>e.canStart(),onStart:()=>e.onStart(),onMove:s=>e.onMove(s),onEnd:()=>e.onEnd()}),e.disabledChanged())})):(0,y.p)(e.el)})()}disconnectedCallback(){this.destroyNativeRefresher(),this.scrollEl=void 0,this.gesture&&(this.gesture.destroy(),this.gesture=void 0)}complete(){var e=this;return(0,d.A)(function*(){e.nativeRefresher?(e.needsCompletion=!0,e.pointerDown||(0,c.r)(()=>(0,c.r)(()=>e.resetNativeRefresher(e.elementToTransform,32)))):e.close(32,"120ms")})()}cancel(){var e=this;return(0,d.A)(function*(){e.nativeRefresher?e.pointerDown||(0,c.r)(()=>(0,c.r)(()=>e.resetNativeRefresher(e.elementToTransform,16))):e.close(16,"")})()}getProgress(){return Promise.resolve(this.progress)}canStart(){return!(!this.scrollEl||1!==this.state||this.scrollEl.scrollTop>0)}onStart(){this.progress=0,this.state=1,this.memoizeOverflowStyle()}onMove(e){if(!this.scrollEl)return;const t=e.event;if(void 0!==t.touches&&t.touches.length>1||56&this.state)return;const r=Number.isNaN(this.pullFactor)||this.pullFactor<0?1:this.pullFactor,s=e.deltaY*r;if(s<=0)return this.progress=0,this.state=1,this.appliedStyles?void this.setCss(0,"",!1,""):void 0;if(1===this.state){if(this.scrollEl.scrollTop>0)return void(this.progress=0);this.state=2}if(t.cancelable&&t.preventDefault(),this.setCss(s,"0ms",!0,""),0===s)return void(this.progress=0);const l=this.pullMin;this.progress=s/l,this.didStart||(this.didStart=!0,this.ionStart.emit()),this.ionPull.emit(),sthis.pullMax?this.beginRefresh():this.state=4}onEnd(){4===this.state?this.beginRefresh():2===this.state?this.cancel():1===this.state&&this.restoreOverflowStyle()}beginRefresh(){this.state=8,this.setCss(this.pullMin,this.snapbackDuration,!0,""),this.ionRefresh.emit({complete:this.complete.bind(this)})}close(e,t){setTimeout(()=>{this.state=1,this.progress=0,this.didStart=!1,this.setCss(0,"0ms",!1,"",!0)},600),this.state=e,this.setCss(0,this.closeDuration,!0,t)}setCss(e,t,r,s,l=!1){this.nativeRefresher||(this.appliedStyles=e>0,(0,n.w)(()=>{if(this.scrollEl&&this.backgroundContentEl){const f=this.scrollEl.style,o=this.backgroundContentEl.style;f.transform=o.transform=e>0?`translateY(${e}px) translateZ(0px)`:"",f.transitionDuration=o.transitionDuration=t,f.transitionDelay=o.transitionDelay=s,f.overflow=r?"hidden":""}l&&this.restoreOverflowStyle()}))}memoizeOverflowStyle(){if(this.scrollEl){const{overflow:e,overflowX:t,overflowY:r}=this.scrollEl.style;this.overflowStyles={overflow:null!=e?e:"",overflowX:null!=t?t:"",overflowY:null!=r?r:""}}}restoreOverflowStyle(){if(void 0!==this.overflowStyles&&void 0!==this.scrollEl){const{overflow:e,overflowX:t,overflowY:r}=this.overflowStyles;this.scrollEl.style.overflow=e,this.scrollEl.style.overflowX=t,this.scrollEl.style.overflowY=r,this.overflowStyles=void 0}}render(){const e=(0,h.b)(this);return(0,n.h)(n.f,{key:"1696f66f62d18c9075294f17cb24263325fcf35d",slot:"fixed",class:{[e]:!0,[`refresher-${e}`]:!0,"refresher-native":this.nativeRefresher,"refresher-active":1!==this.state,"refresher-pulling":2===this.state,"refresher-ready":4===this.state,"refresher-refreshing":8===this.state,"refresher-cancelling":16===this.state,"refresher-completing":32===this.state}})}get el(){return(0,n.i)(this)}static get watchers(){return{disabled:["disabledChanged"]}}};T.style={ios:"ion-refresher{top:0;display:none;position:absolute;width:100%;height:60px;pointer-events:none;z-index:-1}ion-refresher{inset-inline-start:0}ion-refresher.refresher-active{display:block}ion-refresher-content{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.refresher-pulling,.refresher-refreshing{display:none;width:100%}.refresher-pulling-icon,.refresher-refreshing-icon{-webkit-transform-origin:center;transform-origin:center;-webkit-transition:200ms;transition:200ms;font-size:30px;text-align:center}:host-context([dir=rtl]) .refresher-pulling-icon,:host-context([dir=rtl]) .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}[dir=rtl] .refresher-pulling-icon,[dir=rtl] .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}@supports selector(:dir(rtl)){.refresher-pulling-icon:dir(rtl),.refresher-refreshing-icon:dir(rtl){-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}}.refresher-pulling-text,.refresher-refreshing-text{font-size:16px;text-align:center}ion-refresher-content .arrow-container{display:none}.refresher-pulling ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.refresher-refreshing ion-refresher-content .refresher-refreshing{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-completing ion-refresher-content .refresher-refreshing{display:block}.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-native .refresher-pulling-text,.refresher-native .refresher-refreshing-text{display:none}.refresher-ios .refresher-pulling-icon,.refresher-ios .refresher-refreshing-icon{color:var(--ion-text-color, #000)}.refresher-ios .refresher-pulling-text,.refresher-ios .refresher-refreshing-text{color:var(--ion-text-color, #000)}.refresher-ios .refresher-refreshing .spinner-lines-ios line,.refresher-ios .refresher-refreshing .spinner-lines-small-ios line,.refresher-ios .refresher-refreshing .spinner-crescent circle{stroke:var(--ion-text-color, #000)}.refresher-ios .refresher-refreshing .spinner-bubbles circle,.refresher-ios .refresher-refreshing .spinner-circles circle,.refresher-ios .refresher-refreshing .spinner-dots circle{fill:var(--ion-text-color, #000)}ion-refresher.refresher-native{display:block;z-index:1}ion-refresher.refresher-native ion-spinner{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}.refresher-native .refresher-refreshing ion-spinner{--refreshing-rotation-duration:2s;display:none;-webkit-animation:var(--refreshing-rotation-duration) ease-out refresher-rotate forwards;animation:var(--refreshing-rotation-duration) ease-out refresher-rotate forwards}.refresher-native .refresher-refreshing{display:none;-webkit-animation:250ms linear refresher-pop forwards;animation:250ms linear refresher-pop forwards}.refresher-native ion-spinner{width:32px;height:32px;color:var(--ion-color-step-450, var(--ion-background-color-step-450, #747577))}.refresher-native.refresher-refreshing .refresher-pulling ion-spinner,.refresher-native.refresher-completing .refresher-pulling ion-spinner{display:none}.refresher-native.refresher-refreshing .refresher-refreshing ion-spinner,.refresher-native.refresher-completing .refresher-refreshing ion-spinner{display:block}.refresher-native.refresher-pulling .refresher-pulling ion-spinner{display:block}.refresher-native.refresher-pulling .refresher-refreshing ion-spinner{display:none}.refresher-native.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0) rotate(180deg);transform:scale(0) rotate(180deg);-webkit-transition:300ms;transition:300ms}@-webkit-keyframes refresher-pop{0%{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}50%{-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes refresher-pop{0%{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}50%{-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}100%{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes refresher-rotate{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(180deg);transform:rotate(180deg)}}@keyframes refresher-rotate{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(180deg);transform:rotate(180deg)}}",md:"ion-refresher{top:0;display:none;position:absolute;width:100%;height:60px;pointer-events:none;z-index:-1}ion-refresher{inset-inline-start:0}ion-refresher.refresher-active{display:block}ion-refresher-content{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.refresher-pulling,.refresher-refreshing{display:none;width:100%}.refresher-pulling-icon,.refresher-refreshing-icon{-webkit-transform-origin:center;transform-origin:center;-webkit-transition:200ms;transition:200ms;font-size:30px;text-align:center}:host-context([dir=rtl]) .refresher-pulling-icon,:host-context([dir=rtl]) .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}[dir=rtl] .refresher-pulling-icon,[dir=rtl] .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}@supports selector(:dir(rtl)){.refresher-pulling-icon:dir(rtl),.refresher-refreshing-icon:dir(rtl){-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}}.refresher-pulling-text,.refresher-refreshing-text{font-size:16px;text-align:center}ion-refresher-content .arrow-container{display:none}.refresher-pulling ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.refresher-refreshing ion-refresher-content .refresher-refreshing{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-completing ion-refresher-content .refresher-refreshing{display:block}.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-native .refresher-pulling-text,.refresher-native .refresher-refreshing-text{display:none}.refresher-md .refresher-pulling-icon,.refresher-md .refresher-refreshing-icon{color:var(--ion-text-color, #000)}.refresher-md .refresher-pulling-text,.refresher-md .refresher-refreshing-text{color:var(--ion-text-color, #000)}.refresher-md .refresher-refreshing .spinner-lines-md line,.refresher-md .refresher-refreshing .spinner-lines-small-md line,.refresher-md .refresher-refreshing .spinner-crescent circle{stroke:var(--ion-text-color, #000)}.refresher-md .refresher-refreshing .spinner-bubbles circle,.refresher-md .refresher-refreshing .spinner-circles circle,.refresher-md .refresher-refreshing .spinner-dots circle{fill:var(--ion-text-color, #000)}ion-refresher.refresher-native{display:block;z-index:1}ion-refresher.refresher-native ion-spinner{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;width:24px;height:24px;color:var(--ion-color-primary, #0054e9)}ion-refresher.refresher-native .spinner-arrow-container{display:inherit}ion-refresher.refresher-native .arrow-container{display:block;position:absolute;width:24px;height:24px}ion-refresher.refresher-native .arrow-container ion-icon{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;left:0;right:0;bottom:-4px;position:absolute;color:var(--ion-color-primary, #0054e9);font-size:12px}ion-refresher.refresher-native.refresher-pulling ion-refresher-content .refresher-pulling,ion-refresher.refresher-native.refresher-ready ion-refresher-content .refresher-pulling{display:-ms-flexbox;display:flex}ion-refresher.refresher-native.refresher-refreshing ion-refresher-content .refresher-refreshing,ion-refresher.refresher-native.refresher-completing ion-refresher-content .refresher-refreshing,ion-refresher.refresher-native.refresher-cancelling ion-refresher-content .refresher-refreshing{display:-ms-flexbox;display:flex}ion-refresher.refresher-native .refresher-pulling-icon{-webkit-transform:translateY(calc(-100% - 10px));transform:translateY(calc(-100% - 10px))}ion-refresher.refresher-native .refresher-pulling-icon,ion-refresher.refresher-native .refresher-refreshing-icon{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;border-radius:100%;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;display:-ms-flexbox;display:flex;border:1px solid var(--ion-color-step-200, var(--ion-background-color-step-200, #ececec));background:var(--ion-color-step-250, var(--ion-background-color-step-250, #ffffff));-webkit-box-shadow:0px 1px 6px rgba(0, 0, 0, 0.1);box-shadow:0px 1px 6px rgba(0, 0, 0, 0.1)}"};const U=class{constructor(e){(0,n.r)(this,e),this.customHTMLEnabled=h.c.get("innerHTMLTemplatesEnabled",x.E),this.pullingIcon=void 0,this.pullingText=void 0,this.refreshingSpinner=void 0,this.refreshingText=void 0}componentWillLoad(){if(void 0===this.pullingIcon){const e=R(),t=(0,h.b)(this);this.pullingIcon=h.c.get("refreshingIcon","ios"===t&&e?h.c.get("spinner",e?"lines":E.i):"circular")}if(void 0===this.refreshingSpinner){const e=(0,h.b)(this);this.refreshingSpinner=h.c.get("refreshingSpinner",h.c.get("spinner","ios"===e?"lines":"circular"))}}renderPullingText(){const{customHTMLEnabled:e,pullingText:t}=this;return e?(0,n.h)("div",{class:"refresher-pulling-text",innerHTML:(0,x.a)(t)}):(0,n.h)("div",{class:"refresher-pulling-text"},t)}renderRefreshingText(){const{customHTMLEnabled:e,refreshingText:t}=this;return e?(0,n.h)("div",{class:"refresher-refreshing-text",innerHTML:(0,x.a)(t)}):(0,n.h)("div",{class:"refresher-refreshing-text"},t)}render(){const e=this.pullingIcon,t=null!=e&&void 0!==C.S[e],r=(0,h.b)(this);return(0,n.h)(n.f,{key:"1bec5b4da221c69d856f3f5ddf40f2e03ebf2a4c",class:r},(0,n.h)("div",{key:"4fcc526c4f1881e9368d9cd16bd7030919bd3841",class:"refresher-pulling"},this.pullingIcon&&t&&(0,n.h)("div",{key:"a4e9e2e12c2d7faefc8303ec8c021f999ddf308e",class:"refresher-pulling-icon"},(0,n.h)("div",{key:"5a2d215feb7fb4b64d540d3a65c0f24b415a2433",class:"spinner-arrow-container"},(0,n.h)("ion-spinner",{key:"abef2621d671ac6ff0abac43a702cbd825b7f127",name:this.pullingIcon,paused:!0}),"md"===r&&"circular"===this.pullingIcon&&(0,n.h)("div",{key:"30087d672c3780672a05874cd93cd099b2855462",class:"arrow-container"},(0,n.h)("ion-icon",{key:"5e30333dee469aec0d8efc8c4e6dabb619c6f363",icon:E.h,"aria-hidden":"true"})))),this.pullingIcon&&!t&&(0,n.h)("div",{key:"48fe72b5ce8ded633c6ee799cebb520b9c8be528",class:"refresher-pulling-icon"},(0,n.h)("ion-icon",{key:"d8dfd5d42056b1c0a436c5006affb255407816c0",icon:this.pullingIcon,lazy:!1,"aria-hidden":"true"})),void 0!==this.pullingText&&this.renderPullingText()),(0,n.h)("div",{key:"c2cbfb94f157c82601ffe7bb815ff82ebc7c0a49",class:"refresher-refreshing"},this.refreshingSpinner&&(0,n.h)("div",{key:"17f3ebe6a31768d5e389f45a2c12f68600185db9",class:"refresher-refreshing-icon"},(0,n.h)("ion-spinner",{key:"e8e61f8d7189c9939bba184201c9509d1d5b0fad",name:this.refreshingSpinner})),void 0!==this.refreshingText&&this.renderRefreshingText()))}get el(){return(0,n.i)(this)}}}}]); \ No newline at end of file +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[5197],{5197:(W,w,a)=>{a.r(w),a.d(w,{ion_refresher:()=>T,ion_refresher_content:()=>U});var d=a(467),n=a(9672),C=a(3351),y=a(909),c=a(4920),k=a(1086),h=a(3664),m=a(9986),x=a(464),E=a(3992),_=a(7895);a(8438),a(8476);const S=e=>{const t=e.querySelector("ion-spinner"),r=t.shadowRoot.querySelector("circle"),s=e.querySelector(".spinner-arrow-container"),l=e.querySelector(".arrow-container"),f=l?l.querySelector("ion-icon"):null,o=(0,m.c)().duration(1e3).easing("ease-out"),i=(0,m.c)().addElement(s).keyframes([{offset:0,opacity:"0.3"},{offset:.45,opacity:"0.3"},{offset:.55,opacity:"1"},{offset:1,opacity:"1"}]),p=(0,m.c)().addElement(r).keyframes([{offset:0,strokeDasharray:"1px, 200px"},{offset:.2,strokeDasharray:"1px, 200px"},{offset:.55,strokeDasharray:"100px, 200px"},{offset:1,strokeDasharray:"100px, 200px"}]),g=(0,m.c)().addElement(t).keyframes([{offset:0,transform:"rotate(-90deg)"},{offset:1,transform:"rotate(210deg)"}]);if(l&&f){const b=(0,m.c)().addElement(l).keyframes([{offset:0,transform:"rotate(0deg)"},{offset:.3,transform:"rotate(0deg)"},{offset:.55,transform:"rotate(280deg)"},{offset:1,transform:"rotate(400deg)"}]),u=(0,m.c)().addElement(f).keyframes([{offset:0,transform:"translateX(2px) scale(0)"},{offset:.3,transform:"translateX(2px) scale(0)"},{offset:.55,transform:"translateX(-1.5px) scale(1)"},{offset:1,transform:"translateX(-1.5px) scale(1)"}]);o.addAnimation([b,u])}return o.addAnimation([i,p,g])},v=(e,t,r=200)=>{if(!e)return Promise.resolve();const s=(0,c.t)(e,r);return(0,n.w)(()=>{e.style.setProperty("transition",`${r}ms all ease-out`),void 0===t?e.style.removeProperty("transform"):e.style.setProperty("transform",`translate3d(0px, ${t}, 0px)`)}),s},R=()=>navigator.maxTouchPoints>0&&CSS.supports("background: -webkit-named-image(apple-pay-logo-black)"),P=function(){var e=(0,d.A)(function*(t,r){const s=t.querySelector("ion-refresher-content");if(!s)return Promise.resolve(!1);yield new Promise(o=>(0,c.c)(s,o));const l=t.querySelector("ion-refresher-content .refresher-pulling ion-spinner"),f=t.querySelector("ion-refresher-content .refresher-refreshing ion-spinner");return null!==l&&null!==f&&("ios"===r&&R()||"md"===r)});return function(r,s){return e.apply(this,arguments)}}(),T=class{constructor(e){(0,n.r)(this,e),this.ionRefresh=(0,n.d)(this,"ionRefresh",7),this.ionPull=(0,n.d)(this,"ionPull",7),this.ionStart=(0,n.d)(this,"ionStart",7),this.appliedStyles=!1,this.didStart=!1,this.progress=0,this.pointerDown=!1,this.needsCompletion=!1,this.didRefresh=!1,this.lastVelocityY=0,this.animations=[],this.nativeRefresher=!1,this.state=1,this.pullMin=60,this.pullMax=this.pullMin+60,this.closeDuration="280ms",this.snapbackDuration="280ms",this.pullFactor=1,this.disabled=!1}disabledChanged(){this.gesture&&this.gesture.enable(!this.disabled)}checkNativeRefresher(){var e=this;return(0,d.A)(function*(){const t=yield P(e.el,(0,h.b)(e));if(t&&!e.nativeRefresher){const r=e.el.closest("ion-content");e.setupNativeRefresher(r)}else t||e.destroyNativeRefresher()})()}destroyNativeRefresher(){this.scrollEl&&this.scrollListenerCallback&&(this.scrollEl.removeEventListener("scroll",this.scrollListenerCallback),this.scrollListenerCallback=void 0),this.nativeRefresher=!1}resetNativeRefresher(e,t){var r=this;return(0,d.A)(function*(){r.state=t,"ios"===(0,h.b)(r)?yield v(e,void 0,300):yield(0,c.t)(r.el.querySelector(".refresher-refreshing-icon"),200),r.didRefresh=!1,r.needsCompletion=!1,r.pointerDown=!1,r.animations.forEach(s=>s.destroy()),r.animations=[],r.progress=0,r.state=1})()}setupiOSNativeRefresher(e,t){var r=this;return(0,d.A)(function*(){r.elementToTransform=r.scrollEl;const s=e.shadowRoot.querySelectorAll("svg");let l=.16*r.scrollEl.clientHeight;const f=s.length;(0,n.w)(()=>s.forEach(o=>o.style.setProperty("animation","none"))),r.scrollListenerCallback=()=>{!r.pointerDown&&1===r.state||(0,n.e)(()=>{const o=r.scrollEl.scrollTop,i=r.el.clientHeight;if(o>0){if(8===r.state){const u=(0,c.j)(0,o/(.5*i),1);return void(0,n.w)(()=>((e,t)=>{e.style.setProperty("opacity",t.toString())})(t,1-u))}return}r.pointerDown&&(r.didStart||(r.didStart=!0,r.ionStart.emit()),r.pointerDown&&r.ionPull.emit());const p=r.didStart?30:0,g=r.progress=(0,c.j)(0,(Math.abs(o)-p)/l,1);8===r.state||1===g?(r.pointerDown&&((e,t)=>{(0,n.w)(()=>{e.style.setProperty("--refreshing-rotation-duration",t>=1?"0.5s":"2s"),e.style.setProperty("opacity","1")})})(t,r.lastVelocityY),r.didRefresh||(r.beginRefresh(),r.didRefresh=!0,(0,k.d)({style:k.I.Light}),r.pointerDown||v(r.elementToTransform,`${i}px`))):(r.state=2,((e,t,r)=>{(0,n.w)(()=>{e.forEach((l,f)=>{const o=f*(1/t),g=(0,c.j)(0,(r-o)/(1-o),1);l.style.setProperty("opacity",g.toString())})})})(s,f,g))})},r.scrollEl.addEventListener("scroll",r.scrollListenerCallback),r.gesture=(yield Promise.resolve().then(a.bind(a,8607))).createGesture({el:r.scrollEl,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:5,onStart:()=>{r.pointerDown=!0,r.didRefresh||v(r.elementToTransform,"0px"),0===l&&(l=.16*r.scrollEl.clientHeight)},onMove:o=>{r.lastVelocityY=o.velocityY},onEnd:()=>{r.pointerDown=!1,r.didStart=!1,r.needsCompletion?(r.resetNativeRefresher(r.elementToTransform,32),r.needsCompletion=!1):r.didRefresh&&(0,n.e)(()=>v(r.elementToTransform,`${r.el.clientHeight}px`))}}),r.disabledChanged()})()}setupMDNativeRefresher(e,t,r){var s=this;return(0,d.A)(function*(){const l=(0,c.g)(t).querySelector("circle"),f=s.el.querySelector("ion-refresher-content .refresher-pulling-icon"),o=(0,c.g)(r).querySelector("circle");null!==l&&null!==o&&(0,n.w)(()=>{l.style.setProperty("animation","none"),r.style.setProperty("animation-delay","-655ms"),o.style.setProperty("animation-delay","-655ms")}),s.gesture=(yield Promise.resolve().then(a.bind(a,8607))).createGesture({el:s.scrollEl,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:5,canStart:()=>8!==s.state&&32!==s.state&&0===s.scrollEl.scrollTop,onStart:i=>{s.progress=0,i.data={animation:void 0,didStart:!1,cancelled:!1}},onMove:i=>{if(i.velocityY<0&&0===s.progress&&!i.data.didStart||i.data.cancelled)i.data.cancelled=!0;else{if(!i.data.didStart){i.data.didStart=!0,s.state=2;const{scrollEl:p}=s,g=p.matches(y.I)?"overflow":"--overflow";(0,n.w)(()=>p.style.setProperty(g,"hidden"));const b=(e=>{const t=e.previousElementSibling;return null!==t&&"ION-HEADER"===t.tagName?"translate":"scale"})(e),u=((e,t,r)=>"scale"===e?((e,t)=>{const r=t.clientHeight,s=(0,m.c)().addElement(e).keyframes([{offset:0,transform:`scale(0) translateY(-${r}px)`},{offset:1,transform:"scale(1) translateY(100px)"}]);return S(e).addAnimation([s])})(t,r):((e,t)=>{const r=t.clientHeight,s=(0,m.c)().addElement(e).keyframes([{offset:0,transform:`translateY(-${r}px)`},{offset:1,transform:"translateY(100px)"}]);return S(e).addAnimation([s])})(t,r))(b,f,s.el);return i.data.animation=u,u.progressStart(!1,0),s.ionStart.emit(),void s.animations.push(u)}s.progress=(0,c.j)(0,i.deltaY/180*.5,1),i.data.animation.progressStep(s.progress),s.ionPull.emit()}},onEnd:i=>{if(!i.data.didStart)return;s.gesture.enable(!1);const{scrollEl:p}=s,g=p.matches(y.I)?"overflow":"--overflow";if((0,n.w)(()=>p.style.removeProperty(g)),s.progress<=.4)return void i.data.animation.progressEnd(0,s.progress,500).onFinish(()=>{s.animations.forEach(H=>H.destroy()),s.animations=[],s.gesture.enable(!0),s.state=1});const b=(0,C.g)([0,0],[0,0],[1,1],[1,1],s.progress)[0],u=(e=>(0,m.c)().duration(125).addElement(e).fromTo("transform","translateY(var(--ion-pulling-refresher-translate, 100px))","translateY(0px)"))(f);s.animations.push(u),(0,n.w)((0,d.A)(function*(){f.style.setProperty("--ion-pulling-refresher-translate",100*b+"px"),i.data.animation.progressEnd(),yield u.play(),s.beginRefresh(),i.data.animation.destroy(),s.gesture.enable(!0)}))}}),s.disabledChanged()})()}setupNativeRefresher(e){var t=this;return(0,d.A)(function*(){if(t.scrollListenerCallback||!e||t.nativeRefresher||!t.scrollEl)return;t.setCss(0,"",!1,""),t.nativeRefresher=!0;const r=t.el.querySelector("ion-refresher-content .refresher-pulling ion-spinner"),s=t.el.querySelector("ion-refresher-content .refresher-refreshing ion-spinner");"ios"===(0,h.b)(t)?t.setupiOSNativeRefresher(r,s):t.setupMDNativeRefresher(e,r,s)})()}componentDidUpdate(){this.checkNativeRefresher()}connectedCallback(){var e=this;return(0,d.A)(function*(){if("fixed"!==e.el.getAttribute("slot"))return void console.error('Make sure you use: ');const t=e.el.closest(y.b);t?(0,c.c)(t,(0,d.A)(function*(){const r=t.querySelector(y.I);e.scrollEl=yield(0,y.g)(null!=r?r:t),e.backgroundContentEl=yield t.getBackgroundElement(),(yield P(e.el,(0,h.b)(e)))?e.setupNativeRefresher(t):(e.gesture=(yield Promise.resolve().then(a.bind(a,8607))).createGesture({el:t,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:20,passive:!1,canStart:()=>e.canStart(),onStart:()=>e.onStart(),onMove:s=>e.onMove(s),onEnd:()=>e.onEnd()}),e.disabledChanged())})):(0,y.p)(e.el)})()}disconnectedCallback(){this.destroyNativeRefresher(),this.scrollEl=void 0,this.gesture&&(this.gesture.destroy(),this.gesture=void 0)}complete(){var e=this;return(0,d.A)(function*(){e.nativeRefresher?(e.needsCompletion=!0,e.pointerDown||(0,c.r)(()=>(0,c.r)(()=>e.resetNativeRefresher(e.elementToTransform,32)))):e.close(32,"120ms")})()}cancel(){var e=this;return(0,d.A)(function*(){e.nativeRefresher?e.pointerDown||(0,c.r)(()=>(0,c.r)(()=>e.resetNativeRefresher(e.elementToTransform,16))):e.close(16,"")})()}getProgress(){return Promise.resolve(this.progress)}canStart(){return!(!this.scrollEl||1!==this.state||this.scrollEl.scrollTop>0)}onStart(){this.progress=0,this.state=1,this.memoizeOverflowStyle()}onMove(e){if(!this.scrollEl)return;const t=e.event;if(void 0!==t.touches&&t.touches.length>1||56&this.state)return;const r=Number.isNaN(this.pullFactor)||this.pullFactor<0?1:this.pullFactor,s=e.deltaY*r;if(s<=0)return this.progress=0,this.state=1,this.appliedStyles?void this.setCss(0,"",!1,""):void 0;if(1===this.state){if(this.scrollEl.scrollTop>0)return void(this.progress=0);this.state=2}if(t.cancelable&&t.preventDefault(),this.setCss(s,"0ms",!0,""),0===s)return void(this.progress=0);const l=this.pullMin;this.progress=s/l,this.didStart||(this.didStart=!0,this.ionStart.emit()),this.ionPull.emit(),sthis.pullMax?this.beginRefresh():this.state=4}onEnd(){4===this.state?this.beginRefresh():2===this.state?this.cancel():1===this.state&&this.restoreOverflowStyle()}beginRefresh(){this.state=8,this.setCss(this.pullMin,this.snapbackDuration,!0,""),this.ionRefresh.emit({complete:this.complete.bind(this)})}close(e,t){setTimeout(()=>{this.state=1,this.progress=0,this.didStart=!1,this.setCss(0,"0ms",!1,"",!0)},600),this.state=e,this.setCss(0,this.closeDuration,!0,t)}setCss(e,t,r,s,l=!1){this.nativeRefresher||(this.appliedStyles=e>0,(0,n.w)(()=>{if(this.scrollEl&&this.backgroundContentEl){const f=this.scrollEl.style,o=this.backgroundContentEl.style;f.transform=o.transform=e>0?`translateY(${e}px) translateZ(0px)`:"",f.transitionDuration=o.transitionDuration=t,f.transitionDelay=o.transitionDelay=s,f.overflow=r?"hidden":""}l&&this.restoreOverflowStyle()}))}memoizeOverflowStyle(){if(this.scrollEl){const{overflow:e,overflowX:t,overflowY:r}=this.scrollEl.style;this.overflowStyles={overflow:null!=e?e:"",overflowX:null!=t?t:"",overflowY:null!=r?r:""}}}restoreOverflowStyle(){if(void 0!==this.overflowStyles&&void 0!==this.scrollEl){const{overflow:e,overflowX:t,overflowY:r}=this.overflowStyles;this.scrollEl.style.overflow=e,this.scrollEl.style.overflowX=t,this.scrollEl.style.overflowY=r,this.overflowStyles=void 0}}render(){const e=(0,h.b)(this);return(0,n.h)(n.f,{key:"1696f66f62d18c9075294f17cb24263325fcf35d",slot:"fixed",class:{[e]:!0,[`refresher-${e}`]:!0,"refresher-native":this.nativeRefresher,"refresher-active":1!==this.state,"refresher-pulling":2===this.state,"refresher-ready":4===this.state,"refresher-refreshing":8===this.state,"refresher-cancelling":16===this.state,"refresher-completing":32===this.state}})}get el(){return(0,n.i)(this)}static get watchers(){return{disabled:["disabledChanged"]}}};T.style={ios:"ion-refresher{top:0;display:none;position:absolute;width:100%;height:60px;pointer-events:none;z-index:-1}ion-refresher{inset-inline-start:0}ion-refresher.refresher-active{display:block}ion-refresher-content{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.refresher-pulling,.refresher-refreshing{display:none;width:100%}.refresher-pulling-icon,.refresher-refreshing-icon{-webkit-transform-origin:center;transform-origin:center;-webkit-transition:200ms;transition:200ms;font-size:30px;text-align:center}:host-context([dir=rtl]) .refresher-pulling-icon,:host-context([dir=rtl]) .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}[dir=rtl] .refresher-pulling-icon,[dir=rtl] .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}@supports selector(:dir(rtl)){.refresher-pulling-icon:dir(rtl),.refresher-refreshing-icon:dir(rtl){-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}}.refresher-pulling-text,.refresher-refreshing-text{font-size:16px;text-align:center}ion-refresher-content .arrow-container{display:none}.refresher-pulling ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.refresher-refreshing ion-refresher-content .refresher-refreshing{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-completing ion-refresher-content .refresher-refreshing{display:block}.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-native .refresher-pulling-text,.refresher-native .refresher-refreshing-text{display:none}.refresher-ios .refresher-pulling-icon,.refresher-ios .refresher-refreshing-icon{color:var(--ion-text-color, #000)}.refresher-ios .refresher-pulling-text,.refresher-ios .refresher-refreshing-text{color:var(--ion-text-color, #000)}.refresher-ios .refresher-refreshing .spinner-lines-ios line,.refresher-ios .refresher-refreshing .spinner-lines-small-ios line,.refresher-ios .refresher-refreshing .spinner-crescent circle{stroke:var(--ion-text-color, #000)}.refresher-ios .refresher-refreshing .spinner-bubbles circle,.refresher-ios .refresher-refreshing .spinner-circles circle,.refresher-ios .refresher-refreshing .spinner-dots circle{fill:var(--ion-text-color, #000)}ion-refresher.refresher-native{display:block;z-index:1}ion-refresher.refresher-native ion-spinner{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}.refresher-native .refresher-refreshing ion-spinner{--refreshing-rotation-duration:2s;display:none;-webkit-animation:var(--refreshing-rotation-duration) ease-out refresher-rotate forwards;animation:var(--refreshing-rotation-duration) ease-out refresher-rotate forwards}.refresher-native .refresher-refreshing{display:none;-webkit-animation:250ms linear refresher-pop forwards;animation:250ms linear refresher-pop forwards}.refresher-native ion-spinner{width:32px;height:32px;color:var(--ion-color-step-450, var(--ion-background-color-step-450, #747577))}.refresher-native.refresher-refreshing .refresher-pulling ion-spinner,.refresher-native.refresher-completing .refresher-pulling ion-spinner{display:none}.refresher-native.refresher-refreshing .refresher-refreshing ion-spinner,.refresher-native.refresher-completing .refresher-refreshing ion-spinner{display:block}.refresher-native.refresher-pulling .refresher-pulling ion-spinner{display:block}.refresher-native.refresher-pulling .refresher-refreshing ion-spinner{display:none}.refresher-native.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0) rotate(180deg);transform:scale(0) rotate(180deg);-webkit-transition:300ms;transition:300ms}@-webkit-keyframes refresher-pop{0%{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}50%{-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes refresher-pop{0%{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}50%{-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}100%{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes refresher-rotate{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(180deg);transform:rotate(180deg)}}@keyframes refresher-rotate{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(180deg);transform:rotate(180deg)}}",md:"ion-refresher{top:0;display:none;position:absolute;width:100%;height:60px;pointer-events:none;z-index:-1}ion-refresher{inset-inline-start:0}ion-refresher.refresher-active{display:block}ion-refresher-content{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.refresher-pulling,.refresher-refreshing{display:none;width:100%}.refresher-pulling-icon,.refresher-refreshing-icon{-webkit-transform-origin:center;transform-origin:center;-webkit-transition:200ms;transition:200ms;font-size:30px;text-align:center}:host-context([dir=rtl]) .refresher-pulling-icon,:host-context([dir=rtl]) .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}[dir=rtl] .refresher-pulling-icon,[dir=rtl] .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}@supports selector(:dir(rtl)){.refresher-pulling-icon:dir(rtl),.refresher-refreshing-icon:dir(rtl){-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}}.refresher-pulling-text,.refresher-refreshing-text{font-size:16px;text-align:center}ion-refresher-content .arrow-container{display:none}.refresher-pulling ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.refresher-refreshing ion-refresher-content .refresher-refreshing{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-completing ion-refresher-content .refresher-refreshing{display:block}.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-native .refresher-pulling-text,.refresher-native .refresher-refreshing-text{display:none}.refresher-md .refresher-pulling-icon,.refresher-md .refresher-refreshing-icon{color:var(--ion-text-color, #000)}.refresher-md .refresher-pulling-text,.refresher-md .refresher-refreshing-text{color:var(--ion-text-color, #000)}.refresher-md .refresher-refreshing .spinner-lines-md line,.refresher-md .refresher-refreshing .spinner-lines-small-md line,.refresher-md .refresher-refreshing .spinner-crescent circle{stroke:var(--ion-text-color, #000)}.refresher-md .refresher-refreshing .spinner-bubbles circle,.refresher-md .refresher-refreshing .spinner-circles circle,.refresher-md .refresher-refreshing .spinner-dots circle{fill:var(--ion-text-color, #000)}ion-refresher.refresher-native{display:block;z-index:1}ion-refresher.refresher-native ion-spinner{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;width:24px;height:24px;color:var(--ion-color-primary, #0054e9)}ion-refresher.refresher-native .spinner-arrow-container{display:inherit}ion-refresher.refresher-native .arrow-container{display:block;position:absolute;width:24px;height:24px}ion-refresher.refresher-native .arrow-container ion-icon{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;left:0;right:0;bottom:-4px;position:absolute;color:var(--ion-color-primary, #0054e9);font-size:12px}ion-refresher.refresher-native.refresher-pulling ion-refresher-content .refresher-pulling,ion-refresher.refresher-native.refresher-ready ion-refresher-content .refresher-pulling{display:-ms-flexbox;display:flex}ion-refresher.refresher-native.refresher-refreshing ion-refresher-content .refresher-refreshing,ion-refresher.refresher-native.refresher-completing ion-refresher-content .refresher-refreshing,ion-refresher.refresher-native.refresher-cancelling ion-refresher-content .refresher-refreshing{display:-ms-flexbox;display:flex}ion-refresher.refresher-native .refresher-pulling-icon{-webkit-transform:translateY(calc(-100% - 10px));transform:translateY(calc(-100% - 10px))}ion-refresher.refresher-native .refresher-pulling-icon,ion-refresher.refresher-native .refresher-refreshing-icon{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;border-radius:100%;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;display:-ms-flexbox;display:flex;border:1px solid var(--ion-color-step-200, var(--ion-background-color-step-200, #ececec));background:var(--ion-color-step-250, var(--ion-background-color-step-250, #ffffff));-webkit-box-shadow:0px 1px 6px rgba(0, 0, 0, 0.1);box-shadow:0px 1px 6px rgba(0, 0, 0, 0.1)}"};const U=class{constructor(e){(0,n.r)(this,e),this.customHTMLEnabled=h.c.get("innerHTMLTemplatesEnabled",x.E),this.pullingIcon=void 0,this.pullingText=void 0,this.refreshingSpinner=void 0,this.refreshingText=void 0}componentWillLoad(){if(void 0===this.pullingIcon){const e=R(),t=(0,h.b)(this);this.pullingIcon=h.c.get("refreshingIcon","ios"===t&&e?h.c.get("spinner",e?"lines":E.i):"circular")}if(void 0===this.refreshingSpinner){const e=(0,h.b)(this);this.refreshingSpinner=h.c.get("refreshingSpinner",h.c.get("spinner","ios"===e?"lines":"circular"))}}renderPullingText(){const{customHTMLEnabled:e,pullingText:t}=this;return e?(0,n.h)("div",{class:"refresher-pulling-text",innerHTML:(0,x.a)(t)}):(0,n.h)("div",{class:"refresher-pulling-text"},t)}renderRefreshingText(){const{customHTMLEnabled:e,refreshingText:t}=this;return e?(0,n.h)("div",{class:"refresher-refreshing-text",innerHTML:(0,x.a)(t)}):(0,n.h)("div",{class:"refresher-refreshing-text"},t)}render(){const e=this.pullingIcon,t=null!=e&&void 0!==_.S[e],r=(0,h.b)(this);return(0,n.h)(n.f,{key:"1bec5b4da221c69d856f3f5ddf40f2e03ebf2a4c",class:r},(0,n.h)("div",{key:"4fcc526c4f1881e9368d9cd16bd7030919bd3841",class:"refresher-pulling"},this.pullingIcon&&t&&(0,n.h)("div",{key:"a4e9e2e12c2d7faefc8303ec8c021f999ddf308e",class:"refresher-pulling-icon"},(0,n.h)("div",{key:"5a2d215feb7fb4b64d540d3a65c0f24b415a2433",class:"spinner-arrow-container"},(0,n.h)("ion-spinner",{key:"abef2621d671ac6ff0abac43a702cbd825b7f127",name:this.pullingIcon,paused:!0}),"md"===r&&"circular"===this.pullingIcon&&(0,n.h)("div",{key:"30087d672c3780672a05874cd93cd099b2855462",class:"arrow-container"},(0,n.h)("ion-icon",{key:"5e30333dee469aec0d8efc8c4e6dabb619c6f363",icon:E.h,"aria-hidden":"true"})))),this.pullingIcon&&!t&&(0,n.h)("div",{key:"48fe72b5ce8ded633c6ee799cebb520b9c8be528",class:"refresher-pulling-icon"},(0,n.h)("ion-icon",{key:"d8dfd5d42056b1c0a436c5006affb255407816c0",icon:this.pullingIcon,lazy:!1,"aria-hidden":"true"})),void 0!==this.pullingText&&this.renderPullingText()),(0,n.h)("div",{key:"c2cbfb94f157c82601ffe7bb815ff82ebc7c0a49",class:"refresher-refreshing"},this.refreshingSpinner&&(0,n.h)("div",{key:"17f3ebe6a31768d5e389f45a2c12f68600185db9",class:"refresher-refreshing-icon"},(0,n.h)("ion-spinner",{key:"e8e61f8d7189c9939bba184201c9509d1d5b0fad",name:this.refreshingSpinner})),void 0!==this.refreshingText&&this.renderRefreshingText()))}get el(){return(0,n.i)(this)}}}}]); \ No newline at end of file diff --git a/www/6433.26eeba8bb230b119.js b/www/6433.91353c3d7c453322.js similarity index 96% rename from www/6433.26eeba8bb230b119.js rename to www/6433.91353c3d7c453322.js index d68c46f..7d6158f 100644 --- a/www/6433.26eeba8bb230b119.js +++ b/www/6433.91353c3d7c453322.js @@ -1 +1 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[6433],{6433:(re,N,f)=>{f.r(N),f.d(N,{ion_popover:()=>ee});var S=f(467),l=f(9672),E=f(6002),R=f(8621),k=f(4920),F=f(7838),V=f(4929),h=f(3664),g=f(333),y=f(2725),v=f(9986);f(8476),f(6411),f(1970);const G=(t,e,o)=>{const r=e.getBoundingClientRect(),i=r.height;let n=r.width;return"cover"===t&&o&&(n=o.getBoundingClientRect().width),{contentWidth:n,contentHeight:i}},se=(t,e,o)=>{let r=[];switch(e){case"hover":let i;r=[{eventName:"mouseenter",callback:(n=(0,S.A)(function*(s){s.stopPropagation(),i&&clearTimeout(i),i=setTimeout(()=>{(0,k.r)(()=>{o.presentFromTrigger(s),i=void 0})},100)}),function(a){return n.apply(this,arguments)})},{eventName:"mouseleave",callback:n=>{i&&clearTimeout(i);const s=n.relatedTarget;s&&s.closest("ion-popover")!==o&&o.dismiss(void 0,void 0,!1)}},{eventName:"click",callback:n=>n.stopPropagation()},{eventName:"ionPopoverActivateTrigger",callback:n=>o.presentFromTrigger(n,!0)}];break;case"context-menu":r=[{eventName:"contextmenu",callback:n=>{n.preventDefault(),o.presentFromTrigger(n)}},{eventName:"click",callback:n=>n.stopPropagation()},{eventName:"ionPopoverActivateTrigger",callback:n=>o.presentFromTrigger(n,!0)}];break;default:r=[{eventName:"click",callback:n=>o.presentFromTrigger(n)},{eventName:"ionPopoverActivateTrigger",callback:n=>o.presentFromTrigger(n,!0)}]}var n;return r.forEach(({eventName:i,callback:n})=>t.addEventListener(i,n)),t.setAttribute("data-ion-popover-trigger","true"),()=>{r.forEach(({eventName:i,callback:n})=>t.removeEventListener(i,n)),t.removeAttribute("data-ion-popover-trigger")}},H=(t,e)=>e&&"ION-ITEM"===e.tagName?t.findIndex(o=>o===e):-1,Y=t=>{const o=(0,k.g)(t).querySelector("button");o&&(0,k.r)(()=>o.focus())},de=t=>{const e=function(){var o=(0,S.A)(function*(r){var i;const n=document.activeElement;let s=[];const a=null===(i=r.target)||void 0===i?void 0:i.tagName;if("ION-POPOVER"===a||"ION-ITEM"===a){try{s=Array.from(t.querySelectorAll("ion-item:not(ion-popover ion-popover *):not([disabled])"))}catch{}switch(r.key){case"ArrowLeft":(yield t.getParentPopover())&&t.dismiss(void 0,void 0,!1);break;case"ArrowDown":r.preventDefault();const d=((t,e)=>t[H(t,e)+1])(s,n);void 0!==d&&Y(d);break;case"ArrowUp":r.preventDefault();const w=((t,e)=>t[H(t,e)-1])(s,n);void 0!==w&&Y(w);break;case"Home":r.preventDefault();const u=s[0];void 0!==u&&Y(u);break;case"End":r.preventDefault();const b=s[s.length-1];void 0!==b&&Y(b);break;case"ArrowRight":case" ":case"Enter":if(n&&(t=>t.hasAttribute("data-ion-popover-trigger"))(n)){const m=new CustomEvent("ionPopoverActivateTrigger");n.dispatchEvent(m)}}}});return function(i){return o.apply(this,arguments)}}();return t.addEventListener("keydown",e),()=>t.removeEventListener("keydown",e)},J=(t,e,o,r,i,n,s,a,c,d,w)=>{var u;let b={top:0,left:0,width:0,height:0};if("event"===n){if(!w)return c;b={top:w.clientY,left:w.clientX,width:1,height:1}}else{const L=d||(null===(u=null==w?void 0:w.detail)||void 0===u?void 0:u.ionShadowTarget)||(null==w?void 0:w.target);if(!L)return c;const A=L.getBoundingClientRect();b={top:A.top,left:A.left,width:A.width,height:A.height}}const m=he(s,b,e,o,r,i,t),P=ue(a,s,b,e,o),_=m.top+P.top,I=m.left+P.left,{arrowTop:x,arrowLeft:T}=fe(s,r,i,_,I,e,o,t),{originX:D,originY:O}=le(s,a,t);return{top:_,left:I,referenceCoordinates:b,arrowTop:x,arrowLeft:T,originX:D,originY:O}},le=(t,e,o)=>{switch(t){case"top":return{originX:Q(e),originY:"bottom"};case"bottom":return{originX:Q(e),originY:"top"};case"left":return{originX:"right",originY:z(e)};case"right":return{originX:"left",originY:z(e)};case"start":return{originX:o?"left":"right",originY:z(e)};case"end":return{originX:o?"right":"left",originY:z(e)}}},Q=t=>{switch(t){case"start":return"left";case"center":return"center";case"end":return"right"}},z=t=>{switch(t){case"start":return"top";case"center":return"center";case"end":return"bottom"}},fe=(t,e,o,r,i,n,s,a)=>{const c={arrowTop:r+s/2-e/2,arrowLeft:i+n-e/2},d={arrowTop:r+s/2-e/2,arrowLeft:i-1.5*e};switch(t){case"top":return{arrowTop:r+s,arrowLeft:i+n/2-e/2};case"bottom":return{arrowTop:r-o,arrowLeft:i+n/2-e/2};case"left":return c;case"right":return d;case"start":return a?d:c;case"end":return a?c:d;default:return{arrowTop:0,arrowLeft:0}}},he=(t,e,o,r,i,n,s)=>{const a={top:e.top,left:e.left-o-i},c={top:e.top,left:e.left+e.width+i};switch(t){case"top":return{top:e.top-r-n,left:e.left};case"right":return c;case"bottom":return{top:e.top+e.height+n,left:e.left};case"left":return a;case"start":return s?c:a;case"end":return s?a:c}},ue=(t,e,o,r,i)=>{switch(t){case"center":return me(e,o,r,i);case"end":return ve(e,o,r,i);default:return{top:0,left:0}}},ve=(t,e,o,r)=>{switch(t){case"start":case"end":case"left":case"right":return{top:-(r-e.height),left:0};default:return{top:0,left:-(o-e.width)}}},me=(t,e,o,r)=>{switch(t){case"start":case"end":case"left":case"right":return{top:-(r/2-e.height/2),left:0};default:return{top:0,left:-(o/2-e.width/2)}}},Z=(t,e,o,r,i,n,s,a,c,d,w,u,b=0,m=0,P=0)=>{let _=b;const I=m;let D,x=o,T=e,O=d,C=w,p=!1,L=!1;const A=u?u.top+u.height:n/2-a/2,M=u?u.height:0;let j=!1;return xi&&(L=!0,x=i-s-r,O="right"),A+M+a>n&&("top"===t||"bottom"===t)&&(A-a>0?(T=Math.max(12,A-a-M-(P-1)),_=T+a,C="bottom",j=!0):D=r),{top:T,left:x,bottom:D,originX:O,originY:C,checkSafeAreaLeft:p,checkSafeAreaRight:L,arrowTop:_,arrowLeft:I,addPopoverBottomClass:j}},xe=(t,e)=>{var o;const{event:r,size:i,trigger:n,reference:s,side:a,align:c}=e,d=t.ownerDocument,w="rtl"===d.dir,u=d.defaultView.innerWidth,b=d.defaultView.innerHeight,m=(0,k.g)(t),P=m.querySelector(".popover-content"),_=m.querySelector(".popover-arrow"),I=n||(null===(o=null==r?void 0:r.detail)||void 0===o?void 0:o.ionShadowTarget)||(null==r?void 0:r.target),{contentWidth:x,contentHeight:T}=G(i,P,I),{arrowWidth:D,arrowHeight:O}=(t=>{if(!t)return{arrowWidth:0,arrowHeight:0};const{width:e,height:o}=t.getBoundingClientRect();return{arrowWidth:e,arrowHeight:o}})(_),p=J(w,x,T,D,O,s,a,c,{top:b/2-T/2,left:u/2-x/2,originX:w?"right":"left",originY:"top"},n,r),L="cover"===i?0:5,A="cover"===i?0:25,{originX:M,originY:j,top:$,left:W,bottom:K,checkSafeAreaLeft:X,checkSafeAreaRight:Ee,arrowTop:Ie,arrowLeft:Te,addPopoverBottomClass:Oe}=Z(a,p.top,p.left,L,u,b,x,T,A,p.originX,p.originY,p.referenceCoordinates,p.arrowTop,p.arrowLeft,O),Ce=(0,v.c)(),te=(0,v.c)(),oe=(0,v.c)();return te.addElement(m.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),oe.addElement(m.querySelector(".popover-arrow")).addElement(m.querySelector(".popover-content")).fromTo("opacity",.01,1),Ce.easing("ease").duration(100).beforeAddWrite(()=>{"cover"===i&&t.style.setProperty("--width",`${x}px`),Oe&&t.classList.add("popover-bottom"),void 0!==K&&P.style.setProperty("bottom",`${K}px`);let q=`${W}px`;X&&(q=`${W}px + var(--ion-safe-area-left, 0)`),Ee&&(q=`${W}px - var(--ion-safe-area-right, 0)`),P.style.setProperty("top",`calc(${$}px + var(--offset-y, 0))`),P.style.setProperty("left",`calc(${q} + var(--offset-x, 0))`),P.style.setProperty("transform-origin",`${j} ${M}`),null!==_&&(((t,e=!1,o,r)=>!(!o&&!r||"top"!==t&&"bottom"!==t&&e))(a,p.top!==$||p.left!==W,r,n)?(_.style.setProperty("top",`calc(${Ie}px + var(--offset-y, 0))`),_.style.setProperty("left",`calc(${Te}px + var(--offset-x, 0))`)):_.style.setProperty("display","none"))}).addAnimation([te,oe])},ye=t=>{const e=(0,k.g)(t),o=e.querySelector(".popover-content"),r=e.querySelector(".popover-arrow"),i=(0,v.c)(),n=(0,v.c)(),s=(0,v.c)();return n.addElement(e.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),s.addElement(e.querySelector(".popover-arrow")).addElement(e.querySelector(".popover-content")).fromTo("opacity",.99,0),i.easing("ease").afterAddWrite(()=>{t.style.removeProperty("--width"),t.classList.remove("popover-bottom"),o.style.removeProperty("top"),o.style.removeProperty("left"),o.style.removeProperty("bottom"),o.style.removeProperty("transform-origin"),r&&(r.style.removeProperty("top"),r.style.removeProperty("left"),r.style.removeProperty("display"))}).duration(300).addAnimation([n,s])},Pe=(t,e)=>{var o;const{event:r,size:i,trigger:n,reference:s,side:a,align:c}=e,d=t.ownerDocument,w="rtl"===d.dir,u=d.defaultView.innerWidth,b=d.defaultView.innerHeight,m=(0,k.g)(t),P=m.querySelector(".popover-content"),_=n||(null===(o=null==r?void 0:r.detail)||void 0===o?void 0:o.ionShadowTarget)||(null==r?void 0:r.target),{contentWidth:I,contentHeight:x}=G(i,P,_),D=J(w,I,x,0,0,s,a,c,{top:b/2-x/2,left:u/2-I/2,originX:w?"right":"left",originY:"top"},n,r),O="cover"===i?0:12,{originX:C,originY:p,top:L,left:A,bottom:M}=Z(a,D.top,D.left,O,u,b,I,x,0,D.originX,D.originY,D.referenceCoordinates),j=(0,v.c)(),$=(0,v.c)(),W=(0,v.c)(),K=(0,v.c)(),X=(0,v.c)();return $.addElement(m.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),W.addElement(m.querySelector(".popover-wrapper")).duration(150).fromTo("opacity",.01,1),K.addElement(P).beforeStyles({top:`calc(${L}px + var(--offset-y, 0px))`,left:`calc(${A}px + var(--offset-x, 0px))`,"transform-origin":`${p} ${C}`}).beforeAddWrite(()=>{void 0!==M&&P.style.setProperty("bottom",`${M}px`)}).fromTo("transform","scale(0.8)","scale(1)"),X.addElement(m.querySelector(".popover-viewport")).fromTo("opacity",.01,1),j.easing("cubic-bezier(0.36,0.66,0.04,1)").duration(300).beforeAddWrite(()=>{"cover"===i&&t.style.setProperty("--width",`${I}px`),"bottom"===p&&t.classList.add("popover-bottom")}).addAnimation([$,W,K,X])},ke=t=>{const e=(0,k.g)(t),o=e.querySelector(".popover-content"),r=(0,v.c)(),i=(0,v.c)(),n=(0,v.c)();return i.addElement(e.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),n.addElement(e.querySelector(".popover-wrapper")).fromTo("opacity",.99,0),r.easing("ease").afterAddWrite(()=>{t.style.removeProperty("--width"),t.classList.remove("popover-bottom"),o.style.removeProperty("top"),o.style.removeProperty("left"),o.style.removeProperty("bottom"),o.style.removeProperty("transform-origin")}).duration(150).addAnimation([i,n])},ee=class{constructor(t){(0,l.r)(this,t),this.didPresent=(0,l.d)(this,"ionPopoverDidPresent",7),this.willPresent=(0,l.d)(this,"ionPopoverWillPresent",7),this.willDismiss=(0,l.d)(this,"ionPopoverWillDismiss",7),this.didDismiss=(0,l.d)(this,"ionPopoverDidDismiss",7),this.didPresentShorthand=(0,l.d)(this,"didPresent",7),this.willPresentShorthand=(0,l.d)(this,"willPresent",7),this.willDismissShorthand=(0,l.d)(this,"willDismiss",7),this.didDismissShorthand=(0,l.d)(this,"didDismiss",7),this.ionMount=(0,l.d)(this,"ionMount",7),this.parentPopover=null,this.coreDelegate=(0,R.C)(),this.lockController=(0,F.c)(),this.inline=!1,this.focusDescendantOnPresent=!1,this.onBackdropTap=()=>{this.dismiss(void 0,E.B)},this.onLifecycle=e=>{const o=this.usersElement,r=Ae[e.type];if(o&&r){const i=new CustomEvent(r,{bubbles:!1,cancelable:!1,detail:e.detail});o.dispatchEvent(i)}},this.configureTriggerInteraction=()=>{const{trigger:e,triggerAction:o,el:r,destroyTriggerInteraction:i}=this;if(i&&i(),void 0===e)return;const n=this.triggerEl=void 0!==e?document.getElementById(e):null;n?this.destroyTriggerInteraction=se(n,o,r):(0,V.p)(`A trigger element with the ID "${e}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`,this.el)},this.configureKeyboardInteraction=()=>{const{destroyKeyboardInteraction:e,el:o}=this;e&&e(),this.destroyKeyboardInteraction=de(o)},this.configureDismissInteraction=()=>{const{destroyDismissInteraction:e,parentPopover:o,triggerAction:r,triggerEl:i,el:n}=this;!o||!i||(e&&e(),this.destroyDismissInteraction=((t,e,o,r)=>{let i=[];const s=(0,k.g)(r).querySelector(".popover-content");return i="hover"===e?[{eventName:"mouseenter",callback:a=>{document.elementFromPoint(a.clientX,a.clientY)!==t&&o.dismiss(void 0,void 0,!1)}}]:[{eventName:"click",callback:a=>{a.target.closest("[data-ion-popover-trigger]")!==t?o.dismiss(void 0,void 0,!1):a.stopPropagation()}}],i.forEach(({eventName:a,callback:c})=>s.addEventListener(a,c)),()=>{i.forEach(({eventName:a,callback:c})=>s.removeEventListener(a,c))}})(i,r,n,o))},this.presented=!1,this.hasController=!1,this.delegate=void 0,this.overlayIndex=void 0,this.enterAnimation=void 0,this.leaveAnimation=void 0,this.component=void 0,this.componentProps=void 0,this.keyboardClose=!0,this.cssClass=void 0,this.backdropDismiss=!0,this.event=void 0,this.showBackdrop=!0,this.translucent=!1,this.animated=!0,this.htmlAttributes=void 0,this.triggerAction="click",this.trigger=void 0,this.size="auto",this.dismissOnSelect=!1,this.reference="trigger",this.side="bottom",this.alignment=void 0,this.arrow=!0,this.isOpen=!1,this.keyboardEvents=!1,this.focusTrap=!0,this.keepContentsMounted=!1}onTriggerChange(){this.configureTriggerInteraction()}onIsOpenChange(t,e){!0===t&&!1===e?this.present():!1===t&&!0===e&&this.dismiss()}connectedCallback(){const{configureTriggerInteraction:t,el:e}=this;(0,E.j)(e),t()}disconnectedCallback(){const{destroyTriggerInteraction:t}=this;t&&t()}componentWillLoad(){const{el:t}=this,e=(0,E.k)(t);this.parentPopover=t.closest(`ion-popover:not(#${e})`),void 0===this.alignment&&(this.alignment="ios"===(0,h.b)(this)?"center":"start")}componentDidLoad(){const{parentPopover:t,isOpen:e}=this;!0===e&&(0,k.r)(()=>this.present()),t&&(0,k.a)(t,"ionPopoverWillDismiss",()=>{this.dismiss(void 0,void 0,!1)}),this.configureTriggerInteraction()}presentFromTrigger(t,e=!1){var o=this;return(0,S.A)(function*(){o.focusDescendantOnPresent=e,yield o.present(t),o.focusDescendantOnPresent=!1})()}getDelegate(t=!1){if(this.workingDelegate&&!t)return{delegate:this.workingDelegate,inline:this.inline};const o=this.inline=null!==this.el.parentNode&&!this.hasController;return{inline:o,delegate:this.workingDelegate=o?this.delegate||this.coreDelegate:this.delegate}}present(t){var e=this;return(0,S.A)(function*(){const o=yield e.lockController.lock();if(e.presented)return void o();const{el:r}=e,{inline:i,delegate:n}=e.getDelegate(!0);e.ionMount.emit(),e.usersElement=yield(0,R.a)(n,r,e.component,["popover-viewport"],e.componentProps,i),e.keyboardEvents||e.configureKeyboardInteraction(),e.configureDismissInteraction(),(0,k.k)(r)?yield(0,y.e)(e.usersElement):e.keepContentsMounted||(yield(0,y.w)()),yield(0,E.f)(e,"popoverEnter",xe,Pe,{event:t||e.event,size:e.size,trigger:e.triggerEl,reference:e.reference,side:e.side,align:e.alignment}),e.focusDescendantOnPresent&&(0,E.n)(r),o()})()}dismiss(t,e,o=!0){var r=this;return(0,S.A)(function*(){const i=yield r.lockController.lock(),{destroyKeyboardInteraction:n,destroyDismissInteraction:s}=r;o&&r.parentPopover&&r.parentPopover.dismiss(t,e,o);const a=yield(0,E.g)(r,t,e,"popoverLeave",ye,ke,r.event);if(a){n&&(n(),r.destroyKeyboardInteraction=void 0),s&&(s(),r.destroyDismissInteraction=void 0);const{delegate:c}=r.getDelegate();yield(0,R.d)(c,r.usersElement)}return i(),a})()}getParentPopover(){var t=this;return(0,S.A)(function*(){return t.parentPopover})()}onDidDismiss(){return(0,E.h)(this.el,"ionPopoverDidDismiss")}onWillDismiss(){return(0,E.h)(this.el,"ionPopoverWillDismiss")}render(){const t=(0,h.b)(this),{onLifecycle:e,parentPopover:o,dismissOnSelect:r,side:i,arrow:n,htmlAttributes:s,focusTrap:a}=this,c=(0,h.a)("desktop"),d=n&&!o;return(0,l.h)(l.f,Object.assign({key:"17e5e8b3e7ba5e251665fb9d0ade10c781f82f0e","aria-modal":"true","no-router":!0,tabindex:"-1"},s,{style:{zIndex:`${2e4+this.overlayIndex}`},class:Object.assign(Object.assign({},(0,g.g)(this.cssClass)),{[t]:!0,"popover-translucent":this.translucent,"overlay-hidden":!0,"popover-desktop":c,[`popover-side-${i}`]:!0,[E.F]:!1===a,"popover-nested":!!o}),onIonPopoverDidPresent:e,onIonPopoverWillPresent:e,onIonPopoverWillDismiss:e,onIonPopoverDidDismiss:e,onIonBackdropTap:this.onBackdropTap}),!o&&(0,l.h)("ion-backdrop",{key:"c12fb94b375d7e88a0c5d715440c0f66ad7ee817",tappable:this.backdropDismiss,visible:this.showBackdrop,part:"backdrop"}),(0,l.h)("div",{key:"478b388cc9a5a382003a2863e968e77a174914ab",class:"popover-wrapper ion-overlay-wrapper",onClick:r?()=>this.dismiss():void 0},d&&(0,l.h)("div",{key:"f1c63a0079f197a8d4577e7c00a654871fb9d816",class:"popover-arrow",part:"arrow"}),(0,l.h)("div",{key:"08b62a321c09ad4b0f90460468ecbc1d56320bf1",class:"popover-content",part:"content"},(0,l.h)("slot",{key:"55645ff597f64d434219caa28015cf2a4ceb0ee5"}))))}get el(){return(0,l.i)(this)}static get watchers(){return{trigger:["onTriggerChange"],triggerAction:["onTriggerChange"],isOpen:["onIsOpenChange"]}}},Ae={ionPopoverDidPresent:"ionViewDidEnter",ionPopoverWillPresent:"ionViewWillEnter",ionPopoverWillDismiss:"ionViewWillLeave",ionPopoverDidDismiss:"ionViewDidLeave"};ee.style={ios:':host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:200px;--max-height:90%;--box-shadow:none;--backdrop-opacity:var(--ion-backdrop-opacity, 0.08)}:host(.popover-desktop){--box-shadow:0px 4px 16px 0px rgba(0, 0, 0, 0.12)}.popover-content{border-radius:10px}:host(.popover-desktop) .popover-content{border:0.5px solid var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6))}.popover-arrow{display:block;position:absolute;width:20px;height:10px;overflow:hidden;z-index:11}.popover-arrow::after{top:3px;border-radius:3px;position:absolute;width:14px;height:14px;-webkit-transform:rotate(45deg);transform:rotate(45deg);background:var(--background);content:"";z-index:10}.popover-arrow::after{inset-inline-start:3px}:host(.popover-bottom) .popover-arrow{top:auto;bottom:-10px}:host(.popover-bottom) .popover-arrow::after{top:-6px}:host(.popover-side-left) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host(.popover-side-right) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host(.popover-side-top) .popover-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host(.popover-side-start) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host-context([dir=rtl]):host(.popover-side-start) .popover-arrow,:host-context([dir=rtl]).popover-side-start .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}@supports selector(:dir(rtl)){:host(.popover-side-start:dir(rtl)) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}}:host(.popover-side-end) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host-context([dir=rtl]):host(.popover-side-end) .popover-arrow,:host-context([dir=rtl]).popover-side-end .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}@supports selector(:dir(rtl)){:host(.popover-side-end:dir(rtl)) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}}.popover-arrow,.popover-content{opacity:0}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){:host(.popover-translucent) .popover-content,:host(.popover-translucent) .popover-arrow::after{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}',md:":host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:250px;--max-height:90%;--box-shadow:0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}.popover-content{border-radius:4px;-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]) .popover-content{-webkit-transform-origin:right top;transform-origin:right top}[dir=rtl] .popover-content{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){.popover-content:dir(rtl){-webkit-transform-origin:right top;transform-origin:right top}}.popover-viewport{-webkit-transition-delay:100ms;transition-delay:100ms}.popover-wrapper{opacity:0}"}},333:(re,N,f)=>{f.d(N,{c:()=>E,g:()=>k,h:()=>l,o:()=>V});var S=f(467);const l=(h,g)=>null!==g.closest(h),E=(h,g)=>"string"==typeof h&&h.length>0?Object.assign({"ion-color":!0,[`ion-color-${h}`]:!0},g):g,k=h=>{const g={};return(h=>void 0!==h?(Array.isArray(h)?h:h.split(" ")).filter(y=>null!=y).map(y=>y.trim()).filter(y=>""!==y):[])(h).forEach(y=>g[y]=!0),g},F=/^[a-z][a-z0-9+\-.]*:/,V=function(){var h=(0,S.A)(function*(g,y,v,B){if(null!=g&&"#"!==g[0]&&!F.test(g)){const U=document.querySelector("ion-router");if(U)return null!=y&&y.preventDefault(),U.push(g,v,B)}return!1});return function(y,v,B,U){return h.apply(this,arguments)}}()}}]); \ No newline at end of file +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[6433],{6433:(re,N,f)=>{f.r(N),f.d(N,{ion_popover:()=>ee});var S=f(467),l=f(9672),E=f(6002),R=f(8621),k=f(4920),F=f(7838),V=f(4929),h=f(3664),g=f(333),y=f(2725),v=f(9986);f(8476),f(6411),f(1970);const G=(t,e,o)=>{const r=e.getBoundingClientRect(),i=r.height;let n=r.width;return"cover"===t&&o&&(n=o.getBoundingClientRect().width),{contentWidth:n,contentHeight:i}},se=(t,e,o)=>{let r=[];switch(e){case"hover":let i;r=[{eventName:"mouseenter",callback:(n=(0,S.A)(function*(s){s.stopPropagation(),i&&clearTimeout(i),i=setTimeout(()=>{(0,k.r)(()=>{o.presentFromTrigger(s),i=void 0})},100)}),function(a){return n.apply(this,arguments)})},{eventName:"mouseleave",callback:n=>{i&&clearTimeout(i);const s=n.relatedTarget;s&&s.closest("ion-popover")!==o&&o.dismiss(void 0,void 0,!1)}},{eventName:"click",callback:n=>n.stopPropagation()},{eventName:"ionPopoverActivateTrigger",callback:n=>o.presentFromTrigger(n,!0)}];break;case"context-menu":r=[{eventName:"contextmenu",callback:n=>{n.preventDefault(),o.presentFromTrigger(n)}},{eventName:"click",callback:n=>n.stopPropagation()},{eventName:"ionPopoverActivateTrigger",callback:n=>o.presentFromTrigger(n,!0)}];break;default:r=[{eventName:"click",callback:n=>o.presentFromTrigger(n)},{eventName:"ionPopoverActivateTrigger",callback:n=>o.presentFromTrigger(n,!0)}]}var n;return r.forEach(({eventName:i,callback:n})=>t.addEventListener(i,n)),t.setAttribute("data-ion-popover-trigger","true"),()=>{r.forEach(({eventName:i,callback:n})=>t.removeEventListener(i,n)),t.removeAttribute("data-ion-popover-trigger")}},H=(t,e)=>e&&"ION-ITEM"===e.tagName?t.findIndex(o=>o===e):-1,Y=t=>{const o=(0,k.g)(t).querySelector("button");o&&(0,k.r)(()=>o.focus())},de=t=>{const e=function(){var o=(0,S.A)(function*(r){var i;const n=document.activeElement;let s=[];const a=null===(i=r.target)||void 0===i?void 0:i.tagName;if("ION-POPOVER"===a||"ION-ITEM"===a){try{s=Array.from(t.querySelectorAll("ion-item:not(ion-popover ion-popover *):not([disabled])"))}catch{}switch(r.key){case"ArrowLeft":(yield t.getParentPopover())&&t.dismiss(void 0,void 0,!1);break;case"ArrowDown":r.preventDefault();const d=((t,e)=>t[H(t,e)+1])(s,n);void 0!==d&&Y(d);break;case"ArrowUp":r.preventDefault();const w=((t,e)=>t[H(t,e)-1])(s,n);void 0!==w&&Y(w);break;case"Home":r.preventDefault();const u=s[0];void 0!==u&&Y(u);break;case"End":r.preventDefault();const b=s[s.length-1];void 0!==b&&Y(b);break;case"ArrowRight":case" ":case"Enter":if(n&&(t=>t.hasAttribute("data-ion-popover-trigger"))(n)){const m=new CustomEvent("ionPopoverActivateTrigger");n.dispatchEvent(m)}}}});return function(i){return o.apply(this,arguments)}}();return t.addEventListener("keydown",e),()=>t.removeEventListener("keydown",e)},J=(t,e,o,r,i,n,s,a,c,d,w)=>{var u;let b={top:0,left:0,width:0,height:0};if("event"===n){if(!w)return c;b={top:w.clientY,left:w.clientX,width:1,height:1}}else{const L=d||(null===(u=null==w?void 0:w.detail)||void 0===u?void 0:u.ionShadowTarget)||(null==w?void 0:w.target);if(!L)return c;const A=L.getBoundingClientRect();b={top:A.top,left:A.left,width:A.width,height:A.height}}const m=he(s,b,e,o,r,i,t),P=ue(a,s,b,e,o),_=m.top+P.top,I=m.left+P.left,{arrowTop:x,arrowLeft:T}=fe(s,r,i,_,I,e,o,t),{originX:D,originY:C}=le(s,a,t);return{top:_,left:I,referenceCoordinates:b,arrowTop:x,arrowLeft:T,originX:D,originY:C}},le=(t,e,o)=>{switch(t){case"top":return{originX:Q(e),originY:"bottom"};case"bottom":return{originX:Q(e),originY:"top"};case"left":return{originX:"right",originY:z(e)};case"right":return{originX:"left",originY:z(e)};case"start":return{originX:o?"left":"right",originY:z(e)};case"end":return{originX:o?"right":"left",originY:z(e)}}},Q=t=>{switch(t){case"start":return"left";case"center":return"center";case"end":return"right"}},z=t=>{switch(t){case"start":return"top";case"center":return"center";case"end":return"bottom"}},fe=(t,e,o,r,i,n,s,a)=>{const c={arrowTop:r+s/2-e/2,arrowLeft:i+n-e/2},d={arrowTop:r+s/2-e/2,arrowLeft:i-1.5*e};switch(t){case"top":return{arrowTop:r+s,arrowLeft:i+n/2-e/2};case"bottom":return{arrowTop:r-o,arrowLeft:i+n/2-e/2};case"left":return c;case"right":return d;case"start":return a?d:c;case"end":return a?c:d;default:return{arrowTop:0,arrowLeft:0}}},he=(t,e,o,r,i,n,s)=>{const a={top:e.top,left:e.left-o-i},c={top:e.top,left:e.left+e.width+i};switch(t){case"top":return{top:e.top-r-n,left:e.left};case"right":return c;case"bottom":return{top:e.top+e.height+n,left:e.left};case"left":return a;case"start":return s?c:a;case"end":return s?a:c}},ue=(t,e,o,r,i)=>{switch(t){case"center":return me(e,o,r,i);case"end":return ve(e,o,r,i);default:return{top:0,left:0}}},ve=(t,e,o,r)=>{switch(t){case"start":case"end":case"left":case"right":return{top:-(r-e.height),left:0};default:return{top:0,left:-(o-e.width)}}},me=(t,e,o,r)=>{switch(t){case"start":case"end":case"left":case"right":return{top:-(r/2-e.height/2),left:0};default:return{top:0,left:-(o/2-e.width/2)}}},Z=(t,e,o,r,i,n,s,a,c,d,w,u,b=0,m=0,P=0)=>{let _=b;const I=m;let D,x=o,T=e,C=d,O=w,p=!1,L=!1;const A=u?u.top+u.height:n/2-a/2,M=u?u.height:0;let j=!1;return xi&&(L=!0,x=i-s-r,C="right"),A+M+a>n&&("top"===t||"bottom"===t)&&(A-a>0?(T=Math.max(12,A-a-M-(P-1)),_=T+a,O="bottom",j=!0):D=r),{top:T,left:x,bottom:D,originX:C,originY:O,checkSafeAreaLeft:p,checkSafeAreaRight:L,arrowTop:_,arrowLeft:I,addPopoverBottomClass:j}},xe=(t,e)=>{var o;const{event:r,size:i,trigger:n,reference:s,side:a,align:c}=e,d=t.ownerDocument,w="rtl"===d.dir,u=d.defaultView.innerWidth,b=d.defaultView.innerHeight,m=(0,k.g)(t),P=m.querySelector(".popover-content"),_=m.querySelector(".popover-arrow"),I=n||(null===(o=null==r?void 0:r.detail)||void 0===o?void 0:o.ionShadowTarget)||(null==r?void 0:r.target),{contentWidth:x,contentHeight:T}=G(i,P,I),{arrowWidth:D,arrowHeight:C}=(t=>{if(!t)return{arrowWidth:0,arrowHeight:0};const{width:e,height:o}=t.getBoundingClientRect();return{arrowWidth:e,arrowHeight:o}})(_),p=J(w,x,T,D,C,s,a,c,{top:b/2-T/2,left:u/2-x/2,originX:w?"right":"left",originY:"top"},n,r),L="cover"===i?0:5,A="cover"===i?0:25,{originX:M,originY:j,top:$,left:W,bottom:K,checkSafeAreaLeft:X,checkSafeAreaRight:Ee,arrowTop:Ie,arrowLeft:Te,addPopoverBottomClass:Ce}=Z(a,p.top,p.left,L,u,b,x,T,A,p.originX,p.originY,p.referenceCoordinates,p.arrowTop,p.arrowLeft,C),Oe=(0,v.c)(),te=(0,v.c)(),oe=(0,v.c)();return te.addElement(m.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),oe.addElement(m.querySelector(".popover-arrow")).addElement(m.querySelector(".popover-content")).fromTo("opacity",.01,1),Oe.easing("ease").duration(100).beforeAddWrite(()=>{"cover"===i&&t.style.setProperty("--width",`${x}px`),Ce&&t.classList.add("popover-bottom"),void 0!==K&&P.style.setProperty("bottom",`${K}px`);let q=`${W}px`;X&&(q=`${W}px + var(--ion-safe-area-left, 0)`),Ee&&(q=`${W}px - var(--ion-safe-area-right, 0)`),P.style.setProperty("top",`calc(${$}px + var(--offset-y, 0))`),P.style.setProperty("left",`calc(${q} + var(--offset-x, 0))`),P.style.setProperty("transform-origin",`${j} ${M}`),null!==_&&(((t,e=!1,o,r)=>!(!o&&!r||"top"!==t&&"bottom"!==t&&e))(a,p.top!==$||p.left!==W,r,n)?(_.style.setProperty("top",`calc(${Ie}px + var(--offset-y, 0))`),_.style.setProperty("left",`calc(${Te}px + var(--offset-x, 0))`)):_.style.setProperty("display","none"))}).addAnimation([te,oe])},ye=t=>{const e=(0,k.g)(t),o=e.querySelector(".popover-content"),r=e.querySelector(".popover-arrow"),i=(0,v.c)(),n=(0,v.c)(),s=(0,v.c)();return n.addElement(e.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),s.addElement(e.querySelector(".popover-arrow")).addElement(e.querySelector(".popover-content")).fromTo("opacity",.99,0),i.easing("ease").afterAddWrite(()=>{t.style.removeProperty("--width"),t.classList.remove("popover-bottom"),o.style.removeProperty("top"),o.style.removeProperty("left"),o.style.removeProperty("bottom"),o.style.removeProperty("transform-origin"),r&&(r.style.removeProperty("top"),r.style.removeProperty("left"),r.style.removeProperty("display"))}).duration(300).addAnimation([n,s])},Pe=(t,e)=>{var o;const{event:r,size:i,trigger:n,reference:s,side:a,align:c}=e,d=t.ownerDocument,w="rtl"===d.dir,u=d.defaultView.innerWidth,b=d.defaultView.innerHeight,m=(0,k.g)(t),P=m.querySelector(".popover-content"),_=n||(null===(o=null==r?void 0:r.detail)||void 0===o?void 0:o.ionShadowTarget)||(null==r?void 0:r.target),{contentWidth:I,contentHeight:x}=G(i,P,_),D=J(w,I,x,0,0,s,a,c,{top:b/2-x/2,left:u/2-I/2,originX:w?"right":"left",originY:"top"},n,r),C="cover"===i?0:12,{originX:O,originY:p,top:L,left:A,bottom:M}=Z(a,D.top,D.left,C,u,b,I,x,0,D.originX,D.originY,D.referenceCoordinates),j=(0,v.c)(),$=(0,v.c)(),W=(0,v.c)(),K=(0,v.c)(),X=(0,v.c)();return $.addElement(m.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),W.addElement(m.querySelector(".popover-wrapper")).duration(150).fromTo("opacity",.01,1),K.addElement(P).beforeStyles({top:`calc(${L}px + var(--offset-y, 0px))`,left:`calc(${A}px + var(--offset-x, 0px))`,"transform-origin":`${p} ${O}`}).beforeAddWrite(()=>{void 0!==M&&P.style.setProperty("bottom",`${M}px`)}).fromTo("transform","scale(0.8)","scale(1)"),X.addElement(m.querySelector(".popover-viewport")).fromTo("opacity",.01,1),j.easing("cubic-bezier(0.36,0.66,0.04,1)").duration(300).beforeAddWrite(()=>{"cover"===i&&t.style.setProperty("--width",`${I}px`),"bottom"===p&&t.classList.add("popover-bottom")}).addAnimation([$,W,K,X])},ke=t=>{const e=(0,k.g)(t),o=e.querySelector(".popover-content"),r=(0,v.c)(),i=(0,v.c)(),n=(0,v.c)();return i.addElement(e.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),n.addElement(e.querySelector(".popover-wrapper")).fromTo("opacity",.99,0),r.easing("ease").afterAddWrite(()=>{t.style.removeProperty("--width"),t.classList.remove("popover-bottom"),o.style.removeProperty("top"),o.style.removeProperty("left"),o.style.removeProperty("bottom"),o.style.removeProperty("transform-origin")}).duration(150).addAnimation([i,n])},ee=class{constructor(t){(0,l.r)(this,t),this.didPresent=(0,l.d)(this,"ionPopoverDidPresent",7),this.willPresent=(0,l.d)(this,"ionPopoverWillPresent",7),this.willDismiss=(0,l.d)(this,"ionPopoverWillDismiss",7),this.didDismiss=(0,l.d)(this,"ionPopoverDidDismiss",7),this.didPresentShorthand=(0,l.d)(this,"didPresent",7),this.willPresentShorthand=(0,l.d)(this,"willPresent",7),this.willDismissShorthand=(0,l.d)(this,"willDismiss",7),this.didDismissShorthand=(0,l.d)(this,"didDismiss",7),this.ionMount=(0,l.d)(this,"ionMount",7),this.parentPopover=null,this.coreDelegate=(0,R.C)(),this.lockController=(0,F.c)(),this.inline=!1,this.focusDescendantOnPresent=!1,this.onBackdropTap=()=>{this.dismiss(void 0,E.B)},this.onLifecycle=e=>{const o=this.usersElement,r=Ae[e.type];if(o&&r){const i=new CustomEvent(r,{bubbles:!1,cancelable:!1,detail:e.detail});o.dispatchEvent(i)}},this.configureTriggerInteraction=()=>{const{trigger:e,triggerAction:o,el:r,destroyTriggerInteraction:i}=this;if(i&&i(),void 0===e)return;const n=this.triggerEl=void 0!==e?document.getElementById(e):null;n?this.destroyTriggerInteraction=se(n,o,r):(0,V.p)(`A trigger element with the ID "${e}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`,this.el)},this.configureKeyboardInteraction=()=>{const{destroyKeyboardInteraction:e,el:o}=this;e&&e(),this.destroyKeyboardInteraction=de(o)},this.configureDismissInteraction=()=>{const{destroyDismissInteraction:e,parentPopover:o,triggerAction:r,triggerEl:i,el:n}=this;!o||!i||(e&&e(),this.destroyDismissInteraction=((t,e,o,r)=>{let i=[];const s=(0,k.g)(r).querySelector(".popover-content");return i="hover"===e?[{eventName:"mouseenter",callback:a=>{document.elementFromPoint(a.clientX,a.clientY)!==t&&o.dismiss(void 0,void 0,!1)}}]:[{eventName:"click",callback:a=>{a.target.closest("[data-ion-popover-trigger]")!==t?o.dismiss(void 0,void 0,!1):a.stopPropagation()}}],i.forEach(({eventName:a,callback:c})=>s.addEventListener(a,c)),()=>{i.forEach(({eventName:a,callback:c})=>s.removeEventListener(a,c))}})(i,r,n,o))},this.presented=!1,this.hasController=!1,this.delegate=void 0,this.overlayIndex=void 0,this.enterAnimation=void 0,this.leaveAnimation=void 0,this.component=void 0,this.componentProps=void 0,this.keyboardClose=!0,this.cssClass=void 0,this.backdropDismiss=!0,this.event=void 0,this.showBackdrop=!0,this.translucent=!1,this.animated=!0,this.htmlAttributes=void 0,this.triggerAction="click",this.trigger=void 0,this.size="auto",this.dismissOnSelect=!1,this.reference="trigger",this.side="bottom",this.alignment=void 0,this.arrow=!0,this.isOpen=!1,this.keyboardEvents=!1,this.focusTrap=!0,this.keepContentsMounted=!1}onTriggerChange(){this.configureTriggerInteraction()}onIsOpenChange(t,e){!0===t&&!1===e?this.present():!1===t&&!0===e&&this.dismiss()}connectedCallback(){const{configureTriggerInteraction:t,el:e}=this;(0,E.j)(e),t()}disconnectedCallback(){const{destroyTriggerInteraction:t}=this;t&&t()}componentWillLoad(){const{el:t}=this,e=(0,E.k)(t);this.parentPopover=t.closest(`ion-popover:not(#${e})`),void 0===this.alignment&&(this.alignment="ios"===(0,h.b)(this)?"center":"start")}componentDidLoad(){const{parentPopover:t,isOpen:e}=this;!0===e&&(0,k.r)(()=>this.present()),t&&(0,k.a)(t,"ionPopoverWillDismiss",()=>{this.dismiss(void 0,void 0,!1)}),this.configureTriggerInteraction()}presentFromTrigger(t,e=!1){var o=this;return(0,S.A)(function*(){o.focusDescendantOnPresent=e,yield o.present(t),o.focusDescendantOnPresent=!1})()}getDelegate(t=!1){if(this.workingDelegate&&!t)return{delegate:this.workingDelegate,inline:this.inline};const o=this.inline=null!==this.el.parentNode&&!this.hasController;return{inline:o,delegate:this.workingDelegate=o?this.delegate||this.coreDelegate:this.delegate}}present(t){var e=this;return(0,S.A)(function*(){const o=yield e.lockController.lock();if(e.presented)return void o();const{el:r}=e,{inline:i,delegate:n}=e.getDelegate(!0);e.ionMount.emit(),e.usersElement=yield(0,R.a)(n,r,e.component,["popover-viewport"],e.componentProps,i),e.keyboardEvents||e.configureKeyboardInteraction(),e.configureDismissInteraction(),(0,k.k)(r)?yield(0,y.e)(e.usersElement):e.keepContentsMounted||(yield(0,y.w)()),yield(0,E.f)(e,"popoverEnter",xe,Pe,{event:t||e.event,size:e.size,trigger:e.triggerEl,reference:e.reference,side:e.side,align:e.alignment}),e.focusDescendantOnPresent&&(0,E.n)(r),o()})()}dismiss(t,e,o=!0){var r=this;return(0,S.A)(function*(){const i=yield r.lockController.lock(),{destroyKeyboardInteraction:n,destroyDismissInteraction:s}=r;o&&r.parentPopover&&r.parentPopover.dismiss(t,e,o);const a=yield(0,E.g)(r,t,e,"popoverLeave",ye,ke,r.event);if(a){n&&(n(),r.destroyKeyboardInteraction=void 0),s&&(s(),r.destroyDismissInteraction=void 0);const{delegate:c}=r.getDelegate();yield(0,R.d)(c,r.usersElement)}return i(),a})()}getParentPopover(){var t=this;return(0,S.A)(function*(){return t.parentPopover})()}onDidDismiss(){return(0,E.h)(this.el,"ionPopoverDidDismiss")}onWillDismiss(){return(0,E.h)(this.el,"ionPopoverWillDismiss")}render(){const t=(0,h.b)(this),{onLifecycle:e,parentPopover:o,dismissOnSelect:r,side:i,arrow:n,htmlAttributes:s,focusTrap:a}=this,c=(0,h.a)("desktop"),d=n&&!o;return(0,l.h)(l.f,Object.assign({key:"17e5e8b3e7ba5e251665fb9d0ade10c781f82f0e","aria-modal":"true","no-router":!0,tabindex:"-1"},s,{style:{zIndex:`${2e4+this.overlayIndex}`},class:Object.assign(Object.assign({},(0,g.g)(this.cssClass)),{[t]:!0,"popover-translucent":this.translucent,"overlay-hidden":!0,"popover-desktop":c,[`popover-side-${i}`]:!0,[E.F]:!1===a,"popover-nested":!!o}),onIonPopoverDidPresent:e,onIonPopoverWillPresent:e,onIonPopoverWillDismiss:e,onIonPopoverDidDismiss:e,onIonBackdropTap:this.onBackdropTap}),!o&&(0,l.h)("ion-backdrop",{key:"c12fb94b375d7e88a0c5d715440c0f66ad7ee817",tappable:this.backdropDismiss,visible:this.showBackdrop,part:"backdrop"}),(0,l.h)("div",{key:"478b388cc9a5a382003a2863e968e77a174914ab",class:"popover-wrapper ion-overlay-wrapper",onClick:r?()=>this.dismiss():void 0},d&&(0,l.h)("div",{key:"f1c63a0079f197a8d4577e7c00a654871fb9d816",class:"popover-arrow",part:"arrow"}),(0,l.h)("div",{key:"08b62a321c09ad4b0f90460468ecbc1d56320bf1",class:"popover-content",part:"content"},(0,l.h)("slot",{key:"55645ff597f64d434219caa28015cf2a4ceb0ee5"}))))}get el(){return(0,l.i)(this)}static get watchers(){return{trigger:["onTriggerChange"],triggerAction:["onTriggerChange"],isOpen:["onIsOpenChange"]}}},Ae={ionPopoverDidPresent:"ionViewDidEnter",ionPopoverWillPresent:"ionViewWillEnter",ionPopoverWillDismiss:"ionViewWillLeave",ionPopoverDidDismiss:"ionViewDidLeave"};ee.style={ios:':host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:200px;--max-height:90%;--box-shadow:none;--backdrop-opacity:var(--ion-backdrop-opacity, 0.08)}:host(.popover-desktop){--box-shadow:0px 4px 16px 0px rgba(0, 0, 0, 0.12)}.popover-content{border-radius:10px}:host(.popover-desktop) .popover-content{border:0.5px solid var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6))}.popover-arrow{display:block;position:absolute;width:20px;height:10px;overflow:hidden;z-index:11}.popover-arrow::after{top:3px;border-radius:3px;position:absolute;width:14px;height:14px;-webkit-transform:rotate(45deg);transform:rotate(45deg);background:var(--background);content:"";z-index:10}.popover-arrow::after{inset-inline-start:3px}:host(.popover-bottom) .popover-arrow{top:auto;bottom:-10px}:host(.popover-bottom) .popover-arrow::after{top:-6px}:host(.popover-side-left) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host(.popover-side-right) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host(.popover-side-top) .popover-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host(.popover-side-start) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host-context([dir=rtl]):host(.popover-side-start) .popover-arrow,:host-context([dir=rtl]).popover-side-start .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}@supports selector(:dir(rtl)){:host(.popover-side-start:dir(rtl)) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}}:host(.popover-side-end) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host-context([dir=rtl]):host(.popover-side-end) .popover-arrow,:host-context([dir=rtl]).popover-side-end .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}@supports selector(:dir(rtl)){:host(.popover-side-end:dir(rtl)) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}}.popover-arrow,.popover-content{opacity:0}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){:host(.popover-translucent) .popover-content,:host(.popover-translucent) .popover-arrow::after{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}',md:":host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:250px;--max-height:90%;--box-shadow:0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}.popover-content{border-radius:4px;-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]) .popover-content{-webkit-transform-origin:right top;transform-origin:right top}[dir=rtl] .popover-content{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){.popover-content:dir(rtl){-webkit-transform-origin:right top;transform-origin:right top}}.popover-viewport{-webkit-transition-delay:100ms;transition-delay:100ms}.popover-wrapper{opacity:0}"}},333:(re,N,f)=>{f.d(N,{c:()=>E,g:()=>k,h:()=>l,o:()=>V});var S=f(467);const l=(h,g)=>null!==g.closest(h),E=(h,g)=>"string"==typeof h&&h.length>0?Object.assign({"ion-color":!0,[`ion-color-${h}`]:!0},g):g,k=h=>{const g={};return(h=>void 0!==h?(Array.isArray(h)?h:h.split(" ")).filter(y=>null!=y).map(y=>y.trim()).filter(y=>""!==y):[])(h).forEach(y=>g[y]=!0),g},F=/^[a-z][a-z0-9+\-.]*:/,V=function(){var h=(0,S.A)(function*(g,y,v,B){if(null!=g&&"#"!==g[0]&&!F.test(g)){const U=document.querySelector("ion-router");if(U)return null!=y&&y.preventDefault(),U.push(g,v,B)}return!1});return function(y,v,B,U){return h.apply(this,arguments)}}()}}]); \ No newline at end of file diff --git a/www/6521.3c5b756783b6739a.js b/www/6521.a8a508f41e539cc5.js similarity index 71% rename from www/6521.3c5b756783b6739a.js rename to www/6521.a8a508f41e539cc5.js index 37f8e3c..5b7a40c 100644 --- a/www/6521.3c5b756783b6739a.js +++ b/www/6521.a8a508f41e539cc5.js @@ -1 +1 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[6521],{6521:(y,a,i)=>{i.r(a),i.d(a,{ion_input_password_toggle:()=>n});var r=i(9672),l=i(4929),u=i(333),d=i(3992),p=i(3664);const n=class{constructor(s){(0,r.r)(this,s),this.togglePasswordVisibility=()=>{const{inputElRef:e}=this;e&&(e.type="text"===e.type?"password":"text")},this.color=void 0,this.showIcon=void 0,this.hideIcon=void 0,this.type="password"}onTypeChange(s){"text"===s||"password"===s||(0,l.p)(`ion-input-password-toggle only supports inputs of type "text" or "password". Input of type "${s}" is not compatible.`,this.el)}connectedCallback(){const{el:s}=this,e=this.inputElRef=s.closest("ion-input");e?this.type=e.type:(0,l.p)("No ancestor ion-input found for ion-input-password-toggle. This component must be slotted inside of an ion-input.",s)}disconnectedCallback(){this.inputElRef=null}render(){var s,e;const{color:c,type:P}=this,h=(0,p.b)(this),E=null!==(s=this.showIcon)&&void 0!==s?s:d.x,I=null!==(e=this.hideIcon)&&void 0!==e?e:d.y,g="text"===P;return(0,r.h)(r.f,{key:"ed1c29726ce0c91548f0e2ada61e3f8b5c813d2d",class:(0,u.c)(c,{[h]:!0})},(0,r.h)("ion-button",{key:"9698eccdaedb86cf12d20acc53660371b3af3c55",mode:h,color:c,fill:"clear",shape:"round","aria-checked":g?"true":"false","aria-label":"show password",role:"switch",type:"button",onPointerDown:b=>{b.preventDefault()},onClick:this.togglePasswordVisibility},(0,r.h)("ion-icon",{key:"1f2119c30b56c800d9af44e6499445a0ebb466cf",slot:"icon-only","aria-hidden":"true",icon:g?I:E})))}get el(){return(0,r.i)(this)}static get watchers(){return{type:["onTypeChange"]}}};n.style={ios:"",md:""}},333:(y,a,i)=>{i.d(a,{c:()=>u,g:()=>p,h:()=>l,o:()=>_});var r=i(467);const l=(o,t)=>null!==t.closest(o),u=(o,t)=>"string"==typeof o&&o.length>0?Object.assign({"ion-color":!0,[`ion-color-${o}`]:!0},t):t,p=o=>{const t={};return(o=>void 0!==o?(Array.isArray(o)?o:o.split(" ")).filter(n=>null!=n).map(n=>n.trim()).filter(n=>""!==n):[])(o).forEach(n=>t[n]=!0),t},f=/^[a-z][a-z0-9+\-.]*:/,_=function(){var o=(0,r.A)(function*(t,n,s,e){if(null!=t&&"#"!==t[0]&&!f.test(t)){const c=document.querySelector("ion-router");if(c)return null!=n&&n.preventDefault(),c.push(t,s,e)}return!1});return function(n,s,e,c){return o.apply(this,arguments)}}()}}]); \ No newline at end of file +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[6521],{6521:(y,l,i)=>{i.r(l),i.d(l,{ion_input_password_toggle:()=>n});var r=i(9672),a=i(4929),u=i(333),d=i(3992),p=i(3664);const n=class{constructor(s){(0,r.r)(this,s),this.togglePasswordVisibility=()=>{const{inputElRef:e}=this;e&&(e.type="text"===e.type?"password":"text")},this.color=void 0,this.showIcon=void 0,this.hideIcon=void 0,this.type="password"}onTypeChange(s){"text"===s||"password"===s||(0,a.p)(`ion-input-password-toggle only supports inputs of type "text" or "password". Input of type "${s}" is not compatible.`,this.el)}connectedCallback(){const{el:s}=this,e=this.inputElRef=s.closest("ion-input");e?this.type=e.type:(0,a.p)("No ancestor ion-input found for ion-input-password-toggle. This component must be slotted inside of an ion-input.",s)}disconnectedCallback(){this.inputElRef=null}render(){var s,e;const{color:c,type:P}=this,h=(0,p.b)(this),E=null!==(s=this.showIcon)&&void 0!==s?s:d.x,C=null!==(e=this.hideIcon)&&void 0!==e?e:d.y,g="text"===P;return(0,r.h)(r.f,{key:"ed1c29726ce0c91548f0e2ada61e3f8b5c813d2d",class:(0,u.c)(c,{[h]:!0})},(0,r.h)("ion-button",{key:"9698eccdaedb86cf12d20acc53660371b3af3c55",mode:h,color:c,fill:"clear",shape:"round","aria-checked":g?"true":"false","aria-label":"show password",role:"switch",type:"button",onPointerDown:I=>{I.preventDefault()},onClick:this.togglePasswordVisibility},(0,r.h)("ion-icon",{key:"1f2119c30b56c800d9af44e6499445a0ebb466cf",slot:"icon-only","aria-hidden":"true",icon:g?C:E})))}get el(){return(0,r.i)(this)}static get watchers(){return{type:["onTypeChange"]}}};n.style={ios:"",md:""}},333:(y,l,i)=>{i.d(l,{c:()=>u,g:()=>p,h:()=>a,o:()=>_});var r=i(467);const a=(o,t)=>null!==t.closest(o),u=(o,t)=>"string"==typeof o&&o.length>0?Object.assign({"ion-color":!0,[`ion-color-${o}`]:!0},t):t,p=o=>{const t={};return(o=>void 0!==o?(Array.isArray(o)?o:o.split(" ")).filter(n=>null!=n).map(n=>n.trim()).filter(n=>""!==n):[])(o).forEach(n=>t[n]=!0),t},f=/^[a-z][a-z0-9+\-.]*:/,_=function(){var o=(0,r.A)(function*(t,n,s,e){if(null!=t&&"#"!==t[0]&&!f.test(t)){const c=document.querySelector("ion-router");if(c)return null!=n&&n.preventDefault(),c.push(t,s,e)}return!1});return function(n,s,e,c){return o.apply(this,arguments)}}()}}]); \ No newline at end of file diff --git a/www/7372.4ea07cfe7eb821be.js b/www/7372.e306385d972d6e2c.js similarity index 98% rename from www/7372.4ea07cfe7eb821be.js rename to www/7372.e306385d972d6e2c.js index cfdb8a1..8f085ae 100644 --- a/www/7372.4ea07cfe7eb821be.js +++ b/www/7372.e306385d972d6e2c.js @@ -1 +1 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[7372],{7372:(k,h,s)=>{s.r(h),s.d(h,{ion_loading:()=>x});var p=s(467),t=s(9672),m=s(464),f=s(4920),u=s(7838),l=s(6002),b=s(333),a=s(3664),n=s(9986);s(8476),s(6411),s(1970);const c=i=>{const o=(0,n.c)(),e=(0,n.c)(),r=(0,n.c)();return e.addElement(i.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),r.addElement(i.querySelector(".loading-wrapper")).keyframes([{offset:0,opacity:.01,transform:"scale(1.1)"},{offset:1,opacity:1,transform:"scale(1)"}]),o.addElement(i).easing("ease-in-out").duration(200).addAnimation([e,r])},E=i=>{const o=(0,n.c)(),e=(0,n.c)(),r=(0,n.c)();return e.addElement(i.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),r.addElement(i.querySelector(".loading-wrapper")).keyframes([{offset:0,opacity:.99,transform:"scale(1)"},{offset:1,opacity:0,transform:"scale(0.9)"}]),o.addElement(i).easing("ease-in-out").duration(200).addAnimation([e,r])},D=i=>{const o=(0,n.c)(),e=(0,n.c)(),r=(0,n.c)();return e.addElement(i.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),r.addElement(i.querySelector(".loading-wrapper")).keyframes([{offset:0,opacity:.01,transform:"scale(1.1)"},{offset:1,opacity:1,transform:"scale(1)"}]),o.addElement(i).easing("ease-in-out").duration(200).addAnimation([e,r])},w=i=>{const o=(0,n.c)(),e=(0,n.c)(),r=(0,n.c)();return e.addElement(i.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),r.addElement(i.querySelector(".loading-wrapper")).keyframes([{offset:0,opacity:.99,transform:"scale(1)"},{offset:1,opacity:0,transform:"scale(0.9)"}]),o.addElement(i).easing("ease-in-out").duration(200).addAnimation([e,r])},x=class{constructor(i){(0,t.r)(this,i),this.didPresent=(0,t.d)(this,"ionLoadingDidPresent",7),this.willPresent=(0,t.d)(this,"ionLoadingWillPresent",7),this.willDismiss=(0,t.d)(this,"ionLoadingWillDismiss",7),this.didDismiss=(0,t.d)(this,"ionLoadingDidDismiss",7),this.didPresentShorthand=(0,t.d)(this,"didPresent",7),this.willPresentShorthand=(0,t.d)(this,"willPresent",7),this.willDismissShorthand=(0,t.d)(this,"willDismiss",7),this.didDismissShorthand=(0,t.d)(this,"didDismiss",7),this.delegateController=(0,l.d)(this),this.lockController=(0,u.c)(),this.triggerController=(0,l.e)(),this.customHTMLEnabled=a.c.get("innerHTMLTemplatesEnabled",m.E),this.presented=!1,this.onBackdropTap=()=>{this.dismiss(void 0,l.B)},this.overlayIndex=void 0,this.delegate=void 0,this.hasController=!1,this.keyboardClose=!0,this.enterAnimation=void 0,this.leaveAnimation=void 0,this.message=void 0,this.cssClass=void 0,this.duration=0,this.backdropDismiss=!1,this.showBackdrop=!0,this.spinner=void 0,this.translucent=!1,this.animated=!0,this.htmlAttributes=void 0,this.isOpen=!1,this.trigger=void 0}onIsOpenChange(i,o){!0===i&&!1===o?this.present():!1===i&&!0===o&&this.dismiss()}triggerChanged(){const{trigger:i,el:o,triggerController:e}=this;i&&e.addClickListener(o,i)}connectedCallback(){(0,l.j)(this.el),this.triggerChanged()}componentWillLoad(){if(void 0===this.spinner){const i=(0,a.b)(this);this.spinner=a.c.get("loadingSpinner",a.c.get("spinner","ios"===i?"lines":"crescent"))}(0,l.k)(this.el)}componentDidLoad(){!0===this.isOpen&&(0,f.r)(()=>this.present()),this.triggerChanged()}disconnectedCallback(){this.triggerController.removeClickListener()}present(){var i=this;return(0,p.A)(function*(){const o=yield i.lockController.lock();yield i.delegateController.attachViewToDom(),yield(0,l.f)(i,"loadingEnter",c,D),i.duration>0&&(i.durationTimeout=setTimeout(()=>i.dismiss(),i.duration+10)),o()})()}dismiss(i,o){var e=this;return(0,p.A)(function*(){const r=yield e.lockController.lock();e.durationTimeout&&clearTimeout(e.durationTimeout);const g=yield(0,l.g)(e,i,o,"loadingLeave",E,w);return g&&e.delegateController.removeViewFromDom(),r(),g})()}onDidDismiss(){return(0,l.h)(this.el,"ionLoadingDidDismiss")}onWillDismiss(){return(0,l.h)(this.el,"ionLoadingWillDismiss")}renderLoadingMessage(i){const{customHTMLEnabled:o,message:e}=this;return o?(0,t.h)("div",{class:"loading-content",id:i,innerHTML:(0,m.a)(e)}):(0,t.h)("div",{class:"loading-content",id:i},e)}render(){const{message:i,spinner:o,htmlAttributes:e,overlayIndex:r}=this,g=(0,a.b)(this),v=`loading-${r}-msg`;return(0,t.h)(t.f,Object.assign({key:"4610b316b10a4df3416d0e83062935f3079baff2",role:"dialog","aria-modal":"true","aria-labelledby":void 0!==i?v:null,tabindex:"-1"},e,{style:{zIndex:`${4e4+this.overlayIndex}`},onIonBackdropTap:this.onBackdropTap,class:Object.assign(Object.assign({},(0,b.g)(this.cssClass)),{[g]:!0,"overlay-hidden":!0,"loading-translucent":this.translucent})}),(0,t.h)("ion-backdrop",{key:"d07d0759ed13093c4c4fe06be442dde4bd9c2c31",visible:this.showBackdrop,tappable:this.backdropDismiss}),(0,t.h)("div",{key:"ed3ec8b48f049b592fbea9767cc3d448dc037938",tabindex:"0"}),(0,t.h)("div",{key:"c515f3badf149d83c1d67374ef3507415fe51422",class:"loading-wrapper ion-overlay-wrapper"},o&&(0,t.h)("div",{key:"265d1673c2deb751aeca285f5a18863bb629ca5e",class:"loading-spinner"},(0,t.h)("ion-spinner",{key:"155bf7c92f6d7afd8edbb39f2b47ad05b7d503f1",name:o,"aria-hidden":"true"})),void 0!==i&&this.renderLoadingMessage(v)),(0,t.h)("div",{key:"b0e21df5cf54f9b48a218a03543d8c86f5406522",tabindex:"0"}))}get el(){return(0,t.i)(this)}static get watchers(){return{isOpen:["onIsOpenChange"],trigger:["triggerChanged"]}}};x.style={ios:".sc-ion-loading-ios-h{--min-width:auto;--width:auto;--min-height:auto;--height:auto;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;font-family:var(--ion-font-family, inherit);contain:strict;-ms-touch-action:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1001}.overlay-hidden.sc-ion-loading-ios-h{display:none}.loading-wrapper.sc-ion-loading-ios{display:-ms-flexbox;display:flex;-ms-flex-align:inherit;align-items:inherit;-ms-flex-pack:inherit;justify-content:inherit;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);opacity:0;z-index:10}ion-spinner.sc-ion-loading-ios{color:var(--spinner-color)}.sc-ion-loading-ios-h{--background:var(--ion-overlay-background-color, var(--ion-color-step-100, var(--ion-background-color-step-100, #f9f9f9)));--max-width:270px;--max-height:90%;--spinner-color:var(--ion-color-step-600, var(--ion-text-color-step-400, #666666));--backdrop-opacity:var(--ion-backdrop-opacity, 0.3);color:var(--ion-text-color, #000);font-size:0.875rem}.loading-wrapper.sc-ion-loading-ios{border-radius:8px;-webkit-padding-start:34px;padding-inline-start:34px;-webkit-padding-end:34px;padding-inline-end:34px;padding-top:24px;padding-bottom:24px}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){.loading-translucent.sc-ion-loading-ios-h .loading-wrapper.sc-ion-loading-ios{background-color:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}.loading-content.sc-ion-loading-ios{font-weight:bold}.loading-spinner.sc-ion-loading-ios+.loading-content.sc-ion-loading-ios{-webkit-margin-start:16px;margin-inline-start:16px}",md:".sc-ion-loading-md-h{--min-width:auto;--width:auto;--min-height:auto;--height:auto;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;font-family:var(--ion-font-family, inherit);contain:strict;-ms-touch-action:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1001}.overlay-hidden.sc-ion-loading-md-h{display:none}.loading-wrapper.sc-ion-loading-md{display:-ms-flexbox;display:flex;-ms-flex-align:inherit;align-items:inherit;-ms-flex-pack:inherit;justify-content:inherit;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);opacity:0;z-index:10}ion-spinner.sc-ion-loading-md{color:var(--spinner-color)}.sc-ion-loading-md-h{--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2));--max-width:280px;--max-height:90%;--spinner-color:var(--ion-color-primary, #0054e9);--backdrop-opacity:var(--ion-backdrop-opacity, 0.32);color:var(--ion-color-step-850, var(--ion-text-color-step-150, #262626));font-size:0.875rem}.loading-wrapper.sc-ion-loading-md{border-radius:2px;-webkit-padding-start:24px;padding-inline-start:24px;-webkit-padding-end:24px;padding-inline-end:24px;padding-top:24px;padding-bottom:24px;-webkit-box-shadow:0 16px 20px rgba(0, 0, 0, 0.4);box-shadow:0 16px 20px rgba(0, 0, 0, 0.4)}.loading-spinner.sc-ion-loading-md+.loading-content.sc-ion-loading-md{-webkit-margin-start:16px;margin-inline-start:16px}"}},333:(k,h,s)=>{s.d(h,{c:()=>m,g:()=>u,h:()=>t,o:()=>b});var p=s(467);const t=(a,n)=>null!==n.closest(a),m=(a,n)=>"string"==typeof a&&a.length>0?Object.assign({"ion-color":!0,[`ion-color-${a}`]:!0},n):n,u=a=>{const n={};return(a=>void 0!==a?(Array.isArray(a)?a:a.split(" ")).filter(d=>null!=d).map(d=>d.trim()).filter(d=>""!==d):[])(a).forEach(d=>n[d]=!0),n},l=/^[a-z][a-z0-9+\-.]*:/,b=function(){var a=(0,p.A)(function*(n,d,y,_){if(null!=n&&"#"!==n[0]&&!l.test(n)){const c=document.querySelector("ion-router");if(c)return null!=d&&d.preventDefault(),c.push(n,y,_)}return!1});return function(d,y,_,c){return a.apply(this,arguments)}}()}}]); \ No newline at end of file +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[7372],{7372:(k,h,s)=>{s.r(h),s.d(h,{ion_loading:()=>x});var p=s(467),t=s(9672),m=s(464),f=s(4920),u=s(7838),l=s(6002),b=s(333),a=s(3664),n=s(9986);s(8476),s(6411),s(1970);const c=i=>{const o=(0,n.c)(),e=(0,n.c)(),r=(0,n.c)();return e.addElement(i.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),r.addElement(i.querySelector(".loading-wrapper")).keyframes([{offset:0,opacity:.01,transform:"scale(1.1)"},{offset:1,opacity:1,transform:"scale(1)"}]),o.addElement(i).easing("ease-in-out").duration(200).addAnimation([e,r])},E=i=>{const o=(0,n.c)(),e=(0,n.c)(),r=(0,n.c)();return e.addElement(i.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),r.addElement(i.querySelector(".loading-wrapper")).keyframes([{offset:0,opacity:.99,transform:"scale(1)"},{offset:1,opacity:0,transform:"scale(0.9)"}]),o.addElement(i).easing("ease-in-out").duration(200).addAnimation([e,r])},D=i=>{const o=(0,n.c)(),e=(0,n.c)(),r=(0,n.c)();return e.addElement(i.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),r.addElement(i.querySelector(".loading-wrapper")).keyframes([{offset:0,opacity:.01,transform:"scale(1.1)"},{offset:1,opacity:1,transform:"scale(1)"}]),o.addElement(i).easing("ease-in-out").duration(200).addAnimation([e,r])},C=i=>{const o=(0,n.c)(),e=(0,n.c)(),r=(0,n.c)();return e.addElement(i.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),r.addElement(i.querySelector(".loading-wrapper")).keyframes([{offset:0,opacity:.99,transform:"scale(1)"},{offset:1,opacity:0,transform:"scale(0.9)"}]),o.addElement(i).easing("ease-in-out").duration(200).addAnimation([e,r])},x=class{constructor(i){(0,t.r)(this,i),this.didPresent=(0,t.d)(this,"ionLoadingDidPresent",7),this.willPresent=(0,t.d)(this,"ionLoadingWillPresent",7),this.willDismiss=(0,t.d)(this,"ionLoadingWillDismiss",7),this.didDismiss=(0,t.d)(this,"ionLoadingDidDismiss",7),this.didPresentShorthand=(0,t.d)(this,"didPresent",7),this.willPresentShorthand=(0,t.d)(this,"willPresent",7),this.willDismissShorthand=(0,t.d)(this,"willDismiss",7),this.didDismissShorthand=(0,t.d)(this,"didDismiss",7),this.delegateController=(0,l.d)(this),this.lockController=(0,u.c)(),this.triggerController=(0,l.e)(),this.customHTMLEnabled=a.c.get("innerHTMLTemplatesEnabled",m.E),this.presented=!1,this.onBackdropTap=()=>{this.dismiss(void 0,l.B)},this.overlayIndex=void 0,this.delegate=void 0,this.hasController=!1,this.keyboardClose=!0,this.enterAnimation=void 0,this.leaveAnimation=void 0,this.message=void 0,this.cssClass=void 0,this.duration=0,this.backdropDismiss=!1,this.showBackdrop=!0,this.spinner=void 0,this.translucent=!1,this.animated=!0,this.htmlAttributes=void 0,this.isOpen=!1,this.trigger=void 0}onIsOpenChange(i,o){!0===i&&!1===o?this.present():!1===i&&!0===o&&this.dismiss()}triggerChanged(){const{trigger:i,el:o,triggerController:e}=this;i&&e.addClickListener(o,i)}connectedCallback(){(0,l.j)(this.el),this.triggerChanged()}componentWillLoad(){if(void 0===this.spinner){const i=(0,a.b)(this);this.spinner=a.c.get("loadingSpinner",a.c.get("spinner","ios"===i?"lines":"crescent"))}(0,l.k)(this.el)}componentDidLoad(){!0===this.isOpen&&(0,f.r)(()=>this.present()),this.triggerChanged()}disconnectedCallback(){this.triggerController.removeClickListener()}present(){var i=this;return(0,p.A)(function*(){const o=yield i.lockController.lock();yield i.delegateController.attachViewToDom(),yield(0,l.f)(i,"loadingEnter",c,D),i.duration>0&&(i.durationTimeout=setTimeout(()=>i.dismiss(),i.duration+10)),o()})()}dismiss(i,o){var e=this;return(0,p.A)(function*(){const r=yield e.lockController.lock();e.durationTimeout&&clearTimeout(e.durationTimeout);const g=yield(0,l.g)(e,i,o,"loadingLeave",E,C);return g&&e.delegateController.removeViewFromDom(),r(),g})()}onDidDismiss(){return(0,l.h)(this.el,"ionLoadingDidDismiss")}onWillDismiss(){return(0,l.h)(this.el,"ionLoadingWillDismiss")}renderLoadingMessage(i){const{customHTMLEnabled:o,message:e}=this;return o?(0,t.h)("div",{class:"loading-content",id:i,innerHTML:(0,m.a)(e)}):(0,t.h)("div",{class:"loading-content",id:i},e)}render(){const{message:i,spinner:o,htmlAttributes:e,overlayIndex:r}=this,g=(0,a.b)(this),v=`loading-${r}-msg`;return(0,t.h)(t.f,Object.assign({key:"4610b316b10a4df3416d0e83062935f3079baff2",role:"dialog","aria-modal":"true","aria-labelledby":void 0!==i?v:null,tabindex:"-1"},e,{style:{zIndex:`${4e4+this.overlayIndex}`},onIonBackdropTap:this.onBackdropTap,class:Object.assign(Object.assign({},(0,b.g)(this.cssClass)),{[g]:!0,"overlay-hidden":!0,"loading-translucent":this.translucent})}),(0,t.h)("ion-backdrop",{key:"d07d0759ed13093c4c4fe06be442dde4bd9c2c31",visible:this.showBackdrop,tappable:this.backdropDismiss}),(0,t.h)("div",{key:"ed3ec8b48f049b592fbea9767cc3d448dc037938",tabindex:"0"}),(0,t.h)("div",{key:"c515f3badf149d83c1d67374ef3507415fe51422",class:"loading-wrapper ion-overlay-wrapper"},o&&(0,t.h)("div",{key:"265d1673c2deb751aeca285f5a18863bb629ca5e",class:"loading-spinner"},(0,t.h)("ion-spinner",{key:"155bf7c92f6d7afd8edbb39f2b47ad05b7d503f1",name:o,"aria-hidden":"true"})),void 0!==i&&this.renderLoadingMessage(v)),(0,t.h)("div",{key:"b0e21df5cf54f9b48a218a03543d8c86f5406522",tabindex:"0"}))}get el(){return(0,t.i)(this)}static get watchers(){return{isOpen:["onIsOpenChange"],trigger:["triggerChanged"]}}};x.style={ios:".sc-ion-loading-ios-h{--min-width:auto;--width:auto;--min-height:auto;--height:auto;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;font-family:var(--ion-font-family, inherit);contain:strict;-ms-touch-action:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1001}.overlay-hidden.sc-ion-loading-ios-h{display:none}.loading-wrapper.sc-ion-loading-ios{display:-ms-flexbox;display:flex;-ms-flex-align:inherit;align-items:inherit;-ms-flex-pack:inherit;justify-content:inherit;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);opacity:0;z-index:10}ion-spinner.sc-ion-loading-ios{color:var(--spinner-color)}.sc-ion-loading-ios-h{--background:var(--ion-overlay-background-color, var(--ion-color-step-100, var(--ion-background-color-step-100, #f9f9f9)));--max-width:270px;--max-height:90%;--spinner-color:var(--ion-color-step-600, var(--ion-text-color-step-400, #666666));--backdrop-opacity:var(--ion-backdrop-opacity, 0.3);color:var(--ion-text-color, #000);font-size:0.875rem}.loading-wrapper.sc-ion-loading-ios{border-radius:8px;-webkit-padding-start:34px;padding-inline-start:34px;-webkit-padding-end:34px;padding-inline-end:34px;padding-top:24px;padding-bottom:24px}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){.loading-translucent.sc-ion-loading-ios-h .loading-wrapper.sc-ion-loading-ios{background-color:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}.loading-content.sc-ion-loading-ios{font-weight:bold}.loading-spinner.sc-ion-loading-ios+.loading-content.sc-ion-loading-ios{-webkit-margin-start:16px;margin-inline-start:16px}",md:".sc-ion-loading-md-h{--min-width:auto;--width:auto;--min-height:auto;--height:auto;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;font-family:var(--ion-font-family, inherit);contain:strict;-ms-touch-action:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1001}.overlay-hidden.sc-ion-loading-md-h{display:none}.loading-wrapper.sc-ion-loading-md{display:-ms-flexbox;display:flex;-ms-flex-align:inherit;align-items:inherit;-ms-flex-pack:inherit;justify-content:inherit;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);opacity:0;z-index:10}ion-spinner.sc-ion-loading-md{color:var(--spinner-color)}.sc-ion-loading-md-h{--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2));--max-width:280px;--max-height:90%;--spinner-color:var(--ion-color-primary, #0054e9);--backdrop-opacity:var(--ion-backdrop-opacity, 0.32);color:var(--ion-color-step-850, var(--ion-text-color-step-150, #262626));font-size:0.875rem}.loading-wrapper.sc-ion-loading-md{border-radius:2px;-webkit-padding-start:24px;padding-inline-start:24px;-webkit-padding-end:24px;padding-inline-end:24px;padding-top:24px;padding-bottom:24px;-webkit-box-shadow:0 16px 20px rgba(0, 0, 0, 0.4);box-shadow:0 16px 20px rgba(0, 0, 0, 0.4)}.loading-spinner.sc-ion-loading-md+.loading-content.sc-ion-loading-md{-webkit-margin-start:16px;margin-inline-start:16px}"}},333:(k,h,s)=>{s.d(h,{c:()=>m,g:()=>u,h:()=>t,o:()=>b});var p=s(467);const t=(a,n)=>null!==n.closest(a),m=(a,n)=>"string"==typeof a&&a.length>0?Object.assign({"ion-color":!0,[`ion-color-${a}`]:!0},n):n,u=a=>{const n={};return(a=>void 0!==a?(Array.isArray(a)?a:a.split(" ")).filter(d=>null!=d).map(d=>d.trim()).filter(d=>""!==d):[])(a).forEach(d=>n[d]=!0),n},l=/^[a-z][a-z0-9+\-.]*:/,b=function(){var a=(0,p.A)(function*(n,d,y,_){if(null!=n&&"#"!==n[0]&&!l.test(n)){const c=document.querySelector("ion-router");if(c)return null!=d&&d.preventDefault(),c.push(n,y,_)}return!1});return function(d,y,_,c){return a.apply(this,arguments)}}()}}]); \ No newline at end of file diff --git a/www/8970.402b7daea47854b9.js b/www/8970.89f040d889f287fc.js similarity index 89% rename from www/8970.402b7daea47854b9.js rename to www/8970.89f040d889f287fc.js index ab8eebe..88362d2 100644 --- a/www/8970.402b7daea47854b9.js +++ b/www/8970.89f040d889f287fc.js @@ -1 +1 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[8970],{8970:(x,y,p)=>{p.r(y),p.d(y,{ion_route:()=>D,ion_route_redirect:()=>L,ion_router:()=>ee,ion_router_link:()=>W});var f=p(467),d=p(9672),b=p(4920),C=p(333),P=p(3664);const D=class{constructor(e){(0,d.r)(this,e),this.ionRouteDataChanged=(0,d.d)(this,"ionRouteDataChanged",7),this.url="",this.component=void 0,this.componentProps=void 0,this.beforeLeave=void 0,this.beforeEnter=void 0}onUpdate(e){this.ionRouteDataChanged.emit(e)}onComponentProps(e,t){if(e===t)return;const n=e?Object.keys(e):[],r=t?Object.keys(t):[];if(n.length===r.length){for(const o of n)if(e[o]!==t[o])return void this.onUpdate(e)}else this.onUpdate(e)}connectedCallback(){this.ionRouteDataChanged.emit()}static get watchers(){return{url:["onUpdate"],component:["onUpdate"],componentProps:["onComponentProps"]}}},L=class{constructor(e){(0,d.r)(this,e),this.ionRouteRedirectChanged=(0,d.d)(this,"ionRouteRedirectChanged",7),this.from=void 0,this.to=void 0}propDidChange(){this.ionRouteRedirectChanged.emit()}connectedCallback(){this.ionRouteRedirectChanged.emit()}static get watchers(){return{from:["propDidChange"],to:["propDidChange"]}}},l="root",h="forward",v=e=>"/"+e.filter(n=>n.length>0).join("/"),g=e=>{let n,t=[""];if(null!=e){const r=e.indexOf("?");r>-1&&(n=e.substring(r+1),e=e.substring(0,r)),t=e.split("/").map(o=>o.trim()).filter(o=>o.length>0),0===t.length&&(t=[""])}return{segments:t,queryString:n}},A=function(){var e=(0,f.A)(function*(t,n,r,o,s=!1,i){try{const a=k(t);if(o>=n.length||!a)return s;yield new Promise(_=>(0,b.c)(a,_));const u=n[o],c=yield a.setRouteId(u.id,u.params,r,i);return c.changed&&(r=l,s=!0),s=yield A(c.element,n,r,o+1,s,i),c.markVisible&&(yield c.markVisible()),s}catch(a){return console.error(a),!1}});return function(n,r,o,s){return e.apply(this,arguments)}}(),F=function(){var e=(0,f.A)(function*(t){const n=[];let r,o=t;for(;r=k(o);){const s=yield r.getRouteId();if(!s)break;o=s.element,s.element=void 0,n.push(s)}return{ids:n,outlet:r}});return function(n){return e.apply(this,arguments)}}(),T=":not([no-router]) ion-nav, :not([no-router]) ion-tabs, :not([no-router]) ion-router-outlet",k=e=>{if(!e)return;if(e.matches(T))return e;const t=e.querySelector(T);return null!=t?t:void 0},U=(e,t)=>t.find(n=>((e,t)=>{const{from:n,to:r}=t;if(void 0===r||n.length>e.length)return!1;for(let o=0;o{const n=Math.min(e.length,t.length);let r=0;for(let o=0;o`:${c}`);for(let c=0;c{const n=new Z(e);let o,r=!1;for(let i=0;i({id:i.id,segments:i.segments,params:j(i.params,o[a]),beforeEnter:i.beforeEnter,beforeLeave:i.beforeLeave})):t},j=(e,t)=>e||t?Object.assign(Object.assign({},e),t):void 0,N=(e,t)=>{let n=null,r=0;for(const o of t){const s=Q(e,o);if(null!==s){const i=Y(s);i>r&&(r=i,n=s)}}return n},Y=e=>{let t=1,n=1;for(const r of e)for(const o of r.segments)":"===o[0]?t+=Math.pow(1,n):""!==o&&(t+=Math.pow(2,n)),n++;return t};class Z{constructor(t){this.segments=t.slice()}next(){return this.segments.length>0?this.segments.shift():""}}const S=(e,t)=>t in e?e[t]:e.hasAttribute(t)?e.getAttribute(t):null,O=e=>Array.from(e.children).filter(t=>"ION-ROUTE-REDIRECT"===t.tagName).map(t=>{const n=S(t,"to");return{from:g(S(t,"from")).segments,to:null==n?void 0:g(n)}}),w=e=>V(I(e)),I=e=>Array.from(e.children).filter(t=>"ION-ROUTE"===t.tagName&&t.component).map(t=>{const n=S(t,"component");return{segments:g(S(t,"url")).segments,id:n.toLowerCase(),params:t.componentProps,beforeLeave:t.beforeLeave,beforeEnter:t.beforeEnter,children:I(t)}}),V=e=>{const t=[];for(const n of e)M([],t,n);return t},M=(e,t,n)=>{if(e=[...e,{id:n.id,segments:n.segments,params:n.params,beforeLeave:n.beforeLeave,beforeEnter:n.beforeEnter}],0!==n.children.length)for(const r of n.children)M(e,t,r);else t.push(e)},ee=class{constructor(e){(0,d.r)(this,e),this.ionRouteWillChange=(0,d.d)(this,"ionRouteWillChange",7),this.ionRouteDidChange=(0,d.d)(this,"ionRouteDidChange",7),this.previousPath=null,this.busy=!1,this.state=0,this.lastState=0,this.root="/",this.useHash=!0}componentWillLoad(){var e=this;return(0,f.A)(function*(){yield k(document.body)?Promise.resolve():new Promise(e=>{window.addEventListener("ionNavWillLoad",()=>e(),{once:!0})});const t=yield e.runGuards(e.getSegments());if(!0!==t){if("object"==typeof t){const{redirect:n}=t,r=g(n);e.setSegments(r.segments,l,r.queryString),yield e.writeNavStateRoot(r.segments,l)}}else yield e.onRoutesChanged()})()}componentDidLoad(){window.addEventListener("ionRouteRedirectChanged",(0,b.o)(this.onRedirectChanged.bind(this),10)),window.addEventListener("ionRouteDataChanged",(0,b.o)(this.onRoutesChanged.bind(this),100))}onPopState(){var e=this;return(0,f.A)(function*(){const t=e.historyDirection();let n=e.getSegments();const r=yield e.runGuards(n);if(!0!==r){if("object"!=typeof r)return!1;n=g(r.redirect).segments}return e.writeNavStateRoot(n,t)})()}onBackButton(e){e.detail.register(0,t=>{this.back(),t()})}canTransition(){var e=this;return(0,f.A)(function*(){const t=yield e.runGuards();return!0===t||"object"==typeof t&&t.redirect})()}push(e,t="forward",n){var r=this;return(0,f.A)(function*(){var o;if(e.startsWith(".")){const a=null!==(o=r.previousPath)&&void 0!==o?o:"/",u=new URL(e,`https://host/${a}`);e=u.pathname+u.search}let s=g(e);const i=yield r.runGuards(s.segments);if(!0!==i){if("object"!=typeof i)return!1;s=g(i.redirect)}return r.setSegments(s.segments,t,s.queryString),r.writeNavStateRoot(s.segments,t,n)})()}back(){return window.history.back(),Promise.resolve(this.waitPromise)}printDebug(){var e=this;return(0,f.A)(function*(){(e=>{console.group(`[ion-core] ROUTES[${e.length}]`);for(const t of e){const n=[];t.forEach(o=>n.push(...o.segments));const r=t.map(o=>o.id);console.debug(`%c ${v(n)}`,"font-weight: bold; padding-left: 20px","=>\t",`(${r.join(", ")})`)}console.groupEnd()})(w(e.el)),(e=>{console.group(`[ion-core] REDIRECTS[${e.length}]`);for(const t of e)t.to&&console.debug("FROM: ",`$c ${v(t.from)}`,"font-weight: bold"," TO: ",`$c ${v(t.to.segments)}`,"font-weight: bold");console.groupEnd()})(O(e.el))})()}navChanged(e){var t=this;return(0,f.A)(function*(){if(t.busy)return console.warn("[ion-router] router is busy, navChanged was cancelled"),!1;const{ids:n,outlet:r}=yield F(window.document.body),s=((e,t)=>{let n=null,r=0;for(const o of t){const s=J(e,o);s>r&&(n=o,r=s)}return n?n.map((o,s)=>{var i;return{id:o.id,segments:o.segments,params:j(o.params,null===(i=e[s])||void 0===i?void 0:i.params)}}):null})(n,w(t.el));if(!s)return console.warn("[ion-router] no matching URL for ",n.map(a=>a.id)),!1;const i=(e=>{const t=[];for(const n of e)for(const r of n.segments)if(":"===r[0]){const o=n.params&&n.params[r.slice(1)];if(!o)return null;t.push(o)}else""!==r&&t.push(r);return t})(s);return i?(t.setSegments(i,e),yield t.safeWriteNavState(r,s,l,i,null,n.length),!0):(console.warn("[ion-router] router could not match path because some required param is missing"),!1)})()}onRedirectChanged(){const e=this.getSegments();e&&U(e,O(this.el))&&this.writeNavStateRoot(e,l)}onRoutesChanged(){return this.writeNavStateRoot(this.getSegments(),l)}historyDirection(){var e;const t=window;null===t.history.state&&(this.state++,t.history.replaceState(this.state,t.document.title,null===(e=t.document.location)||void 0===e?void 0:e.href));const n=t.history.state,r=this.lastState;return this.lastState=n,n>r||n>=r&&r>0?h:nn=r),void 0!==t&&(yield t),n})()}runGuards(e=this.getSegments(),t){var n=this;return(0,f.A)(function*(){if(void 0===t&&(t=g(n.previousPath).segments),!e||!t)return!0;const r=w(n.el),o=N(t,r),s=o&&o[o.length-1].beforeLeave,i=!s||(yield s());if(!1===i||"object"==typeof i)return i;const a=N(e,r),u=a&&a[a.length-1].beforeEnter;return!u||u()})()}writeNavState(e,t,n,r,o,s=0,i){var a=this;return(0,f.A)(function*(){if(a.busy)return console.warn("[ion-router] router is busy, transition was cancelled"),!1;a.busy=!0;const u=a.routeChangeEvent(r,o);u&&a.ionRouteWillChange.emit(u);const c=yield A(e,t,n,s,!1,i);return a.busy=!1,u&&a.ionRouteDidChange.emit(u),c})()}setSegments(e,t,n){this.state++,((e,t,n,r,o,s,i)=>{const a=((e,t,n)=>{let r=v(e);return t&&(r="#"+r),void 0!==n&&(r+="?"+n),r})([...g(t).segments,...r],n,i);o===h?e.pushState(s,"",a):e.replaceState(s,"",a)})(window.history,this.root,this.useHash,e,t,this.state,n)}getSegments(){return((e,t,n)=>{const r=g(this.root).segments,o=n?e.hash.slice(1):e.pathname;return((e,t)=>{if(e.length>t.length)return null;if(e.length<=1&&""===e[0])return t;for(let n=0;n{(0,C.o)(this.href,t,this.routerDirection,this.routerAnimation)},this.color=void 0,this.href=void 0,this.rel=void 0,this.routerDirection="forward",this.routerAnimation=void 0,this.target=void 0}render(){const e=(0,P.b)(this),t={href:this.href,rel:this.rel,target:this.target};return(0,d.h)(d.f,{key:"f876442cab5b14b7e83c6d6ad2c2d878a9c57439",onClick:this.onClick,class:(0,C.c)(this.color,{[e]:!0,"ion-activatable":!0})},(0,d.h)("a",Object.assign({key:"c44b78ec1fd10a40c23bfe548860ac2b346646a8"},t),(0,d.h)("slot",{key:"d32180a567613f79f89885135bd0d776ffc1eb8e"})))}};W.style=":host{--background:transparent;--color:var(--ion-color-primary, #0054e9);background:var(--background);color:var(--color)}:host(.ion-color){color:var(--ion-color-base)}a{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit}"},333:(x,y,p)=>{p.d(y,{c:()=>b,g:()=>P,h:()=>d,o:()=>L});var f=p(467);const d=(l,h)=>null!==h.closest(l),b=(l,h)=>"string"==typeof l&&l.length>0?Object.assign({"ion-color":!0,[`ion-color-${l}`]:!0},h):h,P=l=>{const h={};return(l=>void 0!==l?(Array.isArray(l)?l:l.split(" ")).filter(m=>null!=m).map(m=>m.trim()).filter(m=>""!==m):[])(l).forEach(m=>h[m]=!0),h},D=/^[a-z][a-z0-9+\-.]*:/,L=function(){var l=(0,f.A)(function*(h,m,v,E){if(null!=h&&"#"!==h[0]&&!D.test(h)){const R=document.querySelector("ion-router");if(R)return null!=m&&m.preventDefault(),R.push(h,v,E)}return!1});return function(m,v,E,R){return l.apply(this,arguments)}}()}}]); \ No newline at end of file +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[8970],{8970:(x,y,p)=>{p.r(y),p.d(y,{ion_route:()=>D,ion_route_redirect:()=>L,ion_router:()=>ee,ion_router_link:()=>W});var f=p(467),d=p(9672),b=p(4920),C=p(333),P=p(3664);const D=class{constructor(e){(0,d.r)(this,e),this.ionRouteDataChanged=(0,d.d)(this,"ionRouteDataChanged",7),this.url="",this.component=void 0,this.componentProps=void 0,this.beforeLeave=void 0,this.beforeEnter=void 0}onUpdate(e){this.ionRouteDataChanged.emit(e)}onComponentProps(e,t){if(e===t)return;const n=e?Object.keys(e):[],r=t?Object.keys(t):[];if(n.length===r.length){for(const o of n)if(e[o]!==t[o])return void this.onUpdate(e)}else this.onUpdate(e)}connectedCallback(){this.ionRouteDataChanged.emit()}static get watchers(){return{url:["onUpdate"],component:["onUpdate"],componentProps:["onComponentProps"]}}},L=class{constructor(e){(0,d.r)(this,e),this.ionRouteRedirectChanged=(0,d.d)(this,"ionRouteRedirectChanged",7),this.from=void 0,this.to=void 0}propDidChange(){this.ionRouteRedirectChanged.emit()}connectedCallback(){this.ionRouteRedirectChanged.emit()}static get watchers(){return{from:["propDidChange"],to:["propDidChange"]}}},l="root",h="forward",v=e=>"/"+e.filter(n=>n.length>0).join("/"),g=e=>{let n,t=[""];if(null!=e){const r=e.indexOf("?");r>-1&&(n=e.substring(r+1),e=e.substring(0,r)),t=e.split("/").map(o=>o.trim()).filter(o=>o.length>0),0===t.length&&(t=[""])}return{segments:t,queryString:n}},A=function(){var e=(0,f.A)(function*(t,n,r,o,s=!1,i){try{const a=k(t);if(o>=n.length||!a)return s;yield new Promise(_=>(0,b.c)(a,_));const c=n[o],u=yield a.setRouteId(c.id,c.params,r,i);return u.changed&&(r=l,s=!0),s=yield A(u.element,n,r,o+1,s,i),u.markVisible&&(yield u.markVisible()),s}catch(a){return console.error(a),!1}});return function(n,r,o,s){return e.apply(this,arguments)}}(),F=function(){var e=(0,f.A)(function*(t){const n=[];let r,o=t;for(;r=k(o);){const s=yield r.getRouteId();if(!s)break;o=s.element,s.element=void 0,n.push(s)}return{ids:n,outlet:r}});return function(n){return e.apply(this,arguments)}}(),T=":not([no-router]) ion-nav, :not([no-router]) ion-tabs, :not([no-router]) ion-router-outlet",k=e=>{if(!e)return;if(e.matches(T))return e;const t=e.querySelector(T);return null!=t?t:void 0},U=(e,t)=>t.find(n=>((e,t)=>{const{from:n,to:r}=t;if(void 0===r||n.length>e.length)return!1;for(let o=0;o{const n=Math.min(e.length,t.length);let r=0;for(let o=0;o`:${u}`);for(let u=0;u{const n=new Z(e);let o,r=!1;for(let i=0;i({id:i.id,segments:i.segments,params:j(i.params,o[a]),beforeEnter:i.beforeEnter,beforeLeave:i.beforeLeave})):t},j=(e,t)=>e||t?Object.assign(Object.assign({},e),t):void 0,N=(e,t)=>{let n=null,r=0;for(const o of t){const s=Q(e,o);if(null!==s){const i=Y(s);i>r&&(r=i,n=s)}}return n},Y=e=>{let t=1,n=1;for(const r of e)for(const o of r.segments)":"===o[0]?t+=Math.pow(1,n):""!==o&&(t+=Math.pow(2,n)),n++;return t};class Z{constructor(t){this.segments=t.slice()}next(){return this.segments.length>0?this.segments.shift():""}}const S=(e,t)=>t in e?e[t]:e.hasAttribute(t)?e.getAttribute(t):null,O=e=>Array.from(e.children).filter(t=>"ION-ROUTE-REDIRECT"===t.tagName).map(t=>{const n=S(t,"to");return{from:g(S(t,"from")).segments,to:null==n?void 0:g(n)}}),w=e=>V(I(e)),I=e=>Array.from(e.children).filter(t=>"ION-ROUTE"===t.tagName&&t.component).map(t=>{const n=S(t,"component");return{segments:g(S(t,"url")).segments,id:n.toLowerCase(),params:t.componentProps,beforeLeave:t.beforeLeave,beforeEnter:t.beforeEnter,children:I(t)}}),V=e=>{const t=[];for(const n of e)M([],t,n);return t},M=(e,t,n)=>{if(e=[...e,{id:n.id,segments:n.segments,params:n.params,beforeLeave:n.beforeLeave,beforeEnter:n.beforeEnter}],0!==n.children.length)for(const r of n.children)M(e,t,r);else t.push(e)},ee=class{constructor(e){(0,d.r)(this,e),this.ionRouteWillChange=(0,d.d)(this,"ionRouteWillChange",7),this.ionRouteDidChange=(0,d.d)(this,"ionRouteDidChange",7),this.previousPath=null,this.busy=!1,this.state=0,this.lastState=0,this.root="/",this.useHash=!0}componentWillLoad(){var e=this;return(0,f.A)(function*(){yield k(document.body)?Promise.resolve():new Promise(e=>{window.addEventListener("ionNavWillLoad",()=>e(),{once:!0})});const t=yield e.runGuards(e.getSegments());if(!0!==t){if("object"==typeof t){const{redirect:n}=t,r=g(n);e.setSegments(r.segments,l,r.queryString),yield e.writeNavStateRoot(r.segments,l)}}else yield e.onRoutesChanged()})()}componentDidLoad(){window.addEventListener("ionRouteRedirectChanged",(0,b.o)(this.onRedirectChanged.bind(this),10)),window.addEventListener("ionRouteDataChanged",(0,b.o)(this.onRoutesChanged.bind(this),100))}onPopState(){var e=this;return(0,f.A)(function*(){const t=e.historyDirection();let n=e.getSegments();const r=yield e.runGuards(n);if(!0!==r){if("object"!=typeof r)return!1;n=g(r.redirect).segments}return e.writeNavStateRoot(n,t)})()}onBackButton(e){e.detail.register(0,t=>{this.back(),t()})}canTransition(){var e=this;return(0,f.A)(function*(){const t=yield e.runGuards();return!0===t||"object"==typeof t&&t.redirect})()}push(e,t="forward",n){var r=this;return(0,f.A)(function*(){var o;if(e.startsWith(".")){const a=null!==(o=r.previousPath)&&void 0!==o?o:"/",c=new URL(e,`https://host/${a}`);e=c.pathname+c.search}let s=g(e);const i=yield r.runGuards(s.segments);if(!0!==i){if("object"!=typeof i)return!1;s=g(i.redirect)}return r.setSegments(s.segments,t,s.queryString),r.writeNavStateRoot(s.segments,t,n)})()}back(){return window.history.back(),Promise.resolve(this.waitPromise)}printDebug(){var e=this;return(0,f.A)(function*(){(e=>{console.group(`[ion-core] ROUTES[${e.length}]`);for(const t of e){const n=[];t.forEach(o=>n.push(...o.segments));const r=t.map(o=>o.id);console.debug(`%c ${v(n)}`,"font-weight: bold; padding-left: 20px","=>\t",`(${r.join(", ")})`)}console.groupEnd()})(w(e.el)),(e=>{console.group(`[ion-core] REDIRECTS[${e.length}]`);for(const t of e)t.to&&console.debug("FROM: ",`$c ${v(t.from)}`,"font-weight: bold"," TO: ",`$c ${v(t.to.segments)}`,"font-weight: bold");console.groupEnd()})(O(e.el))})()}navChanged(e){var t=this;return(0,f.A)(function*(){if(t.busy)return console.warn("[ion-router] router is busy, navChanged was cancelled"),!1;const{ids:n,outlet:r}=yield F(window.document.body),s=((e,t)=>{let n=null,r=0;for(const o of t){const s=J(e,o);s>r&&(n=o,r=s)}return n?n.map((o,s)=>{var i;return{id:o.id,segments:o.segments,params:j(o.params,null===(i=e[s])||void 0===i?void 0:i.params)}}):null})(n,w(t.el));if(!s)return console.warn("[ion-router] no matching URL for ",n.map(a=>a.id)),!1;const i=(e=>{const t=[];for(const n of e)for(const r of n.segments)if(":"===r[0]){const o=n.params&&n.params[r.slice(1)];if(!o)return null;t.push(o)}else""!==r&&t.push(r);return t})(s);return i?(t.setSegments(i,e),yield t.safeWriteNavState(r,s,l,i,null,n.length),!0):(console.warn("[ion-router] router could not match path because some required param is missing"),!1)})()}onRedirectChanged(){const e=this.getSegments();e&&U(e,O(this.el))&&this.writeNavStateRoot(e,l)}onRoutesChanged(){return this.writeNavStateRoot(this.getSegments(),l)}historyDirection(){var e;const t=window;null===t.history.state&&(this.state++,t.history.replaceState(this.state,t.document.title,null===(e=t.document.location)||void 0===e?void 0:e.href));const n=t.history.state,r=this.lastState;return this.lastState=n,n>r||n>=r&&r>0?h:nn=r),void 0!==t&&(yield t),n})()}runGuards(e=this.getSegments(),t){var n=this;return(0,f.A)(function*(){if(void 0===t&&(t=g(n.previousPath).segments),!e||!t)return!0;const r=w(n.el),o=N(t,r),s=o&&o[o.length-1].beforeLeave,i=!s||(yield s());if(!1===i||"object"==typeof i)return i;const a=N(e,r),c=a&&a[a.length-1].beforeEnter;return!c||c()})()}writeNavState(e,t,n,r,o,s=0,i){var a=this;return(0,f.A)(function*(){if(a.busy)return console.warn("[ion-router] router is busy, transition was cancelled"),!1;a.busy=!0;const c=a.routeChangeEvent(r,o);c&&a.ionRouteWillChange.emit(c);const u=yield A(e,t,n,s,!1,i);return a.busy=!1,c&&a.ionRouteDidChange.emit(c),u})()}setSegments(e,t,n){this.state++,((e,t,n,r,o,s,i)=>{const a=((e,t,n)=>{let r=v(e);return t&&(r="#"+r),void 0!==n&&(r+="?"+n),r})([...g(t).segments,...r],n,i);o===h?e.pushState(s,"",a):e.replaceState(s,"",a)})(window.history,this.root,this.useHash,e,t,this.state,n)}getSegments(){return((e,t,n)=>{const r=g(this.root).segments,o=n?e.hash.slice(1):e.pathname;return((e,t)=>{if(e.length>t.length)return null;if(e.length<=1&&""===e[0])return t;for(let n=0;n{(0,C.o)(this.href,t,this.routerDirection,this.routerAnimation)},this.color=void 0,this.href=void 0,this.rel=void 0,this.routerDirection="forward",this.routerAnimation=void 0,this.target=void 0}render(){const e=(0,P.b)(this),t={href:this.href,rel:this.rel,target:this.target};return(0,d.h)(d.f,{key:"f876442cab5b14b7e83c6d6ad2c2d878a9c57439",onClick:this.onClick,class:(0,C.c)(this.color,{[e]:!0,"ion-activatable":!0})},(0,d.h)("a",Object.assign({key:"c44b78ec1fd10a40c23bfe548860ac2b346646a8"},t),(0,d.h)("slot",{key:"d32180a567613f79f89885135bd0d776ffc1eb8e"})))}};W.style=":host{--background:transparent;--color:var(--ion-color-primary, #0054e9);background:var(--background);color:var(--color)}:host(.ion-color){color:var(--ion-color-base)}a{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit}"},333:(x,y,p)=>{p.d(y,{c:()=>b,g:()=>P,h:()=>d,o:()=>L});var f=p(467);const d=(l,h)=>null!==h.closest(l),b=(l,h)=>"string"==typeof l&&l.length>0?Object.assign({"ion-color":!0,[`ion-color-${l}`]:!0},h):h,P=l=>{const h={};return(l=>void 0!==l?(Array.isArray(l)?l:l.split(" ")).filter(m=>null!=m).map(m=>m.trim()).filter(m=>""!==m):[])(l).forEach(m=>h[m]=!0),h},D=/^[a-z][a-z0-9+\-.]*:/,L=function(){var l=(0,f.A)(function*(h,m,v,E){if(null!=h&&"#"!==h[0]&&!D.test(h)){const R=document.querySelector("ion-router");if(R)return null!=m&&m.preventDefault(),R.push(h,v,E)}return!1});return function(m,v,E,R){return l.apply(this,arguments)}}()}}]); \ No newline at end of file diff --git a/www/9013.b8cefd92ba4e66d6.js b/www/9013.2e347313286de95b.js similarity index 84% rename from www/9013.b8cefd92ba4e66d6.js rename to www/9013.2e347313286de95b.js index e9e01bc..0bd9005 100644 --- a/www/9013.b8cefd92ba4e66d6.js +++ b/www/9013.2e347313286de95b.js @@ -1 +1 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[9013],{9013:(m,l,o)=>{o.r(l),o.d(l,{ion_picker_column_option:()=>n});var i=o(9672),c=o(4920),d=o(333),u=o(3664);const n=class{constructor(t){(0,i.r)(this,t),this.pickerColumn=null,this.ariaLabel=null,this.disabled=!1,this.value=void 0,this.color="primary"}onAriaLabelChange(t){this.ariaLabel=t}componentWillLoad(){const t=(0,c.h)(this.el,["aria-label"]);this.ariaLabel=t["aria-label"]||null}connectedCallback(){this.pickerColumn=this.el.closest("ion-picker-column")}disconnectedCallback(){this.pickerColumn=null}componentDidLoad(){const{pickerColumn:t}=this;null!==t&&t.scrollActiveItemIntoView()}onClick(){const{pickerColumn:t}=this;null!==t&&t.setValue(this.value)}render(){const{color:t,disabled:r,ariaLabel:s}=this,a=(0,u.b)(this);return(0,i.h)(i.f,{key:"cc4435a0ce0e55be1321bcabaf342ed68cf5ba1e",class:(0,d.c)(t,{[a]:!0,"option-disabled":r})},(0,i.h)("button",{key:"0187fb967771e0787807a8538dce4e59f6a98565",tabindex:"-1","aria-label":s,disabled:r,onClick:()=>this.onClick()},(0,i.h)("slot",{key:"dbe52552f3f27332816748c12d929cc81060841d"})))}get el(){return(0,i.i)(this)}static get watchers(){return{"aria-label":["onAriaLabelChange"]}}};n.style={ios:"button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}:host(.option-disabled){opacity:0.4}:host(.option-disabled) button{cursor:default}",md:"button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}:host(.option-disabled){opacity:0.4}:host(.option-disabled) button{cursor:default}:host(.option-active){color:var(--ion-color-base)}"}},333:(m,l,o)=>{o.d(l,{c:()=>d,g:()=>h,h:()=>c,o:()=>f});var i=o(467);const c=(e,n)=>null!==n.closest(e),d=(e,n)=>"string"==typeof e&&e.length>0?Object.assign({"ion-color":!0,[`ion-color-${e}`]:!0},n):n,h=e=>{const n={};return(e=>void 0!==e?(Array.isArray(e)?e:e.split(" ")).filter(t=>null!=t).map(t=>t.trim()).filter(t=>""!==t):[])(e).forEach(t=>n[t]=!0),n},p=/^[a-z][a-z0-9+\-.]*:/,f=function(){var e=(0,i.A)(function*(n,t,r,s){if(null!=n&&"#"!==n[0]&&!p.test(n)){const a=document.querySelector("ion-router");if(a)return null!=t&&t.preventDefault(),a.push(n,r,s)}return!1});return function(t,r,s,a){return e.apply(this,arguments)}}()}}]); \ No newline at end of file +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[9013],{9013:(m,a,o)=>{o.r(a),o.d(a,{ion_picker_column_option:()=>n});var i=o(9672),c=o(4920),d=o(333),u=o(3664);const n=class{constructor(t){(0,i.r)(this,t),this.pickerColumn=null,this.ariaLabel=null,this.disabled=!1,this.value=void 0,this.color="primary"}onAriaLabelChange(t){this.ariaLabel=t}componentWillLoad(){const t=(0,c.h)(this.el,["aria-label"]);this.ariaLabel=t["aria-label"]||null}connectedCallback(){this.pickerColumn=this.el.closest("ion-picker-column")}disconnectedCallback(){this.pickerColumn=null}componentDidLoad(){const{pickerColumn:t}=this;null!==t&&t.scrollActiveItemIntoView()}onClick(){const{pickerColumn:t}=this;null!==t&&t.setValue(this.value)}render(){const{color:t,disabled:r,ariaLabel:s}=this,l=(0,u.b)(this);return(0,i.h)(i.f,{key:"cc4435a0ce0e55be1321bcabaf342ed68cf5ba1e",class:(0,d.c)(t,{[l]:!0,"option-disabled":r})},(0,i.h)("button",{key:"0187fb967771e0787807a8538dce4e59f6a98565",tabindex:"-1","aria-label":s,disabled:r,onClick:()=>this.onClick()},(0,i.h)("slot",{key:"dbe52552f3f27332816748c12d929cc81060841d"})))}get el(){return(0,i.i)(this)}static get watchers(){return{"aria-label":["onAriaLabelChange"]}}};n.style={ios:"button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}:host(.option-disabled){opacity:0.4}:host(.option-disabled) button{cursor:default}",md:"button{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}:host(.option-disabled){opacity:0.4}:host(.option-disabled) button{cursor:default}:host(.option-active){color:var(--ion-color-base)}"}},333:(m,a,o)=>{o.d(a,{c:()=>d,g:()=>h,h:()=>c,o:()=>f});var i=o(467);const c=(e,n)=>null!==n.closest(e),d=(e,n)=>"string"==typeof e&&e.length>0?Object.assign({"ion-color":!0,[`ion-color-${e}`]:!0},n):n,h=e=>{const n={};return(e=>void 0!==e?(Array.isArray(e)?e:e.split(" ")).filter(t=>null!=t).map(t=>t.trim()).filter(t=>""!==t):[])(e).forEach(t=>n[t]=!0),n},p=/^[a-z][a-z0-9+\-.]*:/,f=function(){var e=(0,i.A)(function*(n,t,r,s){if(null!=n&&"#"!==n[0]&&!p.test(n)){const l=document.querySelector("ion-router");if(l)return null!=t&&t.preventDefault(),l.push(n,r,s)}return!1});return function(t,r,s,l){return e.apply(this,arguments)}}()}}]); \ No newline at end of file diff --git a/www/common.abd3f414750f7079.js b/www/common.d9f0bff8bd5e1759.js similarity index 95% rename from www/common.abd3f414750f7079.js rename to www/common.d9f0bff8bd5e1759.js index 3773b21..6031147 100644 --- a/www/common.abd3f414750f7079.js +++ b/www/common.d9f0bff8bd5e1759.js @@ -1 +1 @@ -"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[2076],{1263:(A,D,u)=>{u.d(D,{c:()=>g});var m=u(9672),r=u(1086),v=u(8607);const g=(d,l)=>{let a,s;const n=(o,i,_)=>{if(typeof document>"u")return;const c=document.elementFromPoint(o,i);c&&l(c)&&!c.disabled?c!==a&&(t(),e(c,_)):t()},e=(o,i)=>{a=o,s||(s=a);const _=a;(0,m.w)(()=>_.classList.add("ion-activated")),i()},t=(o=!1)=>{if(!a)return;const i=a;(0,m.w)(()=>i.classList.remove("ion-activated")),o&&s!==a&&a.click(),a=void 0};return(0,v.createGesture)({el:d,gestureName:"buttonActiveDrag",threshold:0,onStart:o=>n(o.currentX,o.currentY,r.a),onMove:o=>n(o.currentX,o.currentY,r.b),onEnd:()=>{t(!0),(0,r.h)(),s=void 0}})}},8438:(A,D,u)=>{u.d(D,{g:()=>r});var m=u(8476);const r=()=>{if(void 0!==m.w)return m.w.Capacitor}},5572:(A,D,u)=>{u.d(D,{c:()=>m,i:()=>r});const m=(v,g,d)=>"function"==typeof d?d(v,g):"string"==typeof d?v[d]===g[d]:Array.isArray(g)?g.includes(v):v===g,r=(v,g,d)=>void 0!==v&&(Array.isArray(v)?v.some(l=>m(l,g,d)):m(v,g,d))},3351:(A,D,u)=>{u.d(D,{g:()=>m});const m=(l,a,s,n,e)=>v(l[1],a[1],s[1],n[1],e).map(t=>r(l[0],a[0],s[0],n[0],t)),r=(l,a,s,n,e)=>e*(3*a*Math.pow(e-1,2)+e*(-3*s*e+3*s+n*e))-l*Math.pow(e-1,3),v=(l,a,s,n,e)=>d((n-=e)-3*(s-=e)+3*(a-=e)-(l-=e),3*s-6*a+3*l,3*a-3*l,l).filter(o=>o>=0&&o<=1),d=(l,a,s,n)=>{if(0===l)return((l,a,s)=>{const n=a*a-4*l*s;return n<0?[]:[(-a+Math.sqrt(n))/(2*l),(-a-Math.sqrt(n))/(2*l)]})(a,s,n);const e=(3*(s/=l)-(a/=l)*a)/3,t=(2*a*a*a-9*a*s+27*(n/=l))/27;if(0===e)return[Math.pow(-t,1/3)];if(0===t)return[Math.sqrt(-e),-Math.sqrt(-e)];const o=Math.pow(t/2,2)+Math.pow(e/3,3);if(0===o)return[Math.pow(t/2,.5)-a/3];if(o>0)return[Math.pow(-t/2+Math.sqrt(o),1/3)-Math.pow(t/2+Math.sqrt(o),1/3)-a/3];const i=Math.sqrt(Math.pow(-e/3,3)),_=Math.acos(-t/(2*Math.sqrt(Math.pow(-e/3,3)))),c=2*Math.pow(i,1/3);return[c*Math.cos(_/3)-a/3,c*Math.cos((_+2*Math.PI)/3)-a/3,c*Math.cos((_+4*Math.PI)/3)-a/3]}},5083:(A,D,u)=>{u.d(D,{i:()=>m});const m=r=>r&&""!==r.dir?"rtl"===r.dir.toLowerCase():"rtl"===(null==document?void 0:document.dir.toLowerCase())},3126:(A,D,u)=>{u.r(D),u.d(D,{startFocusVisible:()=>g});const m="ion-focused",v=["Tab","ArrowDown","Space","Escape"," ","Shift","Enter","ArrowLeft","ArrowRight","ArrowUp","Home","End"],g=d=>{let l=[],a=!0;const s=d?d.shadowRoot:document,n=d||document.body,e=f=>{l.forEach(h=>h.classList.remove(m)),f.forEach(h=>h.classList.add(m)),l=f},t=()=>{a=!1,e([])},o=f=>{a=v.includes(f.key),a||e([])},i=f=>{if(a&&void 0!==f.composedPath){const h=f.composedPath().filter(E=>!!E.classList&&E.classList.contains("ion-focusable"));e(h)}},_=()=>{s.activeElement===n&&e([])};return s.addEventListener("keydown",o),s.addEventListener("focusin",i),s.addEventListener("focusout",_),s.addEventListener("touchstart",t,{passive:!0}),s.addEventListener("mousedown",t),{destroy:()=>{s.removeEventListener("keydown",o),s.removeEventListener("focusin",i),s.removeEventListener("focusout",_),s.removeEventListener("touchstart",t),s.removeEventListener("mousedown",t)},setFocus:e}}},1086:(A,D,u)=>{u.d(D,{I:()=>r,a:()=>a,b:()=>s,c:()=>l,d:()=>e,h:()=>n});var m=u(8438),r=function(t){return t.Heavy="HEAVY",t.Medium="MEDIUM",t.Light="LIGHT",t}(r||{});const g={getEngine(){const t=(0,m.g)();if(null!=t&&t.isPluginAvailable("Haptics"))return t.Plugins.Haptics},available(){if(!this.getEngine())return!1;const o=(0,m.g)();return"web"!==(null==o?void 0:o.getPlatform())||typeof navigator<"u"&&void 0!==navigator.vibrate},impact(t){const o=this.getEngine();o&&o.impact({style:t.style})},notification(t){const o=this.getEngine();o&&o.notification({type:t.type})},selection(){this.impact({style:r.Light})},selectionStart(){const t=this.getEngine();t&&t.selectionStart()},selectionChanged(){const t=this.getEngine();t&&t.selectionChanged()},selectionEnd(){const t=this.getEngine();t&&t.selectionEnd()}},d=()=>g.available(),l=()=>{d()&&g.selection()},a=()=>{d()&&g.selectionStart()},s=()=>{d()&&g.selectionChanged()},n=()=>{d()&&g.selectionEnd()},e=t=>{d()&&g.impact(t)}},909:(A,D,u)=>{u.d(D,{I:()=>l,a:()=>e,b:()=>d,c:()=>i,d:()=>c,f:()=>t,g:()=>n,i:()=>s,p:()=>_,r:()=>f,s:()=>o});var m=u(467),r=u(4920),v=u(4929);const d="ion-content",l=".ion-content-scroll-host",a=`${d}, ${l}`,s=h=>"ION-CONTENT"===h.tagName,n=function(){var h=(0,m.A)(function*(E){return s(E)?(yield new Promise(M=>(0,r.c)(E,M)),E.getScrollElement()):E});return function(M){return h.apply(this,arguments)}}(),e=h=>h.querySelector(l)||h.querySelector(a),t=h=>h.closest(a),o=(h,E)=>s(h)?h.scrollToTop(E):Promise.resolve(h.scrollTo({top:0,left:0,behavior:E>0?"smooth":"auto"})),i=(h,E,M,O)=>s(h)?h.scrollByPoint(E,M,O):Promise.resolve(h.scrollBy({top:M,left:E,behavior:O>0?"smooth":"auto"})),_=h=>(0,v.b)(h,d),c=h=>{if(s(h)){const M=h.scrollY;return h.scrollY=!1,M}return h.style.setProperty("overflow","hidden"),!0},f=(h,E)=>{s(h)?h.scrollY=E:h.style.removeProperty("overflow")}},3992:(A,D,u)=>{u.d(D,{a:()=>m,b:()=>i,c:()=>a,d:()=>_,e:()=>L,f:()=>l,g:()=>c,h:()=>v,i:()=>r,j:()=>y,k:()=>w,l:()=>s,m:()=>t,n:()=>f,o:()=>e,p:()=>d,q:()=>g,r:()=>p,s:()=>P,t:()=>o,u:()=>M,v:()=>O,w:()=>n,x:()=>h,y:()=>E});const m="data:image/svg+xml;utf8,",r="data:image/svg+xml;utf8,",v="data:image/svg+xml;utf8,",g="data:image/svg+xml;utf8,",d="data:image/svg+xml;utf8,",l="data:image/svg+xml;utf8,",a="data:image/svg+xml;utf8,",s="data:image/svg+xml;utf8,",n="data:image/svg+xml;utf8,",e="data:image/svg+xml;utf8,",t="data:image/svg+xml;utf8,",o="data:image/svg+xml;utf8,",i="data:image/svg+xml;utf8,",_="data:image/svg+xml;utf8,",c="data:image/svg+xml;utf8,",f="data:image/svg+xml;utf8,",h="data:image/svg+xml;utf8,",E="data:image/svg+xml;utf8,",M="data:image/svg+xml;utf8,",O="data:image/svg+xml;utf8,",p="data:image/svg+xml;utf8,",y="data:image/svg+xml;utf8,",w="data:image/svg+xml;utf8,",P="data:image/svg+xml;utf8,",L="data:image/svg+xml;utf8,"},243:(A,D,u)=>{u.d(D,{c:()=>g,g:()=>d});var m=u(8476),r=u(4920),v=u(4929);const g=(a,s,n)=>{let e,t;if(void 0!==m.w&&"MutationObserver"in m.w){const c=Array.isArray(s)?s:[s];e=new MutationObserver(f=>{for(const h of f)for(const E of h.addedNodes)if(E.nodeType===Node.ELEMENT_NODE&&c.includes(E.slot))return n(),void(0,r.r)(()=>o(E))}),e.observe(a,{childList:!0,subtree:!0})}const o=c=>{var f;t&&(t.disconnect(),t=void 0),t=new MutationObserver(h=>{n();for(const E of h)for(const M of E.removedNodes)M.nodeType===Node.ELEMENT_NODE&&M.slot===s&&_()}),t.observe(null!==(f=c.parentElement)&&void 0!==f?f:c,{subtree:!0,childList:!0})},_=()=>{t&&(t.disconnect(),t=void 0)};return{destroy:()=>{e&&(e.disconnect(),e=void 0),_()}}},d=(a,s,n)=>{const e=null==a?0:a.toString().length,t=l(e,s);if(void 0===n)return t;try{return n(e,s)}catch(o){return(0,v.a)("Exception in provided `counterFormatter`.",o),t}},l=(a,s)=>`${a} / ${s}`},1622:(A,D,u)=>{u.r(D),u.d(D,{KEYBOARD_DID_CLOSE:()=>d,KEYBOARD_DID_OPEN:()=>g,copyVisualViewport:()=>p,keyboardDidClose:()=>h,keyboardDidOpen:()=>c,keyboardDidResize:()=>f,resetKeyboardAssist:()=>e,setKeyboardClose:()=>_,setKeyboardOpen:()=>i,startKeyboardAssist:()=>t,trackViewportChanges:()=>O});var m=u(4379);u(8438),u(8476);const g="ionKeyboardDidShow",d="ionKeyboardDidHide";let a={},s={},n=!1;const e=()=>{a={},s={},n=!1},t=y=>{if(m.K.getEngine())o(y);else{if(!y.visualViewport)return;s=p(y.visualViewport),y.visualViewport.onresize=()=>{O(y),c()||f(y)?i(y):h(y)&&_(y)}}},o=y=>{y.addEventListener("keyboardDidShow",w=>i(y,w)),y.addEventListener("keyboardDidHide",()=>_(y))},i=(y,w)=>{E(y,w),n=!0},_=y=>{M(y),n=!1},c=()=>!n&&a.width===s.width&&(a.height-s.height)*s.scale>150,f=y=>n&&!h(y),h=y=>n&&s.height===y.innerHeight,E=(y,w)=>{const L=new CustomEvent(g,{detail:{keyboardHeight:w?w.keyboardHeight:y.innerHeight-s.height}});y.dispatchEvent(L)},M=y=>{const w=new CustomEvent(d);y.dispatchEvent(w)},O=y=>{a=Object.assign({},s),s=p(y.visualViewport)},p=y=>({width:Math.round(y.width),height:Math.round(y.height),offsetTop:y.offsetTop,offsetLeft:y.offsetLeft,pageTop:y.pageTop,pageLeft:y.pageLeft,scale:y.scale})},4379:(A,D,u)=>{u.d(D,{K:()=>g,a:()=>v});var m=u(8438),r=function(d){return d.Unimplemented="UNIMPLEMENTED",d.Unavailable="UNAVAILABLE",d}(r||{}),v=function(d){return d.Body="body",d.Ionic="ionic",d.Native="native",d.None="none",d}(v||{});const g={getEngine(){const d=(0,m.g)();if(null!=d&&d.isPluginAvailable("Keyboard"))return d.Plugins.Keyboard},getResizeMode(){const d=this.getEngine();return null!=d&&d.getResizeMode?d.getResizeMode().catch(l=>{if(l.code!==r.Unimplemented)throw l}):Promise.resolve(void 0)}}},4731:(A,D,u)=>{u.d(D,{c:()=>l});var m=u(467),r=u(8476),v=u(4379);const g=a=>{if(void 0===r.d||a===v.a.None||void 0===a)return null;const s=r.d.querySelector("ion-app");return null!=s?s:r.d.body},d=a=>{const s=g(a);return null===s?0:s.clientHeight},l=function(){var a=(0,m.A)(function*(s){let n,e,t,o;const i=function(){var E=(0,m.A)(function*(){const M=yield v.K.getResizeMode(),O=void 0===M?void 0:M.mode;n=()=>{void 0===o&&(o=d(O)),t=!0,_(t,O)},e=()=>{t=!1,_(t,O)},null==r.w||r.w.addEventListener("keyboardWillShow",n),null==r.w||r.w.addEventListener("keyboardWillHide",e)});return function(){return E.apply(this,arguments)}}(),_=(E,M)=>{s&&s(E,c(M))},c=E=>{if(0===o||o===d(E))return;const M=g(E);return null!==M?new Promise(O=>{const y=new ResizeObserver(()=>{M.clientHeight===o&&(y.disconnect(),O())});y.observe(M)}):void 0};return yield i(),{init:i,destroy:()=>{null==r.w||r.w.removeEventListener("keyboardWillShow",n),null==r.w||r.w.removeEventListener("keyboardWillHide",e),n=e=void 0},isKeyboardVisible:()=>t}});return function(n){return a.apply(this,arguments)}}()},7838:(A,D,u)=>{u.d(D,{c:()=>r});var m=u(467);const r=()=>{let v;return{lock:function(){var d=(0,m.A)(function*(){const l=v;let a;return v=new Promise(s=>a=s),void 0!==l&&(yield l),a});return function(){return d.apply(this,arguments)}}()}}},9001:(A,D,u)=>{u.d(D,{c:()=>v});var m=u(8476),r=u(4920);const v=(g,d,l)=>{let a;const s=()=>!(void 0===d()||void 0!==g.label||null===l()),e=()=>{const o=d();if(void 0===o)return;if(!s())return void o.style.removeProperty("width");const i=l().scrollWidth;if(0===i&&null===o.offsetParent&&void 0!==m.w&&"IntersectionObserver"in m.w){if(void 0!==a)return;const _=a=new IntersectionObserver(c=>{1===c[0].intersectionRatio&&(e(),_.disconnect(),a=void 0)},{threshold:.01,root:g});_.observe(o)}else o.style.setProperty("width",.75*i+"px")};return{calculateNotchWidth:()=>{s()&&(0,r.r)(()=>{e()})},destroy:()=>{a&&(a.disconnect(),a=void 0)}}}},7895:(A,D,u)=>{u.d(D,{S:()=>r});const r={bubbles:{dur:1e3,circles:9,fn:(v,g,d)=>{const l=v*g/d-v+"ms",a=2*Math.PI*g/d;return{r:5,style:{top:32*Math.sin(a)+"%",left:32*Math.cos(a)+"%","animation-delay":l}}}},circles:{dur:1e3,circles:8,fn:(v,g,d)=>{const l=g/d,a=v*l-v+"ms",s=2*Math.PI*l;return{r:5,style:{top:32*Math.sin(s)+"%",left:32*Math.cos(s)+"%","animation-delay":a}}}},circular:{dur:1400,elmDuration:!0,circles:1,fn:()=>({r:20,cx:48,cy:48,fill:"none",viewBox:"24 24 48 48",transform:"translate(0,0)",style:{}})},crescent:{dur:750,circles:1,fn:()=>({r:26,style:{}})},dots:{dur:750,circles:3,fn:(v,g)=>({r:6,style:{left:32-32*g+"%","animation-delay":-110*g+"ms"}})},lines:{dur:1e3,lines:8,fn:(v,g,d)=>({y1:14,y2:26,style:{transform:`rotate(${360/d*g+(g({y1:12,y2:20,style:{transform:`rotate(${360/d*g+(g({y1:17,y2:29,style:{transform:`rotate(${30*g+(g<6?180:-180)}deg)`,"animation-delay":v*g/d-v+"ms"}})},"lines-sharp-small":{dur:1e3,lines:12,fn:(v,g,d)=>({y1:12,y2:20,style:{transform:`rotate(${30*g+(g<6?180:-180)}deg)`,"animation-delay":v*g/d-v+"ms"}})}}},7166:(A,D,u)=>{u.r(D),u.d(D,{createSwipeBackGesture:()=>d});var m=u(4920),r=u(5083),v=u(8607);u(1970);const d=(l,a,s,n,e)=>{const t=l.ownerDocument.defaultView;let o=(0,r.i)(l);const _=M=>o?-M.deltaX:M.deltaX;return(0,v.createGesture)({el:l,gestureName:"goback-swipe",gesturePriority:101,threshold:10,canStart:M=>(o=(0,r.i)(l),(M=>{const{startX:p}=M;return o?p>=t.innerWidth-50:p<=50})(M)&&a()),onStart:s,onMove:M=>{const p=_(M)/t.innerWidth;n(p)},onEnd:M=>{const O=_(M),p=t.innerWidth,y=O/p,w=(M=>o?-M.velocityX:M.velocityX)(M),L=w>=0&&(w>.2||O>p/2),I=(L?1-y:y)*p;let S=0;if(I>5){const x=I/Math.abs(w);S=Math.min(x,540)}e(L,y<=0?.01:(0,m.j)(0,y,.9999),S)}})}},2935:(A,D,u)=>{u.d(D,{w:()=>m});const m=(g,d,l)=>{if(typeof MutationObserver>"u")return;const a=new MutationObserver(s=>{l(r(s,d))});return a.observe(g,{childList:!0,subtree:!0}),a},r=(g,d)=>{let l;return g.forEach(a=>{for(let s=0;s{if(1!==g.nodeType)return;const l=g;return(l.tagName===d.toUpperCase()?[l]:Array.from(l.querySelectorAll(d))).find(s=>s.value===l.value)}},385:(A,D,u)=>{u.d(D,{l:()=>v});var m=u(4438),r=u(7863);let v=(()=>{var g;class d{constructor(){this.title="Header Title"}ngOnInit(){}}return(g=d).\u0275fac=function(a){return new(a||g)},g.\u0275cmp=m.VBU({type:g,selectors:[["app-header"]],inputs:{title:"title"},decls:5,vars:2,consts:[[3,"translucent"],["slot","start","menu","menu-id"]],template:function(a,s){1&a&&(m.j41(0,"ion-header",0)(1,"ion-toolbar"),m.nrm(2,"ion-menu-button",1),m.j41(3,"ion-title"),m.EFF(4),m.k0s()()()),2&a&&(m.Y8G("translucent",!0),m.R7$(4),m.JRh(s.title))},dependencies:[r.eU,r.MC,r.BC,r.ai]}),d})()},8453:(A,D,u)=>{u.d(D,{W:()=>v});var m=u(4438),r=u(7863);let v=(()=>{var g;class d{constructor(){this.title="Title"}ngOnInit(){}}return(g=d).\u0275fac=function(a){return new(a||g)},g.\u0275cmp=m.VBU({type:g,selectors:[["app-title"]],inputs:{title:"title"},decls:4,vars:1,consts:[[1,"lg:m-10"],["size","12","size-md","6","size-lg","6"],[1,"text-4xl","lg:text-6xl","font-bold"]],template:function(a,s){1&a&&(m.j41(0,"ion-row",0)(1,"ion-col",1)(2,"h1",2),m.EFF(3),m.k0s()()()),2&a&&(m.R7$(3),m.JRh(s.title))},dependencies:[r.hU,r.ln]}),d})()},4796:(A,D,u)=>{u.d(D,{u:()=>d});var m=u(467),r=u(8737),v=u(4262),g=u(4438);let d=(()=>{var l;class a{constructor(n,e){this.auth=n,this.firestore=e}registerUser(n){var e=this;return(0,m.A)(function*(){try{const t=yield(0,r.eJ)(e.auth,n.email,n.password);return t.user?(yield(0,v.BN)((0,v.H9)(e.firestore,"users",t.user.uid),{email:n.email,name:n.name,orgName:n.orgName,uid:t.user.uid}),yield(0,v.BN)((0,v.H9)(e.firestore,"teams",`${n.orgName}`),{name:n.orgName,members:[t.user.uid]}),t):null}catch{return null}})()}loginUser(n){var e=this;return(0,m.A)(function*(){try{var t;const o=yield(0,r.x9)(e.auth,n.email,n.password);if(null!==(t=o.user)&&void 0!==t&&t.uid){const i=yield(0,v.x7)((0,v.H9)(e.firestore,"users",o.user.uid));if(i.exists())return localStorage.setItem("user",JSON.stringify(i.data())),o}}catch(o){console.error(o)}return null})()}logoutUser(){var n=this;return(0,m.A)(function*(){yield n.auth.signOut()})()}addMember(n){var e=this;return(0,m.A)(function*(){try{const t=yield(0,r.eJ)(e.auth,n.email,n.password);if(!t.user)return!1;const o={email:n.email,name:n.name,orgName:n.orgName,uid:t.user.uid};return yield(0,v.BN)((0,v.H9)(e.firestore,"users",t.user.uid),o),o}catch{return!1}})()}}return(l=a).\u0275fac=function(n){return new(n||l)(g.KVO(r.Nj),g.KVO(v._7))},l.\u0275prov=g.jDH({token:l,factory:l.\u0275fac,providedIn:"root"}),a})()},6560:(A,D,u)=>{u.d(D,{x:()=>d});var m=u(467),r=u(4262),v=u(4438),g=u(1626);let d=(()=>{var l;class a{constructor(n,e){this.firestore=n,this.http=e,this.url_cpu="https://devprobeapi.onrender.com/flame_graph_date",this.url_mem="https://devprobeapi.onrender.com/flame_graph_memory_date"}getProducts(n){var e=this;return(0,m.A)(function*(){try{const t=(0,r.rJ)(e.firestore,"teams",n,"products");return(yield(0,r.GG)(t)).docs.map(i=>i.data())}catch(t){return console.log(t),[]}})()}getDates(n,e,t){var o=this;return(0,m.A)(function*(){try{t||(t="cpu_usage");const i=(0,r.rJ)(o.firestore,"teams",n,"products",e,t);return(yield(0,r.GG)(i)).docs.map(c=>c.id)}catch(i){return console.log(i),[]}})()}getFlameGraphByDate(n,e,t,o){var i=this;return(0,m.A)(function*(){try{let _={team:n,product:e,date:t};return o?yield i.http.post(i.url_mem,_).toPromise():yield i.http.post(i.url_cpu,_).toPromise()}catch{return{}}})()}}return(l=a).\u0275fac=function(n){return new(n||l)(v.KVO(r._7),v.KVO(g.Qq))},l.\u0275prov=v.jDH({token:l,factory:l.\u0275fac,providedIn:"root"}),a})()},201:(A,D,u)=>{u.d(D,{p:()=>d});var m=u(467),r=u(4262),v=u(4438),g=u(1626);let d=(()=>{var l;class a{constructor(n,e){this.firestore=n,this.httpClient=e,this.url="https://devprobeapi.onrender.com/"}syncRepo(n,e,t,o,i){var _=this;return(0,m.A)(function*(){const c=(0,r.H9)(_.firestore,"teams",n),f=yield(0,r.x7)(c);if(f.exists()){const h=f.data();h.gitHub={key:e,repo:t,branch:o,owner:i},yield(0,r.BN)(c,h)}})()}getSyncRepo(n){var e=this;return(0,m.A)(function*(){const t=(0,r.H9)(e.firestore,"teams",n),o=yield(0,r.x7)(t);return o.exists()?o.data().gitHub:null})()}getFiles(n){var e=this;return(0,m.A)(function*(){const t=yield e.httpClient.post(e.url+"github_repo",{auth:n.key,repo:n.repo,branch:n.branch,owner:n.owner}).toPromise();if(console.log(t),t){let o=t.paths;return o=o.filter(i=>!i.includes(".git")),o=o.filter(i=>!i.includes("node_modules")),o=o.filter(i=>!i.includes(".idea")),o=o.filter(i=>i.includes(".")),o}return[]})()}getContentFromFilePath(n,e){var t=this;return(0,m.A)(function*(){const o=yield t.httpClient.post(t.url+"github_file",{auth:n.key,repo:n.repo,owner:n.owner,path:e}).toPromise();return console.log(o),o?o.content:""})()}}return(l=a).\u0275fac=function(n){return new(n||l)(v.KVO(r._7),v.KVO(g.Qq))},l.\u0275prov=v.jDH({token:l,factory:l.\u0275fac,providedIn:"root"}),a})()},4970:(A,D,u)=>{u.d(D,{s:()=>O});var m=u(467),r=u(4262);class v{static toArtilleryData(y){return function n(p,y){return s(p,y,l)}(JSON.parse(y),f("ArtilleryData"))}static artilleryDataToJson(y){return JSON.stringify(function e(p,y){return s(p,y,a)}(y,f("ArtilleryData")),null,2)}}function g(p,y,w,P=""){const L=d(p);throw Error(`Invalid value${w?` for key "${w}"`:""}${P?` on ${P}`:""}. Expected ${L} but got ${JSON.stringify(y)}`)}function d(p){return Array.isArray(p)?2===p.length&&void 0===p[0]?`an optional ${d(p[1])}`:`one of [${p.map(y=>d(y)).join(", ")}]`:"object"==typeof p&&void 0!==p.literal?p.literal:typeof p}function l(p){if(void 0===p.jsonToJS){const y={};p.props.forEach(w=>y[w.json]={key:w.js,typ:w.typ}),p.jsonToJS=y}return p.jsonToJS}function a(p){if(void 0===p.jsToJSON){const y={};p.props.forEach(w=>y[w.js]={key:w.json,typ:w.typ}),p.jsToJSON=y}return p.jsToJSON}function s(p,y,w,P="",L=""){if("any"===y)return p;if(null===y)return null===p?p:g(y,p,P,L);if(!1===y)return g(y,p,P,L);let K;for(;"object"==typeof y&&void 0!==y.ref;)K=y.ref,y=h[y.ref];return Array.isArray(y)?function S(T,j){return-1!==T.indexOf(j)?j:g(T.map(C=>t(C)),j,P,L)}(y,p):"object"==typeof y?y.hasOwnProperty("unionMembers")?function I(T,j){const C=T.length;for(let H=0;Hs(C,T,w)):g(t("array"),j,P,L)}(y.arrayItems,p):y.hasOwnProperty("props")?function R(T,j,C){if(null===C||"object"!=typeof C||Array.isArray(C))return g(t(K||"object"),C,P,L);const H={};return Object.getOwnPropertyNames(T).forEach(B=>{const N=T[B],W=Object.prototype.hasOwnProperty.call(C,B)?C[B]:void 0;H[N.key]=void 0!==W?s(W,N.typ,w,B,K):void 0}),Object.getOwnPropertyNames(C).forEach(B=>{Object.prototype.hasOwnProperty.call(T,B)||(H[B]=s(C[B],j,w,B,K))}),H}(w(y),y.additional,p):g(y,p,P,L):y===Date&&"number"!=typeof p?function U(T){if(null===T)return null;const j=new Date(T);return isNaN(j.valueOf())?g(t("Date"),T,P,L):j}(p):function b(T,j){return typeof T==typeof j?j:g(T,j,P,L)}(y,p)}function t(p){return{literal:p}}function _(p,y){return{props:p,additional:y}}function c(p){return{props:[],additional:p}}function f(p){return{ref:p}}const h={ArtilleryData:_([{json:"aggregate",js:"aggregate",typ:f("Aggregate")},{json:"intermediate",js:"intermediate",typ:function o(p){return{arrayItems:p}}(f("Intermediate"))},{json:"date",js:"date",typ:""}],!1),Aggregate:_([{json:"counters",js:"counters",typ:c(0)},{json:"rates",js:"rates",typ:f("Rates")},{json:"firstCounterAt",js:"firstCounterAt",typ:0},{json:"firstHistogramAt",js:"firstHistogramAt",typ:0},{json:"lastCounterAt",js:"lastCounterAt",typ:0},{json:"lastHistogramAt",js:"lastHistogramAt",typ:0},{json:"firstMetricAt",js:"firstMetricAt",typ:0},{json:"lastMetricAt",js:"lastMetricAt",typ:0},{json:"period",js:"period",typ:0},{json:"summaries",js:"summaries",typ:f("Histograms")},{json:"histograms",js:"histograms",typ:f("Histograms")}],!1),Histograms:_([{json:"http.response_time",js:"http.response_time",typ:c(3.14)},{json:"plugins.metrics-by-endpoint.response_time./",js:"plugins.metrics-by-endpoint.response_time./",typ:c(3.14)},{json:"vusers.session_length",js:"vusers.session_length",typ:function i(...p){return{unionMembers:p}}(void 0,c(3.14))}],!1),Rates:_([{json:"http.request_rate",js:"http.request_rate",typ:0}],!1),Intermediate:_([{json:"counters",js:"counters",typ:c(0)},{json:"rates",js:"rates",typ:f("Rates")},{json:"http.request_rate",js:"http.request_rate",typ:null},{json:"firstCounterAt",js:"firstCounterAt",typ:0},{json:"firstHistogramAt",js:"firstHistogramAt",typ:0},{json:"lastCounterAt",js:"lastCounterAt",typ:0},{json:"lastHistogramAt",js:"lastHistogramAt",typ:0},{json:"firstMetricAt",js:"firstMetricAt",typ:0},{json:"lastMetricAt",js:"lastMetricAt",typ:0},{json:"period",js:"period",typ:""},{json:"summaries",js:"summaries",typ:f("Histograms")},{json:"histograms",js:"histograms",typ:f("Histograms")}],!1)};var E=u(4438),M=u(1626);let O=(()=>{var p;class y{constructor(P,L){this.firestore=P,this.http=L,this.url="https://devprobeapi.onrender.com/create_load_test"}getLoadTestHistory(P,L,b){var I=this;return(0,m.A)(function*(){const S=(0,r.H9)(I.firestore,"teams",P,"products",L,"load_test",b),x=yield(0,r.x7)(S);if(x.exists()){let U=x.data();console.log(U);let R=Object.keys(U);console.log(R);for(let K of R)U[K]=v.toArtilleryData(U[K]);return U}return{}})()}sendLoadTest(P,L,b,I){var S=this;return(0,m.A)(function*(){try{const x={team:P,product:L,service:b,target:`https://${I}`};return yield S.http.post(S.url,x).toPromise()}catch{return{}}})()}getLoadTestHistoryByDate(P,L,b,I){var S=this;return(0,m.A)(function*(){const x=(0,r.H9)(S.firestore,"teams",P,"products",L,"load_test",b),U=yield(0,r.x7)(x);if(U.exists()){let R=U.data();console.log(R);let K=Object.keys(R);console.log(K);for(let T of K)R[T]=v.toArtilleryData(R[T]),R[T].date.split("-")[0]+"-"+R[T].date.split("-")[1]+"-"+R[T].date.split("-")[2]!==I&&delete R[T];return console.log("Filtered by Date: ",R),R}return{}})()}}return(p=y).\u0275fac=function(P){return new(P||p)(E.KVO(r._7),E.KVO(M.Qq))},p.\u0275prov=E.jDH({token:p,factory:p.\u0275fac,providedIn:"root"}),y})()},3661:(A,D,u)=>{u.d(D,{e:()=>d});var m=u(467),r=u(4438),v=u(4262),g=u(1626);let d=(()=>{var l;class a{constructor(n,e){this.firestore=n,this.http=e,this.ipApiURL="https://cors-ea3m.onrender.com/http://ip-api.com/json/"}getLocationDestSrc(n){var e=this;return(0,m.A)(function*(){var t,o,i,_,c,f,h,E;if(!n)return n;const M=e.http.get(e.ipApiURL+n.dst_addr).toPromise(),O=e.http.get(e.ipApiURL+n.src_addr).toPromise(),p=yield M,y=yield O;return n.dst_city=null!==(t=p.city)&&void 0!==t?t:"No city found",n.dst_country=null!==(o=p.country)&&void 0!==o?o:"No country found",n.dst_latitude=null!==(i=p.lat)&&void 0!==i?i:0,n.dst_longitude=null!==(_=p.lon)&&void 0!==_?_:0,n.src_city=null!==(c=y.city)&&void 0!==c?c:"No city found",n.src_country=null!==(f=y.country)&&void 0!==f?f:"No country found",n.src_latitude=null!==(h=y.lat)&&void 0!==h?h:0,n.src_longitude=null!==(E=y.lon)&&void 0!==E?E:0,n})()}getLocationFrom(n){var e=this;return(0,m.A)(function*(){if(!n)return n;let t=n.result;for(let f=0;f{u.d(D,{N:()=>d});var m=u(467),r=u(4262),v=u(4438),g=u(1626);let d=(()=>{var l;class a{constructor(n,e){this.firestore=n,this.http=e,this.ipApiURL="https://cors-ea3m.onrender.com/http://ip-api.com/json/"}getLocation(n){var e=this;return(0,m.A)(function*(){console.log(n);const o=yield e.http.get(e.ipApiURL+n[0].dst_addr).toPromise();for(let c=0;ce.http.get(e.ipApiURL+c.from).toPromise());return(yield Promise.all(i)).forEach((c,f)=>{n[f].fromLatitude=c.lat,n[f].fromLongitude=c.lon,n[f].cityFrom=c.city,n[f].countryFrom=c.country}),console.log(n),n})()}saveLocationResults(n,e,t,o){var i=this;return(0,m.A)(function*(){try{console.log(o,"ripeData");const _=(0,r.rJ)(i.firestore,"teams",n,"products",e,"ripe"),c=(0,r.H9)(_,t),f=o.map(h=>({from:h.from,dst_addr:h.dst_addr,latency:h.latency,cityFrom:h.cityFrom,countryFrom:h.countryFrom,cityTo:h.cityTo,countryTo:h.countryTo,fromLatitude:h.fromLatitude,fromLongitude:h.fromLongitude,toLatitude:h.toLatitude,toLongitude:h.toLongitude,id:h.id}));return yield(0,r.BN)(c,{data:f}),console.log("Data saved",{data:f}),!0}catch(_){return console.log(_),!1}})()}}return(l=a).\u0275fac=function(n){return new(n||l)(v.KVO(r._7),v.KVO(g.Qq))},l.\u0275prov=v.jDH({token:l,factory:l.\u0275fac,providedIn:"root"}),a})()},6241:(A,D,u)=>{u.d(D,{b:()=>g});var m=u(467),r=u(4262),v=u(4438);let g=(()=>{var d;class l{constructor(s){this.firestore=s}addProduct(s,n){var e=this;return(0,m.A)(function*(){try{console.log(s);const t=(0,r.H9)(e.firestore,"teams",n,"products",s.productObjective);return yield(0,r.BN)(t,s),!0}catch(t){return console.log(t),!1}})()}getProducts(s){var n=this;return(0,m.A)(function*(){try{const e=(0,r.rJ)(n.firestore,"teams",s,"products");return(yield(0,r.GG)(e)).docs.map(o=>o.data())}catch(e){return console.log(e),[]}})()}removeProduct(s,n){var e=this;return(0,m.A)(function*(){try{const t=(0,r.H9)(e.firestore,"teams",s,"products",n);return yield(0,r.kd)(t),!0}catch(t){return console.log(t),!1}})()}}return(d=l).\u0275fac=function(s){return new(s||d)(v.KVO(r._7))},d.\u0275prov=v.jDH({token:d,factory:d.\u0275fac,providedIn:"root"}),l})()},2588:(A,D,u)=>{u.d(D,{N:()=>d});var m=u(467),r=u(4262),v=u(4438),g=u(1626);let d=(()=>{var l;class a{constructor(n,e){this.http=n,this.firestore=e,this.measurementsUrl="https://cors-ea3m.onrender.com/https://atlas.ripe.net/api/v2/measurements/",this.measurementID=""}sendTraceRequest(n,e,t,o){var i=this;return(0,m.A)(function*(){console.log("Sending trace request");try{let _={definitions:[{target:n,description:e,type:t,af:4,is_oneoff:!0,protocol:"TCP"}],probes:[]};console.log(o);let c=o.split(",").length-1,f=(o=o.slice(0,-1)).split(","),h=[];for(let O=0;O({id:i.measurementID,dst_addr:h.dst_addr,dst_city:h.dst_city,dst_country:h.dst_country,dst_latitude:h.dst_latitude,dst_longitude:h.dst_longitude,src_addr:h.src_addr,src_city:h.src_city,src_country:h.src_country,src_latitude:h.src_latitude,src_longitude:h.src_longitude,result:h.result}));return yield(0,r.BN)(c,{data:f}),!0}catch(_){return console.log(_),!1}})()}getHistoryResults(n,e){var t=this;return(0,m.A)(function*(){const i=(0,r.rJ)(t.firestore,"teams/"+n+"/products/"+e+"/ripe_trace"),_=yield(0,r.GG)(i);let c=[];return _.docs.forEach(f=>{c.push({id:f.id,data:f.data()})}),console.log(c),c})()}getAllResultsByDescription(n,e,t){var o=this;return(0,m.A)(function*(){try{let i="teams/"+n+"/products/"+e+"/ripe_trace";console.log(i);let _=(0,r.H9)(o.firestore,i,t);return(yield(0,r.x7)(_)).data()}catch(i){return console.log(i),[]}})()}}return(l=a).\u0275fac=function(n){return new(n||l)(v.KVO(g.Qq),v.KVO(r._7))},l.\u0275prov=v.jDH({token:l,factory:l.\u0275fac,providedIn:"root"}),a})()},9640:(A,D,u)=>{u.d(D,{Q:()=>l});var m=u(467),r=u(1985),v=u(4262),g=u(4438),d=u(1626);let l=(()=>{var a;class s{constructor(e,t){this.http=e,this.firestore=t,this.measurementsUrl="https://cors-ea3m.onrender.com/https://atlas.ripe.net/api/v2/measurements/",this.measurementID=""}sendMeasurementRequest(e,t,o,i){var _=this;return(0,m.A)(function*(){let c=i.split(",").length-1;i=i.slice(0,-1);try{let f={definitions:[{target:e,description:"ping",type:"ping",af:4,is_oneoff:!0}],probes:[{requested:c,type:"probes",value:i}]},h={Authorization:"Key 92530695-134f-4cbc-b7c3-ec130f3719b0"};console.log(f);let E=yield _.http.post(_.measurementsUrl,f,{headers:h}).toPromise();return console.log(E),_.measurementID=E.measurements[0],_.measurementID}catch(f){return console.log(f),!1}})()}getMeasurementResults(e){var t=this;return(0,m.A)(function*(){e&&(t.measurementID=e);try{let o={Authorization:"Key 92530695-134f-4cbc-b7c3-ec130f3719b0"};return""===t.measurementID?(console.log("No measurement ID"),!1):t.http.get(t.measurementsUrl+t.measurementID+"/results/",{headers:o})}catch(o){return console.log(o),new r.c}})()}saveMeasurementResults(e,t,o,i){var _=this;return(0,m.A)(function*(){try{const c=(0,v.rJ)(_.firestore,"teams",e,"products",t,"ripe"),f=(0,v.H9)(c,o),h=i.map((E,M)=>({id:_.measurementID,from:E.from,dst_addr:E.dst_addr,latency:E.latency}));return yield(0,v.BN)(f,{data:h}),!0}catch(c){return console.log(c),!1}})()}getAllResultsByDescription(e,t,o){var i=this;return(0,m.A)(function*(){try{let _="teams/"+e+"/products/"+t+"/ripe";console.log(_);let c=(0,v.H9)(i.firestore,_,o);return(yield(0,v.x7)(c)).data()}catch(_){return console.log(_),[]}})()}getHistoryResults(e,t){var o=this;return(0,m.A)(function*(){const _=(0,v.rJ)(o.firestore,"teams/"+e+"/products/"+t+"/ripe"),c=yield(0,v.GG)(_);let f=[];return c.docs.forEach(h=>{f.push({id:h.id,data:h.data()})}),console.log(f),f})()}deleteHistory(e,t,o){var i=this;return(0,m.A)(function*(){const c=(0,v.H9)(i.firestore,"teams/"+e+"/products/"+t+"/ripe",o);try{return yield(0,v.kd)(c),!0}catch(f){return console.log(f),!1}})()}}return(a=s).\u0275fac=function(e){return new(e||a)(g.KVO(d.Qq),g.KVO(v._7))},a.\u0275prov=g.jDH({token:a,factory:a.\u0275fac,providedIn:"root"}),s})()},9536:(A,D,u)=>{u.d(D,{Q:()=>g});var m=u(467),r=u(4262),v=u(4438);let g=(()=>{var d;class l{constructor(s){this.firestore=s}addSystemTest(s,n,e,t){var o=this;return(0,m.A)(function*(){const i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","integration_tests"),_=yield(0,r.x7)(i);if(_.exists()){const c=_.data();if(!c[e])return c[e]=[t],yield(0,r.BN)(i,c),void console.log("Document created with ID: ",i.id);c[e].push(t),yield(0,r.BN)(i,c),console.log("Document updated with ID: ",_.id)}else console.log("No such document!"),yield(0,r.BN)(i,{[e]:[t]}),console.log("Document created with ID: ",i.id)})()}getIntegrationTests(s,n,e){var t=this;return(0,m.A)(function*(){const o=(0,r.H9)(t.firestore,"teams",s,"products",n,"software_testing","integration_tests"),i=yield(0,r.x7)(o);return i.exists()?i.data()[e]:[]})()}updateIntegrationTestState(s,n,e,t,o){var i=this;return(0,m.A)(function*(){const _=(0,r.H9)(i.firestore,"teams",s,"products",n,"software_testing","integration_tests"),c=yield(0,r.x7)(_);if(c.exists()){const f=c.data();for(let h=0;h{u.d(D,{h:()=>g});var m=u(467),r=u(4262),v=u(4438);let g=(()=>{var d;class l{constructor(s){this.firestore=s}addSystemTest(s,n,e,t){var o=this;return(0,m.A)(function*(){const i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","system_tests"),_=yield(0,r.x7)(i);if(_.exists()){const c=_.data();if(!c[e])return c[e]=[t],yield(0,r.BN)(i,c),void console.log("Document created with ID: ",i.id);c[e].push(t),yield(0,r.BN)(i,c),console.log("Document updated with ID: ",_.id)}else console.log("No such document!"),yield(0,r.BN)(i,{[e]:[t]}),console.log("Document created with ID: ",i.id)})()}getSystemTest(s,n,e){var t=this;return(0,m.A)(function*(){const o=(0,r.H9)(t.firestore,"teams",s,"products",n,"software_testing","system_tests"),i=yield(0,r.x7)(o);return i.exists()?i.data()[e]:[]})()}saveSystemTest(s,n,e,t){var o=this;return(0,m.A)(function*(){const i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),_=new Date,c=`${_.getFullYear()}-${_.getMonth()+1}-${_.getDate()} ${_.getHours()}:${_.getMinutes()}:${_.getSeconds()}`;console.log(c);const f=yield(0,r.x7)(i);if(f.exists()){let h=f.data();h[c]={systemTest:t},h[c].productStep=e,yield(0,r.BN)(i,h)}else yield(0,r.BN)(i,{[c]:{systemTest:t,productStep:e}})})()}getSystemTestHistoryByStep(s,n,e){var t=this;return(0,m.A)(function*(){const o=(0,r.H9)(t.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),i=yield(0,r.x7)(o);if(i.exists()){const _=i.data();return Object.keys(_).filter(f=>_[f].productStep===e).map(f=>_[f].systemTest)}return[]})()}getSystemTestHistoryByTitle(s,n,e,t){var o=this;return(0,m.A)(function*(){const i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),_=yield(0,r.x7)(i);let c=[];if(_.exists()){const f=_.data();for(let h in f)f[h].systemTest.title===t&&f[h].productStep===e&&c.push({timestamp:h,systemTest:f[h].systemTest})}return c})()}getSystemTestByTimestamp(s,n,e,t,o){var i=this;return(0,m.A)(function*(){const _=(0,r.H9)(i.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),c=yield(0,r.x7)(_);if(c.exists()){const f=c.data();for(let h in f)if(f[h].systemTest.title===t&&h===o&&f[h].productStep===e)return f[h].systemTest}return{}})()}deleteSystemTestHistoryByKey(s,n,e,t,o){var i=this;return(0,m.A)(function*(){const _=(0,r.H9)(i.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),c=yield(0,r.x7)(_);if(c.exists()){const f=c.data();for(let h in f)f[h].systemTest.title===t&&h===o&&f[h].productStep===e&&delete f[h];yield(0,r.BN)(_,f)}})()}getSystemTestHistory(s,n){var e=this;return(0,m.A)(function*(){const t=(0,r.H9)(e.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),o=yield(0,r.x7)(t);return o.exists()?o.data():{}})()}deleteSystemTest(s,n,e,t){var o=this;return(0,m.A)(function*(){let i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","system_tests"),_=yield(0,r.x7)(i);if(_.exists()){let c=_.data();c[e]=c[e].filter(f=>f.title!==t.title),yield(0,r.BN)(i,c)}if(i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),_=yield(0,r.x7)(i),_.exists()){let c=_.data();for(let f in c)console.log(c[f].systemTest.title),c[f].systemTest.title===t.title&&delete c[f];yield(0,r.BN)(i,c)}})()}}return(d=l).\u0275fac=function(s){return new(s||d)(v.KVO(r._7))},d.\u0275prov=v.jDH({token:d,factory:d.\u0275fac,providedIn:"root"}),l})()},1854:(A,D,u)=>{u.d(D,{I:()=>g});var m=u(467),r=u(4262),v=u(4438);let g=(()=>{var d;class l{constructor(s){this.firestore=s}addUnitTest(s,n,e,t){var o=this;return(0,m.A)(function*(){const i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","unit_tests"),_=yield(0,r.x7)(i);if(_.exists()){let c=_.data();if(!c[e])return c[e]=[t],yield(0,r.BN)(i,c),void console.log("Document created with ID: ",i.id);for(let f=0;f{u.d(D,{c:()=>g});var m=u(9672),r=u(1086),v=u(8607);const g=(d,l)=>{let a,s;const n=(o,i,_)=>{if(typeof document>"u")return;const c=document.elementFromPoint(o,i);c&&l(c)&&!c.disabled?c!==a&&(t(),e(c,_)):t()},e=(o,i)=>{a=o,s||(s=a);const _=a;(0,m.w)(()=>_.classList.add("ion-activated")),i()},t=(o=!1)=>{if(!a)return;const i=a;(0,m.w)(()=>i.classList.remove("ion-activated")),o&&s!==a&&a.click(),a=void 0};return(0,v.createGesture)({el:d,gestureName:"buttonActiveDrag",threshold:0,onStart:o=>n(o.currentX,o.currentY,r.a),onMove:o=>n(o.currentX,o.currentY,r.b),onEnd:()=>{t(!0),(0,r.h)(),s=void 0}})}},8438:(A,D,u)=>{u.d(D,{g:()=>r});var m=u(8476);const r=()=>{if(void 0!==m.w)return m.w.Capacitor}},5572:(A,D,u)=>{u.d(D,{c:()=>m,i:()=>r});const m=(v,g,d)=>"function"==typeof d?d(v,g):"string"==typeof d?v[d]===g[d]:Array.isArray(g)?g.includes(v):v===g,r=(v,g,d)=>void 0!==v&&(Array.isArray(v)?v.some(l=>m(l,g,d)):m(v,g,d))},3351:(A,D,u)=>{u.d(D,{g:()=>m});const m=(l,a,s,n,e)=>v(l[1],a[1],s[1],n[1],e).map(t=>r(l[0],a[0],s[0],n[0],t)),r=(l,a,s,n,e)=>e*(3*a*Math.pow(e-1,2)+e*(-3*s*e+3*s+n*e))-l*Math.pow(e-1,3),v=(l,a,s,n,e)=>d((n-=e)-3*(s-=e)+3*(a-=e)-(l-=e),3*s-6*a+3*l,3*a-3*l,l).filter(o=>o>=0&&o<=1),d=(l,a,s,n)=>{if(0===l)return((l,a,s)=>{const n=a*a-4*l*s;return n<0?[]:[(-a+Math.sqrt(n))/(2*l),(-a-Math.sqrt(n))/(2*l)]})(a,s,n);const e=(3*(s/=l)-(a/=l)*a)/3,t=(2*a*a*a-9*a*s+27*(n/=l))/27;if(0===e)return[Math.pow(-t,1/3)];if(0===t)return[Math.sqrt(-e),-Math.sqrt(-e)];const o=Math.pow(t/2,2)+Math.pow(e/3,3);if(0===o)return[Math.pow(t/2,.5)-a/3];if(o>0)return[Math.pow(-t/2+Math.sqrt(o),1/3)-Math.pow(t/2+Math.sqrt(o),1/3)-a/3];const i=Math.sqrt(Math.pow(-e/3,3)),_=Math.acos(-t/(2*Math.sqrt(Math.pow(-e/3,3)))),c=2*Math.pow(i,1/3);return[c*Math.cos(_/3)-a/3,c*Math.cos((_+2*Math.PI)/3)-a/3,c*Math.cos((_+4*Math.PI)/3)-a/3]}},5083:(A,D,u)=>{u.d(D,{i:()=>m});const m=r=>r&&""!==r.dir?"rtl"===r.dir.toLowerCase():"rtl"===(null==document?void 0:document.dir.toLowerCase())},3126:(A,D,u)=>{u.r(D),u.d(D,{startFocusVisible:()=>g});const m="ion-focused",v=["Tab","ArrowDown","Space","Escape"," ","Shift","Enter","ArrowLeft","ArrowRight","ArrowUp","Home","End"],g=d=>{let l=[],a=!0;const s=d?d.shadowRoot:document,n=d||document.body,e=f=>{l.forEach(h=>h.classList.remove(m)),f.forEach(h=>h.classList.add(m)),l=f},t=()=>{a=!1,e([])},o=f=>{a=v.includes(f.key),a||e([])},i=f=>{if(a&&void 0!==f.composedPath){const h=f.composedPath().filter(E=>!!E.classList&&E.classList.contains("ion-focusable"));e(h)}},_=()=>{s.activeElement===n&&e([])};return s.addEventListener("keydown",o),s.addEventListener("focusin",i),s.addEventListener("focusout",_),s.addEventListener("touchstart",t,{passive:!0}),s.addEventListener("mousedown",t),{destroy:()=>{s.removeEventListener("keydown",o),s.removeEventListener("focusin",i),s.removeEventListener("focusout",_),s.removeEventListener("touchstart",t),s.removeEventListener("mousedown",t)},setFocus:e}}},1086:(A,D,u)=>{u.d(D,{I:()=>r,a:()=>a,b:()=>s,c:()=>l,d:()=>e,h:()=>n});var m=u(8438),r=function(t){return t.Heavy="HEAVY",t.Medium="MEDIUM",t.Light="LIGHT",t}(r||{});const g={getEngine(){const t=(0,m.g)();if(null!=t&&t.isPluginAvailable("Haptics"))return t.Plugins.Haptics},available(){if(!this.getEngine())return!1;const o=(0,m.g)();return"web"!==(null==o?void 0:o.getPlatform())||typeof navigator<"u"&&void 0!==navigator.vibrate},impact(t){const o=this.getEngine();o&&o.impact({style:t.style})},notification(t){const o=this.getEngine();o&&o.notification({type:t.type})},selection(){this.impact({style:r.Light})},selectionStart(){const t=this.getEngine();t&&t.selectionStart()},selectionChanged(){const t=this.getEngine();t&&t.selectionChanged()},selectionEnd(){const t=this.getEngine();t&&t.selectionEnd()}},d=()=>g.available(),l=()=>{d()&&g.selection()},a=()=>{d()&&g.selectionStart()},s=()=>{d()&&g.selectionChanged()},n=()=>{d()&&g.selectionEnd()},e=t=>{d()&&g.impact(t)}},909:(A,D,u)=>{u.d(D,{I:()=>l,a:()=>e,b:()=>d,c:()=>i,d:()=>c,f:()=>t,g:()=>n,i:()=>s,p:()=>_,r:()=>f,s:()=>o});var m=u(467),r=u(4920),v=u(4929);const d="ion-content",l=".ion-content-scroll-host",a=`${d}, ${l}`,s=h=>"ION-CONTENT"===h.tagName,n=function(){var h=(0,m.A)(function*(E){return s(E)?(yield new Promise(M=>(0,r.c)(E,M)),E.getScrollElement()):E});return function(M){return h.apply(this,arguments)}}(),e=h=>h.querySelector(l)||h.querySelector(a),t=h=>h.closest(a),o=(h,E)=>s(h)?h.scrollToTop(E):Promise.resolve(h.scrollTo({top:0,left:0,behavior:E>0?"smooth":"auto"})),i=(h,E,M,O)=>s(h)?h.scrollByPoint(E,M,O):Promise.resolve(h.scrollBy({top:M,left:E,behavior:O>0?"smooth":"auto"})),_=h=>(0,v.b)(h,d),c=h=>{if(s(h)){const M=h.scrollY;return h.scrollY=!1,M}return h.style.setProperty("overflow","hidden"),!0},f=(h,E)=>{s(h)?h.scrollY=E:h.style.removeProperty("overflow")}},3992:(A,D,u)=>{u.d(D,{a:()=>m,b:()=>i,c:()=>a,d:()=>_,e:()=>C,f:()=>l,g:()=>c,h:()=>v,i:()=>r,j:()=>y,k:()=>w,l:()=>s,m:()=>t,n:()=>f,o:()=>e,p:()=>d,q:()=>g,r:()=>p,s:()=>P,t:()=>o,u:()=>M,v:()=>O,w:()=>n,x:()=>h,y:()=>E});const m="data:image/svg+xml;utf8,",r="data:image/svg+xml;utf8,",v="data:image/svg+xml;utf8,",g="data:image/svg+xml;utf8,",d="data:image/svg+xml;utf8,",l="data:image/svg+xml;utf8,",a="data:image/svg+xml;utf8,",s="data:image/svg+xml;utf8,",n="data:image/svg+xml;utf8,",e="data:image/svg+xml;utf8,",t="data:image/svg+xml;utf8,",o="data:image/svg+xml;utf8,",i="data:image/svg+xml;utf8,",_="data:image/svg+xml;utf8,",c="data:image/svg+xml;utf8,",f="data:image/svg+xml;utf8,",h="data:image/svg+xml;utf8,",E="data:image/svg+xml;utf8,",M="data:image/svg+xml;utf8,",O="data:image/svg+xml;utf8,",p="data:image/svg+xml;utf8,",y="data:image/svg+xml;utf8,",w="data:image/svg+xml;utf8,",P="data:image/svg+xml;utf8,",C="data:image/svg+xml;utf8,"},243:(A,D,u)=>{u.d(D,{c:()=>g,g:()=>d});var m=u(8476),r=u(4920),v=u(4929);const g=(a,s,n)=>{let e,t;if(void 0!==m.w&&"MutationObserver"in m.w){const c=Array.isArray(s)?s:[s];e=new MutationObserver(f=>{for(const h of f)for(const E of h.addedNodes)if(E.nodeType===Node.ELEMENT_NODE&&c.includes(E.slot))return n(),void(0,r.r)(()=>o(E))}),e.observe(a,{childList:!0,subtree:!0})}const o=c=>{var f;t&&(t.disconnect(),t=void 0),t=new MutationObserver(h=>{n();for(const E of h)for(const M of E.removedNodes)M.nodeType===Node.ELEMENT_NODE&&M.slot===s&&_()}),t.observe(null!==(f=c.parentElement)&&void 0!==f?f:c,{subtree:!0,childList:!0})},_=()=>{t&&(t.disconnect(),t=void 0)};return{destroy:()=>{e&&(e.disconnect(),e=void 0),_()}}},d=(a,s,n)=>{const e=null==a?0:a.toString().length,t=l(e,s);if(void 0===n)return t;try{return n(e,s)}catch(o){return(0,v.a)("Exception in provided `counterFormatter`.",o),t}},l=(a,s)=>`${a} / ${s}`},1622:(A,D,u)=>{u.r(D),u.d(D,{KEYBOARD_DID_CLOSE:()=>d,KEYBOARD_DID_OPEN:()=>g,copyVisualViewport:()=>p,keyboardDidClose:()=>h,keyboardDidOpen:()=>c,keyboardDidResize:()=>f,resetKeyboardAssist:()=>e,setKeyboardClose:()=>_,setKeyboardOpen:()=>i,startKeyboardAssist:()=>t,trackViewportChanges:()=>O});var m=u(4379);u(8438),u(8476);const g="ionKeyboardDidShow",d="ionKeyboardDidHide";let a={},s={},n=!1;const e=()=>{a={},s={},n=!1},t=y=>{if(m.K.getEngine())o(y);else{if(!y.visualViewport)return;s=p(y.visualViewport),y.visualViewport.onresize=()=>{O(y),c()||f(y)?i(y):h(y)&&_(y)}}},o=y=>{y.addEventListener("keyboardDidShow",w=>i(y,w)),y.addEventListener("keyboardDidHide",()=>_(y))},i=(y,w)=>{E(y,w),n=!0},_=y=>{M(y),n=!1},c=()=>!n&&a.width===s.width&&(a.height-s.height)*s.scale>150,f=y=>n&&!h(y),h=y=>n&&s.height===y.innerHeight,E=(y,w)=>{const C=new CustomEvent(g,{detail:{keyboardHeight:w?w.keyboardHeight:y.innerHeight-s.height}});y.dispatchEvent(C)},M=y=>{const w=new CustomEvent(d);y.dispatchEvent(w)},O=y=>{a=Object.assign({},s),s=p(y.visualViewport)},p=y=>({width:Math.round(y.width),height:Math.round(y.height),offsetTop:y.offsetTop,offsetLeft:y.offsetLeft,pageTop:y.pageTop,pageLeft:y.pageLeft,scale:y.scale})},4379:(A,D,u)=>{u.d(D,{K:()=>g,a:()=>v});var m=u(8438),r=function(d){return d.Unimplemented="UNIMPLEMENTED",d.Unavailable="UNAVAILABLE",d}(r||{}),v=function(d){return d.Body="body",d.Ionic="ionic",d.Native="native",d.None="none",d}(v||{});const g={getEngine(){const d=(0,m.g)();if(null!=d&&d.isPluginAvailable("Keyboard"))return d.Plugins.Keyboard},getResizeMode(){const d=this.getEngine();return null!=d&&d.getResizeMode?d.getResizeMode().catch(l=>{if(l.code!==r.Unimplemented)throw l}):Promise.resolve(void 0)}}},4731:(A,D,u)=>{u.d(D,{c:()=>l});var m=u(467),r=u(8476),v=u(4379);const g=a=>{if(void 0===r.d||a===v.a.None||void 0===a)return null;const s=r.d.querySelector("ion-app");return null!=s?s:r.d.body},d=a=>{const s=g(a);return null===s?0:s.clientHeight},l=function(){var a=(0,m.A)(function*(s){let n,e,t,o;const i=function(){var E=(0,m.A)(function*(){const M=yield v.K.getResizeMode(),O=void 0===M?void 0:M.mode;n=()=>{void 0===o&&(o=d(O)),t=!0,_(t,O)},e=()=>{t=!1,_(t,O)},null==r.w||r.w.addEventListener("keyboardWillShow",n),null==r.w||r.w.addEventListener("keyboardWillHide",e)});return function(){return E.apply(this,arguments)}}(),_=(E,M)=>{s&&s(E,c(M))},c=E=>{if(0===o||o===d(E))return;const M=g(E);return null!==M?new Promise(O=>{const y=new ResizeObserver(()=>{M.clientHeight===o&&(y.disconnect(),O())});y.observe(M)}):void 0};return yield i(),{init:i,destroy:()=>{null==r.w||r.w.removeEventListener("keyboardWillShow",n),null==r.w||r.w.removeEventListener("keyboardWillHide",e),n=e=void 0},isKeyboardVisible:()=>t}});return function(n){return a.apply(this,arguments)}}()},7838:(A,D,u)=>{u.d(D,{c:()=>r});var m=u(467);const r=()=>{let v;return{lock:function(){var d=(0,m.A)(function*(){const l=v;let a;return v=new Promise(s=>a=s),void 0!==l&&(yield l),a});return function(){return d.apply(this,arguments)}}()}}},9001:(A,D,u)=>{u.d(D,{c:()=>v});var m=u(8476),r=u(4920);const v=(g,d,l)=>{let a;const s=()=>!(void 0===d()||void 0!==g.label||null===l()),e=()=>{const o=d();if(void 0===o)return;if(!s())return void o.style.removeProperty("width");const i=l().scrollWidth;if(0===i&&null===o.offsetParent&&void 0!==m.w&&"IntersectionObserver"in m.w){if(void 0!==a)return;const _=a=new IntersectionObserver(c=>{1===c[0].intersectionRatio&&(e(),_.disconnect(),a=void 0)},{threshold:.01,root:g});_.observe(o)}else o.style.setProperty("width",.75*i+"px")};return{calculateNotchWidth:()=>{s()&&(0,r.r)(()=>{e()})},destroy:()=>{a&&(a.disconnect(),a=void 0)}}}},7895:(A,D,u)=>{u.d(D,{S:()=>r});const r={bubbles:{dur:1e3,circles:9,fn:(v,g,d)=>{const l=v*g/d-v+"ms",a=2*Math.PI*g/d;return{r:5,style:{top:32*Math.sin(a)+"%",left:32*Math.cos(a)+"%","animation-delay":l}}}},circles:{dur:1e3,circles:8,fn:(v,g,d)=>{const l=g/d,a=v*l-v+"ms",s=2*Math.PI*l;return{r:5,style:{top:32*Math.sin(s)+"%",left:32*Math.cos(s)+"%","animation-delay":a}}}},circular:{dur:1400,elmDuration:!0,circles:1,fn:()=>({r:20,cx:48,cy:48,fill:"none",viewBox:"24 24 48 48",transform:"translate(0,0)",style:{}})},crescent:{dur:750,circles:1,fn:()=>({r:26,style:{}})},dots:{dur:750,circles:3,fn:(v,g)=>({r:6,style:{left:32-32*g+"%","animation-delay":-110*g+"ms"}})},lines:{dur:1e3,lines:8,fn:(v,g,d)=>({y1:14,y2:26,style:{transform:`rotate(${360/d*g+(g({y1:12,y2:20,style:{transform:`rotate(${360/d*g+(g({y1:17,y2:29,style:{transform:`rotate(${30*g+(g<6?180:-180)}deg)`,"animation-delay":v*g/d-v+"ms"}})},"lines-sharp-small":{dur:1e3,lines:12,fn:(v,g,d)=>({y1:12,y2:20,style:{transform:`rotate(${30*g+(g<6?180:-180)}deg)`,"animation-delay":v*g/d-v+"ms"}})}}},7166:(A,D,u)=>{u.r(D),u.d(D,{createSwipeBackGesture:()=>d});var m=u(4920),r=u(5083),v=u(8607);u(1970);const d=(l,a,s,n,e)=>{const t=l.ownerDocument.defaultView;let o=(0,r.i)(l);const _=M=>o?-M.deltaX:M.deltaX;return(0,v.createGesture)({el:l,gestureName:"goback-swipe",gesturePriority:101,threshold:10,canStart:M=>(o=(0,r.i)(l),(M=>{const{startX:p}=M;return o?p>=t.innerWidth-50:p<=50})(M)&&a()),onStart:s,onMove:M=>{const p=_(M)/t.innerWidth;n(p)},onEnd:M=>{const O=_(M),p=t.innerWidth,y=O/p,w=(M=>o?-M.velocityX:M.velocityX)(M),C=w>=0&&(w>.2||O>p/2),I=(C?1-y:y)*p;let S=0;if(I>5){const x=I/Math.abs(w);S=Math.min(x,540)}e(C,y<=0?.01:(0,m.j)(0,y,.9999),S)}})}},2935:(A,D,u)=>{u.d(D,{w:()=>m});const m=(g,d,l)=>{if(typeof MutationObserver>"u")return;const a=new MutationObserver(s=>{l(r(s,d))});return a.observe(g,{childList:!0,subtree:!0}),a},r=(g,d)=>{let l;return g.forEach(a=>{for(let s=0;s{if(1!==g.nodeType)return;const l=g;return(l.tagName===d.toUpperCase()?[l]:Array.from(l.querySelectorAll(d))).find(s=>s.value===l.value)}},385:(A,D,u)=>{u.d(D,{l:()=>v});var m=u(4438),r=u(7863);let v=(()=>{var g;class d{constructor(){this.title="Header Title"}ngOnInit(){}}return(g=d).\u0275fac=function(a){return new(a||g)},g.\u0275cmp=m.VBU({type:g,selectors:[["app-header"]],inputs:{title:"title"},decls:5,vars:2,consts:[[3,"translucent"],["slot","start","menu","menu-id"]],template:function(a,s){1&a&&(m.j41(0,"ion-header",0)(1,"ion-toolbar"),m.nrm(2,"ion-menu-button",1),m.j41(3,"ion-title"),m.EFF(4),m.k0s()()()),2&a&&(m.Y8G("translucent",!0),m.R7$(4),m.JRh(s.title))},dependencies:[r.eU,r.MC,r.BC,r.ai]}),d})()},8453:(A,D,u)=>{u.d(D,{W:()=>v});var m=u(4438),r=u(7863);let v=(()=>{var g;class d{constructor(){this.title="Title"}ngOnInit(){}}return(g=d).\u0275fac=function(a){return new(a||g)},g.\u0275cmp=m.VBU({type:g,selectors:[["app-title"]],inputs:{title:"title"},decls:4,vars:1,consts:[[1,"lg:m-10"],["size","12","size-md","6","size-lg","6"],[1,"text-4xl","lg:text-6xl","font-bold"]],template:function(a,s){1&a&&(m.j41(0,"ion-row",0)(1,"ion-col",1)(2,"h1",2),m.EFF(3),m.k0s()()()),2&a&&(m.R7$(3),m.JRh(s.title))},dependencies:[r.hU,r.ln]}),d})()},4796:(A,D,u)=>{u.d(D,{u:()=>d});var m=u(467),r=u(8737),v=u(4262),g=u(4438);let d=(()=>{var l;class a{constructor(n,e){this.auth=n,this.firestore=e}registerUser(n){var e=this;return(0,m.A)(function*(){try{const t=yield(0,r.eJ)(e.auth,n.email,n.password);return t.user?(yield(0,v.BN)((0,v.H9)(e.firestore,"users",t.user.uid),{email:n.email,name:n.name,orgName:n.orgName,uid:t.user.uid}),yield(0,v.BN)((0,v.H9)(e.firestore,"teams",`${n.orgName}`),{name:n.orgName,members:[t.user.uid]}),t):null}catch{return null}})()}loginUser(n){var e=this;return(0,m.A)(function*(){try{var t;const o=yield(0,r.x9)(e.auth,n.email,n.password);if(null!==(t=o.user)&&void 0!==t&&t.uid){const i=yield(0,v.x7)((0,v.H9)(e.firestore,"users",o.user.uid));if(i.exists())return localStorage.setItem("user",JSON.stringify(i.data())),o}}catch(o){console.error(o)}return null})()}logoutUser(){var n=this;return(0,m.A)(function*(){yield n.auth.signOut()})()}addMember(n){var e=this;return(0,m.A)(function*(){try{const t=yield(0,r.eJ)(e.auth,n.email,n.password);if(!t.user)return!1;const o={email:n.email,name:n.name,orgName:n.orgName,uid:t.user.uid};return yield(0,v.BN)((0,v.H9)(e.firestore,"users",t.user.uid),o),o}catch{return!1}})()}}return(l=a).\u0275fac=function(n){return new(n||l)(g.KVO(r.Nj),g.KVO(v._7))},l.\u0275prov=g.jDH({token:l,factory:l.\u0275fac,providedIn:"root"}),a})()},6560:(A,D,u)=>{u.d(D,{x:()=>d});var m=u(467),r=u(4262),v=u(4438),g=u(1626);let d=(()=>{var l;class a{constructor(n,e){this.firestore=n,this.http=e,this.url_cpu="https://devprobeapi.onrender.com/flame_graph_date",this.url_mem="https://devprobeapi.onrender.com/flame_graph_memory_date"}getProducts(n){var e=this;return(0,m.A)(function*(){try{const t=(0,r.rJ)(e.firestore,"teams",n,"products");return(yield(0,r.GG)(t)).docs.map(i=>i.data())}catch(t){return console.log(t),[]}})()}getDates(n,e,t){var o=this;return(0,m.A)(function*(){try{t||(t="cpu_usage");const i=(0,r.rJ)(o.firestore,"teams",n,"products",e,t);return(yield(0,r.GG)(i)).docs.map(c=>c.id)}catch(i){return console.log(i),[]}})()}getFlameGraphByDate(n,e,t,o){var i=this;return(0,m.A)(function*(){try{let _={team:n,product:e,date:t};return o?yield i.http.post(i.url_mem,_).toPromise():yield i.http.post(i.url_cpu,_).toPromise()}catch{return{}}})()}}return(l=a).\u0275fac=function(n){return new(n||l)(v.KVO(r._7),v.KVO(g.Qq))},l.\u0275prov=v.jDH({token:l,factory:l.\u0275fac,providedIn:"root"}),a})()},201:(A,D,u)=>{u.d(D,{p:()=>d});var m=u(467),r=u(4262),v=u(4438),g=u(1626);let d=(()=>{var l;class a{constructor(n,e){this.firestore=n,this.httpClient=e,this.url="https://devprobeapi.onrender.com/"}syncRepo(n,e,t,o,i){var _=this;return(0,m.A)(function*(){const c=(0,r.H9)(_.firestore,"teams",n),f=yield(0,r.x7)(c);if(f.exists()){const h=f.data();h.gitHub={key:e,repo:t,branch:o,owner:i},yield(0,r.BN)(c,h)}})()}getSyncRepo(n){var e=this;return(0,m.A)(function*(){const t=(0,r.H9)(e.firestore,"teams",n),o=yield(0,r.x7)(t);return o.exists()?o.data().gitHub:null})()}getFiles(n){var e=this;return(0,m.A)(function*(){const t=yield e.httpClient.post(e.url+"github_repo",{auth:n.key,repo:n.repo,branch:n.branch,owner:n.owner}).toPromise();if(console.log(t),t){let o=t.paths;return o=o.filter(i=>!i.includes(".git")),o=o.filter(i=>!i.includes("node_modules")),o=o.filter(i=>!i.includes(".idea")),o=o.filter(i=>i.includes(".")),o}return[]})()}getContentFromFilePath(n,e){var t=this;return(0,m.A)(function*(){const o=yield t.httpClient.post(t.url+"github_file",{auth:n.key,repo:n.repo,owner:n.owner,path:e}).toPromise();return console.log(o),o?o.content:""})()}}return(l=a).\u0275fac=function(n){return new(n||l)(v.KVO(r._7),v.KVO(g.Qq))},l.\u0275prov=v.jDH({token:l,factory:l.\u0275fac,providedIn:"root"}),a})()},4970:(A,D,u)=>{u.d(D,{s:()=>O});var m=u(467),r=u(4262);class v{static toArtilleryData(y){return function n(p,y){return s(p,y,l)}(JSON.parse(y),f("ArtilleryData"))}static artilleryDataToJson(y){return JSON.stringify(function e(p,y){return s(p,y,a)}(y,f("ArtilleryData")),null,2)}}function g(p,y,w,P=""){const C=d(p);throw Error(`Invalid value${w?` for key "${w}"`:""}${P?` on ${P}`:""}. Expected ${C} but got ${JSON.stringify(y)}`)}function d(p){return Array.isArray(p)?2===p.length&&void 0===p[0]?`an optional ${d(p[1])}`:`one of [${p.map(y=>d(y)).join(", ")}]`:"object"==typeof p&&void 0!==p.literal?p.literal:typeof p}function l(p){if(void 0===p.jsonToJS){const y={};p.props.forEach(w=>y[w.json]={key:w.js,typ:w.typ}),p.jsonToJS=y}return p.jsonToJS}function a(p){if(void 0===p.jsToJSON){const y={};p.props.forEach(w=>y[w.js]={key:w.json,typ:w.typ}),p.jsToJSON=y}return p.jsToJSON}function s(p,y,w,P="",C=""){if("any"===y)return p;if(null===y)return null===p?p:g(y,p,P,C);if(!1===y)return g(y,p,P,C);let K;for(;"object"==typeof y&&void 0!==y.ref;)K=y.ref,y=h[y.ref];return Array.isArray(y)?function S(T,L){return-1!==T.indexOf(L)?L:g(T.map(j=>t(j)),L,P,C)}(y,p):"object"==typeof y?y.hasOwnProperty("unionMembers")?function I(T,L){const j=T.length;for(let H=0;Hs(j,T,w)):g(t("array"),L,P,C)}(y.arrayItems,p):y.hasOwnProperty("props")?function R(T,L,j){if(null===j||"object"!=typeof j||Array.isArray(j))return g(t(K||"object"),j,P,C);const H={};return Object.getOwnPropertyNames(T).forEach(B=>{const N=T[B],W=Object.prototype.hasOwnProperty.call(j,B)?j[B]:void 0;H[N.key]=void 0!==W?s(W,N.typ,w,B,K):void 0}),Object.getOwnPropertyNames(j).forEach(B=>{Object.prototype.hasOwnProperty.call(T,B)||(H[B]=s(j[B],L,w,B,K))}),H}(w(y),y.additional,p):g(y,p,P,C):y===Date&&"number"!=typeof p?function U(T){if(null===T)return null;const L=new Date(T);return isNaN(L.valueOf())?g(t("Date"),T,P,C):L}(p):function b(T,L){return typeof T==typeof L?L:g(T,L,P,C)}(y,p)}function t(p){return{literal:p}}function _(p,y){return{props:p,additional:y}}function c(p){return{props:[],additional:p}}function f(p){return{ref:p}}const h={ArtilleryData:_([{json:"aggregate",js:"aggregate",typ:f("Aggregate")},{json:"intermediate",js:"intermediate",typ:function o(p){return{arrayItems:p}}(f("Intermediate"))},{json:"date",js:"date",typ:""}],!1),Aggregate:_([{json:"counters",js:"counters",typ:c(0)},{json:"rates",js:"rates",typ:f("Rates")},{json:"firstCounterAt",js:"firstCounterAt",typ:0},{json:"firstHistogramAt",js:"firstHistogramAt",typ:0},{json:"lastCounterAt",js:"lastCounterAt",typ:0},{json:"lastHistogramAt",js:"lastHistogramAt",typ:0},{json:"firstMetricAt",js:"firstMetricAt",typ:0},{json:"lastMetricAt",js:"lastMetricAt",typ:0},{json:"period",js:"period",typ:0},{json:"summaries",js:"summaries",typ:f("Histograms")},{json:"histograms",js:"histograms",typ:f("Histograms")}],!1),Histograms:_([{json:"http.response_time",js:"http.response_time",typ:c(3.14)},{json:"plugins.metrics-by-endpoint.response_time./",js:"plugins.metrics-by-endpoint.response_time./",typ:c(3.14)},{json:"vusers.session_length",js:"vusers.session_length",typ:function i(...p){return{unionMembers:p}}(void 0,c(3.14))}],!1),Rates:_([{json:"http.request_rate",js:"http.request_rate",typ:0}],!1),Intermediate:_([{json:"counters",js:"counters",typ:c(0)},{json:"rates",js:"rates",typ:f("Rates")},{json:"http.request_rate",js:"http.request_rate",typ:null},{json:"firstCounterAt",js:"firstCounterAt",typ:0},{json:"firstHistogramAt",js:"firstHistogramAt",typ:0},{json:"lastCounterAt",js:"lastCounterAt",typ:0},{json:"lastHistogramAt",js:"lastHistogramAt",typ:0},{json:"firstMetricAt",js:"firstMetricAt",typ:0},{json:"lastMetricAt",js:"lastMetricAt",typ:0},{json:"period",js:"period",typ:""},{json:"summaries",js:"summaries",typ:f("Histograms")},{json:"histograms",js:"histograms",typ:f("Histograms")}],!1)};var E=u(4438),M=u(1626);let O=(()=>{var p;class y{constructor(P,C){this.firestore=P,this.http=C,this.url="https://devprobeapi.onrender.com/create_load_test"}getLoadTestHistory(P,C,b){var I=this;return(0,m.A)(function*(){const S=(0,r.H9)(I.firestore,"teams",P,"products",C,"load_test",b),x=yield(0,r.x7)(S);if(x.exists()){let U=x.data();console.log(U);let R=Object.keys(U);console.log(R);for(let K of R)U[K]=v.toArtilleryData(U[K]);return U}return{}})()}sendLoadTest(P,C,b,I){var S=this;return(0,m.A)(function*(){try{const x={team:P,product:C,service:b,target:`https://${I}`};return yield S.http.post(S.url,x).toPromise()}catch{return{}}})()}getLoadTestHistoryByDate(P,C,b,I){var S=this;return(0,m.A)(function*(){const x=(0,r.H9)(S.firestore,"teams",P,"products",C,"load_test",b),U=yield(0,r.x7)(x);if(U.exists()){let R=U.data();console.log(R);let K=Object.keys(R);console.log(K);for(let T of K)R[T]=v.toArtilleryData(R[T]),R[T].date.split("-")[0]+"-"+R[T].date.split("-")[1]+"-"+R[T].date.split("-")[2]!==I&&delete R[T];return console.log("Filtered by Date: ",R),R}return{}})()}}return(p=y).\u0275fac=function(P){return new(P||p)(E.KVO(r._7),E.KVO(M.Qq))},p.\u0275prov=E.jDH({token:p,factory:p.\u0275fac,providedIn:"root"}),y})()},3661:(A,D,u)=>{u.d(D,{e:()=>d});var m=u(467),r=u(4438),v=u(4262),g=u(1626);let d=(()=>{var l;class a{constructor(n,e){this.firestore=n,this.http=e,this.ipApiURL="https://cors-ea3m.onrender.com/http://ip-api.com/json/"}getLocationDestSrc(n){var e=this;return(0,m.A)(function*(){var t,o,i,_,c,f,h,E;if(!n)return n;const M=e.http.get(e.ipApiURL+n.dst_addr).toPromise(),O=e.http.get(e.ipApiURL+n.src_addr).toPromise(),p=yield M,y=yield O;return n.dst_city=null!==(t=p.city)&&void 0!==t?t:"No city found",n.dst_country=null!==(o=p.country)&&void 0!==o?o:"No country found",n.dst_latitude=null!==(i=p.lat)&&void 0!==i?i:0,n.dst_longitude=null!==(_=p.lon)&&void 0!==_?_:0,n.src_city=null!==(c=y.city)&&void 0!==c?c:"No city found",n.src_country=null!==(f=y.country)&&void 0!==f?f:"No country found",n.src_latitude=null!==(h=y.lat)&&void 0!==h?h:0,n.src_longitude=null!==(E=y.lon)&&void 0!==E?E:0,n})()}getLocationFrom(n){var e=this;return(0,m.A)(function*(){if(!n)return n;let t=n.result;for(let f=0;f{u.d(D,{N:()=>d});var m=u(467),r=u(4262),v=u(4438),g=u(1626);let d=(()=>{var l;class a{constructor(n,e){this.firestore=n,this.http=e,this.ipApiURL="https://cors-ea3m.onrender.com/http://ip-api.com/json/"}getLocation(n){var e=this;return(0,m.A)(function*(){console.log(n);const o=yield e.http.get(e.ipApiURL+n[0].dst_addr).toPromise();for(let c=0;ce.http.get(e.ipApiURL+c.from).toPromise());return(yield Promise.all(i)).forEach((c,f)=>{n[f].fromLatitude=c.lat,n[f].fromLongitude=c.lon,n[f].cityFrom=c.city,n[f].countryFrom=c.country}),console.log(n),n})()}saveLocationResults(n,e,t,o){var i=this;return(0,m.A)(function*(){try{console.log(o,"ripeData");const _=(0,r.rJ)(i.firestore,"teams",n,"products",e,"ripe"),c=(0,r.H9)(_,t),f=o.map(h=>({from:h.from,dst_addr:h.dst_addr,latency:h.latency,cityFrom:h.cityFrom,countryFrom:h.countryFrom,cityTo:h.cityTo,countryTo:h.countryTo,fromLatitude:h.fromLatitude,fromLongitude:h.fromLongitude,toLatitude:h.toLatitude,toLongitude:h.toLongitude,id:h.id}));return yield(0,r.BN)(c,{data:f}),console.log("Data saved",{data:f}),!0}catch(_){return console.log(_),!1}})()}}return(l=a).\u0275fac=function(n){return new(n||l)(v.KVO(r._7),v.KVO(g.Qq))},l.\u0275prov=v.jDH({token:l,factory:l.\u0275fac,providedIn:"root"}),a})()},6241:(A,D,u)=>{u.d(D,{b:()=>g});var m=u(467),r=u(4262),v=u(4438);let g=(()=>{var d;class l{constructor(s){this.firestore=s}addProduct(s,n){var e=this;return(0,m.A)(function*(){try{console.log(s);const t=(0,r.H9)(e.firestore,"teams",n,"products",s.productObjective);return yield(0,r.BN)(t,s),!0}catch(t){return console.log(t),!1}})()}getProducts(s){var n=this;return(0,m.A)(function*(){try{const e=(0,r.rJ)(n.firestore,"teams",s,"products");return(yield(0,r.GG)(e)).docs.map(o=>o.data())}catch(e){return console.log(e),[]}})()}removeProduct(s,n){var e=this;return(0,m.A)(function*(){try{const t=(0,r.H9)(e.firestore,"teams",s,"products",n);return yield(0,r.kd)(t),!0}catch(t){return console.log(t),!1}})()}}return(d=l).\u0275fac=function(s){return new(s||d)(v.KVO(r._7))},d.\u0275prov=v.jDH({token:d,factory:d.\u0275fac,providedIn:"root"}),l})()},2588:(A,D,u)=>{u.d(D,{N:()=>d});var m=u(467),r=u(4262),v=u(4438),g=u(1626);let d=(()=>{var l;class a{constructor(n,e){this.http=n,this.firestore=e,this.measurementsUrl="https://cors-ea3m.onrender.com/https://atlas.ripe.net/api/v2/measurements/",this.measurementID=""}sendTraceRequest(n,e,t,o){var i=this;return(0,m.A)(function*(){console.log("Sending trace request");try{let _={definitions:[{target:n,description:e,type:t,af:4,is_oneoff:!0,protocol:"TCP"}],probes:[]};console.log(o);let c=o.split(",").length-1,f=(o=o.slice(0,-1)).split(","),h=[];for(let O=0;O({id:i.measurementID,dst_addr:h.dst_addr,dst_city:h.dst_city,dst_country:h.dst_country,dst_latitude:h.dst_latitude,dst_longitude:h.dst_longitude,src_addr:h.src_addr,src_city:h.src_city,src_country:h.src_country,src_latitude:h.src_latitude,src_longitude:h.src_longitude,result:h.result}));return yield(0,r.BN)(c,{data:f}),!0}catch(_){return console.log(_),!1}})()}getHistoryResults(n,e){var t=this;return(0,m.A)(function*(){const i=(0,r.rJ)(t.firestore,"teams/"+n+"/products/"+e+"/ripe_trace"),_=yield(0,r.GG)(i);let c=[];return _.docs.forEach(f=>{c.push({id:f.id,data:f.data()})}),console.log(c),c})()}getAllResultsByDescription(n,e,t){var o=this;return(0,m.A)(function*(){try{let i="teams/"+n+"/products/"+e+"/ripe_trace";console.log(i);let _=(0,r.H9)(o.firestore,i,t);return(yield(0,r.x7)(_)).data()}catch(i){return console.log(i),[]}})()}}return(l=a).\u0275fac=function(n){return new(n||l)(v.KVO(g.Qq),v.KVO(r._7))},l.\u0275prov=v.jDH({token:l,factory:l.\u0275fac,providedIn:"root"}),a})()},9640:(A,D,u)=>{u.d(D,{Q:()=>l});var m=u(467),r=u(1985),v=u(4262),g=u(4438),d=u(1626);let l=(()=>{var a;class s{constructor(e,t){this.http=e,this.firestore=t,this.measurementsUrl="https://cors-ea3m.onrender.com/https://atlas.ripe.net/api/v2/measurements/",this.measurementID=""}sendMeasurementRequest(e,t,o,i){var _=this;return(0,m.A)(function*(){let c=i.split(",").length-1;i=i.slice(0,-1);try{let f={definitions:[{target:e,description:"ping",type:"ping",af:4,is_oneoff:!0}],probes:[{requested:c,type:"probes",value:i}]},h={Authorization:"Key 92530695-134f-4cbc-b7c3-ec130f3719b0"};console.log(f);let E=yield _.http.post(_.measurementsUrl,f,{headers:h}).toPromise();return console.log(E),_.measurementID=E.measurements[0],_.measurementID}catch(f){return console.log(f),!1}})()}getMeasurementResults(e){var t=this;return(0,m.A)(function*(){e&&(t.measurementID=e);try{let o={Authorization:"Key 92530695-134f-4cbc-b7c3-ec130f3719b0"};return""===t.measurementID?(console.log("No measurement ID"),!1):t.http.get(t.measurementsUrl+t.measurementID+"/results/",{headers:o})}catch(o){return console.log(o),new r.c}})()}saveMeasurementResults(e,t,o,i){var _=this;return(0,m.A)(function*(){try{const c=(0,v.rJ)(_.firestore,"teams",e,"products",t,"ripe"),f=(0,v.H9)(c,o),h=i.map((E,M)=>({id:_.measurementID,from:E.from,dst_addr:E.dst_addr,latency:E.latency}));return yield(0,v.BN)(f,{data:h}),!0}catch(c){return console.log(c),!1}})()}getAllResultsByDescription(e,t,o){var i=this;return(0,m.A)(function*(){try{let _="teams/"+e+"/products/"+t+"/ripe";console.log(_);let c=(0,v.H9)(i.firestore,_,o);return(yield(0,v.x7)(c)).data()}catch(_){return console.log(_),[]}})()}getHistoryResults(e,t){var o=this;return(0,m.A)(function*(){const _=(0,v.rJ)(o.firestore,"teams/"+e+"/products/"+t+"/ripe"),c=yield(0,v.GG)(_);let f=[];return c.docs.forEach(h=>{f.push({id:h.id,data:h.data()})}),console.log(f),f})()}deleteHistory(e,t,o){var i=this;return(0,m.A)(function*(){const c=(0,v.H9)(i.firestore,"teams/"+e+"/products/"+t+"/ripe",o);try{return yield(0,v.kd)(c),!0}catch(f){return console.log(f),!1}})()}}return(a=s).\u0275fac=function(e){return new(e||a)(g.KVO(d.Qq),g.KVO(v._7))},a.\u0275prov=g.jDH({token:a,factory:a.\u0275fac,providedIn:"root"}),s})()},9536:(A,D,u)=>{u.d(D,{Q:()=>g});var m=u(467),r=u(4262),v=u(4438);let g=(()=>{var d;class l{constructor(s){this.firestore=s}addSystemTest(s,n,e,t){var o=this;return(0,m.A)(function*(){const i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","integration_tests"),_=yield(0,r.x7)(i);if(_.exists()){const c=_.data();if(!c[e])return c[e]=[t],yield(0,r.BN)(i,c),void console.log("Document created with ID: ",i.id);c[e].push(t),yield(0,r.BN)(i,c),console.log("Document updated with ID: ",_.id)}else console.log("No such document!"),yield(0,r.BN)(i,{[e]:[t]}),console.log("Document created with ID: ",i.id)})()}getIntegrationTests(s,n,e){var t=this;return(0,m.A)(function*(){const o=(0,r.H9)(t.firestore,"teams",s,"products",n,"software_testing","integration_tests"),i=yield(0,r.x7)(o);return i.exists()?i.data()[e]:[]})()}updateIntegrationTestState(s,n,e,t,o){var i=this;return(0,m.A)(function*(){const _=(0,r.H9)(i.firestore,"teams",s,"products",n,"software_testing","integration_tests"),c=yield(0,r.x7)(_);if(c.exists()){const f=c.data();for(let h=0;h{u.d(D,{h:()=>g});var m=u(467),r=u(4262),v=u(4438);let g=(()=>{var d;class l{constructor(s){this.firestore=s}addSystemTest(s,n,e,t){var o=this;return(0,m.A)(function*(){const i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","system_tests"),_=yield(0,r.x7)(i);if(_.exists()){const c=_.data();if(!c[e])return c[e]=[t],yield(0,r.BN)(i,c),void console.log("Document created with ID: ",i.id);c[e].push(t),yield(0,r.BN)(i,c),console.log("Document updated with ID: ",_.id)}else console.log("No such document!"),yield(0,r.BN)(i,{[e]:[t]}),console.log("Document created with ID: ",i.id)})()}getSystemTest(s,n,e){var t=this;return(0,m.A)(function*(){const o=(0,r.H9)(t.firestore,"teams",s,"products",n,"software_testing","system_tests"),i=yield(0,r.x7)(o);return i.exists()?i.data()[e]:[]})()}saveSystemTest(s,n,e,t){var o=this;return(0,m.A)(function*(){const i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),_=new Date,c=`${_.getFullYear()}-${_.getMonth()+1}-${_.getDate()} ${_.getHours()}:${_.getMinutes()}:${_.getSeconds()}`;console.log(c);const f=yield(0,r.x7)(i);if(f.exists()){let h=f.data();h[c]={systemTest:t},h[c].productStep=e,yield(0,r.BN)(i,h)}else yield(0,r.BN)(i,{[c]:{systemTest:t,productStep:e}})})()}getSystemTestHistoryByStep(s,n,e){var t=this;return(0,m.A)(function*(){const o=(0,r.H9)(t.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),i=yield(0,r.x7)(o);if(i.exists()){const _=i.data();return Object.keys(_).filter(f=>_[f].productStep===e).map(f=>_[f].systemTest)}return[]})()}getSystemTestHistoryByTitle(s,n,e,t){var o=this;return(0,m.A)(function*(){const i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),_=yield(0,r.x7)(i);let c=[];if(_.exists()){const f=_.data();for(let h in f)f[h].systemTest.title===t&&f[h].productStep===e&&c.push({timestamp:h,systemTest:f[h].systemTest})}return c})()}getSystemTestByTimestamp(s,n,e,t,o){var i=this;return(0,m.A)(function*(){const _=(0,r.H9)(i.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),c=yield(0,r.x7)(_);if(c.exists()){const f=c.data();for(let h in f)if(f[h].systemTest.title===t&&h===o&&f[h].productStep===e)return f[h].systemTest}return{}})()}deleteSystemTestHistoryByKey(s,n,e,t,o){var i=this;return(0,m.A)(function*(){const _=(0,r.H9)(i.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),c=yield(0,r.x7)(_);if(c.exists()){const f=c.data();for(let h in f)f[h].systemTest.title===t&&h===o&&f[h].productStep===e&&delete f[h];yield(0,r.BN)(_,f)}})()}getSystemTestHistory(s,n){var e=this;return(0,m.A)(function*(){const t=(0,r.H9)(e.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),o=yield(0,r.x7)(t);return o.exists()?o.data():{}})()}deleteSystemTest(s,n,e,t){var o=this;return(0,m.A)(function*(){let i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","system_tests"),_=yield(0,r.x7)(i);if(_.exists()){let c=_.data();c[e]=c[e].filter(f=>f.title!==t.title),yield(0,r.BN)(i,c)}if(i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","system_tests_history"),_=yield(0,r.x7)(i),_.exists()){let c=_.data();for(let f in c)console.log(c[f].systemTest.title),c[f].systemTest.title===t.title&&delete c[f];yield(0,r.BN)(i,c)}})()}}return(d=l).\u0275fac=function(s){return new(s||d)(v.KVO(r._7))},d.\u0275prov=v.jDH({token:d,factory:d.\u0275fac,providedIn:"root"}),l})()},1854:(A,D,u)=>{u.d(D,{I:()=>g});var m=u(467),r=u(4262),v=u(4438);let g=(()=>{var d;class l{constructor(s){this.firestore=s}addUnitTest(s,n,e,t){var o=this;return(0,m.A)(function*(){const i=(0,r.H9)(o.firestore,"teams",s,"products",n,"software_testing","unit_tests"),_=yield(0,r.x7)(i);if(_.exists()){let c=_.data();if(!c[e])return c[e]=[t],yield(0,r.BN)(i,c),void console.log("Document created with ID: ",i.id);for(let f=0;f - + - + diff --git a/www/runtime.08936c487af34d7b.js b/www/runtime.08936c487af34d7b.js deleted file mode 100644 index 744dbf2..0000000 --- a/www/runtime.08936c487af34d7b.js +++ /dev/null @@ -1 +0,0 @@ -(()=>{"use strict";var e,v={},g={};function f(e){var c=g[e];if(void 0!==c)return c.exports;var a=g[e]={exports:{}};return v[e].call(a.exports,a,a.exports,f),a.exports}f.m=v,e=[],f.O=(c,a,t,b)=>{if(!a){var d=1/0;for(r=0;r=b)&&Object.keys(f.O).every(p=>f.O[p](a[n]))?a.splice(n--,1):(l=!1,b0&&e[r-1][2]>b;r--)e[r]=e[r-1];e[r]=[a,t,b]},f.n=e=>{var c=e&&e.__esModule?()=>e.default:()=>e;return f.d(c,{a:c}),c},(()=>{var c,e=Object.getPrototypeOf?a=>Object.getPrototypeOf(a):a=>a.__proto__;f.t=function(a,t){if(1&t&&(a=this(a)),8&t||"object"==typeof a&&a&&(4&t&&a.__esModule||16&t&&"function"==typeof a.then))return a;var b=Object.create(null);f.r(b);var r={};c=c||[null,e({}),e([]),e(e)];for(var d=2&t&&a;"object"==typeof d&&!~c.indexOf(d);d=e(d))Object.getOwnPropertyNames(d).forEach(l=>r[l]=()=>a[l]);return r.default=()=>a,f.d(b,r),b}})(),f.d=(e,c)=>{for(var a in c)f.o(c,a)&&!f.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:c[a]})},f.f={},f.e=e=>Promise.all(Object.keys(f.f).reduce((c,a)=>(f.f[a](e,c),c),[])),f.u=e=>(({2076:"common",7278:"polyfills-dom",9329:"polyfills-core-js"}[e]||e)+"."+{441:"c8d135e5d56e5723",839:"283ada25cfa51ac0",964:"466b88054b5c618c",1010:"1b7d4731c58dd6ba",1015:"3d449385ac057e7f",1049:"7ef232095c56e4df",1081:"724852e553670d61",1102:"010dfe13f6ca7e15",1143:"b164be066fa92bd6",1293:"ee80f2d33790618d",1313:"46ae0a0d0e94f2f8",1459:"32c41a59c0fd4cf1",1577:"f6f558490ff910b3",2075:"1971ba880d06cc30",2076:"abd3f414750f7079",2144:"5d46fa3641b801f2",2348:"12b471577685ffbe",2375:"efb0d99d1467ed67",2415:"dddee43f1c9b92e7",2494:"167cdb5e4cc4b3b7",2560:"f34ba2c5e85b55c8",2757:"83b4060f3177be94",2885:"d64fa10bd441cbc8",3100:"be59eccfa5c9316f",3162:"825364e1635b086f",3451:"5cb648a56743fe4c",3506:"899dcc5e5d913023",3511:"16739e7034875331",3646:"554cb7eb2d8d0ce0",3814:"4f667f072e44b4e7",4163:"dd6bee594e4d801a",4171:"f5bc55c1acb0f5c1",4183:"0d54a4cc8cbc3a61",4304:"1ee0ef2bdf588c3d",4348:"16e6409072fc8e11",4406:"03b087c2d77cb960",4443:"74ec71e1102d5a82",4463:"ce74c63a27a7a872",4559:"893444f9e022cfc0",4591:"7a48c0cf9464e62b",4699:"01733b3942afbe92",4839:"1358f2425ffb5332",4867:"17817bc208c2836c",4914:"52404a177d9d7dd4",5054:"a36f0725f93c0766",5100:"659224ed1f94442c",5197:"cfc60de4c5213fec",5222:"9cbea5f62b0fb679",5371:"f8138eed060f579e",5399:"0706ad352f9b7c14",5712:"a9a2db8da6f1a8cd",5887:"708ea3877f30ffcd",5949:"2ed93c457aa1e9fb",5995:"2de4ee42f61961e5",6024:"3c02ab7fe82fedfe",6303:"4ea7e81fd1aa1e01",6433:"26eeba8bb230b119",6480:"2d3c5432c242ecc0",6521:"3c5b756783b6739a",6536:"a4f178f939f2d134",6695:"8ae905fc907dc6ca",6840:"fd32dada9c8ec44e",6975:"6d2e5de0574c6402",7030:"f2a9bf080bedfc5b",7056:"876606fe67c74125",7076:"2b7ea8b1f54f4458",7179:"80391eb100990080",7240:"680a87741a5535b1",7278:"bf542500b6fca113",7356:"911eacb1ce959b5e",7372:"4ea07cfe7eb821be",7428:"cb325b96b92ea4c2",7720:"78509b154c08b472",7762:"6371eca429bb8376",8066:"67e76a5c3f71f306",8193:"476b12959c4b189d",8314:"52348a57ed623e38",8361:"3d466d853997fbb0",8477:"15dacf21c512c8d4",8566:"52fa7b8c5c22d53f",8584:"94ca33677cedf961",8711:"158e69ebbe7b5f91",8805:"7a687270c4acd743",8814:"4175e28b98837400",8886:"87f743bcbe3c6802",8970:"402b7daea47854b9",8984:"d28cf89bc8592645",9013:"b8cefd92ba4e66d6",9070:"29b18cc91c088f3f",9273:"16673f4c5278d1b8",9329:"c76198334f717402",9344:"2d668603b6130b28",9456:"0b4cbaf1cbe8b46a",9546:"dd2455bcd410532c",9697:"57e559625e67bb53",9977:"948bf38bed890db4"}[e]+".js"),f.miniCssF=e=>{},f.o=(e,c)=>Object.prototype.hasOwnProperty.call(e,c),(()=>{var e={},c="app:";f.l=(a,t,b,r)=>{if(e[a])e[a].push(t);else{var d,l;if(void 0!==b)for(var n=document.getElementsByTagName("script"),i=0;i{d.onerror=d.onload=null,clearTimeout(u);var y=e[a];if(delete e[a],d.parentNode&&d.parentNode.removeChild(d),y&&y.forEach(_=>_(p)),m)return m(p)},u=setTimeout(s.bind(null,void 0,{type:"timeout",target:d}),12e4);d.onerror=s.bind(null,d.onerror),d.onload=s.bind(null,d.onload),l&&document.head.appendChild(d)}}})(),f.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;f.tt=()=>(void 0===e&&(e={createScriptURL:c=>c},typeof trustedTypes<"u"&&trustedTypes.createPolicy&&(e=trustedTypes.createPolicy("angular#bundler",e))),e)})(),f.tu=e=>f.tt().createScriptURL(e),f.p="",(()=>{var e={9121:0};f.f.j=(t,b)=>{var r=f.o(e,t)?e[t]:void 0;if(0!==r)if(r)b.push(r[2]);else if(9121!=t){var d=new Promise((o,s)=>r=e[t]=[o,s]);b.push(r[2]=d);var l=f.p+f.u(t),n=new Error;f.l(l,o=>{if(f.o(e,t)&&(0!==(r=e[t])&&(e[t]=void 0),r)){var s=o&&("load"===o.type?"missing":o.type),u=o&&o.target&&o.target.src;n.message="Loading chunk "+t+" failed.\n("+s+": "+u+")",n.name="ChunkLoadError",n.type=s,n.request=u,r[1](n)}},"chunk-"+t,t)}else e[t]=0},f.O.j=t=>0===e[t];var c=(t,b)=>{var n,i,[r,d,l]=b,o=0;if(r.some(u=>0!==e[u])){for(n in d)f.o(d,n)&&(f.m[n]=d[n]);if(l)var s=l(f)}for(t&&t(b);o{"use strict";var e,v={},g={};function f(e){var t=g[e];if(void 0!==t)return t.exports;var a=g[e]={exports:{}};return v[e].call(a.exports,a,a.exports,f),a.exports}f.m=v,e=[],f.O=(t,a,d,b)=>{if(!a){var c=1/0;for(r=0;r=b)&&Object.keys(f.O).every(p=>f.O[p](a[n]))?a.splice(n--,1):(l=!1,b0&&e[r-1][2]>b;r--)e[r]=e[r-1];e[r]=[a,d,b]},f.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return f.d(t,{a:t}),t},(()=>{var t,e=Object.getPrototypeOf?a=>Object.getPrototypeOf(a):a=>a.__proto__;f.t=function(a,d){if(1&d&&(a=this(a)),8&d||"object"==typeof a&&a&&(4&d&&a.__esModule||16&d&&"function"==typeof a.then))return a;var b=Object.create(null);f.r(b);var r={};t=t||[null,e({}),e([]),e(e)];for(var c=2&d&&a;"object"==typeof c&&!~t.indexOf(c);c=e(c))Object.getOwnPropertyNames(c).forEach(l=>r[l]=()=>a[l]);return r.default=()=>a,f.d(b,r),b}})(),f.d=(e,t)=>{for(var a in t)f.o(t,a)&&!f.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},f.f={},f.e=e=>Promise.all(Object.keys(f.f).reduce((t,a)=>(f.f[a](e,t),t),[])),f.u=e=>(({2076:"common",7278:"polyfills-dom",9329:"polyfills-core-js"}[e]||e)+"."+{441:"c8d135e5d56e5723",839:"283ada25cfa51ac0",964:"466b88054b5c618c",1010:"1b7d4731c58dd6ba",1015:"3d449385ac057e7f",1049:"7ef232095c56e4df",1081:"724852e553670d61",1102:"010dfe13f6ca7e15",1143:"b164be066fa92bd6",1293:"ee80f2d33790618d",1313:"46ae0a0d0e94f2f8",1459:"32c41a59c0fd4cf1",1577:"0604cac29dd79422",2075:"1971ba880d06cc30",2076:"d9f0bff8bd5e1759",2144:"5d46fa3641b801f2",2348:"12b471577685ffbe",2375:"efb0d99d1467ed67",2415:"dddee43f1c9b92e7",2494:"167cdb5e4cc4b3b7",2560:"f34ba2c5e85b55c8",2757:"83b4060f3177be94",2885:"d64fa10bd441cbc8",3100:"be59eccfa5c9316f",3162:"825364e1635b086f",3451:"5cb648a56743fe4c",3506:"899dcc5e5d913023",3511:"16739e7034875331",3646:"554cb7eb2d8d0ce0",3814:"aed692045b27c466",4163:"dd6bee594e4d801a",4171:"f5bc55c1acb0f5c1",4183:"0d54a4cc8cbc3a61",4304:"5e919bf908d2ac02",4348:"16e6409072fc8e11",4406:"03b087c2d77cb960",4443:"74ec71e1102d5a82",4463:"ce74c63a27a7a872",4559:"303a6d01dbac6106",4591:"7a48c0cf9464e62b",4699:"01733b3942afbe92",4839:"1358f2425ffb5332",4867:"17817bc208c2836c",4914:"52404a177d9d7dd4",5054:"a36f0725f93c0766",5100:"659224ed1f94442c",5197:"38b8cc3181b51450",5222:"9cbea5f62b0fb679",5371:"f8138eed060f579e",5399:"0706ad352f9b7c14",5712:"a9a2db8da6f1a8cd",5887:"708ea3877f30ffcd",5949:"2ed93c457aa1e9fb",5995:"2de4ee42f61961e5",6024:"3c02ab7fe82fedfe",6303:"4ea7e81fd1aa1e01",6433:"91353c3d7c453322",6480:"2d3c5432c242ecc0",6521:"a8a508f41e539cc5",6536:"a4f178f939f2d134",6695:"8ae905fc907dc6ca",6840:"fd32dada9c8ec44e",6975:"6d2e5de0574c6402",7030:"f2a9bf080bedfc5b",7056:"876606fe67c74125",7076:"2b7ea8b1f54f4458",7179:"80391eb100990080",7240:"680a87741a5535b1",7278:"bf542500b6fca113",7356:"911eacb1ce959b5e",7372:"e306385d972d6e2c",7428:"cb325b96b92ea4c2",7720:"78509b154c08b472",7762:"6371eca429bb8376",8066:"67e76a5c3f71f306",8193:"476b12959c4b189d",8314:"52348a57ed623e38",8361:"3d466d853997fbb0",8477:"15dacf21c512c8d4",8566:"52fa7b8c5c22d53f",8584:"94ca33677cedf961",8711:"158e69ebbe7b5f91",8805:"7a687270c4acd743",8814:"4175e28b98837400",8886:"87f743bcbe3c6802",8970:"89f040d889f287fc",8984:"d28cf89bc8592645",9013:"2e347313286de95b",9070:"29b18cc91c088f3f",9273:"16673f4c5278d1b8",9329:"c76198334f717402",9344:"2d668603b6130b28",9456:"0b4cbaf1cbe8b46a",9546:"dd2455bcd410532c",9697:"57e559625e67bb53",9977:"948bf38bed890db4"}[e]+".js"),f.miniCssF=e=>{},f.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={},t="app:";f.l=(a,d,b,r)=>{if(e[a])e[a].push(d);else{var c,l;if(void 0!==b)for(var n=document.getElementsByTagName("script"),i=0;i{c.onerror=c.onload=null,clearTimeout(u);var y=e[a];if(delete e[a],c.parentNode&&c.parentNode.removeChild(c),y&&y.forEach(_=>_(p)),m)return m(p)},u=setTimeout(s.bind(null,void 0,{type:"timeout",target:c}),12e4);c.onerror=s.bind(null,c.onerror),c.onload=s.bind(null,c.onload),l&&document.head.appendChild(c)}}})(),f.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;f.tt=()=>(void 0===e&&(e={createScriptURL:t=>t},typeof trustedTypes<"u"&&trustedTypes.createPolicy&&(e=trustedTypes.createPolicy("angular#bundler",e))),e)})(),f.tu=e=>f.tt().createScriptURL(e),f.p="",(()=>{var e={9121:0};f.f.j=(d,b)=>{var r=f.o(e,d)?e[d]:void 0;if(0!==r)if(r)b.push(r[2]);else if(9121!=d){var c=new Promise((o,s)=>r=e[d]=[o,s]);b.push(r[2]=c);var l=f.p+f.u(d),n=new Error;f.l(l,o=>{if(f.o(e,d)&&(0!==(r=e[d])&&(e[d]=void 0),r)){var s=o&&("load"===o.type?"missing":o.type),u=o&&o.target&&o.target.src;n.message="Loading chunk "+d+" failed.\n("+s+": "+u+")",n.name="ChunkLoadError",n.type=s,n.request=u,r[1](n)}},"chunk-"+d,d)}else e[d]=0},f.O.j=d=>0===e[d];var t=(d,b)=>{var n,i,[r,c,l]=b,o=0;if(r.some(u=>0!==e[u])){for(n in c)f.o(c,n)&&(f.m[n]=c[n]);if(l)var s=l(f)}for(d&&d(b);o.ion-page{position:relative;contain:layout style;height:100%}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding: 20px}@supports (padding-top: 20px){html{--ion-safe-area-top: var(--ion-statusbar-padding)}}@supports (padding-top: env(safe-area-inset-top)){html{--ion-safe-area-top: env(safe-area-inset-top);--ion-safe-area-bottom: env(safe-area-inset-bottom);--ion-safe-area-left: env(safe-area-inset-left);--ion-safe-area-right: env(safe-area-inset-right)}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translateZ(0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow: hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-left-radius:8px;border-bottom-right-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width: 0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:.3s transform cubic-bezier(.25,.8,.5,1)}@media (prefers-reduced-motion: reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width: 0px;--inner-border-width: 0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width: fit-content;--height: fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}[ion-last-focus],header[tabindex="-1"]:focus,[role=banner][tabindex="-1"]:focus,main[tabindex="-1"]:focus,[role=main][tabindex="-1"]:focus,h1[tabindex="-1"]:focus,[role=heading][aria-level="1"][tabindex="-1"]:focus{outline:none}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){display:none;height:0}b,strong{font-weight:700}img{max-width:100%}hr{height:1px;border-width:0;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{overflow:auto;height:auto;font:inherit;color:inherit}textarea::placeholder{padding-left:2px}form,input,optgroup,select{margin:0;font:inherit;color:inherit}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{padding:0;border:0;border-radius:0;font-family:inherit;font-style:inherit;font-variant:inherit;line-height:1;text-transform:none;cursor:pointer;-webkit-appearance:button}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{width:100%;height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}html:not(.hydrated) body{display:none}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin:0;padding:0;position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;transform:translateZ(0);text-rendering:optimizeLegibility;overflow:hidden;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;text-size-adjust:none}html{font-family:var(--ion-font-family)}@supports (-webkit-touch-callout: none){html{font:var(--ion-dynamic-font, 16px var(--ion-font-family))}}a{background-color:transparent;color:var(--ion-color-primary, #0054e9)}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.ion-hide,.ion-hide-up,.ion-hide-down{display:none!important}@media (min-width: 576px){.ion-hide-sm-up{display:none!important}}@media (max-width: 575.98px){.ion-hide-sm-down{display:none!important}}@media (min-width: 768px){.ion-hide-md-up{display:none!important}}@media (max-width: 767.98px){.ion-hide-md-down{display:none!important}}@media (min-width: 992px){.ion-hide-lg-up{display:none!important}}@media (max-width: 991.98px){.ion-hide-lg-down{display:none!important}}@media (min-width: 1200px){.ion-hide-xl-up{display:none!important}}@media (max-width: 1199.98px){.ion-hide-xl-down{display:none!important}}.ion-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding:0}.ion-padding{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-top{--padding-top: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px)}.ion-padding-start{--padding-start: var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--padding-end: var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-padding-bottom{--padding-bottom: var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-vertical{--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-horizontal{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin:0}.ion-margin{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-top{--margin-top: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px)}.ion-margin-start{--margin-start: var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--margin-end: var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-margin-bottom{--margin-bottom: var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-vertical{--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-horizontal{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-float-left{float:left!important}.ion-float-right{float:right!important}.ion-float-start{float:left!important}:host-context([dir=rtl]) .ion-float-start{float:right!important}[dir=rtl] .ion-float-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-start:dir(rtl){float:right!important}}.ion-float-end{float:right!important}:host-context([dir=rtl]) .ion-float-end{float:left!important}[dir=rtl] .ion-float-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-end:dir(rtl){float:left!important}}@media (min-width: 576px){.ion-float-sm-left{float:left!important}.ion-float-sm-right{float:right!important}.ion-float-sm-start{float:left!important}:host-context([dir=rtl]) .ion-float-sm-start{float:right!important}[dir=rtl] .ion-float-sm-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-sm-start:dir(rtl){float:right!important}}.ion-float-sm-end{float:right!important}:host-context([dir=rtl]) .ion-float-sm-end{float:left!important}[dir=rtl] .ion-float-sm-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-sm-end:dir(rtl){float:left!important}}}@media (min-width: 768px){.ion-float-md-left{float:left!important}.ion-float-md-right{float:right!important}.ion-float-md-start{float:left!important}:host-context([dir=rtl]) .ion-float-md-start{float:right!important}[dir=rtl] .ion-float-md-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-md-start:dir(rtl){float:right!important}}.ion-float-md-end{float:right!important}:host-context([dir=rtl]) .ion-float-md-end{float:left!important}[dir=rtl] .ion-float-md-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-md-end:dir(rtl){float:left!important}}}@media (min-width: 992px){.ion-float-lg-left{float:left!important}.ion-float-lg-right{float:right!important}.ion-float-lg-start{float:left!important}:host-context([dir=rtl]) .ion-float-lg-start{float:right!important}[dir=rtl] .ion-float-lg-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-lg-start:dir(rtl){float:right!important}}.ion-float-lg-end{float:right!important}:host-context([dir=rtl]) .ion-float-lg-end{float:left!important}[dir=rtl] .ion-float-lg-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-lg-end:dir(rtl){float:left!important}}}@media (min-width: 1200px){.ion-float-xl-left{float:left!important}.ion-float-xl-right{float:right!important}.ion-float-xl-start{float:left!important}:host-context([dir=rtl]) .ion-float-xl-start{float:right!important}[dir=rtl] .ion-float-xl-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-xl-start:dir(rtl){float:right!important}}.ion-float-xl-end{float:right!important}:host-context([dir=rtl]) .ion-float-xl-end{float:left!important}[dir=rtl] .ion-float-xl-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-xl-end:dir(rtl){float:left!important}}}.ion-text-center{text-align:center!important}.ion-text-justify{text-align:justify!important}.ion-text-start{text-align:start!important}.ion-text-end{text-align:end!important}.ion-text-left{text-align:left!important}.ion-text-right{text-align:right!important}.ion-text-nowrap{white-space:nowrap!important}.ion-text-wrap{white-space:normal!important}@media (min-width: 576px){.ion-text-sm-center{text-align:center!important}.ion-text-sm-justify{text-align:justify!important}.ion-text-sm-start{text-align:start!important}.ion-text-sm-end{text-align:end!important}.ion-text-sm-left{text-align:left!important}.ion-text-sm-right{text-align:right!important}.ion-text-sm-nowrap{white-space:nowrap!important}.ion-text-sm-wrap{white-space:normal!important}}@media (min-width: 768px){.ion-text-md-center{text-align:center!important}.ion-text-md-justify{text-align:justify!important}.ion-text-md-start{text-align:start!important}.ion-text-md-end{text-align:end!important}.ion-text-md-left{text-align:left!important}.ion-text-md-right{text-align:right!important}.ion-text-md-nowrap{white-space:nowrap!important}.ion-text-md-wrap{white-space:normal!important}}@media (min-width: 992px){.ion-text-lg-center{text-align:center!important}.ion-text-lg-justify{text-align:justify!important}.ion-text-lg-start{text-align:start!important}.ion-text-lg-end{text-align:end!important}.ion-text-lg-left{text-align:left!important}.ion-text-lg-right{text-align:right!important}.ion-text-lg-nowrap{white-space:nowrap!important}.ion-text-lg-wrap{white-space:normal!important}}@media (min-width: 1200px){.ion-text-xl-center{text-align:center!important}.ion-text-xl-justify{text-align:justify!important}.ion-text-xl-start{text-align:start!important}.ion-text-xl-end{text-align:end!important}.ion-text-xl-left{text-align:left!important}.ion-text-xl-right{text-align:right!important}.ion-text-xl-nowrap{white-space:nowrap!important}.ion-text-xl-wrap{white-space:normal!important}}.ion-text-uppercase{text-transform:uppercase!important}.ion-text-lowercase{text-transform:lowercase!important}.ion-text-capitalize{text-transform:capitalize!important}@media (min-width: 576px){.ion-text-sm-uppercase{text-transform:uppercase!important}.ion-text-sm-lowercase{text-transform:lowercase!important}.ion-text-sm-capitalize{text-transform:capitalize!important}}@media (min-width: 768px){.ion-text-md-uppercase{text-transform:uppercase!important}.ion-text-md-lowercase{text-transform:lowercase!important}.ion-text-md-capitalize{text-transform:capitalize!important}}@media (min-width: 992px){.ion-text-lg-uppercase{text-transform:uppercase!important}.ion-text-lg-lowercase{text-transform:lowercase!important}.ion-text-lg-capitalize{text-transform:capitalize!important}}@media (min-width: 1200px){.ion-text-xl-uppercase{text-transform:uppercase!important}.ion-text-xl-lowercase{text-transform:lowercase!important}.ion-text-xl-capitalize{text-transform:capitalize!important}}.ion-align-self-start{align-self:flex-start!important}.ion-align-self-end{align-self:flex-end!important}.ion-align-self-center{align-self:center!important}.ion-align-self-stretch{align-self:stretch!important}.ion-align-self-baseline{align-self:baseline!important}.ion-align-self-auto{align-self:auto!important}.ion-wrap{flex-wrap:wrap!important}.ion-nowrap{flex-wrap:nowrap!important}.ion-wrap-reverse{flex-wrap:wrap-reverse!important}.ion-justify-content-start{justify-content:flex-start!important}.ion-justify-content-center{justify-content:center!important}.ion-justify-content-end{justify-content:flex-end!important}.ion-justify-content-around{justify-content:space-around!important}.ion-justify-content-between{justify-content:space-between!important}.ion-justify-content-evenly{justify-content:space-evenly!important}.ion-align-items-start{align-items:flex-start!important}.ion-align-items-center{align-items:center!important}.ion-align-items-end{align-items:flex-end!important}.ion-align-items-stretch{align-items:stretch!important}.ion-align-items-baseline{align-items:baseline!important}:root{--ion-color-primary: #4d8dff;--ion-color-primary-rgb: 77, 141, 255;--ion-color-primary-contrast: #000;--ion-color-primary-contrast-rgb: 0, 0, 0;--ion-color-primary-shade: #447ce0;--ion-color-primary-tint: #5f98ff;--ion-color-secondary: #46b1ff;--ion-color-secondary-rgb: 70, 177, 255;--ion-color-secondary-contrast: #000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #3e9ce0;--ion-color-secondary-tint: #59b9ff;--ion-color-tertiary: #8482fb;--ion-color-tertiary-rgb: 132, 130, 251;--ion-color-tertiary-contrast: #000;--ion-color-tertiary-contrast-rgb: 0, 0, 0;--ion-color-tertiary-shade: #7472dd;--ion-color-tertiary-tint: #908ffb;--ion-color-success: #2dd55b;--ion-color-success-rgb: 45, 213, 91;--ion-color-success-contrast: #000;--ion-color-success-contrast-rgb: 0, 0, 0;--ion-color-success-shade: #28bb50;--ion-color-success-tint: #42d96b;--ion-color-warning: #ffce31;--ion-color-warning-rgb: 255, 206, 49;--ion-color-warning-contrast: #000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0b52b;--ion-color-warning-tint: #ffd346;--ion-color-danger: #f24c58;--ion-color-danger-rgb: 242, 76, 88;--ion-color-danger-contrast: #000;--ion-color-danger-contrast-rgb: 0, 0, 0;--ion-color-danger-shade: #d5434d;--ion-color-danger-tint: #f35e69;--ion-color-light: #222428;--ion-color-light-rgb: 34, 36, 40;--ion-color-light-contrast: #fff;--ion-color-light-contrast-rgb: 255, 255, 255;--ion-color-light-shade: #1e2023;--ion-color-light-tint: #383a3e;--ion-color-medium: #989aa2;--ion-color-medium-rgb: 152, 154, 162;--ion-color-medium-contrast: #000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #86888f;--ion-color-medium-tint: #a2a4ab;--ion-color-dark: #f4f5f8;--ion-color-dark-rgb: 244, 245, 248;--ion-color-dark-contrast: #000;--ion-color-dark-contrast-rgb: 0, 0, 0;--ion-color-dark-shade: #d7d8da;--ion-color-dark-tint: #f5f6f9}:root.ios{--ion-background-color: #000000;--ion-background-color-rgb: 0, 0, 0;--ion-text-color: #ffffff;--ion-text-color-rgb: 255, 255, 255;--ion-background-color-step-50: #0d0d0d;--ion-background-color-step-100: #1a1a1a;--ion-background-color-step-150: #262626;--ion-background-color-step-200: #333333;--ion-background-color-step-250: #404040;--ion-background-color-step-300: #4d4d4d;--ion-background-color-step-350: #595959;--ion-background-color-step-400: #666666;--ion-background-color-step-450: #737373;--ion-background-color-step-500: #808080;--ion-background-color-step-550: #8c8c8c;--ion-background-color-step-600: #999999;--ion-background-color-step-650: #a6a6a6;--ion-background-color-step-700: #b3b3b3;--ion-background-color-step-750: #bfbfbf;--ion-background-color-step-800: #cccccc;--ion-background-color-step-850: #d9d9d9;--ion-background-color-step-900: #e6e6e6;--ion-background-color-step-950: #f2f2f2;--ion-text-color-step-50: #f2f2f2;--ion-text-color-step-100: #e6e6e6;--ion-text-color-step-150: #d9d9d9;--ion-text-color-step-200: #cccccc;--ion-text-color-step-250: #bfbfbf;--ion-text-color-step-300: #b3b3b3;--ion-text-color-step-350: #a6a6a6;--ion-text-color-step-400: #999999;--ion-text-color-step-450: #8c8c8c;--ion-text-color-step-500: #808080;--ion-text-color-step-550: #737373;--ion-text-color-step-600: #666666;--ion-text-color-step-650: #595959;--ion-text-color-step-700: #4d4d4d;--ion-text-color-step-750: #404040;--ion-text-color-step-800: #333333;--ion-text-color-step-850: #262626;--ion-text-color-step-900: #1a1a1a;--ion-text-color-step-950: #0d0d0d;--ion-item-background: #000000;--ion-card-background: #1c1c1d}:root.ios ion-modal{--ion-background-color: var(--ion-color-step-100, var(--ion-background-color-step-100));--ion-toolbar-background: var(--ion-color-step-150, var(--ion-background-color-step-150));--ion-toolbar-border-color: var(--ion-color-step-250, var(--ion-background-color-step-250))}:root.md{--ion-background-color: #121212;--ion-background-color-rgb: 18, 18, 18;--ion-text-color: #ffffff;--ion-text-color-rgb: 255, 255, 255;--ion-background-color-step-50: #1e1e1e;--ion-background-color-step-100: #2a2a2a;--ion-background-color-step-150: #363636;--ion-background-color-step-200: #414141;--ion-background-color-step-250: #4d4d4d;--ion-background-color-step-300: #595959;--ion-background-color-step-350: #656565;--ion-background-color-step-400: #717171;--ion-background-color-step-450: #7d7d7d;--ion-background-color-step-500: #898989;--ion-background-color-step-550: #949494;--ion-background-color-step-600: #a0a0a0;--ion-background-color-step-650: #acacac;--ion-background-color-step-700: #b8b8b8;--ion-background-color-step-750: #c4c4c4;--ion-background-color-step-800: #d0d0d0;--ion-background-color-step-850: #dbdbdb;--ion-background-color-step-900: #e7e7e7;--ion-background-color-step-950: #f3f3f3;--ion-text-color-step-50: #f3f3f3;--ion-text-color-step-100: #e7e7e7;--ion-text-color-step-150: #dbdbdb;--ion-text-color-step-200: #d0d0d0;--ion-text-color-step-250: #c4c4c4;--ion-text-color-step-300: #b8b8b8;--ion-text-color-step-350: #acacac;--ion-text-color-step-400: #a0a0a0;--ion-text-color-step-450: #949494;--ion-text-color-step-500: #898989;--ion-text-color-step-550: #7d7d7d;--ion-text-color-step-600: #717171;--ion-text-color-step-650: #656565;--ion-text-color-step-700: #595959;--ion-text-color-step-750: #4d4d4d;--ion-text-color-step-800: #414141;--ion-text-color-step-850: #363636;--ion-text-color-step-900: #2a2a2a;--ion-text-color-step-950: #1e1e1e;--ion-item-background: #1e1e1e;--ion-toolbar-background: #1f1f1f;--ion-tab-bar-background: #1f1f1f;--ion-card-background: #1e1e1e}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(layers.ef6db8722c2c3f9a.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(layers-2x.9859cd1231006a4a.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(marker-icon.d577052aa271e13f.png)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;color-adjust:exact;print-color-adjust:exact}}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.-right-5{right:-1.25rem}.-top-5{top:-1.25rem}.bottom-0{bottom:0}.right-0{right:0}.z-10{z-index:10}.z-50{z-index:50}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-4{margin:1rem}.m-6{margin:1.5rem}.mb-2{margin-bottom:.5rem}.mb-6{margin-bottom:1.5rem}.ml-auto{margin-left:auto}.mt-2{margin-top:.5rem}.mt-auto{margin-top:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-12{height:3rem}.h-48{height:12rem}.h-60{height:15rem}.h-96{height:24rem}.h-\[25em\]{height:25em}.h-full{height:100%}.min-h-full{min-height:100%}.w-1\/3{width:33.333333%}.w-1\/6{width:16.666667%}.w-12{width:3rem}.w-2\/3{width:66.666667%}.w-full{width:100%}.min-w-full{min-width:100%}.flex-grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-tl-2xl{border-top-left-radius:1rem}.rounded-tr-2xl{border-top-right-radius:1rem}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-cyan-800{--tw-bg-opacity: 1;background-color:rgb(21 94 117 / var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.bg-purple-300{--tw-bg-opacity: 1;background-color:rgb(216 180 254 / var(--tw-bg-opacity))}.bg-purple-400{--tw-bg-opacity: 1;background-color:rgb(192 132 252 / var(--tw-bg-opacity))}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity))}.bg-purple-800{--tw-bg-opacity: 1;background-color:rgb(107 33 168 / var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-opacity-60{--tw-bg-opacity: .6}.p-1{padding:.25rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.pr-2{padding-right:.5rem}.text-right{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}@media (min-width: 768px){.md\:m-10{margin:2.5rem}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-3\/4{height:75%}.md\:h-full{height:100%}.md\:flex-row{flex-direction:row}.md\:justify-end{justify-content:flex-end}.md\:text-2xl{font-size:1.5rem;line-height:2rem}}@media (min-width: 1024px){.lg\:m-10{margin:2.5rem}.lg\:ml-2{margin-left:.5rem}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-3\/4{height:75%}.lg\:h-96{height:24rem}.lg\:h-full{height:100%}.lg\:min-w-20{min-width:5rem}.lg\:flex-row{flex-direction:row}.lg\:justify-center{justify-content:center}.lg\:p-32{padding:8rem}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}}:root{--ion-color-ai_purple: #9d68be;--ion-color-ai_purple-rgb: 157,104,190;--ion-color-ai_purple-contrast: #000000;--ion-color-ai_purple-contrast-rgb: 0,0,0;--ion-color-ai_purple-shade: #8a5ca7;--ion-color-ai_purple-tint: #a777c5}.ion-color-ai_purple{--ion-color-base: var(--ion-color-ai_purple);--ion-color-base-rgb: var(--ion-color-ai_purple-rgb);--ion-color-contrast: var(--ion-color-ai_purple-contrast);--ion-color-contrast-rgb: var(--ion-color-ai_purple-contrast-rgb);--ion-color-shade: var(--ion-color-ai_purple-shade);--ion-color-tint: var(--ion-color-ai_purple-tint)} +:root{--ion-color-primary: #0054e9;--ion-color-primary-rgb: 0, 84, 233;--ion-color-primary-contrast: #fff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #004acd;--ion-color-primary-tint: #1a65eb;--ion-color-secondary: #0163aa;--ion-color-secondary-rgb: 1, 99, 170;--ion-color-secondary-contrast: #fff;--ion-color-secondary-contrast-rgb: 255, 255, 255;--ion-color-secondary-shade: #015796;--ion-color-secondary-tint: #1a73b3;--ion-color-tertiary: #6030ff;--ion-color-tertiary-rgb: 96, 48, 255;--ion-color-tertiary-contrast: #fff;--ion-color-tertiary-contrast-rgb: 255, 255, 255;--ion-color-tertiary-shade: #542ae0;--ion-color-tertiary-tint: #7045ff;--ion-color-success: #2dd55b;--ion-color-success-rgb: 45, 213, 91;--ion-color-success-contrast: #000;--ion-color-success-contrast-rgb: 0, 0, 0;--ion-color-success-shade: #28bb50;--ion-color-success-tint: #42d96b;--ion-color-warning: #ffc409;--ion-color-warning-rgb: 255, 196, 9;--ion-color-warning-contrast: #000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0ac08;--ion-color-warning-tint: #ffca22;--ion-color-danger: #c5000f;--ion-color-danger-rgb: 197, 0, 15;--ion-color-danger-contrast: #fff;--ion-color-danger-contrast-rgb: 255, 255, 255;--ion-color-danger-shade: #ad000d;--ion-color-danger-tint: #cb1a27;--ion-color-light: #f4f5f8;--ion-color-light-rgb: 244, 245, 248;--ion-color-light-contrast: #000;--ion-color-light-contrast-rgb: 0, 0, 0;--ion-color-light-shade: #d7d8da;--ion-color-light-tint: #f5f6f9;--ion-color-medium: #636469;--ion-color-medium-rgb: 99, 100, 105;--ion-color-medium-contrast: #fff;--ion-color-medium-contrast-rgb: 255, 255, 255;--ion-color-medium-shade: #57585c;--ion-color-medium-tint: #737478;--ion-color-dark: #222428;--ion-color-dark-rgb: 34, 36, 40;--ion-color-dark-contrast: #fff;--ion-color-dark-contrast-rgb: 255, 255, 255;--ion-color-dark-shade: #1e2023;--ion-color-dark-tint: #383a3e}html.ios{--ion-default-font: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif}html.md{--ion-default-font: "Roboto", "Helvetica Neue", sans-serif}html{--ion-dynamic-font: -apple-system-body;--ion-font-family: var(--ion-default-font)}body{background:var(--ion-background-color);color:var(--ion-text-color)}body.backdrop-no-scroll{overflow:hidden}html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,html.ios ion-modal ion-footer ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (min-width: 768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity: .18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity: 0;--box-shadow: none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base: var(--ion-color-primary, #0054e9) !important;--ion-color-base-rgb: var(--ion-color-primary-rgb, 0, 84, 233) !important;--ion-color-contrast: var(--ion-color-primary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-primary-shade, #004acd) !important;--ion-color-tint: var(--ion-color-primary-tint, #1a65eb) !important}.ion-color-secondary{--ion-color-base: var(--ion-color-secondary, #0163aa) !important;--ion-color-base-rgb: var(--ion-color-secondary-rgb, 1, 99, 170) !important;--ion-color-contrast: var(--ion-color-secondary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-secondary-shade, #015796) !important;--ion-color-tint: var(--ion-color-secondary-tint, #1a73b3) !important}.ion-color-tertiary{--ion-color-base: var(--ion-color-tertiary, #6030ff) !important;--ion-color-base-rgb: var(--ion-color-tertiary-rgb, 96, 48, 255) !important;--ion-color-contrast: var(--ion-color-tertiary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-tertiary-shade, #542ae0) !important;--ion-color-tint: var(--ion-color-tertiary-tint, #7045ff) !important}.ion-color-success{--ion-color-base: var(--ion-color-success, #2dd55b) !important;--ion-color-base-rgb: var(--ion-color-success-rgb, 45, 213, 91) !important;--ion-color-contrast: var(--ion-color-success-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-success-shade, #28bb50) !important;--ion-color-tint: var(--ion-color-success-tint, #42d96b) !important}.ion-color-warning{--ion-color-base: var(--ion-color-warning, #ffc409) !important;--ion-color-base-rgb: var(--ion-color-warning-rgb, 255, 196, 9) !important;--ion-color-contrast: var(--ion-color-warning-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-warning-shade, #e0ac08) !important;--ion-color-tint: var(--ion-color-warning-tint, #ffca22) !important}.ion-color-danger{--ion-color-base: var(--ion-color-danger, #c5000f) !important;--ion-color-base-rgb: var(--ion-color-danger-rgb, 197, 0, 15) !important;--ion-color-contrast: var(--ion-color-danger-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-danger-shade, #ad000d) !important;--ion-color-tint: var(--ion-color-danger-tint, #cb1a27) !important}.ion-color-light{--ion-color-base: var(--ion-color-light, #f4f5f8) !important;--ion-color-base-rgb: var(--ion-color-light-rgb, 244, 245, 248) !important;--ion-color-contrast: var(--ion-color-light-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-light-shade, #d7d8da) !important;--ion-color-tint: var(--ion-color-light-tint, #f5f6f9) !important}.ion-color-medium{--ion-color-base: var(--ion-color-medium, #636469) !important;--ion-color-base-rgb: var(--ion-color-medium-rgb, 99, 100, 105) !important;--ion-color-contrast: var(--ion-color-medium-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-medium-shade, #57585c) !important;--ion-color-tint: var(--ion-color-medium-tint, #737478) !important}.ion-color-dark{--ion-color-base: var(--ion-color-dark, #222428) !important;--ion-color-base-rgb: var(--ion-color-dark-rgb, 34, 36, 40) !important;--ion-color-contrast: var(--ion-color-dark-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-dark-shade, #1e2023) !important;--ion-color-tint: var(--ion-color-dark-tint, #383a3e) !important}.ion-page{left:0;right:0;top:0;bottom:0;display:flex;position:absolute;flex-direction:column;justify-content:space-between;contain:layout size style;z-index:0}ion-modal>.ion-page{position:relative;contain:layout style;height:100%}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding: 20px}@supports (padding-top: 20px){html{--ion-safe-area-top: var(--ion-statusbar-padding)}}@supports (padding-top: env(safe-area-inset-top)){html{--ion-safe-area-top: env(safe-area-inset-top);--ion-safe-area-bottom: env(safe-area-inset-bottom);--ion-safe-area-left: env(safe-area-inset-left);--ion-safe-area-right: env(safe-area-inset-right)}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translateZ(0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow: hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-left-radius:8px;border-bottom-right-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width: 0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:.3s transform cubic-bezier(.25,.8,.5,1)}@media (prefers-reduced-motion: reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width: 0px;--inner-border-width: 0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width: fit-content;--height: fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}[ion-last-focus],header[tabindex="-1"]:focus,[role=banner][tabindex="-1"]:focus,main[tabindex="-1"]:focus,[role=main][tabindex="-1"]:focus,h1[tabindex="-1"]:focus,[role=heading][aria-level="1"][tabindex="-1"]:focus{outline:none}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){display:none;height:0}b,strong{font-weight:700}img{max-width:100%}hr{height:1px;border-width:0;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{overflow:auto;height:auto;font:inherit;color:inherit}textarea::placeholder{padding-left:2px}form,input,optgroup,select{margin:0;font:inherit;color:inherit}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{padding:0;border:0;border-radius:0;font-family:inherit;font-style:inherit;font-variant:inherit;line-height:1;text-transform:none;cursor:pointer;-webkit-appearance:button}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{width:100%;height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}html:not(.hydrated) body{display:none}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin:0;padding:0;position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;transform:translateZ(0);text-rendering:optimizeLegibility;overflow:hidden;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;text-size-adjust:none}html{font-family:var(--ion-font-family)}@supports (-webkit-touch-callout: none){html{font:var(--ion-dynamic-font, 16px var(--ion-font-family))}}a{background-color:transparent;color:var(--ion-color-primary, #0054e9)}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}.ion-hide,.ion-hide-up,.ion-hide-down{display:none!important}@media (min-width: 576px){.ion-hide-sm-up{display:none!important}}@media (max-width: 575.98px){.ion-hide-sm-down{display:none!important}}@media (min-width: 768px){.ion-hide-md-up{display:none!important}}@media (max-width: 767.98px){.ion-hide-md-down{display:none!important}}@media (min-width: 992px){.ion-hide-lg-up{display:none!important}}@media (max-width: 991.98px){.ion-hide-lg-down{display:none!important}}@media (min-width: 1200px){.ion-hide-xl-up{display:none!important}}@media (max-width: 1199.98px){.ion-hide-xl-down{display:none!important}}.ion-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding:0}.ion-padding{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-top{--padding-top: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px)}.ion-padding-start{--padding-start: var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--padding-end: var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-padding-bottom{--padding-bottom: var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-vertical{--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-horizontal{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin:0}.ion-margin{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-top{--margin-top: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px)}.ion-margin-start{--margin-start: var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--margin-end: var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-margin-bottom{--margin-bottom: var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-vertical{--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-horizontal{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-float-left{float:left!important}.ion-float-right{float:right!important}.ion-float-start{float:left!important}:host-context([dir=rtl]) .ion-float-start{float:right!important}[dir=rtl] .ion-float-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-start:dir(rtl){float:right!important}}.ion-float-end{float:right!important}:host-context([dir=rtl]) .ion-float-end{float:left!important}[dir=rtl] .ion-float-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-end:dir(rtl){float:left!important}}@media (min-width: 576px){.ion-float-sm-left{float:left!important}.ion-float-sm-right{float:right!important}.ion-float-sm-start{float:left!important}:host-context([dir=rtl]) .ion-float-sm-start{float:right!important}[dir=rtl] .ion-float-sm-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-sm-start:dir(rtl){float:right!important}}.ion-float-sm-end{float:right!important}:host-context([dir=rtl]) .ion-float-sm-end{float:left!important}[dir=rtl] .ion-float-sm-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-sm-end:dir(rtl){float:left!important}}}@media (min-width: 768px){.ion-float-md-left{float:left!important}.ion-float-md-right{float:right!important}.ion-float-md-start{float:left!important}:host-context([dir=rtl]) .ion-float-md-start{float:right!important}[dir=rtl] .ion-float-md-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-md-start:dir(rtl){float:right!important}}.ion-float-md-end{float:right!important}:host-context([dir=rtl]) .ion-float-md-end{float:left!important}[dir=rtl] .ion-float-md-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-md-end:dir(rtl){float:left!important}}}@media (min-width: 992px){.ion-float-lg-left{float:left!important}.ion-float-lg-right{float:right!important}.ion-float-lg-start{float:left!important}:host-context([dir=rtl]) .ion-float-lg-start{float:right!important}[dir=rtl] .ion-float-lg-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-lg-start:dir(rtl){float:right!important}}.ion-float-lg-end{float:right!important}:host-context([dir=rtl]) .ion-float-lg-end{float:left!important}[dir=rtl] .ion-float-lg-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-lg-end:dir(rtl){float:left!important}}}@media (min-width: 1200px){.ion-float-xl-left{float:left!important}.ion-float-xl-right{float:right!important}.ion-float-xl-start{float:left!important}:host-context([dir=rtl]) .ion-float-xl-start{float:right!important}[dir=rtl] .ion-float-xl-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-xl-start:dir(rtl){float:right!important}}.ion-float-xl-end{float:right!important}:host-context([dir=rtl]) .ion-float-xl-end{float:left!important}[dir=rtl] .ion-float-xl-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-xl-end:dir(rtl){float:left!important}}}.ion-text-center{text-align:center!important}.ion-text-justify{text-align:justify!important}.ion-text-start{text-align:start!important}.ion-text-end{text-align:end!important}.ion-text-left{text-align:left!important}.ion-text-right{text-align:right!important}.ion-text-nowrap{white-space:nowrap!important}.ion-text-wrap{white-space:normal!important}@media (min-width: 576px){.ion-text-sm-center{text-align:center!important}.ion-text-sm-justify{text-align:justify!important}.ion-text-sm-start{text-align:start!important}.ion-text-sm-end{text-align:end!important}.ion-text-sm-left{text-align:left!important}.ion-text-sm-right{text-align:right!important}.ion-text-sm-nowrap{white-space:nowrap!important}.ion-text-sm-wrap{white-space:normal!important}}@media (min-width: 768px){.ion-text-md-center{text-align:center!important}.ion-text-md-justify{text-align:justify!important}.ion-text-md-start{text-align:start!important}.ion-text-md-end{text-align:end!important}.ion-text-md-left{text-align:left!important}.ion-text-md-right{text-align:right!important}.ion-text-md-nowrap{white-space:nowrap!important}.ion-text-md-wrap{white-space:normal!important}}@media (min-width: 992px){.ion-text-lg-center{text-align:center!important}.ion-text-lg-justify{text-align:justify!important}.ion-text-lg-start{text-align:start!important}.ion-text-lg-end{text-align:end!important}.ion-text-lg-left{text-align:left!important}.ion-text-lg-right{text-align:right!important}.ion-text-lg-nowrap{white-space:nowrap!important}.ion-text-lg-wrap{white-space:normal!important}}@media (min-width: 1200px){.ion-text-xl-center{text-align:center!important}.ion-text-xl-justify{text-align:justify!important}.ion-text-xl-start{text-align:start!important}.ion-text-xl-end{text-align:end!important}.ion-text-xl-left{text-align:left!important}.ion-text-xl-right{text-align:right!important}.ion-text-xl-nowrap{white-space:nowrap!important}.ion-text-xl-wrap{white-space:normal!important}}.ion-text-uppercase{text-transform:uppercase!important}.ion-text-lowercase{text-transform:lowercase!important}.ion-text-capitalize{text-transform:capitalize!important}@media (min-width: 576px){.ion-text-sm-uppercase{text-transform:uppercase!important}.ion-text-sm-lowercase{text-transform:lowercase!important}.ion-text-sm-capitalize{text-transform:capitalize!important}}@media (min-width: 768px){.ion-text-md-uppercase{text-transform:uppercase!important}.ion-text-md-lowercase{text-transform:lowercase!important}.ion-text-md-capitalize{text-transform:capitalize!important}}@media (min-width: 992px){.ion-text-lg-uppercase{text-transform:uppercase!important}.ion-text-lg-lowercase{text-transform:lowercase!important}.ion-text-lg-capitalize{text-transform:capitalize!important}}@media (min-width: 1200px){.ion-text-xl-uppercase{text-transform:uppercase!important}.ion-text-xl-lowercase{text-transform:lowercase!important}.ion-text-xl-capitalize{text-transform:capitalize!important}}.ion-align-self-start{align-self:flex-start!important}.ion-align-self-end{align-self:flex-end!important}.ion-align-self-center{align-self:center!important}.ion-align-self-stretch{align-self:stretch!important}.ion-align-self-baseline{align-self:baseline!important}.ion-align-self-auto{align-self:auto!important}.ion-wrap{flex-wrap:wrap!important}.ion-nowrap{flex-wrap:nowrap!important}.ion-wrap-reverse{flex-wrap:wrap-reverse!important}.ion-justify-content-start{justify-content:flex-start!important}.ion-justify-content-center{justify-content:center!important}.ion-justify-content-end{justify-content:flex-end!important}.ion-justify-content-around{justify-content:space-around!important}.ion-justify-content-between{justify-content:space-between!important}.ion-justify-content-evenly{justify-content:space-evenly!important}.ion-align-items-start{align-items:flex-start!important}.ion-align-items-center{align-items:center!important}.ion-align-items-end{align-items:flex-end!important}.ion-align-items-stretch{align-items:stretch!important}.ion-align-items-baseline{align-items:baseline!important}:root{--ion-color-primary: #4d8dff;--ion-color-primary-rgb: 77, 141, 255;--ion-color-primary-contrast: #000;--ion-color-primary-contrast-rgb: 0, 0, 0;--ion-color-primary-shade: #447ce0;--ion-color-primary-tint: #5f98ff;--ion-color-secondary: #46b1ff;--ion-color-secondary-rgb: 70, 177, 255;--ion-color-secondary-contrast: #000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #3e9ce0;--ion-color-secondary-tint: #59b9ff;--ion-color-tertiary: #8482fb;--ion-color-tertiary-rgb: 132, 130, 251;--ion-color-tertiary-contrast: #000;--ion-color-tertiary-contrast-rgb: 0, 0, 0;--ion-color-tertiary-shade: #7472dd;--ion-color-tertiary-tint: #908ffb;--ion-color-success: #2dd55b;--ion-color-success-rgb: 45, 213, 91;--ion-color-success-contrast: #000;--ion-color-success-contrast-rgb: 0, 0, 0;--ion-color-success-shade: #28bb50;--ion-color-success-tint: #42d96b;--ion-color-warning: #ffce31;--ion-color-warning-rgb: 255, 206, 49;--ion-color-warning-contrast: #000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0b52b;--ion-color-warning-tint: #ffd346;--ion-color-danger: #f24c58;--ion-color-danger-rgb: 242, 76, 88;--ion-color-danger-contrast: #000;--ion-color-danger-contrast-rgb: 0, 0, 0;--ion-color-danger-shade: #d5434d;--ion-color-danger-tint: #f35e69;--ion-color-light: #222428;--ion-color-light-rgb: 34, 36, 40;--ion-color-light-contrast: #fff;--ion-color-light-contrast-rgb: 255, 255, 255;--ion-color-light-shade: #1e2023;--ion-color-light-tint: #383a3e;--ion-color-medium: #989aa2;--ion-color-medium-rgb: 152, 154, 162;--ion-color-medium-contrast: #000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #86888f;--ion-color-medium-tint: #a2a4ab;--ion-color-dark: #f4f5f8;--ion-color-dark-rgb: 244, 245, 248;--ion-color-dark-contrast: #000;--ion-color-dark-contrast-rgb: 0, 0, 0;--ion-color-dark-shade: #d7d8da;--ion-color-dark-tint: #f5f6f9}:root.ios{--ion-background-color: #000000;--ion-background-color-rgb: 0, 0, 0;--ion-text-color: #ffffff;--ion-text-color-rgb: 255, 255, 255;--ion-background-color-step-50: #0d0d0d;--ion-background-color-step-100: #1a1a1a;--ion-background-color-step-150: #262626;--ion-background-color-step-200: #333333;--ion-background-color-step-250: #404040;--ion-background-color-step-300: #4d4d4d;--ion-background-color-step-350: #595959;--ion-background-color-step-400: #666666;--ion-background-color-step-450: #737373;--ion-background-color-step-500: #808080;--ion-background-color-step-550: #8c8c8c;--ion-background-color-step-600: #999999;--ion-background-color-step-650: #a6a6a6;--ion-background-color-step-700: #b3b3b3;--ion-background-color-step-750: #bfbfbf;--ion-background-color-step-800: #cccccc;--ion-background-color-step-850: #d9d9d9;--ion-background-color-step-900: #e6e6e6;--ion-background-color-step-950: #f2f2f2;--ion-text-color-step-50: #f2f2f2;--ion-text-color-step-100: #e6e6e6;--ion-text-color-step-150: #d9d9d9;--ion-text-color-step-200: #cccccc;--ion-text-color-step-250: #bfbfbf;--ion-text-color-step-300: #b3b3b3;--ion-text-color-step-350: #a6a6a6;--ion-text-color-step-400: #999999;--ion-text-color-step-450: #8c8c8c;--ion-text-color-step-500: #808080;--ion-text-color-step-550: #737373;--ion-text-color-step-600: #666666;--ion-text-color-step-650: #595959;--ion-text-color-step-700: #4d4d4d;--ion-text-color-step-750: #404040;--ion-text-color-step-800: #333333;--ion-text-color-step-850: #262626;--ion-text-color-step-900: #1a1a1a;--ion-text-color-step-950: #0d0d0d;--ion-item-background: #000000;--ion-card-background: #1c1c1d}:root.ios ion-modal{--ion-background-color: var(--ion-color-step-100, var(--ion-background-color-step-100));--ion-toolbar-background: var(--ion-color-step-150, var(--ion-background-color-step-150));--ion-toolbar-border-color: var(--ion-color-step-250, var(--ion-background-color-step-250))}:root.md{--ion-background-color: #121212;--ion-background-color-rgb: 18, 18, 18;--ion-text-color: #ffffff;--ion-text-color-rgb: 255, 255, 255;--ion-background-color-step-50: #1e1e1e;--ion-background-color-step-100: #2a2a2a;--ion-background-color-step-150: #363636;--ion-background-color-step-200: #414141;--ion-background-color-step-250: #4d4d4d;--ion-background-color-step-300: #595959;--ion-background-color-step-350: #656565;--ion-background-color-step-400: #717171;--ion-background-color-step-450: #7d7d7d;--ion-background-color-step-500: #898989;--ion-background-color-step-550: #949494;--ion-background-color-step-600: #a0a0a0;--ion-background-color-step-650: #acacac;--ion-background-color-step-700: #b8b8b8;--ion-background-color-step-750: #c4c4c4;--ion-background-color-step-800: #d0d0d0;--ion-background-color-step-850: #dbdbdb;--ion-background-color-step-900: #e7e7e7;--ion-background-color-step-950: #f3f3f3;--ion-text-color-step-50: #f3f3f3;--ion-text-color-step-100: #e7e7e7;--ion-text-color-step-150: #dbdbdb;--ion-text-color-step-200: #d0d0d0;--ion-text-color-step-250: #c4c4c4;--ion-text-color-step-300: #b8b8b8;--ion-text-color-step-350: #acacac;--ion-text-color-step-400: #a0a0a0;--ion-text-color-step-450: #949494;--ion-text-color-step-500: #898989;--ion-text-color-step-550: #7d7d7d;--ion-text-color-step-600: #717171;--ion-text-color-step-650: #656565;--ion-text-color-step-700: #595959;--ion-text-color-step-750: #4d4d4d;--ion-text-color-step-800: #414141;--ion-text-color-step-850: #363636;--ion-text-color-step-900: #2a2a2a;--ion-text-color-step-950: #1e1e1e;--ion-item-background: #1e1e1e;--ion-toolbar-background: #1f1f1f;--ion-tab-bar-background: #1f1f1f;--ion-card-background: #1e1e1e}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(layers.ef6db8722c2c3f9a.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(layers-2x.9859cd1231006a4a.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(marker-icon.d577052aa271e13f.png)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;color-adjust:exact;print-color-adjust:exact}}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.bottom-0{bottom:0}.right-0{right:0}.z-10{z-index:10}.z-50{z-index:50}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-4{margin:1rem}.m-6{margin:1.5rem}.mb-2{margin-bottom:.5rem}.mb-6{margin-bottom:1.5rem}.ml-auto{margin-left:auto}.mt-2{margin-top:.5rem}.mt-auto{margin-top:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-12{height:3rem}.h-48{height:12rem}.h-60{height:15rem}.h-96{height:24rem}.h-\[25em\]{height:25em}.h-full{height:100%}.min-h-full{min-height:100%}.w-1\/3{width:33.333333%}.w-1\/6{width:16.666667%}.w-12{width:3rem}.w-2\/3{width:66.666667%}.w-full{width:100%}.min-w-full{min-width:100%}.flex-grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-tl-2xl{border-top-left-radius:1rem}.rounded-tr-2xl{border-top-right-radius:1rem}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-cyan-800{--tw-bg-opacity: 1;background-color:rgb(21 94 117 / var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.bg-purple-300{--tw-bg-opacity: 1;background-color:rgb(216 180 254 / var(--tw-bg-opacity))}.bg-purple-400{--tw-bg-opacity: 1;background-color:rgb(192 132 252 / var(--tw-bg-opacity))}.bg-purple-800{--tw-bg-opacity: 1;background-color:rgb(107 33 168 / var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-opacity-60{--tw-bg-opacity: .6}.p-1{padding:.25rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.pr-2{padding-right:.5rem}.text-right{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}@media (min-width: 768px){.md\:m-10{margin:2.5rem}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-3\/4{height:75%}.md\:h-full{height:100%}.md\:flex-row{flex-direction:row}.md\:justify-end{justify-content:flex-end}.md\:p-4{padding:1rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}}@media (min-width: 1024px){.lg\:m-10{margin:2.5rem}.lg\:ml-2{margin-left:.5rem}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-3\/4{height:75%}.lg\:h-96{height:24rem}.lg\:h-full{height:100%}.lg\:min-w-20{min-width:5rem}.lg\:flex-row{flex-direction:row}.lg\:justify-center{justify-content:center}.lg\:p-32{padding:8rem}.lg\:p-4{padding:1rem}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}}:root{--ion-color-ai_purple: #9d68be;--ion-color-ai_purple-rgb: 157,104,190;--ion-color-ai_purple-contrast: #000000;--ion-color-ai_purple-contrast-rgb: 0,0,0;--ion-color-ai_purple-shade: #8a5ca7;--ion-color-ai_purple-tint: #a777c5}.ion-color-ai_purple{--ion-color-base: var(--ion-color-ai_purple);--ion-color-base-rgb: var(--ion-color-ai_purple-rgb);--ion-color-contrast: var(--ion-color-ai_purple-contrast);--ion-color-contrast-rgb: var(--ion-color-ai_purple-contrast-rgb);--ion-color-shade: var(--ion-color-ai_purple-shade);--ion-color-tint: var(--ion-color-ai_purple-tint)}