diff --git a/data_svelte/build/bundle.css b/data_svelte/build/bundle.css index b98a6922..260dccbb 100644 --- a/data_svelte/build/bundle.css +++ b/data_svelte/build/bundle.css @@ -11,7 +11,7 @@ Consolas, 'Liberation Mono', Menlo, - monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type='button']{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-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}button{background-color:transparent;background-image:none}fieldset{margin:0;padding:0}ol,ul{list-style:none;margin:0;padding:0}html{font-family:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";line-height:1.5}body{font-family:inherit;line-height:inherit}*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}pre,code,kbd,samp{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}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-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.grd-1col1{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));justify-items:center}.grd-2col1{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));justify-items:center;gap:1rem}@media(min-width: 640px){.grd-2col1{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1024px){.grd-2col1{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1280px){.grd-2col1{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1536px){.grd-2col1{grid-template-columns:repeat(2, minmax(0, 1fr))}}.grd-2col2{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));justify-items:center;gap:1rem}.grd-3col1{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));justify-items:center;gap:1rem}@media(min-width: 640px){.grd-3col1{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1024px){.grd-3col1{grid-template-columns:repeat(3, minmax(0, 1fr))}}@media(min-width: 1280px){.grd-3col1{grid-template-columns:repeat(3, minmax(0, 1fr))}}@media(min-width: 1536px){.grd-3col1{grid-template-columns:repeat(3, minmax(0, 1fr))}}.crd-itm-psn{margin-bottom:0.75rem;display:flex;height:2rem;align-items:center}.wgt-dscr-w{width:66.666667%}.wgt-dscr-stl{padding-right:1rem;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.wgt-w{display:flex;width:33.333333%;justify-content:flex-end}.wgt-adt-stl{text-align:center;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.tbl{margin-top:0.5rem;margin-bottom:0.5rem;width:100%;table-layout:fixed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.tbl-hd{overflow-wrap:break-word;padding-left:0.25rem;padding-right:0.25rem;text-align:center;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.tbl-bdy-lg{overflow-wrap:break-word;padding-left:0.25rem;padding-right:0.25rem;text-align:center}.tbl-bdy-sm{overflow-wrap:break-word;padding-left:0.25rem;padding-right:0.25rem}.ipt-lg{margin-top:0.5rem;height:1rem;align-content:center;border-width:2px;--tw-border-opacity:1;border-color:rgba(243, 244, 246, var(--tw-border-opacity))}.ipt-lg:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.ipt-lg{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.ipt-lg:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.ipt-lg{text-align:center;line-height:1.25;--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.ipt-lg:focus{outline:2px solid transparent;outline-offset:2px}@media(min-width: 640px){.ipt-lg{height:1.75rem}}@media(min-width: 768px){.ipt-lg{height:1.75rem}}@media(min-width: 1024px){.ipt-lg{height:1.75rem}}@media(min-width: 1280px){.ipt-lg{height:1.75rem}}@media(min-width: 1536px){.ipt-lg{height:1.75rem}}.ipt-sm{height:0.75rem;align-content:center;border-radius:0.125rem;border-width:2px;--tw-border-opacity:1;border-color:rgba(243, 244, 246, var(--tw-border-opacity))}.ipt-sm:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.ipt-sm{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.ipt-sm:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.ipt-sm{text-align:center;line-height:1.25;--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.ipt-sm:focus{outline:2px solid transparent;outline-offset:2px}@media(min-width: 640px){.ipt-sm{height:1.5rem}}@media(min-width: 768px){.ipt-sm{height:1.5rem}}@media(min-width: 1024px){.ipt-sm{height:1.5rem}}@media(min-width: 1280px){.ipt-sm{height:1.5rem}}@media(min-width: 1536px){.ipt-sm{height:1.5rem}}.ipt-rnd{height:2rem;width:100%;align-content:center;border-radius:0.25rem;border-width:2px;--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.ipt-rnd:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.ipt-rnd{padding-left:0.5rem;padding-right:0.5rem;line-height:1.25;--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.ipt-rnd:focus{outline:2px solid transparent;outline-offset:2px}.ipt-big{height:2rem;width:100%;align-content:center;border-radius:0.25rem;border-width:2px;--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.ipt-big:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.ipt-big{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.ipt-big:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.ipt-big{padding-left:0.5rem;padding-right:0.5rem;line-height:1.25;--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.ipt-big:focus{outline:2px solid transparent;outline-offset:2px}.txt-ita{display:inline-block;text-align:right;vertical-align:top;font-style:italic;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.txt-pad{padding-left:0.5rem;padding-right:0.5rem;padding-top:0px;padding-bottom:0px}@media(min-width: 640px){.txt-pad{padding-top:0px;padding-bottom:0px}}@media(min-width: 768px){.txt-pad{padding-top:0px;padding-bottom:0px}}@media(min-width: 1024px){.txt-pad{padding-top:0.25rem;padding-bottom:0.25rem}}@media(min-width: 1280px){.txt-pad{padding-top:0.5rem;padding-bottom:0.5rem}}@media(min-width: 1536px){.txt-pad{padding-top:0.5rem;padding-bottom:0.5rem}}.txt-sz{font-size:.5rem}@media(min-width: 640px){.txt-sz{font-size:1rem}}@media(min-width: 768px){.txt-sz{font-size:1rem}}@media(min-width: 1024px){.txt-sz{font-size:1rem}}@media(min-width: 1280px){.txt-sz{font-size:1rem}}@media(min-width: 1536px){.txt-sz{font-size:1rem}}.btn-lg{margin-top:0px;display:flex;height:1.5rem;width:100%;align-content:center;justify-content:center;overflow-wrap:break-word;border-radius:0.25rem;border-width:1px;--tw-border-opacity:1;border-color:rgba(209, 213, 219, var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(219, 234, 254, var(--tw-bg-opacity))}.btn-lg:hover{--tw-bg-opacity:1;background-color:rgba(191, 219, 254, var(--tw-bg-opacity))}.btn-lg{font-size:.875rem;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}@media(min-width: 640px){.btn-lg{height:2rem;font-size:1rem}}@media(min-width: 768px){.btn-lg{height:2rem;font-size:1rem}}@media(min-width: 1024px){.btn-lg{height:2rem;font-size:1rem}}@media(min-width: 1280px){.btn-lg{height:2rem;font-size:1rem}}@media(min-width: 1536px){.btn-lg{height:2rem;font-size:1rem}}.slct-lg{margin-bottom:0px;display:flex;height:1.5rem;width:100%;align-content:center;justify-content:center;overflow-wrap:break-word;border-radius:0.25rem;border-width:1px;--tw-border-opacity:1;border-color:rgba(209, 213, 219, var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(219, 234, 254, var(--tw-bg-opacity))}.slct-lg:hover{--tw-bg-opacity:1;background-color:rgba(191, 219, 254, var(--tw-bg-opacity))}.slct-lg{font-size:.875rem;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}@media(min-width: 640px){.slct-lg{height:2rem;font-size:1rem}}@media(min-width: 768px){.slct-lg{height:2rem;font-size:1rem}}@media(min-width: 1024px){.slct-lg{height:2rem;font-size:1rem}}@media(min-width: 1280px){.slct-lg{height:2rem;font-size:1rem}}@media(min-width: 1536px){.slct-lg{height:2rem;font-size:1rem}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0px;right:0px;bottom:0px;left:0px}.top-1{top:0.25rem}.left-1{left:0.25rem}.z-10{z-index:10}.z-50{z-index:50}.m-auto{margin:auto}.mt-0{margin-top:0px}.mt-2{margin-top:0.5rem}.mt-3{margin-top:0.75rem}.mb-0{margin-bottom:0px}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.ml-0{margin-left:0px}.ml-36{margin-left:9rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-3{height:0.75rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-10{height:2.5rem}.h-20{height:5rem}.h-auto{height:auto}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-4{width:1rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-10{width:2.5rem}.w-20{width:5rem}.w-1\/4{width:25%}.w-3\/4{width:75%}.w-full{width:100%}.flex-1{flex:1 1 0%}.table-fixed{table-layout:fixed}.transform{--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;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@-webkit-keyframes spin{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@-webkit-keyframes ping{75%,100%{transform:scale(2);opacity:0}}@keyframes ping{75%,100%{transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}@keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}.animate-spin{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.flex-col{flex-direction:column}.content-center{align-content:center}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-4{gap:1rem}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.break-words{overflow-wrap:break-word}.rounded{border-radius:0.25rem}.rounded-md{border-radius:0.375rem}.rounded-lg{border-radius:0.5rem}.rounded-full{border-radius:9999px}.border-2{border-width:2px}.border-4{border-width:4px}.border{border-width:1px}.border-solid{border-style:solid}.border-transparent{border-color:transparent}.border-gray-100{--tw-border-opacity:1;border-color:rgba(243, 244, 246, var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgba(209, 213, 219, var(--tw-border-opacity))}.border-red-500{--tw-border-opacity:1;border-color:rgba(239, 68, 68, var(--tw-border-opacity))}.border-blue-400{--tw-border-opacity:1;border-color:rgba(96, 165, 250, var(--tw-border-opacity))}.border-indigo-500{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.focus\:border-indigo-500:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgba(243, 244, 246, var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgba(229, 231, 235, var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgba(107, 114, 128, var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgba(75, 85, 99, var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgba(254, 242, 242, var(--tw-bg-opacity))}.bg-red-400{--tw-bg-opacity:1;background-color:rgba(248, 113, 113, var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity:1;background-color:rgba(220, 38, 38, var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity:1;background-color:rgba(236, 253, 245, var(--tw-bg-opacity))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgba(219, 234, 254, var(--tw-bg-opacity))}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgba(99, 102, 241, var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgba(185, 28, 28, var(--tw-bg-opacity))}.hover\:bg-blue-200:hover{--tw-bg-opacity:1;background-color:rgba(191, 219, 254, var(--tw-bg-opacity))}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:rgba(67, 56, 202, var(--tw-bg-opacity))}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-opacity-75{--tw-bg-opacity:0.75}.bg-cover{background-size:cover}.p-0{padding:0px}.p-2{padding:0.5rem}.px-1{padding-left:0.25rem;padding-right:0.25rem}.px-2{padding-left:0.5rem;padding-right:0.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0{padding-top:0px;padding-bottom:0px}.py-1{padding-top:0.25rem;padding-bottom:0.25rem}.py-2{padding-top:0.5rem;padding-bottom:0.5rem}.py-3{padding-top:0.75rem;padding-bottom:0.75rem}.pt-0{padding-top:0px}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pr-4{padding-right:1rem}.pb-4{padding-bottom:1rem}.pb-20{padding-bottom:5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.text-xxs{font-size:.5rem}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.italic{font-style:italic}.leading-6{line-height:1.5rem}.leading-tight{line-height:1.25}.text-black{--tw-text-opacity:1;color:rgba(0, 0, 0, var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgba(255, 255, 255, var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgba(17, 24, 39, var(--tw-text-opacity))}.text-red-400{--tw-text-opacity:1;color:rgba(248, 113, 113, var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgba(239, 68, 68, var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity:1;color:rgba(245, 158, 11, var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgba(52, 211, 153, var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgba(16, 185, 129, var(--tw-text-opacity))}*,::before,::after{--tw-shadow:0 0 #0000}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}*,::before,::after{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59, 130, 246, 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}.focus\:ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(239, 68, 68, var(--tw-ring-opacity))}.focus\:ring-indigo-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(129, 140, 248, var(--tw-ring-opacity))}.focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(99, 102, 241, var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition{transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}#menu__toggle{position:relative;opacity:0}#menu__toggle:checked~.menu__btn>span{transform:rotate(45deg)}#menu__toggle:checked~.menu__btn>span::before{top:0;transform:rotate(0)}#menu__toggle:checked~.menu__btn>span::after{top:0;transform:rotate(90deg)}#menu__toggle:checked~.menu__box{visibility:visible;left:0}#menu__toggle:checked~.menu__main{margin-left:150px;transition-duration:0.25s}.menu__btn{display:flex;align-items:center;position:fixed;z-index:1;top:10px;left:20px;width:20px;height:20px;cursor:pointer}.menu__btn>span,.menu__btn>span::before,.menu__btn>span::after{display:block;position:absolute;width:100%;height:2px;background-color:#616161;transition-duration:0.25s}.menu__btn>span::before{content:"";top:-8px}.menu__btn>span::after{content:"";top:8px}.menu__box{display:block;position:fixed;visibility:hidden;top:0;left:-100%;width:150px;height:100%;margin:0;padding:80px 0;list-style:none;background-color:#eceff1;box-shadow:1px 0px 6px rgba(0, 0, 0, 0.2);transition-duration:0.25s}.menu__item{display:block;padding:12px 24px;color:rgba(51, 51, 51, 0.788);font-family:"Roboto", sans-serif;font-size:15px;font-weight:600;text-decoration:none;transition-duration:0.25s}.menu__item:hover{background-color:#cfd8dc}.upper__bar{background-color:rgba(51, 51, 51, 0.144);height:70px;position:fixed;z-index:-1;top:0px;left:0;width:100%;margin:0;padding:0;box-shadow:1px 0px 3px rgba(0, 0, 0, 0.2)}input[type="date"]::-webkit-calendar-picker-indicator{margin-left:5px;margin-right:-8px}input[type="time"]::-webkit-calendar-picker-indicator{margin-left:5px;margin-right:-8px}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{margin-left:7px;margin-right:-6px;width:30px;height:30px;opacity:1}input:checked~.dot{transform:translateX(100%)}@media(min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mt-0{margin-top:0px}.sm\:ml-3{margin-left:0.75rem}.sm\:ml-4{margin-left:1rem}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:flex{display:flex}.sm\:h-6{height:1.5rem}.sm\:h-7{height:1.75rem}.sm\:h-8{height:2rem}.sm\:h-screen{height:100vh}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-lg{max-width:32rem}.sm\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-start{align-items:flex-start}.sm\:p-0{padding:0px}.sm\:p-2{padding:0.5rem}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-0{padding-top:0px;padding-bottom:0px}.sm\:pb-4{padding-bottom:1rem}.sm\:text-left{text-align:left}.sm\:align-middle{vertical-align:middle}.sm\:text-sm{font-size:.875rem}.sm\:text-base{font-size:1rem}}@media(min-width: 768px){.md\:h-6{height:1.5rem}.md\:h-7{height:1.75rem}.md\:h-8{height:2rem}.md\:p-2{padding:0.5rem}.md\:py-0{padding-top:0px;padding-bottom:0px}.md\:text-base{font-size:1rem}}@media(min-width: 1024px){.lg\:h-6{height:1.5rem}.lg\:h-7{height:1.75rem}.lg\:h-8{height:2rem}.lg\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.lg\:p-2{padding:0.5rem}.lg\:py-1{padding-top:0.25rem;padding-bottom:0.25rem}.lg\:text-base{font-size:1rem}.lg\:shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}}@media(min-width: 1280px){.xl\:h-6{height:1.5rem}.xl\:h-7{height:1.75rem}.xl\:h-8{height:2rem}.xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.xl\:px-4{padding-left:1rem;padding-right:1rem}.xl\:px-8{padding-left:2rem;padding-right:2rem}.xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.xl\:py-4{padding-top:1rem;padding-bottom:1rem}.xl\:text-base{font-size:1rem}}@media(min-width: 1536px){.\32xl\:h-6{height:1.5rem}.\32xl\:h-7{height:1.75rem}.\32xl\:h-8{height:2rem}.\32xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.\32xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.\32xl\:px-4{padding-left:1rem;padding-right:1rem}.\32xl\:px-8{padding-left:2rem;padding-right:2rem}.\32xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.\32xl\:py-4{padding-top:1rem;padding-bottom:1rem}.\32xl\:text-base{font-size:1rem}}*,::before,::after{box-sizing:border-box}html{-moz-tab-size:4;-o-tab-size:4;tab-size:4}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}body{font-family:system-ui, + monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type='button']{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-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}button{background-color:transparent;background-image:none}fieldset{margin:0;padding:0}ol,ul{list-style:none;margin:0;padding:0}html{font-family:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";line-height:1.5}body{font-family:inherit;line-height:inherit}*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}pre,code,kbd,samp{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}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-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.grd-1col1{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));justify-items:center}.grd-2col1{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));justify-items:center;gap:1rem}@media(min-width: 640px){.grd-2col1{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1024px){.grd-2col1{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1280px){.grd-2col1{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1536px){.grd-2col1{grid-template-columns:repeat(2, minmax(0, 1fr))}}.grd-2col2{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));justify-items:center;gap:1rem}.grd-3col1{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));justify-items:center;gap:1rem}@media(min-width: 640px){.grd-3col1{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1024px){.grd-3col1{grid-template-columns:repeat(3, minmax(0, 1fr))}}@media(min-width: 1280px){.grd-3col1{grid-template-columns:repeat(3, minmax(0, 1fr))}}@media(min-width: 1536px){.grd-3col1{grid-template-columns:repeat(3, minmax(0, 1fr))}}.crd-itm-psn{margin-bottom:0.75rem;display:flex;height:2rem;align-items:center}.wgt-dscr-w{width:66.666667%}.wgt-dscr-stl{padding-right:1rem;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.wgt-w{display:flex;width:33.333333%;justify-content:flex-end}.wgt-adt-stl{text-align:center;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.tbl{margin-top:0.5rem;margin-bottom:0.5rem;width:100%;table-layout:fixed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.tbl-hd{overflow-wrap:break-word;padding-left:0.25rem;padding-right:0.25rem;text-align:center;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.tbl-bdy-lg{overflow-wrap:break-word;padding-left:0.25rem;padding-right:0.25rem;text-align:center}.tbl-bdy-sm{overflow-wrap:break-word;padding-left:0.25rem;padding-right:0.25rem}.ipt-lg{margin-top:0.5rem;height:1rem;align-content:center;border-width:2px;--tw-border-opacity:1;border-color:rgba(243, 244, 246, var(--tw-border-opacity))}.ipt-lg:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.ipt-lg{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.ipt-lg:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.ipt-lg{text-align:center;line-height:1.25;--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.ipt-lg:focus{outline:2px solid transparent;outline-offset:2px}@media(min-width: 640px){.ipt-lg{height:1.75rem}}@media(min-width: 768px){.ipt-lg{height:1.75rem}}@media(min-width: 1024px){.ipt-lg{height:1.75rem}}@media(min-width: 1280px){.ipt-lg{height:1.75rem}}@media(min-width: 1536px){.ipt-lg{height:1.75rem}}.ipt-sm{height:0.75rem;align-content:center;border-radius:0.125rem;border-width:2px;--tw-border-opacity:1;border-color:rgba(243, 244, 246, var(--tw-border-opacity))}.ipt-sm:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.ipt-sm{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.ipt-sm:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.ipt-sm{text-align:center;line-height:1.25;--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.ipt-sm:focus{outline:2px solid transparent;outline-offset:2px}@media(min-width: 640px){.ipt-sm{height:1.5rem}}@media(min-width: 768px){.ipt-sm{height:1.5rem}}@media(min-width: 1024px){.ipt-sm{height:1.5rem}}@media(min-width: 1280px){.ipt-sm{height:1.5rem}}@media(min-width: 1536px){.ipt-sm{height:1.5rem}}.ipt-rnd{height:2rem;width:100%;align-content:center;border-radius:0.25rem;border-width:2px;--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.ipt-rnd:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.ipt-rnd{padding-left:0.5rem;padding-right:0.5rem;line-height:1.25;--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.ipt-rnd:focus{outline:2px solid transparent;outline-offset:2px}.ipt-big{height:2rem;width:100%;align-content:center;border-radius:0.25rem;border-width:2px;--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.ipt-big:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.ipt-big{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.ipt-big:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.ipt-big{padding-left:0.5rem;padding-right:0.5rem;line-height:1.25;--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.ipt-big:focus{outline:2px solid transparent;outline-offset:2px}.txt-ita{display:inline-block;text-align:right;vertical-align:top;font-style:italic;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.txt-pad{padding-left:0.5rem;padding-right:0.5rem;padding-top:0px;padding-bottom:0px}@media(min-width: 640px){.txt-pad{padding-top:0px;padding-bottom:0px}}@media(min-width: 768px){.txt-pad{padding-top:0px;padding-bottom:0px}}@media(min-width: 1024px){.txt-pad{padding-top:0.25rem;padding-bottom:0.25rem}}@media(min-width: 1280px){.txt-pad{padding-top:0.5rem;padding-bottom:0.5rem}}@media(min-width: 1536px){.txt-pad{padding-top:0.5rem;padding-bottom:0.5rem}}.txt-sz{font-size:.5rem}@media(min-width: 640px){.txt-sz{font-size:1rem}}@media(min-width: 768px){.txt-sz{font-size:1rem}}@media(min-width: 1024px){.txt-sz{font-size:1rem}}@media(min-width: 1280px){.txt-sz{font-size:1rem}}@media(min-width: 1536px){.txt-sz{font-size:1rem}}.btn-lg{margin-top:0px;display:flex;height:1.5rem;width:100%;align-content:center;justify-content:center;overflow-wrap:break-word;border-radius:0.25rem;border-width:1px;--tw-border-opacity:1;border-color:rgba(209, 213, 219, var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(219, 234, 254, var(--tw-bg-opacity))}.btn-lg:hover{--tw-bg-opacity:1;background-color:rgba(191, 219, 254, var(--tw-bg-opacity))}.btn-lg{font-size:.875rem;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}@media(min-width: 640px){.btn-lg{height:2rem;font-size:1rem}}@media(min-width: 768px){.btn-lg{height:2rem;font-size:1rem}}@media(min-width: 1024px){.btn-lg{height:2rem;font-size:1rem}}@media(min-width: 1280px){.btn-lg{height:2rem;font-size:1rem}}@media(min-width: 1536px){.btn-lg{height:2rem;font-size:1rem}}.slct-lg{margin-bottom:0px;display:flex;height:1.5rem;width:100%;align-content:center;justify-content:center;overflow-wrap:break-word;border-radius:0.25rem;border-width:1px;--tw-border-opacity:1;border-color:rgba(209, 213, 219, var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(219, 234, 254, var(--tw-bg-opacity))}.slct-lg:hover{--tw-bg-opacity:1;background-color:rgba(191, 219, 254, var(--tw-bg-opacity))}.slct-lg{font-size:.875rem;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}@media(min-width: 640px){.slct-lg{height:2rem;font-size:1rem}}@media(min-width: 768px){.slct-lg{height:2rem;font-size:1rem}}@media(min-width: 1024px){.slct-lg{height:2rem;font-size:1rem}}@media(min-width: 1280px){.slct-lg{height:2rem;font-size:1rem}}@media(min-width: 1536px){.slct-lg{height:2rem;font-size:1rem}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0px;right:0px;bottom:0px;left:0px}.top-1{top:0.25rem}.left-1{left:0.25rem}.z-10{z-index:10}.z-50{z-index:50}.m-auto{margin:auto}.mt-0{margin-top:0px}.mt-2{margin-top:0.5rem}.mt-3{margin-top:0.75rem}.mb-0{margin-bottom:0px}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.ml-0{margin-left:0px}.ml-36{margin-left:9rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-3{height:0.75rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-10{height:2.5rem}.h-20{height:5rem}.h-auto{height:auto}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-4{width:1rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-10{width:2.5rem}.w-20{width:5rem}.w-1\/4{width:25%}.w-3\/4{width:75%}.w-1\/12{width:8.333333%}.w-11\/12{width:91.666667%}.w-full{width:100%}.flex-1{flex:1 1 0%}.table-fixed{table-layout:fixed}.transform{--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;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@-webkit-keyframes spin{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@-webkit-keyframes ping{75%,100%{transform:scale(2);opacity:0}}@keyframes ping{75%,100%{transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}@keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}.animate-spin{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.flex-col{flex-direction:column}.content-center{align-content:center}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-4{gap:1rem}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.break-words{overflow-wrap:break-word}.rounded{border-radius:0.25rem}.rounded-md{border-radius:0.375rem}.rounded-lg{border-radius:0.5rem}.rounded-full{border-radius:9999px}.border-2{border-width:2px}.border-4{border-width:4px}.border{border-width:1px}.border-solid{border-style:solid}.border-transparent{border-color:transparent}.border-gray-100{--tw-border-opacity:1;border-color:rgba(243, 244, 246, var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgba(209, 213, 219, var(--tw-border-opacity))}.border-red-500{--tw-border-opacity:1;border-color:rgba(239, 68, 68, var(--tw-border-opacity))}.border-blue-400{--tw-border-opacity:1;border-color:rgba(96, 165, 250, var(--tw-border-opacity))}.border-indigo-500{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.focus\:border-indigo-500:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgba(243, 244, 246, var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgba(229, 231, 235, var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgba(107, 114, 128, var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgba(75, 85, 99, var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgba(254, 242, 242, var(--tw-bg-opacity))}.bg-red-400{--tw-bg-opacity:1;background-color:rgba(248, 113, 113, var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity:1;background-color:rgba(220, 38, 38, var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity:1;background-color:rgba(236, 253, 245, var(--tw-bg-opacity))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgba(219, 234, 254, var(--tw-bg-opacity))}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgba(99, 102, 241, var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgba(185, 28, 28, var(--tw-bg-opacity))}.hover\:bg-blue-200:hover{--tw-bg-opacity:1;background-color:rgba(191, 219, 254, var(--tw-bg-opacity))}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:rgba(67, 56, 202, var(--tw-bg-opacity))}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-opacity-75{--tw-bg-opacity:0.75}.bg-cover{background-size:cover}.p-0{padding:0px}.p-2{padding:0.5rem}.px-1{padding-left:0.25rem;padding-right:0.25rem}.px-2{padding-left:0.5rem;padding-right:0.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0{padding-top:0px;padding-bottom:0px}.py-1{padding-top:0.25rem;padding-bottom:0.25rem}.py-2{padding-top:0.5rem;padding-bottom:0.5rem}.py-3{padding-top:0.75rem;padding-bottom:0.75rem}.pt-0{padding-top:0px}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pr-4{padding-right:1rem}.pb-4{padding-bottom:1rem}.pb-20{padding-bottom:5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.text-xxs{font-size:.5rem}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.italic{font-style:italic}.leading-6{line-height:1.5rem}.leading-tight{line-height:1.25}.text-black{--tw-text-opacity:1;color:rgba(0, 0, 0, var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgba(255, 255, 255, var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgba(17, 24, 39, var(--tw-text-opacity))}.text-red-400{--tw-text-opacity:1;color:rgba(248, 113, 113, var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgba(239, 68, 68, var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity:1;color:rgba(245, 158, 11, var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgba(52, 211, 153, var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgba(16, 185, 129, var(--tw-text-opacity))}*,::before,::after{--tw-shadow:0 0 #0000}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}*,::before,::after{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59, 130, 246, 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}.focus\:ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(239, 68, 68, var(--tw-ring-opacity))}.focus\:ring-indigo-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(129, 140, 248, var(--tw-ring-opacity))}.focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(99, 102, 241, var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition{transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}#menu__toggle{position:relative;opacity:0}#menu__toggle:checked~.menu__btn>span{transform:rotate(45deg)}#menu__toggle:checked~.menu__btn>span::before{top:0;transform:rotate(0)}#menu__toggle:checked~.menu__btn>span::after{top:0;transform:rotate(90deg)}#menu__toggle:checked~.menu__box{visibility:visible;left:0}#menu__toggle:checked~.menu__main{margin-left:150px;transition-duration:0.25s}.menu__btn{display:flex;align-items:center;position:fixed;z-index:1;top:10px;left:20px;width:20px;height:20px;cursor:pointer}.menu__btn>span,.menu__btn>span::before,.menu__btn>span::after{display:block;position:absolute;width:100%;height:2px;background-color:#616161;transition-duration:0.25s}.menu__btn>span::before{content:"";top:-8px}.menu__btn>span::after{content:"";top:8px}.menu__box{display:block;position:fixed;visibility:hidden;top:0;left:-100%;width:150px;height:100%;margin:0;padding:80px 0;list-style:none;background-color:#eceff1;box-shadow:1px 0px 6px rgba(0, 0, 0, 0.2);transition-duration:0.25s}.menu__item{display:block;padding:12px 24px;color:rgba(51, 51, 51, 0.788);font-family:"Roboto", sans-serif;font-size:15px;font-weight:600;text-decoration:none;transition-duration:0.25s}.menu__item:hover{background-color:#cfd8dc}.upper__bar{background-color:rgba(51, 51, 51, 0.144);height:70px;position:fixed;z-index:-1;top:0px;left:0;width:100%;margin:0;padding:0;box-shadow:1px 0px 3px rgba(0, 0, 0, 0.2)}input[type="date"]::-webkit-calendar-picker-indicator{margin-left:5px;margin-right:-8px}input[type="time"]::-webkit-calendar-picker-indicator{margin-left:5px;margin-right:-8px}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{margin-left:7px;margin-right:-6px;width:30px;height:30px;opacity:1}input:checked~.dot{transform:translateX(100%)}@media(min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mt-0{margin-top:0px}.sm\:ml-3{margin-left:0.75rem}.sm\:ml-4{margin-left:1rem}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:flex{display:flex}.sm\:h-6{height:1.5rem}.sm\:h-7{height:1.75rem}.sm\:h-8{height:2rem}.sm\:h-screen{height:100vh}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-lg{max-width:32rem}.sm\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-start{align-items:flex-start}.sm\:p-0{padding:0px}.sm\:p-2{padding:0.5rem}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-0{padding-top:0px;padding-bottom:0px}.sm\:pb-4{padding-bottom:1rem}.sm\:text-left{text-align:left}.sm\:align-middle{vertical-align:middle}.sm\:text-sm{font-size:.875rem}.sm\:text-base{font-size:1rem}}@media(min-width: 768px){.md\:h-6{height:1.5rem}.md\:h-7{height:1.75rem}.md\:h-8{height:2rem}.md\:p-2{padding:0.5rem}.md\:py-0{padding-top:0px;padding-bottom:0px}.md\:text-base{font-size:1rem}}@media(min-width: 1024px){.lg\:h-6{height:1.5rem}.lg\:h-7{height:1.75rem}.lg\:h-8{height:2rem}.lg\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.lg\:p-2{padding:0.5rem}.lg\:py-1{padding-top:0.25rem;padding-bottom:0.25rem}.lg\:text-base{font-size:1rem}.lg\:shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}}@media(min-width: 1280px){.xl\:h-6{height:1.5rem}.xl\:h-7{height:1.75rem}.xl\:h-8{height:2rem}.xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.xl\:px-4{padding-left:1rem;padding-right:1rem}.xl\:px-8{padding-left:2rem;padding-right:2rem}.xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.xl\:py-4{padding-top:1rem;padding-bottom:1rem}.xl\:text-base{font-size:1rem}}@media(min-width: 1536px){.\32xl\:h-6{height:1.5rem}.\32xl\:h-7{height:1.75rem}.\32xl\:h-8{height:2rem}.\32xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.\32xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.\32xl\:px-4{padding-left:1rem;padding-right:1rem}.\32xl\:px-8{padding-left:2rem;padding-right:2rem}.\32xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.\32xl\:py-4{padding-top:1rem;padding-bottom:1rem}.\32xl\:text-base{font-size:1rem}}*,::before,::after{box-sizing:border-box}html{-moz-tab-size:4;-o-tab-size:4;tab-size:4}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}body{font-family:system-ui, -apple-system, /* Firefox supports this but not yet `system-ui` */ 'Segoe UI', Roboto, @@ -24,7 +24,7 @@ Consolas, 'Liberation Mono', Menlo, - monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type='button']{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-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}button{background-color:transparent;background-image:none}fieldset{margin:0;padding:0}ol,ul{list-style:none;margin:0;padding:0}html{font-family:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";line-height:1.5}body{font-family:inherit;line-height:inherit}*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}pre,code,kbd,samp{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}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-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.alm{margin-bottom:0.5rem;width:100%;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity));padding:0.5rem;--tw-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}@media(min-width: 640px){.alm{padding:0.5rem}}@media(min-width: 768px){.alm{padding:0.5rem}}@media(min-width: 1024px){.alm{padding:0.5rem;--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}}@media(min-width: 1280px){.alm{padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem}}@media(min-width: 1536px){.alm{padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem}}.alm-hdr{padding-bottom:0px;text-align:center;font-size:1rem;--tw-text-opacity:1;color:rgba(239, 68, 68, var(--tw-text-opacity))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0px;right:0px;bottom:0px;left:0px}.top-1{top:0.25rem}.left-1{left:0.25rem}.z-10{z-index:10}.z-50{z-index:50}.m-auto{margin:auto}.mt-0{margin-top:0px}.mt-2{margin-top:0.5rem}.mt-3{margin-top:0.75rem}.mb-0{margin-bottom:0px}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.ml-0{margin-left:0px}.ml-36{margin-left:9rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-3{height:0.75rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-10{height:2.5rem}.h-20{height:5rem}.h-auto{height:auto}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-4{width:1rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-10{width:2.5rem}.w-20{width:5rem}.w-1\/4{width:25%}.w-3\/4{width:75%}.w-full{width:100%}.flex-1{flex:1 1 0%}.table-fixed{table-layout:fixed}.transform{--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;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@-webkit-keyframes spin{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@-webkit-keyframes ping{75%,100%{transform:scale(2);opacity:0}}@keyframes ping{75%,100%{transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}@keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}.animate-spin{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.flex-col{flex-direction:column}.content-center{align-content:center}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-4{gap:1rem}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.break-words{overflow-wrap:break-word}.rounded{border-radius:0.25rem}.rounded-md{border-radius:0.375rem}.rounded-lg{border-radius:0.5rem}.rounded-full{border-radius:9999px}.border-2{border-width:2px}.border-4{border-width:4px}.border{border-width:1px}.border-solid{border-style:solid}.border-transparent{border-color:transparent}.border-gray-100{--tw-border-opacity:1;border-color:rgba(243, 244, 246, var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgba(209, 213, 219, var(--tw-border-opacity))}.border-red-500{--tw-border-opacity:1;border-color:rgba(239, 68, 68, var(--tw-border-opacity))}.border-blue-400{--tw-border-opacity:1;border-color:rgba(96, 165, 250, var(--tw-border-opacity))}.border-indigo-500{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.focus\:border-indigo-500:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgba(243, 244, 246, var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgba(229, 231, 235, var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgba(107, 114, 128, var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgba(75, 85, 99, var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgba(254, 242, 242, var(--tw-bg-opacity))}.bg-red-400{--tw-bg-opacity:1;background-color:rgba(248, 113, 113, var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity:1;background-color:rgba(220, 38, 38, var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity:1;background-color:rgba(236, 253, 245, var(--tw-bg-opacity))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgba(219, 234, 254, var(--tw-bg-opacity))}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgba(99, 102, 241, var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgba(185, 28, 28, var(--tw-bg-opacity))}.hover\:bg-blue-200:hover{--tw-bg-opacity:1;background-color:rgba(191, 219, 254, var(--tw-bg-opacity))}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:rgba(67, 56, 202, var(--tw-bg-opacity))}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-opacity-75{--tw-bg-opacity:0.75}.bg-cover{background-size:cover}.p-0{padding:0px}.p-2{padding:0.5rem}.px-1{padding-left:0.25rem;padding-right:0.25rem}.px-2{padding-left:0.5rem;padding-right:0.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0{padding-top:0px;padding-bottom:0px}.py-1{padding-top:0.25rem;padding-bottom:0.25rem}.py-2{padding-top:0.5rem;padding-bottom:0.5rem}.py-3{padding-top:0.75rem;padding-bottom:0.75rem}.pt-0{padding-top:0px}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pr-4{padding-right:1rem}.pb-4{padding-bottom:1rem}.pb-20{padding-bottom:5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.text-xxs{font-size:.5rem}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.italic{font-style:italic}.leading-6{line-height:1.5rem}.leading-tight{line-height:1.25}.text-black{--tw-text-opacity:1;color:rgba(0, 0, 0, var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgba(255, 255, 255, var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgba(17, 24, 39, var(--tw-text-opacity))}.text-red-400{--tw-text-opacity:1;color:rgba(248, 113, 113, var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgba(239, 68, 68, var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity:1;color:rgba(245, 158, 11, var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgba(52, 211, 153, var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgba(16, 185, 129, var(--tw-text-opacity))}*,::before,::after{--tw-shadow:0 0 #0000}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}*,::before,::after{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59, 130, 246, 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}.focus\:ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(239, 68, 68, var(--tw-ring-opacity))}.focus\:ring-indigo-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(129, 140, 248, var(--tw-ring-opacity))}.focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(99, 102, 241, var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition{transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}@media(min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mt-0{margin-top:0px}.sm\:ml-3{margin-left:0.75rem}.sm\:ml-4{margin-left:1rem}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:flex{display:flex}.sm\:h-6{height:1.5rem}.sm\:h-7{height:1.75rem}.sm\:h-8{height:2rem}.sm\:h-screen{height:100vh}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-lg{max-width:32rem}.sm\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-start{align-items:flex-start}.sm\:p-0{padding:0px}.sm\:p-2{padding:0.5rem}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-0{padding-top:0px;padding-bottom:0px}.sm\:pb-4{padding-bottom:1rem}.sm\:text-left{text-align:left}.sm\:align-middle{vertical-align:middle}.sm\:text-sm{font-size:.875rem}.sm\:text-base{font-size:1rem}}@media(min-width: 768px){.md\:h-6{height:1.5rem}.md\:h-7{height:1.75rem}.md\:h-8{height:2rem}.md\:p-2{padding:0.5rem}.md\:py-0{padding-top:0px;padding-bottom:0px}.md\:text-base{font-size:1rem}}@media(min-width: 1024px){.lg\:h-6{height:1.5rem}.lg\:h-7{height:1.75rem}.lg\:h-8{height:2rem}.lg\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.lg\:p-2{padding:0.5rem}.lg\:py-1{padding-top:0.25rem;padding-bottom:0.25rem}.lg\:text-base{font-size:1rem}.lg\:shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}}@media(min-width: 1280px){.xl\:h-6{height:1.5rem}.xl\:h-7{height:1.75rem}.xl\:h-8{height:2rem}.xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.xl\:px-4{padding-left:1rem;padding-right:1rem}.xl\:px-8{padding-left:2rem;padding-right:2rem}.xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.xl\:py-4{padding-top:1rem;padding-bottom:1rem}.xl\:text-base{font-size:1rem}}@media(min-width: 1536px){.\32xl\:h-6{height:1.5rem}.\32xl\:h-7{height:1.75rem}.\32xl\:h-8{height:2rem}.\32xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.\32xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.\32xl\:px-4{padding-left:1rem;padding-right:1rem}.\32xl\:px-8{padding-left:2rem;padding-right:2rem}.\32xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.\32xl\:py-4{padding-top:1rem;padding-bottom:1rem}.\32xl\:text-base{font-size:1rem}}*,::before,::after{box-sizing:border-box}html{-moz-tab-size:4;-o-tab-size:4;tab-size:4}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}body{font-family:system-ui, + monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type='button']{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-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}button{background-color:transparent;background-image:none}fieldset{margin:0;padding:0}ol,ul{list-style:none;margin:0;padding:0}html{font-family:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";line-height:1.5}body{font-family:inherit;line-height:inherit}*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}pre,code,kbd,samp{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}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-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.alm{margin-bottom:0.5rem;width:100%;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity));padding:0.5rem;--tw-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}@media(min-width: 640px){.alm{padding:0.5rem}}@media(min-width: 768px){.alm{padding:0.5rem}}@media(min-width: 1024px){.alm{padding:0.5rem;--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}}@media(min-width: 1280px){.alm{padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem}}@media(min-width: 1536px){.alm{padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem}}.alm-hdr{padding-bottom:0px;text-align:center;font-size:1rem;--tw-text-opacity:1;color:rgba(239, 68, 68, var(--tw-text-opacity))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0px;right:0px;bottom:0px;left:0px}.top-1{top:0.25rem}.left-1{left:0.25rem}.z-10{z-index:10}.z-50{z-index:50}.m-auto{margin:auto}.mt-0{margin-top:0px}.mt-2{margin-top:0.5rem}.mt-3{margin-top:0.75rem}.mb-0{margin-bottom:0px}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.ml-0{margin-left:0px}.ml-36{margin-left:9rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-3{height:0.75rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-10{height:2.5rem}.h-20{height:5rem}.h-auto{height:auto}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-4{width:1rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-10{width:2.5rem}.w-20{width:5rem}.w-1\/4{width:25%}.w-3\/4{width:75%}.w-1\/12{width:8.333333%}.w-11\/12{width:91.666667%}.w-full{width:100%}.flex-1{flex:1 1 0%}.table-fixed{table-layout:fixed}.transform{--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;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@-webkit-keyframes spin{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@-webkit-keyframes ping{75%,100%{transform:scale(2);opacity:0}}@keyframes ping{75%,100%{transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}@keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}.animate-spin{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.flex-col{flex-direction:column}.content-center{align-content:center}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-4{gap:1rem}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.break-words{overflow-wrap:break-word}.rounded{border-radius:0.25rem}.rounded-md{border-radius:0.375rem}.rounded-lg{border-radius:0.5rem}.rounded-full{border-radius:9999px}.border-2{border-width:2px}.border-4{border-width:4px}.border{border-width:1px}.border-solid{border-style:solid}.border-transparent{border-color:transparent}.border-gray-100{--tw-border-opacity:1;border-color:rgba(243, 244, 246, var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgba(209, 213, 219, var(--tw-border-opacity))}.border-red-500{--tw-border-opacity:1;border-color:rgba(239, 68, 68, var(--tw-border-opacity))}.border-blue-400{--tw-border-opacity:1;border-color:rgba(96, 165, 250, var(--tw-border-opacity))}.border-indigo-500{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.focus\:border-indigo-500:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgba(243, 244, 246, var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgba(229, 231, 235, var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgba(107, 114, 128, var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgba(75, 85, 99, var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgba(254, 242, 242, var(--tw-bg-opacity))}.bg-red-400{--tw-bg-opacity:1;background-color:rgba(248, 113, 113, var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity:1;background-color:rgba(220, 38, 38, var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity:1;background-color:rgba(236, 253, 245, var(--tw-bg-opacity))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgba(219, 234, 254, var(--tw-bg-opacity))}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgba(99, 102, 241, var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgba(185, 28, 28, var(--tw-bg-opacity))}.hover\:bg-blue-200:hover{--tw-bg-opacity:1;background-color:rgba(191, 219, 254, var(--tw-bg-opacity))}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:rgba(67, 56, 202, var(--tw-bg-opacity))}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-opacity-75{--tw-bg-opacity:0.75}.bg-cover{background-size:cover}.p-0{padding:0px}.p-2{padding:0.5rem}.px-1{padding-left:0.25rem;padding-right:0.25rem}.px-2{padding-left:0.5rem;padding-right:0.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0{padding-top:0px;padding-bottom:0px}.py-1{padding-top:0.25rem;padding-bottom:0.25rem}.py-2{padding-top:0.5rem;padding-bottom:0.5rem}.py-3{padding-top:0.75rem;padding-bottom:0.75rem}.pt-0{padding-top:0px}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pr-4{padding-right:1rem}.pb-4{padding-bottom:1rem}.pb-20{padding-bottom:5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.text-xxs{font-size:.5rem}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.italic{font-style:italic}.leading-6{line-height:1.5rem}.leading-tight{line-height:1.25}.text-black{--tw-text-opacity:1;color:rgba(0, 0, 0, var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgba(255, 255, 255, var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgba(17, 24, 39, var(--tw-text-opacity))}.text-red-400{--tw-text-opacity:1;color:rgba(248, 113, 113, var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgba(239, 68, 68, var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity:1;color:rgba(245, 158, 11, var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgba(52, 211, 153, var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgba(16, 185, 129, var(--tw-text-opacity))}*,::before,::after{--tw-shadow:0 0 #0000}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}*,::before,::after{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59, 130, 246, 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}.focus\:ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(239, 68, 68, var(--tw-ring-opacity))}.focus\:ring-indigo-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(129, 140, 248, var(--tw-ring-opacity))}.focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(99, 102, 241, var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition{transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}@media(min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mt-0{margin-top:0px}.sm\:ml-3{margin-left:0.75rem}.sm\:ml-4{margin-left:1rem}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:flex{display:flex}.sm\:h-6{height:1.5rem}.sm\:h-7{height:1.75rem}.sm\:h-8{height:2rem}.sm\:h-screen{height:100vh}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-lg{max-width:32rem}.sm\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-start{align-items:flex-start}.sm\:p-0{padding:0px}.sm\:p-2{padding:0.5rem}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-0{padding-top:0px;padding-bottom:0px}.sm\:pb-4{padding-bottom:1rem}.sm\:text-left{text-align:left}.sm\:align-middle{vertical-align:middle}.sm\:text-sm{font-size:.875rem}.sm\:text-base{font-size:1rem}}@media(min-width: 768px){.md\:h-6{height:1.5rem}.md\:h-7{height:1.75rem}.md\:h-8{height:2rem}.md\:p-2{padding:0.5rem}.md\:py-0{padding-top:0px;padding-bottom:0px}.md\:text-base{font-size:1rem}}@media(min-width: 1024px){.lg\:h-6{height:1.5rem}.lg\:h-7{height:1.75rem}.lg\:h-8{height:2rem}.lg\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.lg\:p-2{padding:0.5rem}.lg\:py-1{padding-top:0.25rem;padding-bottom:0.25rem}.lg\:text-base{font-size:1rem}.lg\:shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}}@media(min-width: 1280px){.xl\:h-6{height:1.5rem}.xl\:h-7{height:1.75rem}.xl\:h-8{height:2rem}.xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.xl\:px-4{padding-left:1rem;padding-right:1rem}.xl\:px-8{padding-left:2rem;padding-right:2rem}.xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.xl\:py-4{padding-top:1rem;padding-bottom:1rem}.xl\:text-base{font-size:1rem}}@media(min-width: 1536px){.\32xl\:h-6{height:1.5rem}.\32xl\:h-7{height:1.75rem}.\32xl\:h-8{height:2rem}.\32xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.\32xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.\32xl\:px-4{padding-left:1rem;padding-right:1rem}.\32xl\:px-8{padding-left:2rem;padding-right:2rem}.\32xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.\32xl\:py-4{padding-top:1rem;padding-bottom:1rem}.\32xl\:text-base{font-size:1rem}}*,::before,::after{box-sizing:border-box}html{-moz-tab-size:4;-o-tab-size:4;tab-size:4}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}body{font-family:system-ui, -apple-system, /* Firefox supports this but not yet `system-ui` */ 'Segoe UI', Roboto, @@ -37,4 +37,4 @@ Consolas, 'Liberation Mono', Menlo, - monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type='button']{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-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}button{background-color:transparent;background-image:none}fieldset{margin:0;padding:0}ol,ul{list-style:none;margin:0;padding:0}html{font-family:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";line-height:1.5}body{font-family:inherit;line-height:inherit}*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}pre,code,kbd,samp{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}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-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.crd{margin-bottom:0.5rem;width:100%;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity));padding:0.5rem;--tw-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}@media(min-width: 640px){.crd{padding:0.5rem}}@media(min-width: 768px){.crd{padding:0.5rem}}@media(min-width: 1024px){.crd{padding:0.5rem;--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}}@media(min-width: 1280px){.crd{padding-left:2rem;padding-right:2rem;padding-top:1rem;padding-bottom:1rem}}@media(min-width: 1536px){.crd{padding-left:2rem;padding-right:2rem;padding-top:1rem;padding-bottom:1rem}}.crd-hdr{padding-bottom:1rem;text-align:center;font-size:1.125rem;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0px;right:0px;bottom:0px;left:0px}.top-1{top:0.25rem}.left-1{left:0.25rem}.z-10{z-index:10}.z-50{z-index:50}.m-auto{margin:auto}.mt-0{margin-top:0px}.mt-2{margin-top:0.5rem}.mt-3{margin-top:0.75rem}.mb-0{margin-bottom:0px}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.ml-0{margin-left:0px}.ml-36{margin-left:9rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-3{height:0.75rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-10{height:2.5rem}.h-20{height:5rem}.h-auto{height:auto}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-4{width:1rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-10{width:2.5rem}.w-20{width:5rem}.w-1\/4{width:25%}.w-3\/4{width:75%}.w-full{width:100%}.flex-1{flex:1 1 0%}.table-fixed{table-layout:fixed}.transform{--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;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@-webkit-keyframes spin{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@-webkit-keyframes ping{75%,100%{transform:scale(2);opacity:0}}@keyframes ping{75%,100%{transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}@keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}.animate-spin{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.flex-col{flex-direction:column}.content-center{align-content:center}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-4{gap:1rem}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.break-words{overflow-wrap:break-word}.rounded{border-radius:0.25rem}.rounded-md{border-radius:0.375rem}.rounded-lg{border-radius:0.5rem}.rounded-full{border-radius:9999px}.border-2{border-width:2px}.border-4{border-width:4px}.border{border-width:1px}.border-solid{border-style:solid}.border-transparent{border-color:transparent}.border-gray-100{--tw-border-opacity:1;border-color:rgba(243, 244, 246, var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgba(209, 213, 219, var(--tw-border-opacity))}.border-red-500{--tw-border-opacity:1;border-color:rgba(239, 68, 68, var(--tw-border-opacity))}.border-blue-400{--tw-border-opacity:1;border-color:rgba(96, 165, 250, var(--tw-border-opacity))}.border-indigo-500{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.focus\:border-indigo-500:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgba(243, 244, 246, var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgba(229, 231, 235, var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgba(107, 114, 128, var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgba(75, 85, 99, var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgba(254, 242, 242, var(--tw-bg-opacity))}.bg-red-400{--tw-bg-opacity:1;background-color:rgba(248, 113, 113, var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity:1;background-color:rgba(220, 38, 38, var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity:1;background-color:rgba(236, 253, 245, var(--tw-bg-opacity))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgba(219, 234, 254, var(--tw-bg-opacity))}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgba(99, 102, 241, var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgba(185, 28, 28, var(--tw-bg-opacity))}.hover\:bg-blue-200:hover{--tw-bg-opacity:1;background-color:rgba(191, 219, 254, var(--tw-bg-opacity))}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:rgba(67, 56, 202, var(--tw-bg-opacity))}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-opacity-75{--tw-bg-opacity:0.75}.bg-cover{background-size:cover}.p-0{padding:0px}.p-2{padding:0.5rem}.px-1{padding-left:0.25rem;padding-right:0.25rem}.px-2{padding-left:0.5rem;padding-right:0.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0{padding-top:0px;padding-bottom:0px}.py-1{padding-top:0.25rem;padding-bottom:0.25rem}.py-2{padding-top:0.5rem;padding-bottom:0.5rem}.py-3{padding-top:0.75rem;padding-bottom:0.75rem}.pt-0{padding-top:0px}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pr-4{padding-right:1rem}.pb-4{padding-bottom:1rem}.pb-20{padding-bottom:5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.text-xxs{font-size:.5rem}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.italic{font-style:italic}.leading-6{line-height:1.5rem}.leading-tight{line-height:1.25}.text-black{--tw-text-opacity:1;color:rgba(0, 0, 0, var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgba(255, 255, 255, var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgba(17, 24, 39, var(--tw-text-opacity))}.text-red-400{--tw-text-opacity:1;color:rgba(248, 113, 113, var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgba(239, 68, 68, var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity:1;color:rgba(245, 158, 11, var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgba(52, 211, 153, var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgba(16, 185, 129, var(--tw-text-opacity))}*,::before,::after{--tw-shadow:0 0 #0000}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}*,::before,::after{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59, 130, 246, 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}.focus\:ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(239, 68, 68, var(--tw-ring-opacity))}.focus\:ring-indigo-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(129, 140, 248, var(--tw-ring-opacity))}.focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(99, 102, 241, var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition{transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}@media(min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mt-0{margin-top:0px}.sm\:ml-3{margin-left:0.75rem}.sm\:ml-4{margin-left:1rem}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:flex{display:flex}.sm\:h-6{height:1.5rem}.sm\:h-7{height:1.75rem}.sm\:h-8{height:2rem}.sm\:h-screen{height:100vh}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-lg{max-width:32rem}.sm\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-start{align-items:flex-start}.sm\:p-0{padding:0px}.sm\:p-2{padding:0.5rem}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-0{padding-top:0px;padding-bottom:0px}.sm\:pb-4{padding-bottom:1rem}.sm\:text-left{text-align:left}.sm\:align-middle{vertical-align:middle}.sm\:text-sm{font-size:.875rem}.sm\:text-base{font-size:1rem}}@media(min-width: 768px){.md\:h-6{height:1.5rem}.md\:h-7{height:1.75rem}.md\:h-8{height:2rem}.md\:p-2{padding:0.5rem}.md\:py-0{padding-top:0px;padding-bottom:0px}.md\:text-base{font-size:1rem}}@media(min-width: 1024px){.lg\:h-6{height:1.5rem}.lg\:h-7{height:1.75rem}.lg\:h-8{height:2rem}.lg\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.lg\:p-2{padding:0.5rem}.lg\:py-1{padding-top:0.25rem;padding-bottom:0.25rem}.lg\:text-base{font-size:1rem}.lg\:shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}}@media(min-width: 1280px){.xl\:h-6{height:1.5rem}.xl\:h-7{height:1.75rem}.xl\:h-8{height:2rem}.xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.xl\:px-4{padding-left:1rem;padding-right:1rem}.xl\:px-8{padding-left:2rem;padding-right:2rem}.xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.xl\:py-4{padding-top:1rem;padding-bottom:1rem}.xl\:text-base{font-size:1rem}}@media(min-width: 1536px){.\32xl\:h-6{height:1.5rem}.\32xl\:h-7{height:1.75rem}.\32xl\:h-8{height:2rem}.\32xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.\32xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.\32xl\:px-4{padding-left:1rem;padding-right:1rem}.\32xl\:px-8{padding-left:2rem;padding-right:2rem}.\32xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.\32xl\:py-4{padding-top:1rem;padding-bottom:1rem}.\32xl\:text-base{font-size:1rem}} \ No newline at end of file + monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type='button']{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-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}button{background-color:transparent;background-image:none}fieldset{margin:0;padding:0}ol,ul{list-style:none;margin:0;padding:0}html{font-family:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";line-height:1.5}body{font-family:inherit;line-height:inherit}*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit}pre,code,kbd,samp{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}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-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.crd{margin-bottom:0.5rem;width:100%;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity));padding:0.5rem;--tw-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}@media(min-width: 640px){.crd{padding:0.5rem}}@media(min-width: 768px){.crd{padding:0.5rem}}@media(min-width: 1024px){.crd{padding:0.5rem;--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}}@media(min-width: 1280px){.crd{padding-left:2rem;padding-right:2rem;padding-top:1rem;padding-bottom:1rem}}@media(min-width: 1536px){.crd{padding-left:2rem;padding-right:2rem;padding-top:1rem;padding-bottom:1rem}}.crd-hdr{padding-bottom:1rem;text-align:center;font-size:1.125rem;font-weight:700;--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0px;right:0px;bottom:0px;left:0px}.top-1{top:0.25rem}.left-1{left:0.25rem}.z-10{z-index:10}.z-50{z-index:50}.m-auto{margin:auto}.mt-0{margin-top:0px}.mt-2{margin-top:0.5rem}.mt-3{margin-top:0.75rem}.mb-0{margin-bottom:0px}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.ml-0{margin-left:0px}.ml-36{margin-left:9rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-3{height:0.75rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-10{height:2.5rem}.h-20{height:5rem}.h-auto{height:auto}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-4{width:1rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-10{width:2.5rem}.w-20{width:5rem}.w-1\/4{width:25%}.w-3\/4{width:75%}.w-1\/12{width:8.333333%}.w-11\/12{width:91.666667%}.w-full{width:100%}.flex-1{flex:1 1 0%}.table-fixed{table-layout:fixed}.transform{--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;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@-webkit-keyframes spin{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@-webkit-keyframes ping{75%,100%{transform:scale(2);opacity:0}}@keyframes ping{75%,100%{transform:scale(2);opacity:0}}@-webkit-keyframes pulse{50%{opacity:.5}}@keyframes pulse{50%{opacity:.5}}@-webkit-keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}@keyframes bounce{0%,100%{transform:translateY(-25%);-webkit-animation-timing-function:cubic-bezier(0.8,0,1,1);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}}.animate-spin{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.flex-col{flex-direction:column}.content-center{align-content:center}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-4{gap:1rem}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.break-words{overflow-wrap:break-word}.rounded{border-radius:0.25rem}.rounded-md{border-radius:0.375rem}.rounded-lg{border-radius:0.5rem}.rounded-full{border-radius:9999px}.border-2{border-width:2px}.border-4{border-width:4px}.border{border-width:1px}.border-solid{border-style:solid}.border-transparent{border-color:transparent}.border-gray-100{--tw-border-opacity:1;border-color:rgba(243, 244, 246, var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity:1;border-color:rgba(229, 231, 235, var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgba(209, 213, 219, var(--tw-border-opacity))}.border-red-500{--tw-border-opacity:1;border-color:rgba(239, 68, 68, var(--tw-border-opacity))}.border-blue-400{--tw-border-opacity:1;border-color:rgba(96, 165, 250, var(--tw-border-opacity))}.border-indigo-500{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.focus\:border-indigo-500:focus{--tw-border-opacity:1;border-color:rgba(99, 102, 241, var(--tw-border-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgba(243, 244, 246, var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgba(229, 231, 235, var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgba(107, 114, 128, var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgba(75, 85, 99, var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgba(254, 242, 242, var(--tw-bg-opacity))}.bg-red-400{--tw-bg-opacity:1;background-color:rgba(248, 113, 113, var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity:1;background-color:rgba(220, 38, 38, var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity:1;background-color:rgba(236, 253, 245, var(--tw-bg-opacity))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgba(219, 234, 254, var(--tw-bg-opacity))}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgba(99, 102, 241, var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgba(249, 250, 251, var(--tw-bg-opacity))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgba(185, 28, 28, var(--tw-bg-opacity))}.hover\:bg-blue-200:hover{--tw-bg-opacity:1;background-color:rgba(191, 219, 254, var(--tw-bg-opacity))}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:rgba(67, 56, 202, var(--tw-bg-opacity))}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-opacity-75{--tw-bg-opacity:0.75}.bg-cover{background-size:cover}.p-0{padding:0px}.p-2{padding:0.5rem}.px-1{padding-left:0.25rem;padding-right:0.25rem}.px-2{padding-left:0.5rem;padding-right:0.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0{padding-top:0px;padding-bottom:0px}.py-1{padding-top:0.25rem;padding-bottom:0.25rem}.py-2{padding-top:0.5rem;padding-bottom:0.5rem}.py-3{padding-top:0.75rem;padding-bottom:0.75rem}.pt-0{padding-top:0px}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pr-4{padding-right:1rem}.pb-4{padding-bottom:1rem}.pb-20{padding-bottom:5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.text-xxs{font-size:.5rem}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.italic{font-style:italic}.leading-6{line-height:1.5rem}.leading-tight{line-height:1.25}.text-black{--tw-text-opacity:1;color:rgba(0, 0, 0, var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgba(255, 255, 255, var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgba(107, 114, 128, var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgba(55, 65, 81, var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgba(17, 24, 39, var(--tw-text-opacity))}.text-red-400{--tw-text-opacity:1;color:rgba(248, 113, 113, var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgba(239, 68, 68, var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity:1;color:rgba(245, 158, 11, var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgba(52, 211, 153, var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgba(16, 185, 129, var(--tw-text-opacity))}*,::before,::after{--tw-shadow:0 0 #0000}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}*,::before,::after{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59, 130, 246, 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}.focus\:ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(239, 68, 68, var(--tw-ring-opacity))}.focus\:ring-indigo-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(129, 140, 248, var(--tw-ring-opacity))}.focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(99, 102, 241, var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition{transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-property:background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}@media(min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mt-0{margin-top:0px}.sm\:ml-3{margin-left:0.75rem}.sm\:ml-4{margin-left:1rem}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:flex{display:flex}.sm\:h-6{height:1.5rem}.sm\:h-7{height:1.75rem}.sm\:h-8{height:2rem}.sm\:h-screen{height:100vh}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-lg{max-width:32rem}.sm\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-start{align-items:flex-start}.sm\:p-0{padding:0px}.sm\:p-2{padding:0.5rem}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-0{padding-top:0px;padding-bottom:0px}.sm\:pb-4{padding-bottom:1rem}.sm\:text-left{text-align:left}.sm\:align-middle{vertical-align:middle}.sm\:text-sm{font-size:.875rem}.sm\:text-base{font-size:1rem}}@media(min-width: 768px){.md\:h-6{height:1.5rem}.md\:h-7{height:1.75rem}.md\:h-8{height:2rem}.md\:p-2{padding:0.5rem}.md\:py-0{padding-top:0px;padding-bottom:0px}.md\:text-base{font-size:1rem}}@media(min-width: 1024px){.lg\:h-6{height:1.5rem}.lg\:h-7{height:1.75rem}.lg\:h-8{height:2rem}.lg\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.lg\:p-2{padding:0.5rem}.lg\:py-1{padding-top:0.25rem;padding-bottom:0.25rem}.lg\:text-base{font-size:1rem}.lg\:shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}}@media(min-width: 1280px){.xl\:h-6{height:1.5rem}.xl\:h-7{height:1.75rem}.xl\:h-8{height:2rem}.xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.xl\:px-4{padding-left:1rem;padding-right:1rem}.xl\:px-8{padding-left:2rem;padding-right:2rem}.xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.xl\:py-4{padding-top:1rem;padding-bottom:1rem}.xl\:text-base{font-size:1rem}}@media(min-width: 1536px){.\32xl\:h-6{height:1.5rem}.\32xl\:h-7{height:1.75rem}.\32xl\:h-8{height:2rem}.\32xl\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.\32xl\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.\32xl\:px-4{padding-left:1rem;padding-right:1rem}.\32xl\:px-8{padding-left:2rem;padding-right:2rem}.\32xl\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.\32xl\:py-4{padding-top:1rem;padding-bottom:1rem}.\32xl\:text-base{font-size:1rem}} \ No newline at end of file diff --git a/data_svelte/build/bundle.js b/data_svelte/build/bundle.js index 7c64b40e..5fdc0410 100644 --- a/data_svelte/build/bundle.js +++ b/data_svelte/build/bundle.js @@ -1,2 +1,2 @@ -var app=function(){"use strict";function t(){}function e(t){return t()}function n(){return Object.create(null)}function s(t){t.forEach(e)}function l(t){return"function"==typeof t}function r(t,e){return t!=t?e==e:t!==e||t&&"object"==typeof t||"function"==typeof t}function o(e,n,s){e.$$.on_destroy.push(function(e,...n){if(null==e)return t;const s=e.subscribe(...n);return s.unsubscribe?()=>s.unsubscribe():s}(n,s))}function c(t,e,n,s){if(t){const l=i(t,e,n,s);return t[0](l)}}function i(t,e,n,s){return t[1]&&s?function(t,e){for(const n in e)t[n]=e[n];return t}(n.ctx.slice(),t[1](s(e))):n.ctx}function a(t,e,n,s){if(t[2]&&s){const l=t[2](s(n));if(void 0===e.dirty)return l;if("object"==typeof l){const t=[],n=Math.max(e.dirty.length,l.length);for(let s=0;s32){const e=[],n=t.ctx.length/32;for(let t=0;tt.removeEventListener(e,n,s)}function y(t,e,n){null==n?t.removeAttribute(e):t.getAttribute(e)!==n&&t.setAttribute(e,n)}function k(t){return""===t?null:+t}function _(t,e){e=""+e,t.wholeText!==e&&(t.data=e)}function J(t,e){t.value=null==e?"":e}function S(t,e){for(let n=0;n{K.delete(t),s&&(n&&t.d(1),s())})),t.o(e)}}function X(t,e,n){const s=t.$$.props[e];void 0!==s&&(t.$$.bound[s]=n,n(t.$$.ctx[s]))}function tt(t){t&&t.c()}function et(t,n,r,o){const{fragment:c,on_mount:i,on_destroy:a,after_update:u}=t.$$;c&&c.m(n,r),o||D((()=>{const n=i.map(e).filter(l);a?a.push(...n):s(n),t.$$.on_mount=[]})),u.forEach(D)}function nt(t,e){const n=t.$$;null!==n.fragment&&(s(n.on_destroy),n.fragment&&n.fragment.d(e),n.on_destroy=n.fragment=null,n.ctx=[])}function st(e,l,r,o,c,i,a,u=[-1]){const d=L;E(e);const p=e.$$={fragment:null,ctx:null,props:i,update:t,not_equal:c,bound:n(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(l.context||(d?d.$$.context:[])),callbacks:n(),dirty:u,skip_bound:!1,root:l.target||d.$$.root};a&&a(p.root);let f=!1;if(p.ctx=r?r(e,l.props||{},((t,n,...s)=>{const l=s.length?s[0]:n;return p.ctx&&c(p.ctx[t],p.ctx[t]=l)&&(!p.skip_bound&&p.bound[t]&&p.bound[t](l),f&&function(t,e){-1===t.$$.dirty[0]&&(H.push(t),A(),t.$$.dirty.fill(0)),t.$$.dirty[e/31|0]|=1<{const t=n.indexOf(e);-1!==t&&n.splice(t,1)}}$set(t){var e;this.$$set&&(e=t,0!==Object.keys(e).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}}const rt=[];function ot(e,n=t){let s;const l=new Set;function o(t){if(r(e,t)&&(e=t,s)){const t=!rt.length;for(const t of l)t[1](),rt.push(t,e);if(t){for(let t=0;t{l.delete(i),0===l.size&&(s(),s=null)}}}}function ct(t,e=!1){return(t=t.slice(t.startsWith("/#")?2:0,t.endsWith("/*")?-2:void 0)).startsWith("/")||(t="/"+t),"/"===t&&(t=""),e&&!t.endsWith("/")&&(t+="/"),t}function it(t,e,n){if(""===n)return t;if("/"===n[0])return n;let s=t=>t.split("/").filter((t=>""!==t)),l=s(t);return"/"+(e?s(e):[]).map(((t,e)=>l[e])).join("/")+"/"+n}function at(t,e,n,s){let l=[e,"data-"+e].reduce(((e,s)=>{let l=t.getAttribute(s);return n&&t.removeAttribute(s),null===l?e:l}),!1);return!s&&""===l||(l||s||!1)}function ut(t){let e=t.split("&").map((t=>t.split("="))).reduce(((t,e)=>{let n=e[0];if(!n)return t;let s=!(e.length>1)||e[e.length-1];return"string"==typeof s&&s.includes(",")&&(s=s.split(",")),void 0===t[n]?t[n]=[s]:t[n].push(s),t}),{});return Object.entries(e).reduce(((t,e)=>(t[e[0]]=e[1].length>1?e[1]:e[1][0],t)),{})}var dt,pt,ft={HISTORY:1,HASH:2,MEMORY:3,OFF:4,run:function(t,e,n,s){return 1===t?e&&e():2===t?n&&n():s&&s()},getDeafault:function(){return window&&"srcdoc"!==window.location.pathname?1:3}},gt=function(){let t,e=ft.getDeafault(),n=n=>t&&t(mt(e));function s(t){t&&(e=t),window.onhashchange=window.onpopstate=pt=null,e!==ft.OFF&&ft.run(e,(t=>window.onpopstate=n),(t=>window.onhashchange=n))&&n()}return{mode:t=>s(t),get:t=>mt(e),go(t,s){(function(t,e,n){let s=t=>history[n?"replaceState":"pushState"]({},"",t);ft.run(t,(t=>s(e)),(t=>s(`#${e}`)),(t=>pt=e))})(e,t,s),n()},start(e){t=e,s()},stop(){t=null,s(ft.OFF)}}}();function mt(t){let e=dt,n=dt=ft.run(t,(t=>window.location.pathname+window.location.search),(t=>String(window.location.hash.slice(1)||"/")),(t=>pt||"/")),s=n.match(/^([^?#]+)(?:\?([^#]+))?(?:\#(.+))?$/);return{url:n,from:e,path:s[1]||"",query:ut(s[2]||""),hash:s[3]||""}}function $t(t){let e=O("tinro");e&&(e.exact||e.fallback)&&function(t){throw new Error("[Tinro] "+t)}(`${t.fallback?"":``} can't be inside ${e.fallback?"":` with exact path`}`);let n=t.fallback?"fallbacks":"childs",s=ot({}),l={router:{},exact:!1,pattern:null,meta:{},parent:e,fallback:t.fallback,redirect:!1,firstmatch:!1,breadcrumb:null,matched:!1,childs:new Set,activeChilds:new Set,fallbacks:new Set,update(t){l.exact=!t.path.endsWith("/*"),l.pattern=ct(`${l.parent&&l.parent.pattern||""}${t.path}`),l.redirect=t.redirect,l.firstmatch=t.firstmatch,l.breadcrumb=t.breadcrumb,l.match()},register:()=>{if(l.parent)return l.parent[n].add(l),()=>{l.parent[n].delete(l),l.router.un&&l.router.un()}},show:()=>{t.onShow(),!l.fallback&&l.parent&&l.parent.activeChilds.add(l)},hide:()=>{t.onHide(),!l.fallback&&l.parent&&l.parent.activeChilds.delete(l)},match:async()=>{l.matched=!1;let{path:e,url:n,from:r,query:o}=l.router,c=function(t,e){t=ct(t,!0),e=ct(e,!0);let n=[],s={},l=!0,r=t.split("/").map((t=>t.startsWith(":")?(n.push(t.slice(1)),"([^\\/]+)"):t)).join("\\/"),o=e.match(new RegExp(`^${r}$`));return o||(l=!1,o=e.match(new RegExp(`^${r}`))),o?(n.forEach(((t,e)=>s[t]=o[e+1])),{exact:l,params:s,part:o[0].slice(0,-1)}):null}(l.pattern,e);if(!l.fallback&&c&&l.redirect&&(!l.exact||l.exact&&c.exact)){await B();let t=it(e,l.parent&&l.parent.pattern,l.redirect);return wt.goto(t,!0)}if(l.meta=c&&{from:r,url:n,query:o,match:c.part,pattern:l.pattern,breadcrumbs:l.parent&&l.parent.meta&&l.parent.meta.breadcrumbs.slice()||[],params:c.params,subscribe:s.subscribe},l.breadcrumb&&l.meta&&l.meta.breadcrumbs.push({name:l.breadcrumb,path:c.part}),s.set(l.meta),!c||l.fallback||!(!l.exact||l.exact&&c.exact)||l.parent&&l.parent.firstmatch&&l.parent.matched?l.hide():(t.onMeta(l.meta),l.parent&&(l.parent.matched=!0),l.show()),await B(),c&&!l.fallback&&(l.childs.size>0&&0==l.activeChilds.size||0==l.childs.size&&l.fallbacks.size>0)){let t=l;for(;0==t.fallbacks.size;)if(t=t.parent,!t)return;t&&t.fallbacks.forEach((t=>{if(t.redirect){let e=it("/",t.parent&&t.parent.pattern,t.redirect);wt.goto(e,!0)}else t.show()}))}}};return r="tinro",o=l,j().$$.context.set(r,o),T((()=>l.register())),l.router.un=wt.subscribe((t=>{l.router.path=t.path,l.router.url=t.url,l.router.query=t.query,l.router.from=t.from,null!==l.pattern&&l.match()})),l;var r,o}function ht(){return O("tinro").meta}var wt=function(){let{subscribe:t}=ot(gt.get(),(t=>{gt.start(t);let e=function(t){let e=e=>{let n=e.target.closest("a[href]"),s=n&&at(n,"target",!1,"_self"),l=n&&at(n,"tinro-ignore"),r=e.ctrlKey||e.metaKey||e.altKey||e.shiftKey;if("_self"==s&&!l&&!r&&n){let s=n.getAttribute("href").replace(/^\/#/,"");/^\/\/|^[a-zA-Z]+:/.test(s)||(e.preventDefault(),t(s.startsWith("/")?s:n.href.replace(window.location.origin,"")))}};return addEventListener("click",e),()=>removeEventListener("click",e)}(gt.go);return()=>{gt.stop(),e()}}));return{subscribe:t,goto:gt.go,params:bt,meta:ht,useHashNavigation:t=>gt.mode(t?ft.HASH:ft.HISTORY),mode:{hash:()=>gt.mode(ft.HASH),history:()=>gt.mode(ft.HISTORY),memory:()=>gt.mode(ft.MEMORY)}}}();function bt(){return O("tinro").meta.params}const vt=t=>({params:2&t,meta:4&t}),xt=t=>({params:t[1],meta:t[2]});function yt(t){let e;const n=t[9].default,s=c(n,t,t[8],xt);return{c(){s&&s.c()},m(t,n){s&&s.m(t,n),e=!0},p(t,l){s&&s.p&&(!e||262&l)&&u(s,n,t,t[8],e?a(n,t[8],l,vt):d(t[8]),xt)},i(t){e||(G(s,t),e=!0)},o(t){V(s,t),e=!1},d(t){s&&s.d(t)}}}function kt(t){let e,n,s=t[0]&&yt(t);return{c(){s&&s.c(),e=v()},m(t,l){s&&s.m(t,l),f(t,e,l),n=!0},p(t,[n]){t[0]?s?(s.p(t,n),1&n&&G(s,1)):(s=yt(t),s.c(),G(s,1),s.m(e.parentNode,e)):s&&(Q(),V(s,1,1,(()=>{s=null})),Z())},i(t){n||(G(s),n=!0)},o(t){V(s),n=!1},d(t){s&&s.d(t),t&&g(e)}}}function _t(t,e,n){let{$$slots:s={},$$scope:l}=e,{path:r="/*"}=e,{fallback:o=!1}=e,{redirect:c=!1}=e,{firstmatch:i=!1}=e,{breadcrumb:a=null}=e,u=!1,d={},p={};const f=$t({fallback:o,onShow(){n(0,u=!0)},onHide(){n(0,u=!1)},onMeta(t){n(2,p=t),n(1,d=p.params)}});return t.$$set=t=>{"path"in t&&n(3,r=t.path),"fallback"in t&&n(4,o=t.fallback),"redirect"in t&&n(5,c=t.redirect),"firstmatch"in t&&n(6,i=t.firstmatch),"breadcrumb"in t&&n(7,a=t.breadcrumb),"$$scope"in t&&n(8,l=t.$$scope)},t.$$.update=()=>{232&t.$$.dirty&&f.update({path:r,redirect:c,firstmatch:i,breadcrumb:a})},[u,d,p,r,o,c,i,a,l,s]}class Jt extends lt{constructor(t){super(),st(this,t,_t,kt,r,{path:3,fallback:4,redirect:5,firstmatch:6,breadcrumb:7})}}function St(t){let e,n;return{c(){e=$("h1"),n=w(t[0]),y(e,"class","alm-hdr")},m(t,s){f(t,e,s),p(e,n)},p(t,e){1&e&&_(n,t[0])},d(t){t&&g(e)}}}function Ct(t){let e,n,s,l=t[0]&&St(t);const r=t[2].default,o=c(r,t,t[1],null);return{c(){e=$("div"),l&&l.c(),n=b(),o&&o.c(),y(e,"class","alm")},m(t,r){f(t,e,r),l&&l.m(e,null),p(e,n),o&&o.m(e,null),s=!0},p(t,[c]){t[0]?l?l.p(t,c):(l=St(t),l.c(),l.m(e,n)):l&&(l.d(1),l=null),o&&o.p&&(!s||2&c)&&u(o,r,t,t[1],s?a(r,t[1],c,null):d(t[1]),null)},i(t){s||(G(o,t),s=!0)},o(t){V(o,t),s=!1},d(t){t&&g(e),l&&l.d(),o&&o.d(t)}}}function Lt(t,e,n){let{$$slots:s={},$$scope:l}=e,{title:r}=e;return t.$$set=t=>{"title"in t&&n(0,r=t.title),"$$scope"in t&&n(1,l=t.$$scope)},[r,l,s]}class Et extends lt{constructor(t){super(),st(this,t,Lt,Ct,r,{title:0})}}function jt(e){let n;return{c(){n=$("div"),n.innerHTML=' \n
',y(n,"class","z-50")},m(t,e){f(t,n,e)},p:t,i:t,o:t,d(t){t&&g(n)}}}class Tt extends lt{constructor(t){super(),st(this,t,null,jt,r,{})}}function Ot(t){let e,n;return{c(){e=$("h1"),n=w(t[0]),y(e,"class","crd-hdr")},m(t,s){f(t,e,s),p(e,n)},p(t,e){1&e&&_(n,t[0])},d(t){t&&g(e)}}}function Ht(t){let e,n,s,l=t[0]&&Ot(t);const r=t[2].default,o=c(r,t,t[1],null);return{c(){e=$("div"),l&&l.c(),n=b(),o&&o.c(),y(e,"class","crd")},m(t,r){f(t,e,r),l&&l.m(e,null),p(e,n),o&&o.m(e,null),s=!0},p(t,[c]){t[0]?l?l.p(t,c):(l=Ot(t),l.c(),l.m(e,n)):l&&(l.d(1),l=null),o&&o.p&&(!s||2&c)&&u(o,r,t,t[1],s?a(r,t[1],c,null):d(t[1]),null)},i(t){s||(G(o,t),s=!0)},o(t){V(o,t),s=!1},d(t){t&&g(e),l&&l.d(),o&&o.d(t)}}}function Nt(t,e,n){let{$$slots:s={},$$scope:l}=e,{title:r}=e;return t.$$set=t=>{"title"in t&&n(0,r=t.title),"$$scope"in t&&n(1,l=t.$$scope)},[r,l,s]}class Mt extends lt{constructor(t){super(),st(this,t,Nt,Ht,r,{title:0})}}function Pt(t){let e,n,l,r;return{c(){e=$("input"),y(e,"class",n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500"),y(e,"step","0.1"),y(e,"type","number")},m(n,s){f(n,e,s),J(e,t[0].status),l||(r=[x(e,"change",t[3]),x(e,"input",t[4])],l=!0)},p(t,s){1&s&&n!==(n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500")&&y(e,"class",n),1&s&&k(e.value)!==t[0].status&&J(e,t[0].status)},d(t){t&&g(e),l=!1,s(r)}}}function qt(t){let e,n,l,r;return{c(){e=$("input"),y(e,"class",n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500"),y(e,"type","text")},m(n,s){f(n,e,s),J(e,t[0].status),l||(r=[x(e,"change",t[5]),x(e,"input",t[6])],l=!0)},p(t,s){1&s&&n!==(n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500")&&y(e,"class",n),1&s&&e.value!==t[0].status&&J(e,t[0].status)},d(t){t&&g(e),l=!1,s(r)}}}function zt(t){let e,n,l,r;return{c(){e=$("input"),y(e,"class",n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500"),y(e,"type","date")},m(n,s){f(n,e,s),J(e,t[0].status),l||(r=[x(e,"change",t[7]),x(e,"input",t[8])],l=!0)},p(t,s){1&s&&n!==(n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500")&&y(e,"class",n),1&s&&J(e,t[0].status)},d(t){t&&g(e),l=!1,s(r)}}}function At(t){let e,n,l,r;return{c(){e=$("input"),y(e,"class",n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500"),y(e,"type","time")},m(n,s){f(n,e,s),J(e,t[0].status),l||(r=[x(e,"change",t[9]),x(e,"input",t[10])],l=!0)},p(t,s){1&s&&n!==(n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500")&&y(e,"class",n),1&s&&J(e,t[0].status)},d(t){t&&g(e),l=!1,s(r)}}}function Bt(e){let n,s,l,r,o,c,i,a,u,d=(e[0].descr?e[0].descr:"")+"",m="number"==e[0].type&&Pt(e),h="text"==e[0].type&&qt(e),v="date"==e[0].type&&zt(e),x="time"==e[0].type&&At(e);return{c(){n=$("div"),s=$("div"),l=$("label"),r=w(d),o=b(),c=$("div"),m&&m.c(),i=b(),h&&h.c(),a=b(),v&&v.c(),u=b(),x&&x.c(),y(l,"class","wgt-dscr-stl"),y(s,"class","wgt-dscr-w"),y(c,"class","wgt-w"),y(n,"class","crd-itm-psn")},m(t,e){f(t,n,e),p(n,s),p(s,l),p(l,r),p(n,o),p(n,c),m&&m.m(c,null),p(c,i),h&&h.m(c,null),p(c,a),v&&v.m(c,null),p(c,u),x&&x.m(c,null)},p(t,[e]){1&e&&d!==(d=(t[0].descr?t[0].descr:"")+"")&&_(r,d),"number"==t[0].type?m?m.p(t,e):(m=Pt(t),m.c(),m.m(c,i)):m&&(m.d(1),m=null),"text"==t[0].type?h?h.p(t,e):(h=qt(t),h.c(),h.m(c,a)):h&&(h.d(1),h=null),"date"==t[0].type?v?v.p(t,e):(v=zt(t),v.c(),v.m(c,u)):v&&(v.d(1),v=null),"time"==t[0].type?x?x.p(t,e):(x=At(t),x.c(),x.m(c,null)):x&&(x.d(1),x=null)},i:t,o:t,d(t){t&&g(n),m&&m.d(),h&&h.d(),v&&v.d(),x&&x.d()}}}function Dt(t,e,n){let{widget:s}=e,{wsPush:l=((t,e,n)=>{})}=e,{value:r}=e;r=r;return t.$$set=t=>{"widget"in t&&n(0,s=t.widget),"wsPush"in t&&n(1,l=t.wsPush),"value"in t&&n(2,r=t.value)},[s,l,r,()=>(n(0,s.send=!0,s),l(s.ws,s.topic,s.status)),function(){s.status=k(this.value),n(0,s)},()=>(n(0,s.send=!0,s),l(s.ws,s.topic,s.status)),function(){s.status=this.value,n(0,s)},()=>(n(0,s.send=!0,s),l(s.ws,s.topic,s.status)),function(){s.status=this.value,n(0,s)},()=>(n(0,s.send=!0,s),l(s.ws,s.topic,s.status)),function(){s.status=this.value,n(0,s)}]}class Ft extends lt{constructor(t){super(),st(this,t,Dt,Bt,r,{widget:0,wsPush:1,value:2})}}function Rt(e){let n,l,r,o,c,i,a,u,d,m,h,v,k,S,C,L,E,j,T=(e[0].descr?e[0].descr:"")+"";return{c(){n=$("div"),l=$("div"),r=$("label"),o=w(T),c=b(),i=$("div"),a=$("label"),u=$("div"),d=$("input"),h=b(),v=$("div"),k=b(),S=$("div"),y(r,"class","wgt-dscr-stl"),y(l,"class","wgt-dscr-w"),y(d,"id",m=e[0].topic),y(d,"type","checkbox"),y(d,"class","sr-only"),y(v,"class","block bg-gray-600 w-10 h-6 rounded-full"),y(S,"class",C="dot "+(1==e[0].send?"bg-red-400":"bg-white")+" absolute left-1 top-1 w-4 h-4 rounded-full transition"),y(u,"class","relative"),y(a,"for",L=e[0].topic),y(a,"class","items-center cursor-pointer"),y(i,"class","wgt-w"),y(n,"class","crd-itm-psn")},m(t,s){f(t,n,s),p(n,l),p(l,r),p(r,o),p(n,c),p(n,i),p(i,a),p(a,u),p(u,d),J(d,e[0].status),p(u,h),p(u,v),p(u,k),p(u,S),E||(j=[x(d,"change",e[3]),x(d,"change",e[4])],E=!0)},p(t,[e]){1&e&&T!==(T=(t[0].descr?t[0].descr:"")+"")&&_(o,T),1&e&&m!==(m=t[0].topic)&&y(d,"id",m),1&e&&J(d,t[0].status),1&e&&C!==(C="dot "+(1==t[0].send?"bg-red-400":"bg-white")+" absolute left-1 top-1 w-4 h-4 rounded-full transition")&&y(S,"class",C),1&e&&L!==(L=t[0].topic)&&y(a,"for",L)},i:t,o:t,d(t){t&&g(n),E=!1,s(j)}}}function Wt(t,e,n){let{widget:s}=e,{value:l}=e;l=l;let{wsPush:r=((t,e,n)=>{})}=e;return t.$$set=t=>{"widget"in t&&n(0,s=t.widget),"value"in t&&n(2,l=t.value),"wsPush"in t&&n(1,r=t.wsPush)},[s,r,l,()=>(n(0,s.send=!0,s),r(s.ws,s.topic,s.status)),function(){s.status=this.value,n(0,s)}]}class It extends lt{constructor(t){super(),st(this,t,Wt,Rt,r,{widget:0,value:2,wsPush:1})}}function Yt(e){let n,s,l,r,o,c,i,a,u,d,m,h,v=(e[0].descr?e[0].descr:"")+"",x=(e[0].status?e[0].status:"")+"",k=(e[0].after?e[0].after:"")+"";return{c(){n=$("div"),s=$("div"),l=$("label"),r=w(v),o=b(),c=$("div"),i=$("label"),a=w(x),u=b(),d=$("label"),m=w(" "),h=w(k),y(l,"class","wgt-dscr-stl"),y(s,"class","wgt-dscr-w"),y(i,"class","wgt-adt-stl"),y(d,"class","wgt-adt-stl"),y(c,"class","wgt-w"),y(n,"class","crd-itm-psn")},m(t,e){f(t,n,e),p(n,s),p(s,l),p(l,r),p(n,o),p(n,c),p(c,i),p(i,a),p(c,u),p(c,d),p(d,m),p(d,h)},p(t,[e]){1&e&&v!==(v=(t[0].descr?t[0].descr:"")+"")&&_(r,v),1&e&&x!==(x=(t[0].status?t[0].status:"")+"")&&_(a,x),1&e&&k!==(k=(t[0].after?t[0].after:"")+"")&&_(h,k)},i:t,o:t,d(t){t&&g(n)}}}function Kt(t,e,n){let{widget:s}=e,{value:l}=e;return l=l,t.$$set=t=>{"widget"in t&&n(0,s=t.widget),"value"in t&&n(1,l=t.value)},[s,l]}class Ut extends lt{constructor(t){super(),st(this,t,Kt,Yt,r,{widget:0,value:1})}}function Qt(t,e,n){const s=t.slice();return s[8]=e[n],s[10]=n,s}function Zt(t,e,n){const s=t.slice();return s[11]=e[n],s[12]=e,s[10]=n,s}function Gt(t){let e,n;return e=new Mt({props:{title:"Ваша панель управления пуста, вначале добавьте новые элементы в конфигураторе!"}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function Vt(t){let e,n,s,l,r="input"===t[11].widget&&Xt(t),o="toggle"===t[11].widget&&te(t),c="anydata"===t[11].widget&&ee(t);return{c(){r&&r.c(),e=b(),o&&o.c(),n=b(),c&&c.c(),s=v()},m(t,i){r&&r.m(t,i),f(t,e,i),o&&o.m(t,i),f(t,n,i),c&&c.m(t,i),f(t,s,i),l=!0},p(t,l){"input"===t[11].widget?r?(r.p(t,l),1&l&&G(r,1)):(r=Xt(t),r.c(),G(r,1),r.m(e.parentNode,e)):r&&(Q(),V(r,1,1,(()=>{r=null})),Z()),"toggle"===t[11].widget?o?(o.p(t,l),1&l&&G(o,1)):(o=te(t),o.c(),G(o,1),o.m(n.parentNode,n)):o&&(Q(),V(o,1,1,(()=>{o=null})),Z()),"anydata"===t[11].widget?c?(c.p(t,l),1&l&&G(c,1)):(c=ee(t),c.c(),G(c,1),c.m(s.parentNode,s)):c&&(Q(),V(c,1,1,(()=>{c=null})),Z())},i(t){l||(G(r),G(o),G(c),l=!0)},o(t){V(r),V(o),V(c),l=!1},d(t){r&&r.d(t),t&&g(e),o&&o.d(t),t&&g(n),c&&c.d(t),t&&g(s)}}}function Xt(t){let e,n,s;function l(e){t[4](e,t[11])}let r={widget:t[11],wsPush:t[3]};return void 0!==t[11].status&&(r.value=t[11].status),e=new Ft({props:r}),N.push((()=>X(e,"value",l))),{c(){tt(e.$$.fragment)},m(t,n){et(e,t,n),s=!0},p(s,l){t=s;const r={};1&l&&(r.widget=t[11]),4&l&&(r.wsPush=t[3]),!n&&1&l&&(n=!0,r.value=t[11].status,F((()=>n=!1))),e.$set(r)},i(t){s||(G(e.$$.fragment,t),s=!0)},o(t){V(e.$$.fragment,t),s=!1},d(t){nt(e,t)}}}function te(t){let e,n,s;function l(e){t[6](e,t[11])}let r={widget:t[11],wsPush:t[5]};return void 0!==t[11].status&&(r.value=t[11].status),e=new It({props:r}),N.push((()=>X(e,"value",l))),{c(){tt(e.$$.fragment)},m(t,n){et(e,t,n),s=!0},p(s,l){t=s;const r={};1&l&&(r.widget=t[11]),4&l&&(r.wsPush=t[5]),!n&&1&l&&(n=!0,r.value=t[11].status,F((()=>n=!1))),e.$set(r)},i(t){s||(G(e.$$.fragment,t),s=!0)},o(t){V(e.$$.fragment,t),s=!1},d(t){nt(e,t)}}}function ee(t){let e,n,s;function l(e){t[7](e,t[11])}let r={widget:t[11]};return void 0!==t[11].status&&(r.value=t[11].status),e=new Ut({props:r}),N.push((()=>X(e,"value",l))),{c(){tt(e.$$.fragment)},m(t,n){et(e,t,n),s=!0},p(s,l){t=s;const r={};1&l&&(r.widget=t[11]),!n&&1&l&&(n=!0,r.value=t[11].status,F((()=>n=!1))),e.$set(r)},i(t){s||(G(e.$$.fragment,t),s=!0)},o(t){V(e.$$.fragment,t),s=!1},d(t){nt(e,t)}}}function ne(t){let e,n,s=t[11].page===t[8].page&&Vt(t);return{c(){s&&s.c(),e=v()},m(t,l){s&&s.m(t,l),f(t,e,l),n=!0},p(t,n){t[11].page===t[8].page?s?(s.p(t,n),3&n&&G(s,1)):(s=Vt(t),s.c(),G(s,1),s.m(e.parentNode,e)):s&&(Q(),V(s,1,1,(()=>{s=null})),Z())},i(t){n||(G(s),n=!0)},o(t){V(s),n=!1},d(t){s&&s.d(t),t&&g(e)}}}function se(t){let e,n,s=t[0],l=[];for(let e=0;eV(l[t],1,1,(()=>{l[t]=null}));return{c(){for(let t=0;tV(o[t],1,1,(()=>{o[t]=null}));return{c(){e=$("div"),l&&l.c(),n=b();for(let t=0;t{l=null})),Z()),7&s){let n;for(r=t[1],n=0;n{})}=e;return t.$$set=t=>{"layoutJson"in t&&n(0,s=t.layoutJson),"pages"in t&&n(1,l=t.pages),"wsPush"in t&&n(2,r=t.wsPush)},[s,l,r,(t,e,n)=>r(t,e,n),function(e,l){t.$$.not_equal(l.status,e)&&(l.status=e,n(0,s))},(t,e,n)=>r(t,e,n),function(e,l){t.$$.not_equal(l.status,e)&&(l.status=e,n(0,s))},function(e,l){t.$$.not_equal(l.status,e)&&(l.status=e,n(0,s))}]}class ce extends lt{constructor(t){super(),st(this,t,oe,re,r,{layoutJson:0,pages:1,wsPush:2})}}function ie(e){let n,s,r,o,c;return{c(){n=h("svg"),s=h("line"),r=h("line"),y(s,"x1","18"),y(s,"y1","6"),y(s,"x2","6"),y(s,"y2","18"),y(r,"x1","6"),y(r,"y1","6"),y(r,"x2","18"),y(r,"y2","18"),y(n,"class","h-6 w-6 text-red-400 cursor-pointer"),y(n,"viewBox","0 0 24 24"),y(n,"fill","none"),y(n,"stroke","currentColor"),y(n,"stroke-width","2"),y(n,"stroke-linecap","round"),y(n,"stroke-linejoin","round")},m(t,i){f(t,n,i),p(n,s),p(n,r),o||(c=x(n,"click",(function(){l(e[1](e[0]))&&e[1](e[0]).apply(this,arguments)})),o=!0)},p(t,[n]){e=t},i:t,o:t,d(t){t&&g(n),o=!1,c()}}}function ae(t,e,n){let{i:s}=e,{click:l=(t=>{})}=e;return t.$$set=t=>{"i"in t&&n(0,s=t.i),"click"in t&&n(1,l=t.click)},[s,l]}class ue extends lt{constructor(t){super(),st(this,t,ae,ie,r,{i:0,click:1})}}function de(e){let n,s,r,o,c,i,a;return{c(){n=h("svg"),s=h("path"),r=h("circle"),o=h("circle"),c=h("circle"),y(s,"stroke","none"),y(s,"d","M0 0h24v24H0z"),y(r,"cx","5"),y(r,"cy","12"),y(r,"r","1"),y(o,"cx","12"),y(o,"cy","12"),y(o,"r","1"),y(c,"cx","19"),y(c,"cy","12"),y(c,"r","1"),y(n,"class","h-6 w-6 text-green-400 cursor-pointer"),y(n,"width","24"),y(n,"height","24"),y(n,"viewBox","0 0 24 24"),y(n,"stroke-width","2"),y(n,"stroke","currentColor"),y(n,"fill","none"),y(n,"stroke-linecap","round"),y(n,"stroke-linejoin","round")},m(t,u){f(t,n,u),p(n,s),p(n,r),p(n,o),p(n,c),i||(a=x(n,"click",(function(){l(e[0]())&&e[0]().apply(this,arguments)})),i=!0)},p(t,[n]){e=t},i:t,o:t,d(t){t&&g(n),i=!1,a()}}}function pe(t,e,n){let{click:s=(()=>{})}=e;return t.$$set=t=>{"click"in t&&n(0,s=t.click)},[s]}class fe extends lt{constructor(t){super(),st(this,t,pe,de,r,{click:0})}}function ge(t,e,n){const s=t.slice();return s[18]=e[n],s[19]=e,s[20]=n,s}function me(t,e,n){const s=t.slice();return s[21]=e[n][0],s[22]=e[n][1],s[23]=e,s[24]=n,s}function $e(t,e,n){const s=t.slice();return s[25]=e[n],s}function he(t,e,n){const s=t.slice();return s[28]=e[n],s}function we(t){let e,n;return{c(){e=$("optgroup"),y(e,"label",n=t[28].header)},m(t,n){f(t,e,n)},p(t,s){4&s[0]&&n!==(n=t[28].header)&&y(e,"label",n)},d(t){t&&g(e)}}}function be(t){let e,n,s,l,r=t[28].name+"";return{c(){e=$("option"),n=w(r),s=b(),e.__value=l=t[28].num,e.value=e.__value},m(t,l){f(t,e,l),p(e,n),p(e,s)},p(t,s){4&s[0]&&r!==(r=t[28].name+"")&&_(n,r),4&s[0]&&l!==(l=t[28].num)&&(e.__value=l,e.value=e.__value)},d(t){t&&g(e)}}}function ve(t){let e,n,s=t[28].header&&we(t),l=!t[28].header&&be(t);return{c(){s&&s.c(),e=v(),l&&l.c(),n=v()},m(t,r){s&&s.m(t,r),f(t,e,r),l&&l.m(t,r),f(t,n,r)},p(t,r){t[28].header?s?s.p(t,r):(s=we(t),s.c(),s.m(e.parentNode,e)):s&&(s.d(1),s=null),t[28].header?l&&(l.d(1),l=null):l?l.p(t,r):(l=be(t),l.c(),l.m(n.parentNode,n))},d(t){s&&s.d(t),t&&g(e),l&&l.d(t),t&&g(n)}}}function xe(t){let e,n,s,l,r=t[25].label+"";return{c(){e=$("option"),n=w(r),s=b(),e.__value=l=t[25].name,e.value=e.__value},m(t,l){f(t,e,l),p(e,n),p(e,s)},p(t,s){2&s[0]&&r!==(r=t[25].label+"")&&_(n,r),2&s[0]&&l!==(l=t[25].name)&&(e.__value=l,e.value=e.__value)},d(t){t&&g(e)}}}function ye(t){let e,n=Object.entries(t[18]),s=[];for(let e=0;eV(E[t],1,1,(()=>{E[t]=null}));return{c(){e=$("div"),n=$("select");for(let t=0;tТип \n Id \n Виджет \n Вкладка \n Название \n \n ',u=b(),d=$("tbody");for(let t=0;tt[8].call(n))),o.__value="Выберите пресет",o.value=o.__value,y(r,"class","slct-lg"),y(e,"class","grd-2col2"),y(a,"class","bg-gray-100"),y(d,"class","bg-white"),y(i,"class","tbl"),y(w,"class","btn-lg")},m(s,g){f(s,e,g),p(e,n);for(let t=0;t{})}=e,i=!0;function a(){for(let t=0;t{"configJson"in t&&n(0,s=t.configJson),"widgetsJson"in t&&n(1,l=t.widgetsJson),"itemsJson"in t&&n(2,r=t.itemsJson),"saveConfig"in t&&n(3,c=t.saveConfig)},[s,l,r,c,o,i,a,u,function(){o=C(this),n(4,o),n(2,r)},()=>a(),function(t,e){t[e].id=this.value,n(0,s),n(1,l)},function(t,e){t[e].widget=C(this),n(0,s),n(1,l)},function(t,e){t[e].page=this.value,n(0,s),n(1,l)},function(t,e){t[e].descr=this.value,n(0,s),n(1,l)},()=>n(5,i=!i),t=>u(t),function(t,e,r){e[r][t]=this.value,n(0,s),n(1,l)},()=>c()]}class Ee extends lt{constructor(t){super(),st(this,t,Le,Ce,r,{configJson:0,widgetsJson:1,itemsJson:2,saveConfig:3},null,[-1,-1])}}function je(t,e,n){const s=t.slice();return s[20]=e[n][0],s[21]=e[n][1],s}function Te(t){let e,n,s,l,r=t[21]+"";return{c(){e=$("option"),n=w(r),s=b(),e.__value=l=t[21],e.value=e.__value},m(t,l){f(t,e,l),p(e,n),p(e,s)},p(t,s){4&s&&r!==(r=t[21]+"")&&_(n,r),4&s&&l!==(l=t[21])&&(e.__value=l,e.value=e.__value)},d(t){t&&g(e)}}}function Oe(t){let e,n,s;return n=new Et({props:{title:"Введен неправильный пароль"}}),{c(){e=$("div"),tt(n.$$.fragment),y(e,"class","grd-1col1")},m(t,l){f(t,e,l),et(n,e,null),s=!0},i(t){s||(G(n.$$.fragment,t),s=!0)},o(t){V(n.$$.fragment,t),s=!1},d(t){t&&g(e),nt(n)}}}function He(t){let e,n,l,r,o,c,i,a,u,d,h,w,v,k,_,C,L,E,j,T,O,H,N,M,P,q,z,A,B,F,R,W,I,Y,K,U=Object.entries(t[2]),X=[];for(let e=0;eНазвание устройства

',l=b(),r=$("div"),o=$("input"),c=b(),i=$("div"),a=$("div"),a.innerHTML='

Точка доступа

',u=b(),d=$("div"),h=$("input"),w=b(),v=$("div"),k=$("div"),k.innerHTML='

Пароль точки доступа

',_=b(),C=$("div"),L=$("input"),E=b(),j=$("div"),T=$("div"),T.innerHTML='

Название wifi сети

',O=b(),H=$("div"),N=$("select");for(let t=0;tПароль

',z=b(),A=$("div"),B=$("input"),F=b(),tt&&tt.c(),R=b(),W=$("button"),W.textContent="Сохранить",y(n,"class","wgt-dscr-w"),y(o,"class","ipt-rnd text-left focus:border-indigo-500"),y(o,"type","text"),y(r,"class","wgt-w"),y(e,"class","crd-itm-psn"),y(a,"class","wgt-dscr-w"),y(h,"class","ipt-rnd text-left focus:border-indigo-500"),y(h,"type","text"),y(d,"class","wgt-w"),y(i,"class","crd-itm-psn"),y(k,"class","wgt-dscr-w"),y(L,"class","ipt-rnd text-left focus:border-indigo-500"),y(L,"type","text"),y(C,"class","wgt-w"),y(v,"class","crd-itm-psn"),y(T,"class","wgt-dscr-w"),y(N,"class","ipt-rnd text-left focus:border-indigo-500"),void 0===t[0].routerssid&&D((()=>t[9].call(N))),y(H,"class","wgt-w"),y(j,"class","crd-itm-psn"),y(q,"class","wgt-dscr-w"),y(B,"class","ipt-rnd text-left focus:border-indigo-500"),y(B,"type","text"),y(A,"class","wgt-w"),y(P,"class","crd-itm-psn"),y(W,"class","btn-lg")},m(s,g){f(s,e,g),p(e,n),p(e,l),p(e,r),p(r,o),J(o,t[0].name),f(s,c,g),f(s,i,g),p(i,a),p(i,u),p(i,d),p(d,h),J(h,t[0].apssid),f(s,w,g),f(s,v,g),p(v,k),p(v,_),p(v,C),p(C,L),J(L,t[0].appass),f(s,E,g),f(s,j,g),p(j,T),p(j,O),p(j,H),p(H,N);for(let t=0;t{tt=null})),Z())},i(t){I||(G(tt),I=!0)},o(t){V(tt),I=!1},d(t){t&&g(e),t&&g(c),t&&g(i),t&&g(w),t&&g(v),t&&g(E),t&&g(j),m(X,t),t&&g(M),t&&g(P),t&&g(F),tt&&tt.d(t),t&&g(R),t&&g(W),Y=!1,s(K)}}}function Ne(t){let e,n,l,r,o,c,i,a,u,d,m,h,w,v,k,_,S,C,L,E,j,T,O,H,N,M,P,q,z,A,B,D,F;return{c(){e=$("div"),n=$("div"),n.innerHTML='

Название сервера

',l=b(),r=$("div"),o=$("input"),c=b(),i=$("div"),a=$("div"),a.innerHTML='

Порт

',u=b(),d=$("div"),m=$("input"),h=b(),w=$("div"),v=$("div"),v.innerHTML='

Префикс

',k=b(),_=$("div"),S=$("input"),C=b(),L=$("div"),E=$("div"),E.innerHTML='

Имя пользователя

',j=b(),T=$("div"),O=$("input"),H=b(),N=$("div"),M=$("div"),M.innerHTML='

Пароль

',P=b(),q=$("div"),z=$("input"),A=b(),B=$("button"),B.textContent="Сохранить и проверить подключение",y(n,"class","wgt-dscr-w"),y(o,"class","ipt-rnd text-left focus:border-indigo-500"),y(o,"type","text"),y(r,"class","wgt-w"),y(e,"class","crd-itm-psn"),y(a,"class","wgt-dscr-w"),y(m,"class","ipt-rnd text-left focus:border-indigo-500"),y(m,"type","text"),y(d,"class","wgt-w"),y(i,"class","crd-itm-psn"),y(v,"class","wgt-dscr-w"),y(S,"class","ipt-rnd text-left focus:border-indigo-500"),y(S,"type","text"),y(_,"class","wgt-w"),y(w,"class","crd-itm-psn"),y(E,"class","wgt-dscr-w"),y(O,"class","ipt-rnd text-left focus:border-indigo-500"),y(O,"type","text"),y(T,"class","wgt-w"),y(L,"class","crd-itm-psn"),y(M,"class","wgt-dscr-w"),y(z,"class","ipt-rnd text-left focus:border-indigo-500"),y(z,"type","text"),y(q,"class","wgt-w"),y(N,"class","crd-itm-psn"),y(B,"class","btn-lg")},m(s,g){f(s,e,g),p(e,n),p(e,l),p(e,r),p(r,o),J(o,t[0].mqttServer),f(s,c,g),f(s,i,g),p(i,a),p(i,u),p(i,d),p(d,m),J(m,t[0].mqttPort),f(s,h,g),f(s,w,g),p(w,v),p(w,k),p(w,_),p(_,S),J(S,t[0].mqttPrefix),f(s,C,g),f(s,L,g),p(L,E),p(L,j),p(L,T),p(T,O),J(O,t[0].mqttUser),f(s,H,g),f(s,N,g),p(N,M),p(N,P),p(N,q),p(q,z),J(z,t[0].mqttPass),f(s,A,g),f(s,B,g),D||(F=[x(o,"input",t[13]),x(m,"input",t[14]),x(S,"input",t[15]),x(O,"input",t[16]),x(z,"input",t[17]),x(B,"click",t[18])],D=!0)},p(t,e){5&e&&o.value!==t[0].mqttServer&&J(o,t[0].mqttServer),5&e&&m.value!==t[0].mqttPort&&J(m,t[0].mqttPort),5&e&&S.value!==t[0].mqttPrefix&&J(S,t[0].mqttPrefix),5&e&&O.value!==t[0].mqttUser&&J(O,t[0].mqttUser),5&e&&z.value!==t[0].mqttPass&&J(z,t[0].mqttPass)},d(t){t&&g(e),t&&g(c),t&&g(i),t&&g(h),t&&g(w),t&&g(C),t&&g(L),t&&g(H),t&&g(N),t&&g(A),t&&g(B),D=!1,s(F)}}}function Me(e){let n,s,l;return{c(){n=$("button"),n.textContent="Перезагрузить устройство",y(n,"class","btn-lg")},m(t,r){f(t,n,r),s||(l=x(n,"click",e[19]),s=!0)},p:t,d(t){t&&g(n),s=!1,l()}}}function Pe(t){let e,n,s,l,r,o,c,i;return n=new Mt({props:{title:"Подключение к WiFi роутеру",$$slots:{default:[He]},$$scope:{ctx:t}}}),l=new Mt({props:{title:"Подключение к MQTT брокеру",$$slots:{default:[Ne]},$$scope:{ctx:t}}}),c=new Mt({props:{$$slots:{default:[Me]},$$scope:{ctx:t}}}),{c(){e=$("div"),tt(n.$$.fragment),s=b(),tt(l.$$.fragment),r=b(),o=$("div"),tt(c.$$.fragment),y(e,"class","grd-2col1"),y(o,"class","grd-1col1")},m(t,a){f(t,e,a),et(n,e,null),p(e,s),et(l,e,null),f(t,r,a),f(t,o,a),et(c,o,null),i=!0},p(t,[e]){const s={};16777247&e&&(s.$$scope={dirty:e,ctx:t}),n.$set(s);const r={};16777233&e&&(r.$$scope={dirty:e,ctx:t}),l.$set(r);const o={};16777248&e&&(o.$$scope={dirty:e,ctx:t}),c.$set(o)},i(t){i||(G(n.$$.fragment,t),G(l.$$.fragment,t),G(c.$$.fragment,t),i=!0)},o(t){V(n.$$.fragment,t),V(l.$$.fragment,t),V(c.$$.fragment,t),i=!1},d(t){t&&g(e),nt(n),nt(l),t&&g(r),t&&g(o),nt(c)}}}function qe(t,e,n){let{settingsJson:s}=e,{errorsJson:l}=e,{ssidJson:r}=e,{ssidDropdownClick:o=(()=>{})}=e,{saveSettings:c=(()=>{})}=e,{rebootEsp:i=(()=>{})}=e;return t.$$set=t=>{"settingsJson"in t&&n(0,s=t.settingsJson),"errorsJson"in t&&n(1,l=t.errorsJson),"ssidJson"in t&&n(2,r=t.ssidJson),"ssidDropdownClick"in t&&n(3,o=t.ssidDropdownClick),"saveSettings"in t&&n(4,c=t.saveSettings),"rebootEsp"in t&&n(5,i=t.rebootEsp)},[s,l,r,o,c,i,function(){s.name=this.value,n(0,s),n(2,r)},function(){s.apssid=this.value,n(0,s),n(2,r)},function(){s.appass=this.value,n(0,s),n(2,r)},function(){s.routerssid=C(this),n(0,s),n(2,r)},()=>o(),function(){s.routerpass=this.value,n(0,s),n(2,r)},()=>c(),function(){s.mqttServer=this.value,n(0,s),n(2,r)},function(){s.mqttPort=this.value,n(0,s),n(2,r)},function(){s.mqttPrefix=this.value,n(0,s),n(2,r)},function(){s.mqttUser=this.value,n(0,s),n(2,r)},function(){s.mqttPass=this.value,n(0,s),n(2,r)},()=>c(),()=>i()]}class ze extends lt{constructor(t){super(),st(this,t,qe,Pe,r,{settingsJson:0,errorsJson:1,ssidJson:2,ssidDropdownClick:3,saveSettings:4,rebootEsp:5})}}function Ae(t,e,n){const s=t.slice();return s[10]=e[n],s[12]=n,s}function Be(t){let e,n,s,l,r,o,c,i,a,u,d,m,h,v,x,k,J,S,C,L=t[10].name+"",E=t[10].ip+"",j=t[10].id+"",T=t[10].status?"online":"offline";return S=new ue({props:{i:t[12],click:t[5]}}),{c(){e=$("tr"),n=$("td"),s=w(L),l=b(),r=$("td"),o=$("a"),c=w(E),a=b(),u=$("td"),d=w(j),m=b(),h=$("td"),v=w(T),k=b(),J=$("td"),tt(S.$$.fragment),y(n,"class","tbl-bdy-lg ipt-lg w-full"),y(o,"href",i="http://"+t[10].ip),y(r,"class","tbl-bdy-lg ipt-lg w-full"),y(u,"class","tbl-bdy-lg ipt-lg w-full"),y(h,"class",x="tbl-bdy-lg ipt-lg w-full "+(t[10].status?"bg-green-50":"bg-red-50")),y(J,"class","tbl-bdy-lg"),y(e,"class","txt-sz txt-pad")},m(t,i){f(t,e,i),p(e,n),p(n,s),p(e,l),p(e,r),p(r,o),p(o,c),p(e,a),p(e,u),p(u,d),p(e,m),p(e,h),p(h,v),p(e,k),p(e,J),et(S,J,null),C=!0},p(t,e){(!C||1&e)&&L!==(L=t[10].name+"")&&_(s,L),(!C||1&e)&&E!==(E=t[10].ip+"")&&_(c,E),(!C||1&e&&i!==(i="http://"+t[10].ip))&&y(o,"href",i),(!C||1&e)&&j!==(j=t[10].id+"")&&_(d,j),(!C||1&e)&&T!==(T=t[10].status?"online":"offline")&&_(v,T),(!C||1&e&&x!==(x="tbl-bdy-lg ipt-lg w-full "+(t[10].status?"bg-green-50":"bg-red-50")))&&y(h,"class",x)},i(t){C||(G(S.$$.fragment,t),C=!0)},o(t){V(S.$$.fragment,t),C=!1},d(t){t&&g(e),nt(S)}}}function De(t){let e,n,l,r,o,c,i,a,u,d,m,h,w;return{c(){e=$("tr"),n=$("td"),l=$("input"),r=b(),o=$("td"),c=$("input"),i=b(),a=$("td"),u=$("input"),d=b(),m=$("td"),y(l,"class","ipt-lg w-full"),y(l,"type","text"),y(n,"class","tbl-bdy-lg"),y(c,"class","ipt-lg w-full"),y(c,"type","text"),y(o,"class","tbl-bdy-lg"),y(u,"class","ipt-lg w-full"),y(u,"type","text"),y(a,"class","tbl-bdy-lg"),y(m,"class","tbl-bdy-lg"),y(e,"class","txt-sz txt-pad")},m(s,g){f(s,e,g),p(e,n),p(n,l),J(l,t[2].name),p(e,r),p(e,o),p(o,c),J(c,t[2].ip),p(e,i),p(e,a),p(a,u),J(u,t[2].id),p(e,d),p(e,m),h||(w=[x(l,"input",t[6]),x(c,"input",t[7]),x(u,"input",t[8])],h=!0)},p(t,e){4&e&&l.value!==t[2].name&&J(l,t[2].name),4&e&&c.value!==t[2].ip&&J(c,t[2].ip),4&e&&u.value!==t[2].id&&J(u,t[2].id)},d(t){t&&g(e),h=!1,s(w)}}}function Fe(t){let e,n,s,l,r,o,c,i,a,u,d,h=t[1]?"Сохранить":"Добавить устройство",v=t[0],k=[];for(let e=0;eV(k[t],1,1,(()=>{k[t]=null}));let S=t[1]&&De(t);return{c(){e=$("table"),n=$("thead"),n.innerHTML='Название устройства \n IP адрес \n Идентификатор \n Состояние \n ',s=b(),l=$("tbody");for(let t=0;t{})}=e;function c(t){for(let e=0;e{"deviceList"in t&&n(0,s=t.deviceList),"showInput"in t&&n(1,l=t.showInput),"newDevice"in t&&n(2,r=t.newDevice),"devListSave"in t&&n(3,o=t.devListSave)},[s,l,r,o,c,t=>c(t),function(){r.name=this.value,n(2,r)},function(){r.ip=this.value,n(2,r)},function(){r.id=this.value,n(2,r)},()=>(n(1,l=!l),o())]}class Ye extends lt{constructor(t){super(),st(this,t,Ie,We,r,{deviceList:0,showInput:1,newDevice:2,devListSave:3})}}function Ke(t){let e;return{c(){e=$("p"),e.textContent="не подключено",y(e,"class","text-red-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Ue(t){let e;return{c(){e=$("p"),e.textContent="нет сигнала",y(e,"class","text-red-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Qe(t){let e;return{c(){e=$("p"),e.textContent="очень низкий",y(e,"class","text-red-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Ze(t){let e;return{c(){e=$("p"),e.textContent="низкий",y(e,"class","text-yellow-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Ge(t){let e;return{c(){e=$("p"),e.textContent="хороший",y(e,"class","text-yellow-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Ve(t){let e;return{c(){e=$("p"),e.textContent="очень хороший",y(e,"class","text-green-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Xe(t){let e;return{c(){e=$("p"),e.textContent="отличный",y(e,"class","text-green-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function tn(t){let e,n,s,l,r,o,c,i,a,u,d,m,h,v,x,k,J,S,C,L,E,j,T,O,H,N,M,P,q,z,A,B,D,F,R,W,I,Y,K=t[1].bver+"",U=t[1].upt+"",Q=t[1].heap+"",Z=0===t[1].rssi&&Ke(),G=1===t[1].rssi&&Ue(),V=2===t[1].rssi&&Qe(),X=3===t[1].rssi&&Ze(),tt=4===t[1].rssi&&Ge(),et=5===t[1].rssi&&Ve(),nt=6===t[1].rssi&&Xe();return{c(){e=$("div"),n=$("div"),n.innerHTML='

Версия прошивки

',s=b(),l=$("div"),r=$("p"),o=w(K),c=b(),i=$("div"),a=$("div"),a.innerHTML='

Версия файловой системы

',u=b(),d=$("div"),m=$("p"),h=w(t[0]),v=b(),x=$("div"),k=$("div"),k.innerHTML='

Время работы устройства

',J=b(),S=$("div"),C=$("p"),L=w(U),E=b(),j=$("div"),T=$("div"),T.innerHTML='

Качество WiFi сигнала

',O=b(),H=$("div"),Z&&Z.c(),N=b(),G&&G.c(),M=b(),V&&V.c(),P=b(),X&&X.c(),q=b(),tt&&tt.c(),z=b(),et&&et.c(),A=b(),nt&&nt.c(),B=b(),D=$("div"),F=$("div"),F.innerHTML='

Остаток оперативной памяти

',R=b(),W=$("div"),I=$("p"),Y=w(Q),y(n,"class","w-3/4"),y(r,"class","text-gray-500 font-bold"),y(l,"class","flex justify-center w-1/4"),y(e,"class","crd-itm-psn"),y(a,"class","w-3/4"),y(m,"class","text-gray-500 font-bold"),y(d,"class","flex justify-center w-1/4"),y(i,"class","crd-itm-psn"),y(k,"class","w-3/4"),y(C,"class","text-gray-500 font-bold"),y(S,"class","flex justify-center w-1/4"),y(x,"class","crd-itm-psn"),y(T,"class","w-3/4"),y(H,"class","flex justify-center w-1/4 text-xs sm:text-sm md:text-base lg:text-base xl:text-base 2xl:text-base break-words"),y(j,"class","crd-itm-psn"),y(F,"class","w-3/4"),y(I,"class","text-green-500 font-bold"),y(W,"class","flex justify-center w-1/4"),y(D,"class","crd-itm-psn")},m(t,g){f(t,e,g),p(e,n),p(e,s),p(e,l),p(l,r),p(r,o),f(t,c,g),f(t,i,g),p(i,a),p(i,u),p(i,d),p(d,m),p(m,h),f(t,v,g),f(t,x,g),p(x,k),p(x,J),p(x,S),p(S,C),p(C,L),f(t,E,g),f(t,j,g),p(j,T),p(j,O),p(j,H),Z&&Z.m(H,null),p(H,N),G&&G.m(H,null),p(H,M),V&&V.m(H,null),p(H,P),X&&X.m(H,null),p(H,q),tt&&tt.m(H,null),p(H,z),et&&et.m(H,null),p(H,A),nt&&nt.m(H,null),f(t,B,g),f(t,D,g),p(D,F),p(D,R),p(D,W),p(W,I),p(I,Y)},p(t,e){2&e&&K!==(K=t[1].bver+"")&&_(o,K),1&e&&_(h,t[0]),2&e&&U!==(U=t[1].upt+"")&&_(L,U),0===t[1].rssi?Z||(Z=Ke(),Z.c(),Z.m(H,N)):Z&&(Z.d(1),Z=null),1===t[1].rssi?G||(G=Ue(),G.c(),G.m(H,M)):G&&(G.d(1),G=null),2===t[1].rssi?V||(V=Qe(),V.c(),V.m(H,P)):V&&(V.d(1),V=null),3===t[1].rssi?X||(X=Ze(),X.c(),X.m(H,q)):X&&(X.d(1),X=null),4===t[1].rssi?tt||(tt=Ge(),tt.c(),tt.m(H,z)):tt&&(tt.d(1),tt=null),5===t[1].rssi?et||(et=Ve(),et.c(),et.m(H,A)):et&&(et.d(1),et=null),6===t[1].rssi?nt||(nt=Xe(),nt.c(),nt.m(H,null)):nt&&(nt.d(1),nt=null),2&e&&Q!==(Q=t[1].heap+"")&&_(Y,Q)},d(t){t&&g(e),t&&g(c),t&&g(i),t&&g(v),t&&g(x),t&&g(E),t&&g(j),Z&&Z.d(),G&&G.d(),V&&V.d(),X&&X.d(),tt&&tt.d(),et&&et.d(),nt&&nt.d(),t&&g(B),t&&g(D)}}}function en(t){let e,n;return e=new Et({props:{title:"Ошибка web sockets",$$slots:{default:[nn]},$$scope:{ctx:t}}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function nn(t){let e;return{c(){e=$("p"),e.textContent="Слишком много клиентов было открыто. Допускается не более четырех. Для исчезновения ошибки перезагрузите устройство"},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function sn(t){let e,n;return e=new Et({props:{title:"Ошибка версии",$$slots:{default:[ln]},$$scope:{ctx:t}}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function ln(t){let e;return{c(){e=$("p"),e.textContent="Версия файловой системы не совпадает с версией прошивки"},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function rn(t){let e,n;return e=new Et({props:{title:"WiFi",$$slots:{default:[on]},$$scope:{ctx:t}}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function on(t){let e;return{c(){e=$("p"),e.textContent="Уровень сигнала WiFi предельно низкий, веб интерфейс может работать со сбоями и потерей данных, рекомендуется переместить устройство ближе к роутеру"},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function cn(t){let e,n,s,l,r=1===t[1].wscle&&en(t),o=t[1].bver!=t[0]&&sn(t),c=t[1].rssi<3&&t[1].rssi>0&&rn(t);return{c(){e=$("div"),r&&r.c(),n=b(),o&&o.c(),s=b(),c&&c.c(),y(e,"class","grd-3col1")},m(t,i){f(t,e,i),r&&r.m(e,null),p(e,n),o&&o.m(e,null),p(e,s),c&&c.m(e,null),l=!0},p(t,l){1===t[1].wscle?r?2&l&&G(r,1):(r=en(t),r.c(),G(r,1),r.m(e,n)):r&&(Q(),V(r,1,1,(()=>{r=null})),Z()),t[1].bver!=t[0]?o?3&l&&G(o,1):(o=sn(t),o.c(),G(o,1),o.m(e,s)):o&&(Q(),V(o,1,1,(()=>{o=null})),Z()),t[1].rssi<3&&t[1].rssi>0?c?2&l&&G(c,1):(c=rn(t),c.c(),G(c,1),c.m(e,null)):c&&(Q(),V(c,1,1,(()=>{c=null})),Z())},i(t){l||(G(r),G(o),G(c),l=!0)},o(t){V(r),V(o),V(c),l=!1},d(t){t&&g(e),r&&r.d(),o&&o.d(),c&&c.d()}}}function an(e){let n,s,l;return{c(){n=$("button"),n.textContent="Перезагрузить устройство",y(n,"class","btn-lg")},m(t,r){f(t,n,r),s||(l=x(n,"click",e[3]),s=!0)},p:t,d(t){t&&g(n),s=!1,l()}}}function un(t){let e,n,s,l,r,o,c,i;return n=new Mt({props:{title:"Системная информация",$$slots:{default:[tn]},$$scope:{ctx:t}}}),l=new Mt({props:{title:"Системные ошибки",$$slots:{default:[cn]},$$scope:{ctx:t}}}),c=new Mt({props:{$$slots:{default:[an]},$$scope:{ctx:t}}}),{c(){e=$("div"),tt(n.$$.fragment),s=b(),tt(l.$$.fragment),r=b(),o=$("div"),tt(c.$$.fragment),y(e,"class","grd-2col1"),y(o,"class","grd-1col1")},m(t,a){f(t,e,a),et(n,e,null),p(e,s),et(l,e,null),f(t,r,a),f(t,o,a),et(c,o,null),i=!0},p(t,[e]){const s={};19&e&&(s.$$scope={dirty:e,ctx:t}),n.$set(s);const r={};19&e&&(r.$$scope={dirty:e,ctx:t}),l.$set(r);const o={};20&e&&(o.$$scope={dirty:e,ctx:t}),c.$set(o)},i(t){i||(G(n.$$.fragment,t),G(l.$$.fragment,t),G(c.$$.fragment,t),i=!0)},o(t){V(n.$$.fragment,t),V(l.$$.fragment,t),V(c.$$.fragment,t),i=!1},d(t){t&&g(e),nt(n),nt(l),t&&g(r),t&&g(o),nt(c)}}}function dn(t,e,n){let{version:s}=e,{errorsJson:l}=e,{rebootEsp:r=(()=>{})}=e;return t.$$set=t=>{"version"in t&&n(0,s=t.version),"errorsJson"in t&&n(1,l=t.errorsJson),"rebootEsp"in t&&n(2,r=t.rebootEsp)},[s,l,r,()=>r()]}class pn extends lt{constructor(t){super(),st(this,t,dn,un,r,{version:0,errorsJson:1,rebootEsp:2})}}function fn(e){let n,s,l,r;return{c(){n=h("svg"),s=h("path"),l=h("path"),y(s,"stroke","none"),y(s,"d","M0 0h24v24H0z"),y(l,"d","M7 18a4.6 4.4 0 0 1 0 -9h0a5 4.5 0 0 1 11 2h1a3.5 3.5 0 0 1 0 7h-12"),y(n,"class",r="h-8 w-8 "+e[0]),y(n,"width","24"),y(n,"height","24"),y(n,"viewBox","0 0 24 24"),y(n,"stroke-width","2"),y(n,"stroke","currentColor"),y(n,"fill","none"),y(n,"stroke-linecap","round"),y(n,"stroke-linejoin","round")},m(t,e){f(t,n,e),p(n,s),p(n,l)},p(t,[e]){1&e&&r!==(r="h-8 w-8 "+t[0])&&y(n,"class",r)},i:t,o:t,d(t){t&&g(n)}}}function gn(t,e,n){let{color:s}=e;return t.$$set=t=>{"color"in t&&n(0,s=t.color)},[s]}class mn extends lt{constructor(t){super(),st(this,t,gn,fn,r,{color:0})}}function $n(t,e,n){const s=t.slice();return s[91]=e[n],s}function hn(t){let e,n;return e=new Tt({}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function wn(t){let e,n,s,l,r=t[91].name+"";return{c(){e=$("option"),n=w(r),s=b(),e.__value=l=t[91].ws,e.value=e.__value},m(t,l){f(t,e,l),p(e,n),p(e,s)},p(t,s){8192&s[0]&&r!==(r=t[91].name+"")&&_(n,r),8192&s[0]&&l!==(l=t[91].ws)&&(e.__value=l,e.value=e.__value)},d(t){t&&g(e)}}}function bn(t){let e,n,s,l,r,o,c,i;return e=new Jt({props:{path:"/",$$slots:{default:[xn]},$$scope:{ctx:t}}}),s=new Jt({props:{path:"/config",$$slots:{default:[yn]},$$scope:{ctx:t}}}),r=new Jt({props:{path:"/connection",$$slots:{default:[kn]},$$scope:{ctx:t}}}),c=new Jt({props:{path:"/system",$$slots:{default:[_n]},$$scope:{ctx:t}}}),{c(){tt(e.$$.fragment),n=b(),tt(s.$$.fragment),l=b(),tt(r.$$.fragment),o=b(),tt(c.$$.fragment)},m(t,a){et(e,t,a),f(t,n,a),et(s,t,a),f(t,l,a),et(r,t,a),f(t,o,a),et(c,t,a),i=!0},p(t,n){const l={};68&n[0]|2&n[3]&&(l.$$scope={dirty:n,ctx:t}),e.$set(l);const o={};56&n[0]|2&n[3]&&(o.$$scope={dirty:n,ctx:t}),s.$set(o);const i={};896&n[0]|2&n[3]&&(i.$$scope={dirty:n,ctx:t}),r.$set(i);const a={};384&n[0]|2&n[3]&&(a.$$scope={dirty:n,ctx:t}),c.$set(a)},i(t){i||(G(e.$$.fragment,t),G(s.$$.fragment,t),G(r.$$.fragment,t),G(c.$$.fragment,t),i=!0)},o(t){V(e.$$.fragment,t),V(s.$$.fragment,t),V(r.$$.fragment,t),V(c.$$.fragment,t),i=!1},d(t){nt(e,t),t&&g(n),nt(s,t),t&&g(l),nt(r,t),t&&g(o),nt(c,t)}}}function vn(e){let n,s;return n=new Et({props:{title:"Нет соединения"}}),{c(){tt(n.$$.fragment)},m(t,e){et(n,t,e),s=!0},p:t,i(t){s||(G(n.$$.fragment,t),s=!0)},o(t){V(n.$$.fragment,t),s=!1},d(t){nt(n,t)}}}function xn(t){let e,n;return e=new ce({props:{layoutJson:t[6],pages:t[2],wsPush:t[27]}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};64&n[0]&&(s.layoutJson=t[6]),4&n[0]&&(s.pages=t[2]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function yn(t){let e,n;return e=new Ee({props:{configJson:t[3],widgetsJson:t[4],itemsJson:t[5],saveConfig:t[28]}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};8&n[0]&&(s.configJson=t[3]),16&n[0]&&(s.widgetsJson=t[4]),32&n[0]&&(s.itemsJson=t[5]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function kn(t){let e,n;return e=new ze({props:{settingsJson:t[7],errorsJson:t[8],ssidJson:t[9],rebootEsp:t[29],ssidDropdownClick:t[30],saveSettings:t[31]}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};128&n[0]&&(s.settingsJson=t[7]),256&n[0]&&(s.errorsJson=t[8]),512&n[0]&&(s.ssidJson=t[9]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function _n(t){let e,n;return e=new pn({props:{settingsJson:t[7],errorsJson:t[8],rebootEsp:t[32],version:Cn}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};128&n[0]&&(s.settingsJson=t[7]),256&n[0]&&(s.errorsJson=t[8]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function Jn(t){let e,n;return e=new Ye({props:{deviceList:t[13],showInput:Ln,devListSave:t[33],newDevice:t[12]}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};8192&n[0]&&(s.deviceList=t[13]),4096&n[0]&&(s.newDevice=t[12]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function Sn(t){let e,n,l,r,o,c,i,a,u,d,h,w,v,k,_,J,C,L,E,j,T,O,H,N,M,P,q,z,A,B,F,R,W,I,Y,K,U,X,st,lt,rt,ot,ct,it,at=t[14]&&hn(),ut=t[13],dt=[];for(let e=0;e",_=b(),J=$("ul"),C=$("li"),L=$("a"),L.textContent="Управление",E=b(),j=$("li"),T=$("a"),T.textContent="Конфигуратор",O=b(),H=$("li"),N=$("a"),N.textContent="Подключение",M=b(),P=$("li"),q=$("a"),q.textContent="Устройства",z=b(),A=$("li"),B=$("a"),B.textContent="Системные",F=b(),R=$("main"),W=$("ul"),I=$("div"),K.c(),U=b(),tt(X.$$.fragment),lt=b(),rt=$("footer"),rt.innerHTML='
Developed by Dmitry Borisenko
',y(c,"class","border border-indigo-500 border-4"),void 0===t[11]&&D((()=>t[23].call(c))),y(o,"class","px-15 py-1"),y(a,"class","pl-4 pr-4 py-1"),y(r,"class","flex content-center items-center justify-end"),y(l,"class","h-10 w-full bg-gray-100 overflow-auto shadow-md"),y(w,"id","menu__toggle"),y(w,"type","checkbox"),y(k,"class","menu__btn"),y(k,"for","menu__toggle"),y(L,"class","menu__item"),y(L,"href","/"),y(T,"class","menu__item"),y(T,"href","/config"),y(N,"class","menu__item"),y(N,"href","/connection"),y(q,"class","menu__item"),y(q,"href","/list"),y(B,"class","menu__item"),y(B,"href","/system"),y(J,"class","menu__box"),y(h,"class","flex"),y(I,"class","bg-cover pt-0 px-4"),y(W,"class","menu__main"),y(R,"class",st="flex-1 overflow-y-auto p-0 "+(!0!==t[0]||t[1]?"ml-0":"ml-36")),y(rt,"class","h-4 bg-gray-100 border-gray-200 shadow-lg"),y(e,"class","flex flex-col h-screen bg-gray-50")},m(s,g){f(s,e,g),at&&at.m(e,null),p(e,n),p(e,l),p(l,r),p(r,o),p(o,c);for(let t=0;t{at=null})),Z()),8192&s[0]){let e;for(ut=t[13],e=0;e{ft[r]=null})),Z(),K=ft[Y],K?K.p(t,s):(K=ft[Y]=pt[Y](t),K.c()),G(K,1),K.m(I,U));const o={};12288&s[0]|2&s[3]&&(o.$$scope={dirty:s,ctx:t}),X.$set(o),(!ot||3&s[0]&&st!==(st="flex-1 overflow-y-auto p-0 "+(!0!==t[0]||t[1]?"ml-0":"ml-36")))&&y(R,"class",st)},i(t){ot||(G(at),G(u.$$.fragment,t),G(K),G(X.$$.fragment,t),ot=!0)},o(t){V(at),V(u.$$.fragment,t),V(K),V(X.$$.fragment,t),ot=!1},d(t){t&&g(e),at&&at.d(),m(dt,t),nt(u),ft[Y].d(),nt(X),ct=!1,s(it)}}}let Cn=400,Ln=!1;function En(t,e,n){let s;o(t,wt,(t=>n(58,s=t))),wt.mode.hash();let l,r=!1,c=!1,i=document.location.hostname,a=[],u=[],d=!1,p=[],f=!1,g=[],m=!1,$=[],h=!1,w={},b=!1,v={},x={},y=[],k=!1,_=0,J=!0,S={},L=[];L=[{name:"--",id:"--",ip:i,status:!1}];let E=[];var j=function(){this.parts=[]};let O;j.prototype.append=function(t){this.parts.push(t),this.blob=void 0},j.prototype.getBlob=function(){return this.blob||(this.blob=new Blob(this.parts,{type:"binary"})),this.blob},j.prototype.clear=function(){this.parts=[]};var H=new j,N=new j,M=new j,P=new j,q=new j;function z(){void 0!==_&&(Q(_,O),Q(_,"/all"))}function A(){tt(_);let t=0;L.forEach((e=>{e.ws=t,e.status||(D(t),R(t)),t++})),n(13,L)}function B(t,e){L.forEach((n=>{n.ws===t&&(n.status=e,n.status?console.log("[i]",n.ip,"status online"):console.log("[i]",n.ip,"status offline"))})),n(13,L),tt(_),n(10,k=l.status)}function D(t){let e=F(t);"error"===e?console.log("[e]","device list wrong"):(y[t]=new WebSocket("ws://"+e+":81"),y.binaryType="blob",console.log("[i]",e,"started connecting..."))}function F(t){let e="error";return L.forEach((n=>{t===n.ws&&(e=n.ip)})),e}function R(t){if(y[t]){let e=F(t);console.log("[i]",e,"web socket events added"),y[t].addEventListener("open",(function(n){console.log("[i]",e,"completed connecting"),B(t,!0),z()})),y[t].addEventListener("message",(function(t){if("string"==typeof t.data){let o=t.data;if(o.includes("status")&&nt(o)){let t=JSON.parse(o);!function(t){for(let e=0;e<$.length;e++){if($[e].topic===t.topic){n(6,$[e].status=t.status,$);break}}}(t),G(),console.log(t),console.log("✔","statusJson parced")}if(o.includes("params")&&nt(o)&&(JSON.parse(o),console.log("✔","paramsJson parced")),o.includes("ssid")&&nt(o)&&(n(9,x=JSON.parse(o)),delete x.ssid,n(9,x),console.log("✔","ssidJson parced")),o.includes("devicelist")&&nt(o)&&(E=JSON.parse(o),delete E.devicelist,E=E,n(13,(s=L,l=E,r=new Set(s.map((t=>t.ip))),L=[...s,...l.filter((t=>!r.has(t.ip)))])),n(13,L),V(),A(),console.log("✔","incDeviceList json parced")),o.includes("errors")&&nt(o)&&(n(8,v=JSON.parse(o)),delete v.errors,n(8,v),console.log("✔","errorsJson json parced")),"/st/config.json"===o&&(d=!0),"/end/config.json"===o){d=!1;var e=H.getBlob();let t=new FileReader;t.readAsText(e),t.onload=()=>{let e=t.result;nt(e)&&(n(3,u=JSON.parse(e)),n(3,u),console.log("✔","configJson parced"))}}if("/st/widgets.json"===o&&(f=!0),"/end/widgets.json"===o){f=!1;e=N.getBlob();let t=new FileReader;t.readAsText(e),t.onload=()=>{let e=t.result;nt(e)&&(n(4,p=JSON.parse(e)),n(4,p),console.log("✔","widgetsJson parced"))}}if("/st/items.json"===o&&(m=!0),"/end/items.json"===o){m=!1;e=M.getBlob();let t=new FileReader;t.readAsText(e),t.onload=()=>{let e=t.result;nt(e)&&(n(5,g=JSON.parse(e)),n(5,g),console.log("✔","itemsJson parced"))}}if("/st/layout.json"===o&&(h=!0),"/end/layout.json"===o){h=!1;e=P.getBlob();let t=new FileReader;t.readAsText(e),t.onload=()=>{let e=t.result;nt(e)&&(n(6,$=JSON.parse(e)),n(6,$),G(),console.log("✔","layoutJson parced"))}}if("/st/settings.json"===o&&(b=!0),"/end/settings.json"===o){b=!1;e=q.getBlob();let t=new FileReader;t.readAsText(e),t.onload=()=>{let e=t.result;nt(e)&&(n(7,w=JSON.parse(e)),n(7,w),G(),function(){for(let t=0;t{console.log("[e]",e,"connection closed"),B(t,!1)})),y[t].addEventListener("error",(function(n){console.log("[e]",e,"connection error"),B(t,!1)}))}else console.log("[e]","socket not exist")}function W(){Q(_,"/tuoyal"+JSON.stringify(function(){let t=[];for(let e=0;e{!function(t){let e=!1;return L.forEach((n=>{t===n.ws&&(e=n.status)})),e}(t.ws)?(D(t.ws),R(t.ws)):Q(t.ws,"tst")})),J=!1}function Q(t,e){y[t]&&1===y[t].readyState?(y[t].send(e),console.log("[i]",F(t),"msg send success",e)):console.log("[e]",F(t),"msg not send",e)}function Z(){n(2,a=[]);Array.from(new Set(Array.from($,(({page:t})=>t)))).forEach((function(t,e,s){n(2,a=[...a,JSON.parse(JSON.stringify({page:t}))])})),a.sort((function(t,e){return t.pagee.page?1:0}))}function G(){Z(),n(6,$)}function V(){tt(_),n(10,k=l.status)}function X(){V(),Y(),z(),console.log("[i]","user selected device:",l.name),l.ip===i&&console.log("[i]","user selected original device",l.name)}function tt(t){for(let e=0;e{console.log("[i]","mounted"),A(),U(),V(),Z()}));return[r,c,a,u,p,g,$,w,v,x,k,_,S,L,rt,W,I,K,X,et,st,lt,ct,function(){_=C(this),n(11,_),n(13,L)},()=>X(),function(){r=this.checked,n(0,r)},()=>st(),(t,e,n)=>K(t,e,n),()=>W(),()=>ct(),()=>lt(),()=>I(),()=>ct(),()=>et()]}return new class extends lt{constructor(t){super(),st(this,t,En,Sn,r,{},null,[-1,-1,-1,-1])}}({target:document.body,props:{name:"world"}})}(); +var app=function(){"use strict";function t(){}function e(t){return t()}function n(){return Object.create(null)}function s(t){t.forEach(e)}function l(t){return"function"==typeof t}function r(t,e){return t!=t?e==e:t!==e||t&&"object"==typeof t||"function"==typeof t}function o(e,n,s){e.$$.on_destroy.push(function(e,...n){if(null==e)return t;const s=e.subscribe(...n);return s.unsubscribe?()=>s.unsubscribe():s}(n,s))}function c(t,e,n,s){if(t){const l=i(t,e,n,s);return t[0](l)}}function i(t,e,n,s){return t[1]&&s?function(t,e){for(const n in e)t[n]=e[n];return t}(n.ctx.slice(),t[1](s(e))):n.ctx}function a(t,e,n,s){if(t[2]&&s){const l=t[2](s(n));if(void 0===e.dirty)return l;if("object"==typeof l){const t=[],n=Math.max(e.dirty.length,l.length);for(let s=0;s32){const e=[],n=t.ctx.length/32;for(let t=0;tt.removeEventListener(e,n,s)}function y(t,e,n){null==n?t.removeAttribute(e):t.getAttribute(e)!==n&&t.setAttribute(e,n)}function k(t){return""===t?null:+t}function _(t,e){e=""+e,t.wholeText!==e&&(t.data=e)}function J(t,e){t.value=null==e?"":e}function S(t,e){for(let n=0;n{K.delete(t),s&&(n&&t.d(1),s())})),t.o(e)}}function X(t,e,n){const s=t.$$.props[e];void 0!==s&&(t.$$.bound[s]=n,n(t.$$.ctx[s]))}function tt(t){t&&t.c()}function et(t,n,r,o){const{fragment:c,on_mount:i,on_destroy:a,after_update:u}=t.$$;c&&c.m(n,r),o||D((()=>{const n=i.map(e).filter(l);a?a.push(...n):s(n),t.$$.on_mount=[]})),u.forEach(D)}function nt(t,e){const n=t.$$;null!==n.fragment&&(s(n.on_destroy),n.fragment&&n.fragment.d(e),n.on_destroy=n.fragment=null,n.ctx=[])}function st(e,l,r,o,c,i,a,u=[-1]){const d=L;j(e);const p=e.$$={fragment:null,ctx:null,props:i,update:t,not_equal:c,bound:n(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(l.context||(d?d.$$.context:[])),callbacks:n(),dirty:u,skip_bound:!1,root:l.target||d.$$.root};a&&a(p.root);let f=!1;if(p.ctx=r?r(e,l.props||{},((t,n,...s)=>{const l=s.length?s[0]:n;return p.ctx&&c(p.ctx[t],p.ctx[t]=l)&&(!p.skip_bound&&p.bound[t]&&p.bound[t](l),f&&function(t,e){-1===t.$$.dirty[0]&&(N.push(t),B(),t.$$.dirty.fill(0)),t.$$.dirty[e/31|0]|=1<{const t=n.indexOf(e);-1!==t&&n.splice(t,1)}}$set(t){var e;this.$$set&&(e=t,0!==Object.keys(e).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}}const rt=[];function ot(e,n=t){let s;const l=new Set;function o(t){if(r(e,t)&&(e=t,s)){const t=!rt.length;for(const t of l)t[1](),rt.push(t,e);if(t){for(let t=0;t{l.delete(i),0===l.size&&(s(),s=null)}}}}function ct(t,e=!1){return(t=t.slice(t.startsWith("/#")?2:0,t.endsWith("/*")?-2:void 0)).startsWith("/")||(t="/"+t),"/"===t&&(t=""),e&&!t.endsWith("/")&&(t+="/"),t}function it(t,e,n){if(""===n)return t;if("/"===n[0])return n;let s=t=>t.split("/").filter((t=>""!==t)),l=s(t);return"/"+(e?s(e):[]).map(((t,e)=>l[e])).join("/")+"/"+n}function at(t,e,n,s){let l=[e,"data-"+e].reduce(((e,s)=>{let l=t.getAttribute(s);return n&&t.removeAttribute(s),null===l?e:l}),!1);return!s&&""===l||(l||s||!1)}function ut(t){let e=t.split("&").map((t=>t.split("="))).reduce(((t,e)=>{let n=e[0];if(!n)return t;let s=!(e.length>1)||e[e.length-1];return"string"==typeof s&&s.includes(",")&&(s=s.split(",")),void 0===t[n]?t[n]=[s]:t[n].push(s),t}),{});return Object.entries(e).reduce(((t,e)=>(t[e[0]]=e[1].length>1?e[1]:e[1][0],t)),{})}var dt,pt,ft={HISTORY:1,HASH:2,MEMORY:3,OFF:4,run:function(t,e,n,s){return 1===t?e&&e():2===t?n&&n():s&&s()},getDeafault:function(){return window&&"srcdoc"!==window.location.pathname?1:3}},gt=function(){let t,e=ft.getDeafault(),n=n=>t&&t(mt(e));function s(t){t&&(e=t),window.onhashchange=window.onpopstate=pt=null,e!==ft.OFF&&ft.run(e,(t=>window.onpopstate=n),(t=>window.onhashchange=n))&&n()}return{mode:t=>s(t),get:t=>mt(e),go(t,s){(function(t,e,n){let s=t=>history[n?"replaceState":"pushState"]({},"",t);ft.run(t,(t=>s(e)),(t=>s(`#${e}`)),(t=>pt=e))})(e,t,s),n()},start(e){t=e,s()},stop(){t=null,s(ft.OFF)}}}();function mt(t){let e=dt,n=dt=ft.run(t,(t=>window.location.pathname+window.location.search),(t=>String(window.location.hash.slice(1)||"/")),(t=>pt||"/")),s=n.match(/^([^?#]+)(?:\?([^#]+))?(?:\#(.+))?$/);return{url:n,from:e,path:s[1]||"",query:ut(s[2]||""),hash:s[3]||""}}function $t(t){let e=T("tinro");e&&(e.exact||e.fallback)&&function(t){throw new Error("[Tinro] "+t)}(`${t.fallback?"":``} can't be inside ${e.fallback?"":` with exact path`}`);let n=t.fallback?"fallbacks":"childs",s=ot({}),l={router:{},exact:!1,pattern:null,meta:{},parent:e,fallback:t.fallback,redirect:!1,firstmatch:!1,breadcrumb:null,matched:!1,childs:new Set,activeChilds:new Set,fallbacks:new Set,update(t){l.exact=!t.path.endsWith("/*"),l.pattern=ct(`${l.parent&&l.parent.pattern||""}${t.path}`),l.redirect=t.redirect,l.firstmatch=t.firstmatch,l.breadcrumb=t.breadcrumb,l.match()},register:()=>{if(l.parent)return l.parent[n].add(l),()=>{l.parent[n].delete(l),l.router.un&&l.router.un()}},show:()=>{t.onShow(),!l.fallback&&l.parent&&l.parent.activeChilds.add(l)},hide:()=>{t.onHide(),!l.fallback&&l.parent&&l.parent.activeChilds.delete(l)},match:async()=>{l.matched=!1;let{path:e,url:n,from:r,query:o}=l.router,c=function(t,e){t=ct(t,!0),e=ct(e,!0);let n=[],s={},l=!0,r=t.split("/").map((t=>t.startsWith(":")?(n.push(t.slice(1)),"([^\\/]+)"):t)).join("\\/"),o=e.match(new RegExp(`^${r}$`));return o||(l=!1,o=e.match(new RegExp(`^${r}`))),o?(n.forEach(((t,e)=>s[t]=o[e+1])),{exact:l,params:s,part:o[0].slice(0,-1)}):null}(l.pattern,e);if(!l.fallback&&c&&l.redirect&&(!l.exact||l.exact&&c.exact)){await z();let t=it(e,l.parent&&l.parent.pattern,l.redirect);return wt.goto(t,!0)}if(l.meta=c&&{from:r,url:n,query:o,match:c.part,pattern:l.pattern,breadcrumbs:l.parent&&l.parent.meta&&l.parent.meta.breadcrumbs.slice()||[],params:c.params,subscribe:s.subscribe},l.breadcrumb&&l.meta&&l.meta.breadcrumbs.push({name:l.breadcrumb,path:c.part}),s.set(l.meta),!c||l.fallback||!(!l.exact||l.exact&&c.exact)||l.parent&&l.parent.firstmatch&&l.parent.matched?l.hide():(t.onMeta(l.meta),l.parent&&(l.parent.matched=!0),l.show()),await z(),c&&!l.fallback&&(l.childs.size>0&&0==l.activeChilds.size||0==l.childs.size&&l.fallbacks.size>0)){let t=l;for(;0==t.fallbacks.size;)if(t=t.parent,!t)return;t&&t.fallbacks.forEach((t=>{if(t.redirect){let e=it("/",t.parent&&t.parent.pattern,t.redirect);wt.goto(e,!0)}else t.show()}))}}};return r="tinro",o=l,E().$$.context.set(r,o),O((()=>l.register())),l.router.un=wt.subscribe((t=>{l.router.path=t.path,l.router.url=t.url,l.router.query=t.query,l.router.from=t.from,null!==l.pattern&&l.match()})),l;var r,o}function ht(){return T("tinro").meta}var wt=function(){let{subscribe:t}=ot(gt.get(),(t=>{gt.start(t);let e=function(t){let e=e=>{let n=e.target.closest("a[href]"),s=n&&at(n,"target",!1,"_self"),l=n&&at(n,"tinro-ignore"),r=e.ctrlKey||e.metaKey||e.altKey||e.shiftKey;if("_self"==s&&!l&&!r&&n){let s=n.getAttribute("href").replace(/^\/#/,"");/^\/\/|^[a-zA-Z]+:/.test(s)||(e.preventDefault(),t(s.startsWith("/")?s:n.href.replace(window.location.origin,"")))}};return addEventListener("click",e),()=>removeEventListener("click",e)}(gt.go);return()=>{gt.stop(),e()}}));return{subscribe:t,goto:gt.go,params:bt,meta:ht,useHashNavigation:t=>gt.mode(t?ft.HASH:ft.HISTORY),mode:{hash:()=>gt.mode(ft.HASH),history:()=>gt.mode(ft.HISTORY),memory:()=>gt.mode(ft.MEMORY)}}}();function bt(){return T("tinro").meta.params}const vt=t=>({params:2&t,meta:4&t}),xt=t=>({params:t[1],meta:t[2]});function yt(t){let e;const n=t[9].default,s=c(n,t,t[8],xt);return{c(){s&&s.c()},m(t,n){s&&s.m(t,n),e=!0},p(t,l){s&&s.p&&(!e||262&l)&&u(s,n,t,t[8],e?a(n,t[8],l,vt):d(t[8]),xt)},i(t){e||(G(s,t),e=!0)},o(t){V(s,t),e=!1},d(t){s&&s.d(t)}}}function kt(t){let e,n,s=t[0]&&yt(t);return{c(){s&&s.c(),e=v()},m(t,l){s&&s.m(t,l),f(t,e,l),n=!0},p(t,[n]){t[0]?s?(s.p(t,n),1&n&&G(s,1)):(s=yt(t),s.c(),G(s,1),s.m(e.parentNode,e)):s&&(Q(),V(s,1,1,(()=>{s=null})),Z())},i(t){n||(G(s),n=!0)},o(t){V(s),n=!1},d(t){s&&s.d(t),t&&g(e)}}}function _t(t,e,n){let{$$slots:s={},$$scope:l}=e,{path:r="/*"}=e,{fallback:o=!1}=e,{redirect:c=!1}=e,{firstmatch:i=!1}=e,{breadcrumb:a=null}=e,u=!1,d={},p={};const f=$t({fallback:o,onShow(){n(0,u=!0)},onHide(){n(0,u=!1)},onMeta(t){n(2,p=t),n(1,d=p.params)}});return t.$$set=t=>{"path"in t&&n(3,r=t.path),"fallback"in t&&n(4,o=t.fallback),"redirect"in t&&n(5,c=t.redirect),"firstmatch"in t&&n(6,i=t.firstmatch),"breadcrumb"in t&&n(7,a=t.breadcrumb),"$$scope"in t&&n(8,l=t.$$scope)},t.$$.update=()=>{232&t.$$.dirty&&f.update({path:r,redirect:c,firstmatch:i,breadcrumb:a})},[u,d,p,r,o,c,i,a,l,s]}class Jt extends lt{constructor(t){super(),st(this,t,_t,kt,r,{path:3,fallback:4,redirect:5,firstmatch:6,breadcrumb:7})}}function St(e){let n,s,r,o,c;return{c(){n=h("svg"),s=h("line"),r=h("line"),y(s,"x1","18"),y(s,"y1","6"),y(s,"x2","6"),y(s,"y2","18"),y(r,"x1","6"),y(r,"y1","6"),y(r,"x2","18"),y(r,"y2","18"),y(n,"class","h-6 w-6 text-red-400 cursor-pointer"),y(n,"viewBox","0 0 24 24"),y(n,"fill","none"),y(n,"stroke","currentColor"),y(n,"stroke-width","2"),y(n,"stroke-linecap","round"),y(n,"stroke-linejoin","round")},m(t,i){f(t,n,i),p(n,s),p(n,r),o||(c=x(n,"click",(function(){l(e[0]())&&e[0]().apply(this,arguments)})),o=!0)},p(t,[n]){e=t},i:t,o:t,d(t){t&&g(n),o=!1,c()}}}function Ct(t,e,n){let{click:s=(()=>{})}=e;return t.$$set=t=>{"click"in t&&n(0,s=t.click)},[s]}class Lt extends lt{constructor(t){super(),st(this,t,Ct,St,r,{click:0})}}function jt(t){let e,n,s,l,r,o,c,i=t[1]&&Et(t);return{c(){e=$("div"),n=$("div"),s=$("h1"),l=w(t[0]),r=b(),o=$("div"),i&&i.c(),y(s,"class","alm-hdr"),y(n,"class","w-11/12"),y(o,"class","flex justify-end w-1/12"),y(e,"class","flex items-center")},m(t,a){f(t,e,a),p(e,n),p(n,s),p(s,l),p(e,r),p(e,o),i&&i.m(o,null),c=!0},p(t,e){(!c||1&e)&&_(l,t[0]),t[1]?i?(i.p(t,e),2&e&&G(i,1)):(i=Et(t),i.c(),G(i,1),i.m(o,null)):i&&(Q(),V(i,1,1,(()=>{i=null})),Z())},i(t){c||(G(i),c=!0)},o(t){V(i),c=!1},d(t){t&&g(e),i&&i.d()}}}function Et(t){let e,n;return e=new Lt({props:{click:t[5]}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};4&n&&(s.click=t[5]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function Ot(t){let e,n,s,l=t[0]&&jt(t);const r=t[4].default,o=c(r,t,t[3],null);return{c(){e=$("div"),l&&l.c(),n=b(),o&&o.c(),y(e,"class","alm")},m(t,r){f(t,e,r),l&&l.m(e,null),p(e,n),o&&o.m(e,null),s=!0},p(t,[c]){t[0]?l?(l.p(t,c),1&c&&G(l,1)):(l=jt(t),l.c(),G(l,1),l.m(e,n)):l&&(Q(),V(l,1,1,(()=>{l=null})),Z()),o&&o.p&&(!s||8&c)&&u(o,r,t,t[3],s?a(r,t[3],c,null):d(t[3]),null)},i(t){s||(G(l),G(o,t),s=!0)},o(t){V(l),V(o,t),s=!1},d(t){t&&g(e),l&&l.d(),o&&o.d(t)}}}function Tt(t,e,n){let{$$slots:s={},$$scope:l}=e,{title:r}=e,{showCloseBtn:o=!0}=e,{close:c=(()=>{})}=e;return t.$$set=t=>{"title"in t&&n(0,r=t.title),"showCloseBtn"in t&&n(1,o=t.showCloseBtn),"close"in t&&n(2,c=t.close),"$$scope"in t&&n(3,l=t.$$scope)},[r,o,c,l,s,()=>c()]}class Nt extends lt{constructor(t){super(),st(this,t,Tt,Ot,r,{title:0,showCloseBtn:1,close:2})}}function Ht(e){let n;return{c(){n=$("div"),n.innerHTML=' \n
',y(n,"class","z-50")},m(t,e){f(t,n,e)},p:t,i:t,o:t,d(t){t&&g(n)}}}class Mt extends lt{constructor(t){super(),st(this,t,null,Ht,r,{})}}function Pt(t){let e,n;return{c(){e=$("h1"),n=w(t[0]),y(e,"class","crd-hdr")},m(t,s){f(t,e,s),p(e,n)},p(t,e){1&e&&_(n,t[0])},d(t){t&&g(e)}}}function qt(t){let e,n,s,l=t[0]&&Pt(t);const r=t[2].default,o=c(r,t,t[1],null);return{c(){e=$("div"),l&&l.c(),n=b(),o&&o.c(),y(e,"class","crd")},m(t,r){f(t,e,r),l&&l.m(e,null),p(e,n),o&&o.m(e,null),s=!0},p(t,[c]){t[0]?l?l.p(t,c):(l=Pt(t),l.c(),l.m(e,n)):l&&(l.d(1),l=null),o&&o.p&&(!s||2&c)&&u(o,r,t,t[1],s?a(r,t[1],c,null):d(t[1]),null)},i(t){s||(G(o,t),s=!0)},o(t){V(o,t),s=!1},d(t){t&&g(e),l&&l.d(),o&&o.d(t)}}}function At(t,e,n){let{$$slots:s={},$$scope:l}=e,{title:r}=e;return t.$$set=t=>{"title"in t&&n(0,r=t.title),"$$scope"in t&&n(1,l=t.$$scope)},[r,l,s]}class Bt extends lt{constructor(t){super(),st(this,t,At,qt,r,{title:0})}}function zt(t){let e,n,l,r;return{c(){e=$("input"),y(e,"class",n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500"),y(e,"step","0.1"),y(e,"type","number")},m(n,s){f(n,e,s),J(e,t[0].status),l||(r=[x(e,"change",t[3]),x(e,"input",t[4])],l=!0)},p(t,s){1&s&&n!==(n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500")&&y(e,"class",n),1&s&&k(e.value)!==t[0].status&&J(e,t[0].status)},d(t){t&&g(e),l=!1,s(r)}}}function Dt(t){let e,n,l,r;return{c(){e=$("input"),y(e,"class",n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500"),y(e,"type","text")},m(n,s){f(n,e,s),J(e,t[0].status),l||(r=[x(e,"change",t[5]),x(e,"input",t[6])],l=!0)},p(t,s){1&s&&n!==(n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500")&&y(e,"class",n),1&s&&e.value!==t[0].status&&J(e,t[0].status)},d(t){t&&g(e),l=!1,s(r)}}}function Ft(t){let e,n,l,r;return{c(){e=$("input"),y(e,"class",n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500"),y(e,"type","date")},m(n,s){f(n,e,s),J(e,t[0].status),l||(r=[x(e,"change",t[7]),x(e,"input",t[8])],l=!0)},p(t,s){1&s&&n!==(n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500")&&y(e,"class",n),1&s&&J(e,t[0].status)},d(t){t&&g(e),l=!1,s(r)}}}function Rt(t){let e,n,l,r;return{c(){e=$("input"),y(e,"class",n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500"),y(e,"type","time")},m(n,s){f(n,e,s),J(e,t[0].status),l||(r=[x(e,"change",t[9]),x(e,"input",t[10])],l=!0)},p(t,s){1&s&&n!==(n=1==t[0].send?"ipt-rnd text-right border-red-500":"ipt-rnd text-right focus:border-indigo-500")&&y(e,"class",n),1&s&&J(e,t[0].status)},d(t){t&&g(e),l=!1,s(r)}}}function Wt(e){let n,s,l,r,o,c,i,a,u,d=(e[0].descr?e[0].descr:"")+"",m="number"==e[0].type&&zt(e),h="text"==e[0].type&&Dt(e),v="date"==e[0].type&&Ft(e),x="time"==e[0].type&&Rt(e);return{c(){n=$("div"),s=$("div"),l=$("label"),r=w(d),o=b(),c=$("div"),m&&m.c(),i=b(),h&&h.c(),a=b(),v&&v.c(),u=b(),x&&x.c(),y(l,"class","wgt-dscr-stl"),y(s,"class","wgt-dscr-w"),y(c,"class","wgt-w"),y(n,"class","crd-itm-psn")},m(t,e){f(t,n,e),p(n,s),p(s,l),p(l,r),p(n,o),p(n,c),m&&m.m(c,null),p(c,i),h&&h.m(c,null),p(c,a),v&&v.m(c,null),p(c,u),x&&x.m(c,null)},p(t,[e]){1&e&&d!==(d=(t[0].descr?t[0].descr:"")+"")&&_(r,d),"number"==t[0].type?m?m.p(t,e):(m=zt(t),m.c(),m.m(c,i)):m&&(m.d(1),m=null),"text"==t[0].type?h?h.p(t,e):(h=Dt(t),h.c(),h.m(c,a)):h&&(h.d(1),h=null),"date"==t[0].type?v?v.p(t,e):(v=Ft(t),v.c(),v.m(c,u)):v&&(v.d(1),v=null),"time"==t[0].type?x?x.p(t,e):(x=Rt(t),x.c(),x.m(c,null)):x&&(x.d(1),x=null)},i:t,o:t,d(t){t&&g(n),m&&m.d(),h&&h.d(),v&&v.d(),x&&x.d()}}}function It(t,e,n){let{widget:s}=e,{wsPush:l=((t,e,n)=>{})}=e,{value:r}=e;r=r;return t.$$set=t=>{"widget"in t&&n(0,s=t.widget),"wsPush"in t&&n(1,l=t.wsPush),"value"in t&&n(2,r=t.value)},[s,l,r,()=>(n(0,s.send=!0,s),l(s.ws,s.topic,s.status)),function(){s.status=k(this.value),n(0,s)},()=>(n(0,s.send=!0,s),l(s.ws,s.topic,s.status)),function(){s.status=this.value,n(0,s)},()=>(n(0,s.send=!0,s),l(s.ws,s.topic,s.status)),function(){s.status=this.value,n(0,s)},()=>(n(0,s.send=!0,s),l(s.ws,s.topic,s.status)),function(){s.status=this.value,n(0,s)}]}class Yt extends lt{constructor(t){super(),st(this,t,It,Wt,r,{widget:0,wsPush:1,value:2})}}function Kt(e){let n,l,r,o,c,i,a,u,d,m,h,v,k,S,C,L,j,E,O=(e[0].descr?e[0].descr:"")+"";return{c(){n=$("div"),l=$("div"),r=$("label"),o=w(O),c=b(),i=$("div"),a=$("label"),u=$("div"),d=$("input"),h=b(),v=$("div"),k=b(),S=$("div"),y(r,"class","wgt-dscr-stl"),y(l,"class","wgt-dscr-w"),y(d,"id",m=e[0].topic),y(d,"type","checkbox"),y(d,"class","sr-only"),y(v,"class","block bg-gray-600 w-10 h-6 rounded-full"),y(S,"class",C="dot "+(1==e[0].send?"bg-red-400":"bg-white")+" absolute left-1 top-1 w-4 h-4 rounded-full transition"),y(u,"class","relative"),y(a,"for",L=e[0].topic),y(a,"class","items-center cursor-pointer"),y(i,"class","wgt-w"),y(n,"class","crd-itm-psn")},m(t,s){f(t,n,s),p(n,l),p(l,r),p(r,o),p(n,c),p(n,i),p(i,a),p(a,u),p(u,d),J(d,e[0].status),p(u,h),p(u,v),p(u,k),p(u,S),j||(E=[x(d,"change",e[3]),x(d,"change",e[4])],j=!0)},p(t,[e]){1&e&&O!==(O=(t[0].descr?t[0].descr:"")+"")&&_(o,O),1&e&&m!==(m=t[0].topic)&&y(d,"id",m),1&e&&J(d,t[0].status),1&e&&C!==(C="dot "+(1==t[0].send?"bg-red-400":"bg-white")+" absolute left-1 top-1 w-4 h-4 rounded-full transition")&&y(S,"class",C),1&e&&L!==(L=t[0].topic)&&y(a,"for",L)},i:t,o:t,d(t){t&&g(n),j=!1,s(E)}}}function Ut(t,e,n){let{widget:s}=e,{value:l}=e;l=l;let{wsPush:r=((t,e,n)=>{})}=e;return t.$$set=t=>{"widget"in t&&n(0,s=t.widget),"value"in t&&n(2,l=t.value),"wsPush"in t&&n(1,r=t.wsPush)},[s,r,l,()=>(n(0,s.send=!0,s),r(s.ws,s.topic,s.status)),function(){s.status=this.value,n(0,s)}]}class Qt extends lt{constructor(t){super(),st(this,t,Ut,Kt,r,{widget:0,value:2,wsPush:1})}}function Zt(e){let n,s,l,r,o,c,i,a,u,d,m,h,v=(e[0].descr?e[0].descr:"")+"",x=(e[0].status?e[0].status:"")+"",k=(e[0].after?e[0].after:"")+"";return{c(){n=$("div"),s=$("div"),l=$("label"),r=w(v),o=b(),c=$("div"),i=$("label"),a=w(x),u=b(),d=$("label"),m=w(" "),h=w(k),y(l,"class","wgt-dscr-stl"),y(s,"class","wgt-dscr-w"),y(i,"class","wgt-adt-stl"),y(d,"class","wgt-adt-stl"),y(c,"class","wgt-w"),y(n,"class","crd-itm-psn")},m(t,e){f(t,n,e),p(n,s),p(s,l),p(l,r),p(n,o),p(n,c),p(c,i),p(i,a),p(c,u),p(c,d),p(d,m),p(d,h)},p(t,[e]){1&e&&v!==(v=(t[0].descr?t[0].descr:"")+"")&&_(r,v),1&e&&x!==(x=(t[0].status?t[0].status:"")+"")&&_(a,x),1&e&&k!==(k=(t[0].after?t[0].after:"")+"")&&_(h,k)},i:t,o:t,d(t){t&&g(n)}}}function Gt(t,e,n){let{widget:s}=e,{value:l}=e;return l=l,t.$$set=t=>{"widget"in t&&n(0,s=t.widget),"value"in t&&n(1,l=t.value)},[s,l]}class Vt extends lt{constructor(t){super(),st(this,t,Gt,Zt,r,{widget:0,value:1})}}function Xt(t,e,n){const s=t.slice();return s[8]=e[n],s[10]=n,s}function te(t,e,n){const s=t.slice();return s[11]=e[n],s[12]=e,s[10]=n,s}function ee(t){let e,n;return e=new Bt({props:{title:"Ваша панель управления пуста, вначале добавьте новые элементы в конфигураторе!"}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function ne(t){let e,n,s,l,r="input"===t[11].widget&&se(t),o="toggle"===t[11].widget&&le(t),c="anydata"===t[11].widget&&re(t);return{c(){r&&r.c(),e=b(),o&&o.c(),n=b(),c&&c.c(),s=v()},m(t,i){r&&r.m(t,i),f(t,e,i),o&&o.m(t,i),f(t,n,i),c&&c.m(t,i),f(t,s,i),l=!0},p(t,l){"input"===t[11].widget?r?(r.p(t,l),1&l&&G(r,1)):(r=se(t),r.c(),G(r,1),r.m(e.parentNode,e)):r&&(Q(),V(r,1,1,(()=>{r=null})),Z()),"toggle"===t[11].widget?o?(o.p(t,l),1&l&&G(o,1)):(o=le(t),o.c(),G(o,1),o.m(n.parentNode,n)):o&&(Q(),V(o,1,1,(()=>{o=null})),Z()),"anydata"===t[11].widget?c?(c.p(t,l),1&l&&G(c,1)):(c=re(t),c.c(),G(c,1),c.m(s.parentNode,s)):c&&(Q(),V(c,1,1,(()=>{c=null})),Z())},i(t){l||(G(r),G(o),G(c),l=!0)},o(t){V(r),V(o),V(c),l=!1},d(t){r&&r.d(t),t&&g(e),o&&o.d(t),t&&g(n),c&&c.d(t),t&&g(s)}}}function se(t){let e,n,s;function l(e){t[4](e,t[11])}let r={widget:t[11],wsPush:t[3]};return void 0!==t[11].status&&(r.value=t[11].status),e=new Yt({props:r}),H.push((()=>X(e,"value",l))),{c(){tt(e.$$.fragment)},m(t,n){et(e,t,n),s=!0},p(s,l){t=s;const r={};1&l&&(r.widget=t[11]),4&l&&(r.wsPush=t[3]),!n&&1&l&&(n=!0,r.value=t[11].status,F((()=>n=!1))),e.$set(r)},i(t){s||(G(e.$$.fragment,t),s=!0)},o(t){V(e.$$.fragment,t),s=!1},d(t){nt(e,t)}}}function le(t){let e,n,s;function l(e){t[6](e,t[11])}let r={widget:t[11],wsPush:t[5]};return void 0!==t[11].status&&(r.value=t[11].status),e=new Qt({props:r}),H.push((()=>X(e,"value",l))),{c(){tt(e.$$.fragment)},m(t,n){et(e,t,n),s=!0},p(s,l){t=s;const r={};1&l&&(r.widget=t[11]),4&l&&(r.wsPush=t[5]),!n&&1&l&&(n=!0,r.value=t[11].status,F((()=>n=!1))),e.$set(r)},i(t){s||(G(e.$$.fragment,t),s=!0)},o(t){V(e.$$.fragment,t),s=!1},d(t){nt(e,t)}}}function re(t){let e,n,s;function l(e){t[7](e,t[11])}let r={widget:t[11]};return void 0!==t[11].status&&(r.value=t[11].status),e=new Vt({props:r}),H.push((()=>X(e,"value",l))),{c(){tt(e.$$.fragment)},m(t,n){et(e,t,n),s=!0},p(s,l){t=s;const r={};1&l&&(r.widget=t[11]),!n&&1&l&&(n=!0,r.value=t[11].status,F((()=>n=!1))),e.$set(r)},i(t){s||(G(e.$$.fragment,t),s=!0)},o(t){V(e.$$.fragment,t),s=!1},d(t){nt(e,t)}}}function oe(t){let e,n,s=t[11].page===t[8].page&&ne(t);return{c(){s&&s.c(),e=v()},m(t,l){s&&s.m(t,l),f(t,e,l),n=!0},p(t,n){t[11].page===t[8].page?s?(s.p(t,n),3&n&&G(s,1)):(s=ne(t),s.c(),G(s,1),s.m(e.parentNode,e)):s&&(Q(),V(s,1,1,(()=>{s=null})),Z())},i(t){n||(G(s),n=!0)},o(t){V(s),n=!1},d(t){s&&s.d(t),t&&g(e)}}}function ce(t){let e,n,s=t[0],l=[];for(let e=0;eV(l[t],1,1,(()=>{l[t]=null}));return{c(){for(let t=0;tV(o[t],1,1,(()=>{o[t]=null}));return{c(){e=$("div"),l&&l.c(),n=b();for(let t=0;t{l=null})),Z()),7&s){let n;for(r=t[1],n=0;n{})}=e;return t.$$set=t=>{"layoutJson"in t&&n(0,s=t.layoutJson),"pages"in t&&n(1,l=t.pages),"wsPush"in t&&n(2,r=t.wsPush)},[s,l,r,(t,e,n)=>r(t,e,n),function(e,l){t.$$.not_equal(l.status,e)&&(l.status=e,n(0,s))},(t,e,n)=>r(t,e,n),function(e,l){t.$$.not_equal(l.status,e)&&(l.status=e,n(0,s))},function(e,l){t.$$.not_equal(l.status,e)&&(l.status=e,n(0,s))}]}class de extends lt{constructor(t){super(),st(this,t,ue,ae,r,{layoutJson:0,pages:1,wsPush:2})}}function pe(e){let n,s,r,o,c,i,a;return{c(){n=h("svg"),s=h("path"),r=h("circle"),o=h("circle"),c=h("circle"),y(s,"stroke","none"),y(s,"d","M0 0h24v24H0z"),y(r,"cx","5"),y(r,"cy","12"),y(r,"r","1"),y(o,"cx","12"),y(o,"cy","12"),y(o,"r","1"),y(c,"cx","19"),y(c,"cy","12"),y(c,"r","1"),y(n,"class","h-6 w-6 text-green-400 cursor-pointer"),y(n,"width","24"),y(n,"height","24"),y(n,"viewBox","0 0 24 24"),y(n,"stroke-width","2"),y(n,"stroke","currentColor"),y(n,"fill","none"),y(n,"stroke-linecap","round"),y(n,"stroke-linejoin","round")},m(t,u){f(t,n,u),p(n,s),p(n,r),p(n,o),p(n,c),i||(a=x(n,"click",(function(){l(e[0]())&&e[0]().apply(this,arguments)})),i=!0)},p(t,[n]){e=t},i:t,o:t,d(t){t&&g(n),i=!1,a()}}}function fe(t,e,n){let{click:s=(()=>{})}=e;return t.$$set=t=>{"click"in t&&n(0,s=t.click)},[s]}class ge extends lt{constructor(t){super(),st(this,t,fe,pe,r,{click:0})}}function me(t,e,n){const s=t.slice();return s[18]=e[n],s[19]=e,s[20]=n,s}function $e(t,e,n){const s=t.slice();return s[21]=e[n][0],s[22]=e[n][1],s[23]=e,s[24]=n,s}function he(t,e,n){const s=t.slice();return s[25]=e[n],s}function we(t,e,n){const s=t.slice();return s[28]=e[n],s}function be(t){let e,n;return{c(){e=$("optgroup"),y(e,"label",n=t[28].header)},m(t,n){f(t,e,n)},p(t,s){4&s[0]&&n!==(n=t[28].header)&&y(e,"label",n)},d(t){t&&g(e)}}}function ve(t){let e,n,s,l,r=t[28].name+"";return{c(){e=$("option"),n=w(r),s=b(),e.__value=l=t[28].num,e.value=e.__value},m(t,l){f(t,e,l),p(e,n),p(e,s)},p(t,s){4&s[0]&&r!==(r=t[28].name+"")&&_(n,r),4&s[0]&&l!==(l=t[28].num)&&(e.__value=l,e.value=e.__value)},d(t){t&&g(e)}}}function xe(t){let e,n,s=t[28].header&&be(t),l=!t[28].header&&ve(t);return{c(){s&&s.c(),e=v(),l&&l.c(),n=v()},m(t,r){s&&s.m(t,r),f(t,e,r),l&&l.m(t,r),f(t,n,r)},p(t,r){t[28].header?s?s.p(t,r):(s=be(t),s.c(),s.m(e.parentNode,e)):s&&(s.d(1),s=null),t[28].header?l&&(l.d(1),l=null):l?l.p(t,r):(l=ve(t),l.c(),l.m(n.parentNode,n))},d(t){s&&s.d(t),t&&g(e),l&&l.d(t),t&&g(n)}}}function ye(t){let e,n,s,l,r=t[25].label+"";return{c(){e=$("option"),n=w(r),s=b(),e.__value=l=t[25].name,e.value=e.__value},m(t,l){f(t,e,l),p(e,n),p(e,s)},p(t,s){2&s[0]&&r!==(r=t[25].label+"")&&_(n,r),2&s[0]&&l!==(l=t[25].name)&&(e.__value=l,e.value=e.__value)},d(t){t&&g(e)}}}function ke(t){let e,n=Object.entries(t[18]),s=[];for(let e=0;eV(j[t],1,1,(()=>{j[t]=null}));return{c(){e=$("div"),n=$("select");for(let t=0;tТип \n Id \n Виджет \n Вкладка \n Название \n \n ',u=b(),d=$("tbody");for(let t=0;tt[8].call(n))),o.__value="Выберите пресет",o.value=o.__value,y(r,"class","slct-lg"),y(e,"class","grd-2col2"),y(a,"class","bg-gray-100"),y(d,"class","bg-white"),y(i,"class","tbl"),y(w,"class","btn-lg")},m(s,g){f(s,e,g),p(e,n);for(let t=0;t{})}=e,i=!0;function a(){for(let t=0;t{"configJson"in t&&n(0,s=t.configJson),"widgetsJson"in t&&n(1,l=t.widgetsJson),"itemsJson"in t&&n(2,r=t.itemsJson),"saveConfig"in t&&n(3,c=t.saveConfig)},[s,l,r,c,o,i,a,u,function(){o=C(this),n(4,o),n(2,r)},()=>a(),function(t,e){t[e].id=this.value,n(0,s),n(1,l)},function(t,e){t[e].widget=C(this),n(0,s),n(1,l)},function(t,e){t[e].page=this.value,n(0,s),n(1,l)},function(t,e){t[e].descr=this.value,n(0,s),n(1,l)},()=>n(5,i=!i),t=>u(t),function(t,e,r){e[r][t]=this.value,n(0,s),n(1,l)},()=>c()]}class Ee extends lt{constructor(t){super(),st(this,t,je,Le,r,{configJson:0,widgetsJson:1,itemsJson:2,saveConfig:3},null,[-1,-1])}}function Oe(t,e,n){const s=t.slice();return s[20]=e[n][0],s[21]=e[n][1],s}function Te(t){let e,n,s,l,r=t[21]+"";return{c(){e=$("option"),n=w(r),s=b(),e.__value=l=t[21],e.value=e.__value},m(t,l){f(t,e,l),p(e,n),p(e,s)},p(t,s){4&s&&r!==(r=t[21]+"")&&_(n,r),4&s&&l!==(l=t[21])&&(e.__value=l,e.value=e.__value)},d(t){t&&g(e)}}}function Ne(t){let e,n,s;return n=new Nt({props:{title:"Введен неправильный пароль"}}),{c(){e=$("div"),tt(n.$$.fragment),y(e,"class","grd-1col1")},m(t,l){f(t,e,l),et(n,e,null),s=!0},i(t){s||(G(n.$$.fragment,t),s=!0)},o(t){V(n.$$.fragment,t),s=!1},d(t){t&&g(e),nt(n)}}}function He(t){let e,n,l,r,o,c,i,a,u,d,h,w,v,k,_,C,L,j,E,O,T,N,H,M,P,q,A,B,z,F,R,W,I,Y,K,U=Object.entries(t[2]),X=[];for(let e=0;eНазвание устройства

',l=b(),r=$("div"),o=$("input"),c=b(),i=$("div"),a=$("div"),a.innerHTML='

Точка доступа

',u=b(),d=$("div"),h=$("input"),w=b(),v=$("div"),k=$("div"),k.innerHTML='

Пароль точки доступа

',_=b(),C=$("div"),L=$("input"),j=b(),E=$("div"),O=$("div"),O.innerHTML='

Название wifi сети

',T=b(),N=$("div"),H=$("select");for(let t=0;tПароль

',A=b(),B=$("div"),z=$("input"),F=b(),tt&&tt.c(),R=b(),W=$("button"),W.textContent="Сохранить",y(n,"class","wgt-dscr-w"),y(o,"class","ipt-rnd text-left focus:border-indigo-500"),y(o,"type","text"),y(r,"class","wgt-w"),y(e,"class","crd-itm-psn"),y(a,"class","wgt-dscr-w"),y(h,"class","ipt-rnd text-left focus:border-indigo-500"),y(h,"type","text"),y(d,"class","wgt-w"),y(i,"class","crd-itm-psn"),y(k,"class","wgt-dscr-w"),y(L,"class","ipt-rnd text-left focus:border-indigo-500"),y(L,"type","text"),y(C,"class","wgt-w"),y(v,"class","crd-itm-psn"),y(O,"class","wgt-dscr-w"),y(H,"class","ipt-rnd text-left focus:border-indigo-500"),void 0===t[0].routerssid&&D((()=>t[9].call(H))),y(N,"class","wgt-w"),y(E,"class","crd-itm-psn"),y(q,"class","wgt-dscr-w"),y(z,"class","ipt-rnd text-left focus:border-indigo-500"),y(z,"type","text"),y(B,"class","wgt-w"),y(P,"class","crd-itm-psn"),y(W,"class","btn-lg")},m(s,g){f(s,e,g),p(e,n),p(e,l),p(e,r),p(r,o),J(o,t[0].name),f(s,c,g),f(s,i,g),p(i,a),p(i,u),p(i,d),p(d,h),J(h,t[0].apssid),f(s,w,g),f(s,v,g),p(v,k),p(v,_),p(v,C),p(C,L),J(L,t[0].appass),f(s,j,g),f(s,E,g),p(E,O),p(E,T),p(E,N),p(N,H);for(let t=0;t{tt=null})),Z())},i(t){I||(G(tt),I=!0)},o(t){V(tt),I=!1},d(t){t&&g(e),t&&g(c),t&&g(i),t&&g(w),t&&g(v),t&&g(j),t&&g(E),m(X,t),t&&g(M),t&&g(P),t&&g(F),tt&&tt.d(t),t&&g(R),t&&g(W),Y=!1,s(K)}}}function Me(t){let e,n,l,r,o,c,i,a,u,d,m,h,w,v,k,_,S,C,L,j,E,O,T,N,H,M,P,q,A,B,z,D,F;return{c(){e=$("div"),n=$("div"),n.innerHTML='

Название сервера

',l=b(),r=$("div"),o=$("input"),c=b(),i=$("div"),a=$("div"),a.innerHTML='

Порт

',u=b(),d=$("div"),m=$("input"),h=b(),w=$("div"),v=$("div"),v.innerHTML='

Префикс

',k=b(),_=$("div"),S=$("input"),C=b(),L=$("div"),j=$("div"),j.innerHTML='

Имя пользователя

',E=b(),O=$("div"),T=$("input"),N=b(),H=$("div"),M=$("div"),M.innerHTML='

Пароль

',P=b(),q=$("div"),A=$("input"),B=b(),z=$("button"),z.textContent="Сохранить и проверить подключение",y(n,"class","wgt-dscr-w"),y(o,"class","ipt-rnd text-left focus:border-indigo-500"),y(o,"type","text"),y(r,"class","wgt-w"),y(e,"class","crd-itm-psn"),y(a,"class","wgt-dscr-w"),y(m,"class","ipt-rnd text-left focus:border-indigo-500"),y(m,"type","text"),y(d,"class","wgt-w"),y(i,"class","crd-itm-psn"),y(v,"class","wgt-dscr-w"),y(S,"class","ipt-rnd text-left focus:border-indigo-500"),y(S,"type","text"),y(_,"class","wgt-w"),y(w,"class","crd-itm-psn"),y(j,"class","wgt-dscr-w"),y(T,"class","ipt-rnd text-left focus:border-indigo-500"),y(T,"type","text"),y(O,"class","wgt-w"),y(L,"class","crd-itm-psn"),y(M,"class","wgt-dscr-w"),y(A,"class","ipt-rnd text-left focus:border-indigo-500"),y(A,"type","text"),y(q,"class","wgt-w"),y(H,"class","crd-itm-psn"),y(z,"class","btn-lg")},m(s,g){f(s,e,g),p(e,n),p(e,l),p(e,r),p(r,o),J(o,t[0].mqttServer),f(s,c,g),f(s,i,g),p(i,a),p(i,u),p(i,d),p(d,m),J(m,t[0].mqttPort),f(s,h,g),f(s,w,g),p(w,v),p(w,k),p(w,_),p(_,S),J(S,t[0].mqttPrefix),f(s,C,g),f(s,L,g),p(L,j),p(L,E),p(L,O),p(O,T),J(T,t[0].mqttUser),f(s,N,g),f(s,H,g),p(H,M),p(H,P),p(H,q),p(q,A),J(A,t[0].mqttPass),f(s,B,g),f(s,z,g),D||(F=[x(o,"input",t[13]),x(m,"input",t[14]),x(S,"input",t[15]),x(T,"input",t[16]),x(A,"input",t[17]),x(z,"click",t[18])],D=!0)},p(t,e){5&e&&o.value!==t[0].mqttServer&&J(o,t[0].mqttServer),5&e&&m.value!==t[0].mqttPort&&J(m,t[0].mqttPort),5&e&&S.value!==t[0].mqttPrefix&&J(S,t[0].mqttPrefix),5&e&&T.value!==t[0].mqttUser&&J(T,t[0].mqttUser),5&e&&A.value!==t[0].mqttPass&&J(A,t[0].mqttPass)},d(t){t&&g(e),t&&g(c),t&&g(i),t&&g(h),t&&g(w),t&&g(C),t&&g(L),t&&g(N),t&&g(H),t&&g(B),t&&g(z),D=!1,s(F)}}}function Pe(e){let n,s,l;return{c(){n=$("button"),n.textContent="Перезагрузить устройство",y(n,"class","btn-lg")},m(t,r){f(t,n,r),s||(l=x(n,"click",e[19]),s=!0)},p:t,d(t){t&&g(n),s=!1,l()}}}function qe(t){let e,n,s,l,r,o,c,i;return n=new Bt({props:{title:"Подключение к WiFi роутеру",$$slots:{default:[He]},$$scope:{ctx:t}}}),l=new Bt({props:{title:"Подключение к MQTT брокеру",$$slots:{default:[Me]},$$scope:{ctx:t}}}),c=new Bt({props:{$$slots:{default:[Pe]},$$scope:{ctx:t}}}),{c(){e=$("div"),tt(n.$$.fragment),s=b(),tt(l.$$.fragment),r=b(),o=$("div"),tt(c.$$.fragment),y(e,"class","grd-2col1"),y(o,"class","grd-1col1")},m(t,a){f(t,e,a),et(n,e,null),p(e,s),et(l,e,null),f(t,r,a),f(t,o,a),et(c,o,null),i=!0},p(t,[e]){const s={};16777247&e&&(s.$$scope={dirty:e,ctx:t}),n.$set(s);const r={};16777233&e&&(r.$$scope={dirty:e,ctx:t}),l.$set(r);const o={};16777248&e&&(o.$$scope={dirty:e,ctx:t}),c.$set(o)},i(t){i||(G(n.$$.fragment,t),G(l.$$.fragment,t),G(c.$$.fragment,t),i=!0)},o(t){V(n.$$.fragment,t),V(l.$$.fragment,t),V(c.$$.fragment,t),i=!1},d(t){t&&g(e),nt(n),nt(l),t&&g(r),t&&g(o),nt(c)}}}function Ae(t,e,n){let{settingsJson:s}=e,{errorsJson:l}=e,{ssidJson:r}=e,{ssidDropdownClick:o=(()=>{})}=e,{saveSettings:c=(()=>{})}=e,{rebootEsp:i=(()=>{})}=e;return t.$$set=t=>{"settingsJson"in t&&n(0,s=t.settingsJson),"errorsJson"in t&&n(1,l=t.errorsJson),"ssidJson"in t&&n(2,r=t.ssidJson),"ssidDropdownClick"in t&&n(3,o=t.ssidDropdownClick),"saveSettings"in t&&n(4,c=t.saveSettings),"rebootEsp"in t&&n(5,i=t.rebootEsp)},[s,l,r,o,c,i,function(){s.name=this.value,n(0,s),n(2,r)},function(){s.apssid=this.value,n(0,s),n(2,r)},function(){s.appass=this.value,n(0,s),n(2,r)},function(){s.routerssid=C(this),n(0,s),n(2,r)},()=>o(),function(){s.routerpass=this.value,n(0,s),n(2,r)},()=>c(),function(){s.mqttServer=this.value,n(0,s),n(2,r)},function(){s.mqttPort=this.value,n(0,s),n(2,r)},function(){s.mqttPrefix=this.value,n(0,s),n(2,r)},function(){s.mqttUser=this.value,n(0,s),n(2,r)},function(){s.mqttPass=this.value,n(0,s),n(2,r)},()=>c(),()=>i()]}class Be extends lt{constructor(t){super(),st(this,t,Ae,qe,r,{settingsJson:0,errorsJson:1,ssidJson:2,ssidDropdownClick:3,saveSettings:4,rebootEsp:5})}}function ze(t,e,n){const s=t.slice();return s[10]=e[n],s[12]=n,s}function De(t){let e,n,s,l,r,o,c,i,a,u,d,m,h,v,x,k,J,S,C,L=t[10].name+"",j=t[10].ip+"",E=t[10].id+"",O=t[10].status?"online":"offline";return S=new Lt({props:{click:function(){return t[5](t[12])}}}),{c(){e=$("tr"),n=$("td"),s=w(L),l=b(),r=$("td"),o=$("a"),c=w(j),a=b(),u=$("td"),d=w(E),m=b(),h=$("td"),v=w(O),k=b(),J=$("td"),tt(S.$$.fragment),y(n,"class","tbl-bdy-lg ipt-lg w-full"),y(o,"href",i="http://"+t[10].ip),y(r,"class","tbl-bdy-lg ipt-lg w-full"),y(u,"class","tbl-bdy-lg ipt-lg w-full"),y(h,"class",x="tbl-bdy-lg ipt-lg w-full "+(t[10].status?"bg-green-50":"bg-red-50")),y(J,"class","tbl-bdy-lg"),y(e,"class","txt-sz txt-pad")},m(t,i){f(t,e,i),p(e,n),p(n,s),p(e,l),p(e,r),p(r,o),p(o,c),p(e,a),p(e,u),p(u,d),p(e,m),p(e,h),p(h,v),p(e,k),p(e,J),et(S,J,null),C=!0},p(e,n){t=e,(!C||1&n)&&L!==(L=t[10].name+"")&&_(s,L),(!C||1&n)&&j!==(j=t[10].ip+"")&&_(c,j),(!C||1&n&&i!==(i="http://"+t[10].ip))&&y(o,"href",i),(!C||1&n)&&E!==(E=t[10].id+"")&&_(d,E),(!C||1&n)&&O!==(O=t[10].status?"online":"offline")&&_(v,O),(!C||1&n&&x!==(x="tbl-bdy-lg ipt-lg w-full "+(t[10].status?"bg-green-50":"bg-red-50")))&&y(h,"class",x)},i(t){C||(G(S.$$.fragment,t),C=!0)},o(t){V(S.$$.fragment,t),C=!1},d(t){t&&g(e),nt(S)}}}function Fe(t){let e,n,l,r,o,c,i,a,u,d,m,h,w;return{c(){e=$("tr"),n=$("td"),l=$("input"),r=b(),o=$("td"),c=$("input"),i=b(),a=$("td"),u=$("input"),d=b(),m=$("td"),y(l,"class","ipt-lg w-full"),y(l,"type","text"),y(n,"class","tbl-bdy-lg"),y(c,"class","ipt-lg w-full"),y(c,"type","text"),y(o,"class","tbl-bdy-lg"),y(u,"class","ipt-lg w-full"),y(u,"type","text"),y(a,"class","tbl-bdy-lg"),y(m,"class","tbl-bdy-lg"),y(e,"class","txt-sz txt-pad")},m(s,g){f(s,e,g),p(e,n),p(n,l),J(l,t[2].name),p(e,r),p(e,o),p(o,c),J(c,t[2].ip),p(e,i),p(e,a),p(a,u),J(u,t[2].id),p(e,d),p(e,m),h||(w=[x(l,"input",t[6]),x(c,"input",t[7]),x(u,"input",t[8])],h=!0)},p(t,e){4&e&&l.value!==t[2].name&&J(l,t[2].name),4&e&&c.value!==t[2].ip&&J(c,t[2].ip),4&e&&u.value!==t[2].id&&J(u,t[2].id)},d(t){t&&g(e),h=!1,s(w)}}}function Re(t){let e,n,s,l,r,o,c,i,a,u,d,h=t[1]?"Сохранить":"Добавить устройство",v=t[0],k=[];for(let e=0;eV(k[t],1,1,(()=>{k[t]=null}));let S=t[1]&&Fe(t);return{c(){e=$("table"),n=$("thead"),n.innerHTML='Название устройства \n IP адрес \n Идентификатор \n Состояние \n ',s=b(),l=$("tbody");for(let t=0;t{})}=e;function c(t){for(let e=0;e{"deviceList"in t&&n(0,s=t.deviceList),"showInput"in t&&n(1,l=t.showInput),"newDevice"in t&&n(2,r=t.newDevice),"devListSave"in t&&n(3,o=t.devListSave)},[s,l,r,o,c,t=>c(t),function(){r.name=this.value,n(2,r)},function(){r.ip=this.value,n(2,r)},function(){r.id=this.value,n(2,r)},()=>(n(1,l=!l),o())]}class Ke extends lt{constructor(t){super(),st(this,t,Ye,Ie,r,{deviceList:0,showInput:1,newDevice:2,devListSave:3})}}function Ue(t){let e;return{c(){e=$("p"),e.textContent="не подключено",y(e,"class","text-red-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Qe(t){let e;return{c(){e=$("p"),e.textContent="нет сигнала",y(e,"class","text-red-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Ze(t){let e;return{c(){e=$("p"),e.textContent="очень низкий",y(e,"class","text-red-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Ge(t){let e;return{c(){e=$("p"),e.textContent="низкий",y(e,"class","text-yellow-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Ve(t){let e;return{c(){e=$("p"),e.textContent="хороший",y(e,"class","text-yellow-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function Xe(t){let e;return{c(){e=$("p"),e.textContent="очень хороший",y(e,"class","text-green-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function tn(t){let e;return{c(){e=$("p"),e.textContent="отличный",y(e,"class","text-green-500 font-bold")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function en(t){let e,n,s,l,r,o,c,i,a,u,d,m,h,v,x,k,J,S,C,L,j,E,O,T,N,H,M,P,q,A,B,z,D,F,R,W,I,Y,K=t[1].bver+"",U=t[1].upt+"",Q=t[1].heap+"",Z=0===t[1].rssi&&Ue(),G=1===t[1].rssi&&Qe(),V=2===t[1].rssi&&Ze(),X=3===t[1].rssi&&Ge(),tt=4===t[1].rssi&&Ve(),et=5===t[1].rssi&&Xe(),nt=6===t[1].rssi&&tn();return{c(){e=$("div"),n=$("div"),n.innerHTML='

Версия прошивки

',s=b(),l=$("div"),r=$("p"),o=w(K),c=b(),i=$("div"),a=$("div"),a.innerHTML='

Версия файловой системы

',u=b(),d=$("div"),m=$("p"),h=w(t[0]),v=b(),x=$("div"),k=$("div"),k.innerHTML='

Время работы устройства

',J=b(),S=$("div"),C=$("p"),L=w(U),j=b(),E=$("div"),O=$("div"),O.innerHTML='

Качество WiFi сигнала

',T=b(),N=$("div"),Z&&Z.c(),H=b(),G&&G.c(),M=b(),V&&V.c(),P=b(),X&&X.c(),q=b(),tt&&tt.c(),A=b(),et&&et.c(),B=b(),nt&&nt.c(),z=b(),D=$("div"),F=$("div"),F.innerHTML='

Остаток оперативной памяти

',R=b(),W=$("div"),I=$("p"),Y=w(Q),y(n,"class","w-3/4"),y(r,"class","text-gray-500 font-bold"),y(l,"class","flex justify-center w-1/4"),y(e,"class","crd-itm-psn"),y(a,"class","w-3/4"),y(m,"class","text-gray-500 font-bold"),y(d,"class","flex justify-center w-1/4"),y(i,"class","crd-itm-psn"),y(k,"class","w-3/4"),y(C,"class","text-gray-500 font-bold"),y(S,"class","flex justify-center w-1/4"),y(x,"class","crd-itm-psn"),y(O,"class","w-3/4"),y(N,"class","flex justify-center w-1/4 text-xs sm:text-sm md:text-base lg:text-base xl:text-base 2xl:text-base break-words"),y(E,"class","crd-itm-psn"),y(F,"class","w-3/4"),y(I,"class","text-green-500 font-bold"),y(W,"class","flex justify-center w-1/4"),y(D,"class","crd-itm-psn")},m(t,g){f(t,e,g),p(e,n),p(e,s),p(e,l),p(l,r),p(r,o),f(t,c,g),f(t,i,g),p(i,a),p(i,u),p(i,d),p(d,m),p(m,h),f(t,v,g),f(t,x,g),p(x,k),p(x,J),p(x,S),p(S,C),p(C,L),f(t,j,g),f(t,E,g),p(E,O),p(E,T),p(E,N),Z&&Z.m(N,null),p(N,H),G&&G.m(N,null),p(N,M),V&&V.m(N,null),p(N,P),X&&X.m(N,null),p(N,q),tt&&tt.m(N,null),p(N,A),et&&et.m(N,null),p(N,B),nt&&nt.m(N,null),f(t,z,g),f(t,D,g),p(D,F),p(D,R),p(D,W),p(W,I),p(I,Y)},p(t,e){2&e&&K!==(K=t[1].bver+"")&&_(o,K),1&e&&_(h,t[0]),2&e&&U!==(U=t[1].upt+"")&&_(L,U),0===t[1].rssi?Z||(Z=Ue(),Z.c(),Z.m(N,H)):Z&&(Z.d(1),Z=null),1===t[1].rssi?G||(G=Qe(),G.c(),G.m(N,M)):G&&(G.d(1),G=null),2===t[1].rssi?V||(V=Ze(),V.c(),V.m(N,P)):V&&(V.d(1),V=null),3===t[1].rssi?X||(X=Ge(),X.c(),X.m(N,q)):X&&(X.d(1),X=null),4===t[1].rssi?tt||(tt=Ve(),tt.c(),tt.m(N,A)):tt&&(tt.d(1),tt=null),5===t[1].rssi?et||(et=Xe(),et.c(),et.m(N,B)):et&&(et.d(1),et=null),6===t[1].rssi?nt||(nt=tn(),nt.c(),nt.m(N,null)):nt&&(nt.d(1),nt=null),2&e&&Q!==(Q=t[1].heap+"")&&_(Y,Q)},d(t){t&&g(e),t&&g(c),t&&g(i),t&&g(v),t&&g(x),t&&g(j),t&&g(E),Z&&Z.d(),G&&G.d(),V&&V.d(),X&&X.d(),tt&&tt.d(),et&&et.d(),nt&&nt.d(),t&&g(z),t&&g(D)}}}function nn(t){let e,n;return e=new Nt({props:{title:"Ошибка web sockets",close:t[4],$$slots:{default:[sn]},$$scope:{ctx:t}}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};8&n&&(s.close=t[4]),128&n&&(s.$$scope={dirty:n,ctx:t}),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function sn(t){let e;return{c(){e=$("p"),e.textContent="Слишком много клиентов было открыто. Допускается не более четырех. Для исчезновения ошибки перезагрузите устройство",y(e,"class","break-words text-center")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function ln(t){let e,n;return e=new Nt({props:{title:"Ошибка версии",close:t[5],$$slots:{default:[rn]},$$scope:{ctx:t}}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};8&n&&(s.close=t[5]),128&n&&(s.$$scope={dirty:n,ctx:t}),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function rn(t){let e;return{c(){e=$("p"),e.textContent="Версия файловой системы не совпадает с версией прошивки. Вероятно произошла ошибка во время обновления устройства по воздуху.",y(e,"class","break-words text-center")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function on(t){let e,n;return e=new Nt({props:{title:"WiFi",$$slots:{default:[cn]},$$scope:{ctx:t}}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function cn(t){let e;return{c(){e=$("p"),e.textContent="Уровень сигнала WiFi предельно низкий, веб интерфейс может работать со сбоями и потерей данных, рекомендуется переместить устройство ближе к роутеру",y(e,"class","break-words text-center")},m(t,n){f(t,e,n)},d(t){t&&g(e)}}}function an(t){let e,n,s,l,r=1===t[1].wscle&&nn(t),o=t[1].bver!=t[0]&&ln(t),c=t[1].rssi<3&&t[1].rssi>0&&on(t);return{c(){e=$("div"),r&&r.c(),n=b(),o&&o.c(),s=b(),c&&c.c(),y(e,"class","grd-2col1")},m(t,i){f(t,e,i),r&&r.m(e,null),p(e,n),o&&o.m(e,null),p(e,s),c&&c.m(e,null),l=!0},p(t,l){1===t[1].wscle?r?(r.p(t,l),2&l&&G(r,1)):(r=nn(t),r.c(),G(r,1),r.m(e,n)):r&&(Q(),V(r,1,1,(()=>{r=null})),Z()),t[1].bver!=t[0]?o?(o.p(t,l),3&l&&G(o,1)):(o=ln(t),o.c(),G(o,1),o.m(e,s)):o&&(Q(),V(o,1,1,(()=>{o=null})),Z()),t[1].rssi<3&&t[1].rssi>0?c?2&l&&G(c,1):(c=on(t),c.c(),G(c,1),c.m(e,null)):c&&(Q(),V(c,1,1,(()=>{c=null})),Z())},i(t){l||(G(r),G(o),G(c),l=!0)},o(t){V(r),V(o),V(c),l=!1},d(t){t&&g(e),r&&r.d(),o&&o.d(),c&&c.d()}}}function un(e){let n,s,l;return{c(){n=$("button"),n.textContent="Перезагрузить устройство",y(n,"class","btn-lg")},m(t,r){f(t,n,r),s||(l=x(n,"click",e[6]),s=!0)},p:t,d(t){t&&g(n),s=!1,l()}}}function dn(t){let e,n,s,l,r,o,c,i;return n=new Bt({props:{title:"Системная информация",$$slots:{default:[en]},$$scope:{ctx:t}}}),l=new Bt({props:{title:"Системные ошибки",$$slots:{default:[an]},$$scope:{ctx:t}}}),c=new Bt({props:{$$slots:{default:[un]},$$scope:{ctx:t}}}),{c(){e=$("div"),tt(n.$$.fragment),s=b(),tt(l.$$.fragment),r=b(),o=$("div"),tt(c.$$.fragment),y(e,"class","grd-2col1"),y(o,"class","grd-1col1")},m(t,a){f(t,e,a),et(n,e,null),p(e,s),et(l,e,null),f(t,r,a),f(t,o,a),et(c,o,null),i=!0},p(t,[e]){const s={};131&e&&(s.$$scope={dirty:e,ctx:t}),n.$set(s);const r={};139&e&&(r.$$scope={dirty:e,ctx:t}),l.$set(r);const o={};132&e&&(o.$$scope={dirty:e,ctx:t}),c.$set(o)},i(t){i||(G(n.$$.fragment,t),G(l.$$.fragment,t),G(c.$$.fragment,t),i=!0)},o(t){V(n.$$.fragment,t),V(l.$$.fragment,t),V(c.$$.fragment,t),i=!1},d(t){t&&g(e),nt(n),nt(l),t&&g(r),t&&g(o),nt(c)}}}function pn(t,e,n){let{version:s}=e,{errorsJson:l}=e,{rebootEsp:r=(()=>{})}=e,{cancelAlarm:o=(t=>{})}=e;return t.$$set=t=>{"version"in t&&n(0,s=t.version),"errorsJson"in t&&n(1,l=t.errorsJson),"rebootEsp"in t&&n(2,r=t.rebootEsp),"cancelAlarm"in t&&n(3,o=t.cancelAlarm)},[s,l,r,o,()=>o("wscle"),()=>o("bver"),()=>r()]}class fn extends lt{constructor(t){super(),st(this,t,pn,dn,r,{version:0,errorsJson:1,rebootEsp:2,cancelAlarm:3})}}function gn(e){let n,s,l,r;return{c(){n=h("svg"),s=h("path"),l=h("path"),y(s,"stroke","none"),y(s,"d","M0 0h24v24H0z"),y(l,"d","M7 18a4.6 4.4 0 0 1 0 -9h0a5 4.5 0 0 1 11 2h1a3.5 3.5 0 0 1 0 7h-12"),y(n,"class",r="h-8 w-8 "+e[0]),y(n,"width","24"),y(n,"height","24"),y(n,"viewBox","0 0 24 24"),y(n,"stroke-width","2"),y(n,"stroke","currentColor"),y(n,"fill","none"),y(n,"stroke-linecap","round"),y(n,"stroke-linejoin","round")},m(t,e){f(t,n,e),p(n,s),p(n,l)},p(t,[e]){1&e&&r!==(r="h-8 w-8 "+t[0])&&y(n,"class",r)},i:t,o:t,d(t){t&&g(n)}}}function mn(t,e,n){let{color:s}=e;return t.$$set=t=>{"color"in t&&n(0,s=t.color)},[s]}class $n extends lt{constructor(t){super(),st(this,t,mn,gn,r,{color:0})}}function hn(t,e,n){const s=t.slice();return s[93]=e[n],s}function wn(t){let e,n;return e=new Mt({}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function bn(t){let e,n,s,l,r=t[93].name+"";return{c(){e=$("option"),n=w(r),s=b(),e.__value=l=t[93].ws,e.value=e.__value},m(t,l){f(t,e,l),p(e,n),p(e,s)},p(t,s){8192&s[0]&&r!==(r=t[93].name+"")&&_(n,r),8192&s[0]&&l!==(l=t[93].ws)&&(e.__value=l,e.value=e.__value)},d(t){t&&g(e)}}}function vn(t){let e,n,s,l,r,o,c,i;return e=new Jt({props:{path:"/",$$slots:{default:[yn]},$$scope:{ctx:t}}}),s=new Jt({props:{path:"/config",$$slots:{default:[kn]},$$scope:{ctx:t}}}),r=new Jt({props:{path:"/connection",$$slots:{default:[_n]},$$scope:{ctx:t}}}),c=new Jt({props:{path:"/system",$$slots:{default:[Jn]},$$scope:{ctx:t}}}),{c(){tt(e.$$.fragment),n=b(),tt(s.$$.fragment),l=b(),tt(r.$$.fragment),o=b(),tt(c.$$.fragment)},m(t,a){et(e,t,a),f(t,n,a),et(s,t,a),f(t,l,a),et(r,t,a),f(t,o,a),et(c,t,a),i=!0},p(t,n){const l={};68&n[0]|8&n[3]&&(l.$$scope={dirty:n,ctx:t}),e.$set(l);const o={};56&n[0]|8&n[3]&&(o.$$scope={dirty:n,ctx:t}),s.$set(o);const i={};896&n[0]|8&n[3]&&(i.$$scope={dirty:n,ctx:t}),r.$set(i);const a={};384&n[0]|8&n[3]&&(a.$$scope={dirty:n,ctx:t}),c.$set(a)},i(t){i||(G(e.$$.fragment,t),G(s.$$.fragment,t),G(r.$$.fragment,t),G(c.$$.fragment,t),i=!0)},o(t){V(e.$$.fragment,t),V(s.$$.fragment,t),V(r.$$.fragment,t),V(c.$$.fragment,t),i=!1},d(t){nt(e,t),t&&g(n),nt(s,t),t&&g(l),nt(r,t),t&&g(o),nt(c,t)}}}function xn(e){let n,s;return n=new Nt({props:{title:"Нет соединения"}}),{c(){tt(n.$$.fragment)},m(t,e){et(n,t,e),s=!0},p:t,i(t){s||(G(n.$$.fragment,t),s=!0)},o(t){V(n.$$.fragment,t),s=!1},d(t){nt(n,t)}}}function yn(t){let e,n;return e=new de({props:{layoutJson:t[6],pages:t[2],wsPush:t[28]}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};64&n[0]&&(s.layoutJson=t[6]),4&n[0]&&(s.pages=t[2]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function kn(t){let e,n;return e=new Ee({props:{configJson:t[3],widgetsJson:t[4],itemsJson:t[5],saveConfig:t[29]}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};8&n[0]&&(s.configJson=t[3]),16&n[0]&&(s.widgetsJson=t[4]),32&n[0]&&(s.itemsJson=t[5]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function _n(t){let e,n;return e=new Be({props:{settingsJson:t[7],errorsJson:t[8],ssidJson:t[9],rebootEsp:t[30],ssidDropdownClick:t[31],saveSettings:t[32]}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};128&n[0]&&(s.settingsJson=t[7]),256&n[0]&&(s.errorsJson=t[8]),512&n[0]&&(s.ssidJson=t[9]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function Jn(t){let e,n;return e=new fn({props:{settingsJson:t[7],errorsJson:t[8],rebootEsp:t[33],cancelAlarm:t[34],version:Ln}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};128&n[0]&&(s.settingsJson=t[7]),256&n[0]&&(s.errorsJson=t[8]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function Sn(t){let e,n;return e=new Ke({props:{deviceList:t[13],showInput:jn,devListSave:t[35],newDevice:t[12]}}),{c(){tt(e.$$.fragment)},m(t,s){et(e,t,s),n=!0},p(t,n){const s={};8192&n[0]&&(s.deviceList=t[13]),4096&n[0]&&(s.newDevice=t[12]),e.$set(s)},i(t){n||(G(e.$$.fragment,t),n=!0)},o(t){V(e.$$.fragment,t),n=!1},d(t){nt(e,t)}}}function Cn(t){let e,n,l,r,o,c,i,a,u,d,h,w,v,k,_,J,C,L,j,E,O,T,N,H,M,P,q,A,B,z,F,R,W,I,Y,K,U,X,st,lt,rt,ot,ct,it,at=t[14]&&wn(),ut=t[13],dt=[];for(let e=0;e",_=b(),J=$("ul"),C=$("li"),L=$("a"),L.textContent="Управление",j=b(),E=$("li"),O=$("a"),O.textContent="Конфигуратор",T=b(),N=$("li"),H=$("a"),H.textContent="Подключение",M=b(),P=$("li"),q=$("a"),q.textContent="Устройства",A=b(),B=$("li"),z=$("a"),z.textContent="Системные",F=b(),R=$("main"),W=$("ul"),I=$("div"),K.c(),U=b(),tt(X.$$.fragment),lt=b(),rt=$("footer"),rt.innerHTML='
Developed by Dmitry Borisenko
',y(c,"class","border border-indigo-500 border-4"),void 0===t[11]&&D((()=>t[24].call(c))),y(o,"class","px-15 py-1"),y(a,"class","pl-4 pr-4 py-1"),y(r,"class","flex content-center items-center justify-end"),y(l,"class","h-10 w-full bg-gray-100 overflow-auto shadow-md"),y(w,"id","menu__toggle"),y(w,"type","checkbox"),y(k,"class","menu__btn"),y(k,"for","menu__toggle"),y(L,"class","menu__item"),y(L,"href","/"),y(O,"class","menu__item"),y(O,"href","/config"),y(H,"class","menu__item"),y(H,"href","/connection"),y(q,"class","menu__item"),y(q,"href","/list"),y(z,"class","menu__item"),y(z,"href","/system"),y(J,"class","menu__box"),y(h,"class","flex"),y(I,"class","bg-cover pt-0 px-4"),y(W,"class","menu__main"),y(R,"class",st="flex-1 overflow-y-auto p-0 "+(!0!==t[0]||t[1]?"ml-0":"ml-36")),y(rt,"class","h-4 bg-gray-100 border-gray-200 shadow-lg"),y(e,"class","flex flex-col h-screen bg-gray-50")},m(s,g){f(s,e,g),at&&at.m(e,null),p(e,n),p(e,l),p(l,r),p(r,o),p(o,c);for(let t=0;t{at=null})),Z()),8192&s[0]){let e;for(ut=t[13],e=0;e{ft[r]=null})),Z(),K=ft[Y],K?K.p(t,s):(K=ft[Y]=pt[Y](t),K.c()),G(K,1),K.m(I,U));const o={};12288&s[0]|8&s[3]&&(o.$$scope={dirty:s,ctx:t}),X.$set(o),(!ot||3&s[0]&&st!==(st="flex-1 overflow-y-auto p-0 "+(!0!==t[0]||t[1]?"ml-0":"ml-36")))&&y(R,"class",st)},i(t){ot||(G(at),G(u.$$.fragment,t),G(K),G(X.$$.fragment,t),ot=!0)},o(t){V(at),V(u.$$.fragment,t),V(K),V(X.$$.fragment,t),ot=!1},d(t){t&&g(e),at&&at.d(),m(dt,t),nt(u),ft[Y].d(),nt(X),ct=!1,s(it)}}}let Ln=401,jn=!1;function En(t,e,n){let s;o(t,wt,(t=>n(60,s=t))),wt.mode.hash();let l,r=!1,c=!1,i=document.location.hostname,a=[],u=[],d=!1,p=[],f=!1,g=[],m=!1,$=[],h=!1,w={},b=!1,v={},x={},y=[],k=!1,_=0,J=!0,S={},L=[];L=[{name:"--",id:"--",ip:i,status:!1}];let j=[];var E=function(){this.parts=[]};let T;E.prototype.append=function(t){this.parts.push(t),this.blob=void 0},E.prototype.getBlob=function(){return this.blob||(this.blob=new Blob(this.parts,{type:"binary"})),this.blob},E.prototype.clear=function(){this.parts=[]};var N=new E,H=new E,M=new E,P=new E,q=new E;function A(){void 0!==_&&(Q(_,T),Q(_,"/all|"))}function B(){tt(_);let t=0;L.forEach((e=>{e.ws=t,e.status||(D(t),R(t)),t++})),n(13,L)}function z(t,e){L.forEach((n=>{n.ws===t&&(n.status=e,n.status?console.log("[i]",n.ip,"status online"):console.log("[i]",n.ip,"status offline"))})),n(13,L),tt(_),n(10,k=l.status)}function D(t){let e=F(t);"error"===e?console.log("[e]","device list wrong"):(y[t]=new WebSocket("ws://"+e+":81"),y.binaryType="blob",console.log("[i]",e,"started connecting..."))}function F(t){let e="error";return L.forEach((n=>{t===n.ws&&(e=n.ip)})),e}function R(t){if(y[t]){let e=F(t);console.log("[i]",e,"web socket events added"),y[t].addEventListener("open",(function(n){console.log("[i]",e,"completed connecting"),z(t,!0),A()})),y[t].addEventListener("message",(function(t){if("string"==typeof t.data){let o=t.data;if(o.includes("status")&&nt(o)){!function(t){for(let e=0;e<$.length;e++){if($[e].topic===t.topic){n(6,$[e].status=t.status,$);break}}}(JSON.parse(o)),G(),console.log("✔","statusJson parced")}if(o.includes("params")&&nt(o)&&(JSON.parse(o),console.log("✔","paramsJson parced")),o.includes("ssid")&&nt(o)&&(n(9,x=JSON.parse(o)),n(9,x),console.log("✔","ssidJson parced")),o.includes("devicelist")&&nt(o)&&(j=JSON.parse(o),j=j,n(13,(s=L,l=j,r=new Set(s.map((t=>t.ip))),L=[...s,...l.filter((t=>!r.has(t.ip)))])),n(13,L),V(),B(),console.log("✔","incDeviceList json parced")),o.includes("errors")&&nt(o)&&(n(8,v=JSON.parse(o)),n(8,v),console.log("✔","errorsJson json parced")),"/st/config.json"===o&&(d=!0),"/end/config.json"===o){d=!1;var e=N.getBlob();let t=new FileReader;t.readAsText(e),t.onload=()=>{let e=t.result;nt(e)&&(n(3,u=JSON.parse(e)),n(3,u),console.log("✔","configJson parced"))}}if("/st/widgets.json"===o&&(f=!0),"/end/widgets.json"===o){f=!1;e=H.getBlob();let t=new FileReader;t.readAsText(e),t.onload=()=>{let e=t.result;nt(e)&&(n(4,p=JSON.parse(e)),n(4,p),console.log("✔","widgetsJson parced"))}}if("/st/items.json"===o&&(m=!0),"/end/items.json"===o){m=!1;e=M.getBlob();let t=new FileReader;t.readAsText(e),t.onload=()=>{let e=t.result;nt(e)&&(n(5,g=JSON.parse(e)),n(5,g),console.log("✔","itemsJson parced"))}}if("/st/layout.json"===o&&(h=!0),"/end/layout.json"===o){h=!1;e=P.getBlob();let t=new FileReader;t.readAsText(e),t.onload=()=>{let e=t.result;nt(e)&&(n(6,$=JSON.parse(e)),n(6,$),G(),console.log("✔","layoutJson parced"))}}if("/st/settings.json"===o&&(b=!0),"/end/settings.json"===o){b=!1;e=q.getBlob();let t=new FileReader;t.readAsText(e),t.onload=()=>{let e=t.result;nt(e)&&(n(7,w=JSON.parse(e)),n(7,w),G(),function(){for(let t=0;t{console.log("[e]",e,"connection closed"),z(t,!1)})),y[t].addEventListener("error",(function(n){console.log("[e]",e,"connection error"),z(t,!1)}))}else console.log("[e]","socket not exist")}function W(){Q(_,"/tuoyal|"+JSON.stringify(function(){let t=[];for(let e=0;e{!function(t){let e=!1;return L.forEach((n=>{t===n.ws&&(e=n.status)})),e}(t.ws)?(D(t.ws),R(t.ws)):Q(t.ws,"/tst|")})),J=!1}function Q(t,e){y[t]&&1===y[t].readyState?(y[t].send(e),console.log("[i]",F(t),"msg send success",e)):console.log("[e]",F(t),"msg not send",e)}function Z(){n(2,a=[]);Array.from(new Set(Array.from($,(({page:t})=>t)))).forEach((function(t,e,s){n(2,a=[...a,JSON.parse(JSON.stringify({page:t}))])})),a.sort((function(t,e){return t.pagee.page?1:0}))}function G(){Z(),n(6,$)}function V(){tt(_),n(10,k=l.status)}function X(){V(),Y(),A(),console.log("[i]","user selected device:",l.name),l.ip===i&&console.log("[i]","user selected original device",l.name)}function tt(t){for(let e=0;e{console.log("[i]","mounted"),B(),U(),V(),Z()}));return[r,c,a,u,p,g,$,w,v,x,k,_,S,L,rt,W,I,K,X,et,st,lt,ct,at,function(){_=C(this),n(11,_),n(13,L)},()=>X(),function(){r=this.checked,n(0,r)},()=>st(),(t,e,n)=>K(t,e,n),()=>W(),()=>ct(),()=>lt(),()=>I(),()=>ct(),t=>at(t),()=>et()]}return new class extends lt{constructor(t){super(),st(this,t,En,Cn,r,{},null,[-1,-1,-1,-1])}}({target:document.body,props:{name:"world"}})}(); //# sourceMappingURL=bundle.js.map diff --git a/include/Const.h b/include/Const.h index ba80b52b..59033a65 100644 --- a/include/Const.h +++ b/include/Const.h @@ -1,7 +1,7 @@ #pragma once //Это версия прошивки -#define FIRMWARE_VERSION 400 +#define FIRMWARE_VERSION 401 //Размер буфера json #define JSON_BUFFER_SIZE 1024 diff --git a/include/utils/StringUtils.h b/include/utils/StringUtils.h index 816baf8d..b40e443a 100644 --- a/include/utils/StringUtils.h +++ b/include/utils/StringUtils.h @@ -2,6 +2,8 @@ #include "Global.h" +void writeUint8tToString(uint8_t* payload, size_t length, size_t headerLenth, String& payloadStr); + void hex2string(byte array[], unsigned int len, char buffer[]); int string2hex(const char* str, unsigned char* bytes); diff --git a/src/StandWebServer.cpp b/src/StandWebServer.cpp index 52eb9a8f..c1f8fca7 100644 --- a/src/StandWebServer.cpp +++ b/src/StandWebServer.cpp @@ -13,6 +13,10 @@ void standWebServerInit() { HTTP.send(200, "application/json", settingsFlashJson); }); + HTTP.on("/errors.json", HTTP_GET, []() { + HTTP.send(200, "application/json", errorsHeapJson); + }); + HTTP.on("/paramsh.json", HTTP_GET, []() { HTTP.send(200, "application/json", paramsHeapJson); }); diff --git a/src/WsServer.cpp b/src/WsServer.cpp index 0dd81b67..43728af4 100644 --- a/src/WsServer.cpp +++ b/src/WsServer.cpp @@ -30,69 +30,80 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t* payload, size_t length) } break; case WStype_TEXT: { - //максимальное количество символов заголовка - size_t headerLenth = 7; + bool endOfHeaderFound = false; + size_t maxAllowedHeaderSize = 15; //максимальное количество символов заголовка + size_t headerLenth = 0; String headerStr; - headerStr.reserve(headerLenth + 1); - for (size_t i = 0; i < headerLenth; i++) { - headerStr += (char)payload[i]; + for (size_t i = 0; i <= maxAllowedHeaderSize; i++) { + headerLenth++; + char s = (char)payload[i]; + headerStr += s; + if (s == '|') { + endOfHeaderFound = true; + break; + } } - //отправка данных которые нужны для всех страниц веб интерфейса - //эти данные мы отправляем в двух случаях: - // 1 пользователь перешел на новую страницу - // 2 каждые 30 секунд + if (!endOfHeaderFound) { + SerialPrint("E", "WS " + String(num), "Package without header"); + } + // all pages=================================================================== //**отправка**// - if (headerStr == ("/all")) { + if (headerStr == ("/all|")) { standWebSocket.sendTXT(num, ssidListHeapJson); - standWebSocket.broadcastTXT(errorsHeapJson); + standWebSocket.sendTXT(num, errorsHeapJson); } // dashboard=================================================================== //**отправка**// - if (headerStr == "/") { + if (headerStr == "/|") { sendFileToWs("/layout.json", num, 1024); standWebSocket.sendTXT(num, paramsHeapJson); } //**сохранение**// - if (headerStr == "/tuoyal") { + if (headerStr == "/tuoyal|") { writeFileUint8tByFrames("layout.json", payload, length, headerLenth, 256); } // configutation=============================================================== //**отправка**// - if (headerStr == "/config") { + if (headerStr == "/config|") { sendFileToWs("/items.json", num, 1024); sendFileToWs("/widgets.json", num, 1024); sendFileToWs("/config.json", num, 1024); sendFileToWs("/settings.json", num, 1024); } //**сохранение**// - if (headerStr == "/gifnoc") { + if (headerStr == "/gifnoc|") { writeFileUint8tByFrames("config.json", payload, length, headerLenth, 256); } // connection=================================================================== //**отправка**// - if (headerStr == "/connec") { + if (headerStr == "/connection|") { sendFileToWs("/settings.json", num, 1024); //запуск асинхронного сканирования wifi сетей при переходе на страницу соединений RouterFind(jsonReadStr(settingsFlashJson, F("routerssid"))); } - //**отправка**// - if (headerStr == "/scan") { - //запуск асинхронного сканирования wifi сетей при нажатии выпадающего списка - RouterFind(jsonReadStr(settingsFlashJson, F("routerssid"))); - } //**сохранение**// - if (headerStr == "/cennoc") { + if (headerStr == "/sgnittes|") { writeFileUint8tByFrames("settings.json", payload, length, headerLenth, 256); settingsFlashJson = readFile(F("settings.json"), 4096); } + //**отправка**// + if (headerStr == "/scan|") { + //запуск асинхронного сканирования wifi сетей при нажатии выпадающего списка + RouterFind(jsonReadStr(settingsFlashJson, F("routerssid"))); + } // list =================================================================== //**отправка**// - if (headerStr == "/list") { + if (headerStr == "/list|") { standWebSocket.sendTXT(num, devListHeapJson); } + // system =================================================================== + //**сохранение**// + if (headerStr == "/rorre|") { + writeUint8tToString(payload, length, headerLenth, errorsHeapJson); + } // orders =================================================================== - if (headerStr == "/reboot") { + if (headerStr == "/reboot|") { ESP.restart(); } diff --git a/src/utils/FileUtils.cpp b/src/utils/FileUtils.cpp index 21cf0d76..b3222408 100644 --- a/src/utils/FileUtils.cpp +++ b/src/utils/FileUtils.cpp @@ -1,13 +1,5 @@ #include "Utils/FileUtils.h" -void writeStrValueToJsonFile(const String& filename, String key, String value) { - String tmp = readFile(filename, 4096); - if (!jsonWriteStr_(tmp, key, value)) { - Serial.println(F("failed write json value to file")); - } - writeFile(filename, tmp); -} - //данная функция записывает файл из буфера страницами указанного размера void writeFileUint8tByFrames(const String& filename, uint8_t*& big_buf, size_t length, size_t headerLenth, size_t frameSize) { String path = filepath(filename); @@ -31,6 +23,14 @@ void writeFileUint8tByFrames(const String& filename, uint8_t*& big_buf, size_t l file.close(); } +// void writeStrValueToJsonFile(const String& filename, String key, String value) { +// String tmp = readFile(filename, 4096); +// if (!jsonWriteStr_(tmp, key, value)) { +// Serial.println(F("failed write json value to file")); +// } +// writeFile(filename, tmp); +// } + //данная функция читает из файла страницами указанного размера // void readFileUint8tByFrames(const String& filename, size_t frameSize) { // String path = filepath(filename); diff --git a/src/utils/StringUtils.cpp b/src/utils/StringUtils.cpp index f0c87166..ddc9dbde 100644 --- a/src/utils/StringUtils.cpp +++ b/src/utils/StringUtils.cpp @@ -1,5 +1,13 @@ #include "Utils/StringUtils.h" +void writeUint8tToString(uint8_t* payload, size_t length, size_t headerLenth, String& payloadStr) { + payloadStr = ""; + payloadStr.reserve(length + 1); + for (size_t i = headerLenth; i < length; i++) { + payloadStr += (char)payload[i]; + } +} + String selectToMarkerLast(String str, String found) { int p = str.lastIndexOf(found); return str.substring(p + found.length());