proto-daisy-ui 0.0.38 → 0.0.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/proto-daisy-ui.cjs.entry.js +1 -1
- package/dist/cjs/proto-hero.cjs.entry.js +1 -1
- package/dist/cjs/proto-home.cjs.entry.js +2 -6
- package/dist/cjs/proto-list.cjs.entry.js +1 -1
- package/dist/cjs/proto-shell.cjs.entry.js +1 -1
- package/dist/cjs/proto-stats.cjs.entry.js +1 -1
- package/dist/cjs/{store-9d93855f.js → store-8375ea96.js} +55 -48
- package/dist/collection/components/proto-home/proto-home.js +2 -3
- package/dist/collection/utils/asyncBag.js +17 -0
- package/dist/collection/utils/bag.js +23 -17
- package/dist/collection/utils/store.js +34 -33
- package/dist/components/proto-home.js +3 -7
- package/dist/components/store.js +55 -48
- package/dist/esm/proto-daisy-ui.entry.js +1 -1
- package/dist/esm/proto-hero.entry.js +1 -1
- package/dist/esm/proto-home.entry.js +3 -7
- package/dist/esm/proto-list.entry.js +1 -1
- package/dist/esm/proto-shell.entry.js +1 -1
- package/dist/esm/proto-stats.entry.js +1 -1
- package/dist/esm/{store-7628e32a.js → store-afd160bc.js} +55 -48
- package/dist/proto-daisy-ui/p-4fc15cdc.js +1 -0
- package/dist/proto-daisy-ui/{p-5830209d.entry.js → p-5b7a29ae.entry.js} +1 -1
- package/dist/proto-daisy-ui/{p-1c3da388.entry.js → p-6897c3bb.entry.js} +1 -1
- package/dist/proto-daisy-ui/p-69de3145.entry.js +1 -0
- package/dist/proto-daisy-ui/{p-03aa7951.entry.js → p-8bae7ea0.entry.js} +1 -1
- package/dist/proto-daisy-ui/{p-b6a557f9.entry.js → p-d49c34d9.entry.js} +1 -1
- package/dist/proto-daisy-ui/p-fd18c8be.entry.js +1 -0
- package/dist/proto-daisy-ui/proto-daisy-ui.esm.js +1 -1
- package/dist/types/utils/asyncBag.d.ts +7 -0
- package/dist/types/utils/bag.d.ts +3 -5
- package/package.json +2 -1
- package/dist/collection/components/functional/index.js +0 -1
- package/dist/collection/components/functional/proto-button.js +0 -6
- package/dist/proto-daisy-ui/p-660be460.js +0 -1
- package/dist/proto-daisy-ui/p-89dd6d5d.entry.js +0 -1
- package/dist/proto-daisy-ui/p-c1d570e1.entry.js +0 -1
- package/dist/types/components/functional/index.d.ts +0 -1
- package/dist/types/components/functional/proto-button.d.ts +0 -4
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b50213e7.js');
|
|
6
|
-
const store = require('./store-
|
|
6
|
+
const store = require('./store-8375ea96.js');
|
|
7
7
|
|
|
8
8
|
const protoDaisyUiCss = ":root,[data-theme]{background-color:hsla(var(--b1) / var(--tw-bg-opacity, 1));color:hsla(var(--bc) / var(--tw-text-opacity, 1))}html{-webkit-tap-highlight-color:transparent}:root{--p:259 94% 51%;--pf:259 94% 41%;--sf:314 100% 38%;--af:174 60% 41%;--nf:219 14% 22%;--in:198 93% 60%;--su:158 64% 52%;--wa:43 96% 56%;--er:0 91% 71%;--inc:198 100% 12%;--suc:158 100% 10%;--wac:43 100% 11%;--erc:0 100% 14%;--rounded-box:1rem;--rounded-btn:0.5rem;--rounded-badge:1.9rem;--animation-btn:0.25s;--animation-input:0.2s;--btn-text-case:uppercase;--btn-focus-scale:0.95;--border-btn:1px;--tab-border:1px;--tab-radius:0.5rem;--pc:0 0% 100%;--s:314 100% 47%;--sc:0 0% 100%;--a:174 60% 51%;--ac:175 44% 15%;--n:219 14% 28%;--nc:0 0% 100%;--b1:0 0% 100%;--b2:0 0% 95%;--b3:180 2% 90%;--bc:215 28% 17%}@media (prefers-color-scheme: dark){:root{--p:262 80% 50%;--pf:262 80% 40%;--sf:316 70% 40%;--af:175 70% 33%;--in:198 93% 60%;--su:158 64% 52%;--wa:43 96% 56%;--er:0 91% 71%;--inc:198 100% 12%;--suc:158 100% 10%;--wac:43 100% 11%;--erc:0 100% 14%;--rounded-box:1rem;--rounded-btn:0.5rem;--rounded-badge:1.9rem;--animation-btn:0.25s;--animation-input:0.2s;--btn-text-case:uppercase;--btn-focus-scale:0.95;--border-btn:1px;--tab-border:1px;--tab-radius:0.5rem;--pc:0 0% 100%;--s:316 70% 50%;--sc:0 0% 100%;--a:175 70% 41%;--ac:0 0% 100%;--n:218 18% 12%;--nf:223 17% 8%;--nc:220 13% 69%;--b1:220 18% 20%;--b2:220 17% 17%;--b3:219 18% 15%;--bc:220 13% 69%}}[data-theme='light']{--p:259 94% 51%;--pf:259 94% 41%;--sf:314 100% 38%;--af:174 60% 41%;--nf:219 14% 22%;--in:198 93% 60%;--su:158 64% 52%;--wa:43 96% 56%;--er:0 91% 71%;--inc:198 100% 12%;--suc:158 100% 10%;--wac:43 100% 11%;--erc:0 100% 14%;--rounded-box:1rem;--rounded-btn:0.5rem;--rounded-badge:1.9rem;--animation-btn:0.25s;--animation-input:0.2s;--btn-text-case:uppercase;--btn-focus-scale:0.95;--border-btn:1px;--tab-border:1px;--tab-radius:0.5rem;--pc:0 0% 100%;--s:314 100% 47%;--sc:0 0% 100%;--a:174 60% 51%;--ac:175 44% 15%;--n:219 14% 28%;--nc:0 0% 100%;--b1:0 0% 100%;--b2:0 0% 95%;--b3:180 2% 90%;--bc:215 28% 17%}[data-theme='dark']{--p:262 80% 50%;--pf:262 80% 40%;--sf:316 70% 40%;--af:175 70% 33%;--in:198 93% 60%;--su:158 64% 52%;--wa:43 96% 56%;--er:0 91% 71%;--inc:198 100% 12%;--suc:158 100% 10%;--wac:43 100% 11%;--erc:0 100% 14%;--rounded-box:1rem;--rounded-btn:0.5rem;--rounded-badge:1.9rem;--animation-btn:0.25s;--animation-input:0.2s;--btn-text-case:uppercase;--btn-focus-scale:0.95;--border-btn:1px;--tab-border:1px;--tab-radius:0.5rem;--pc:0 0% 100%;--s:316 70% 50%;--sc:0 0% 100%;--a:175 70% 41%;--ac:0 0% 100%;--n:218 18% 12%;--nf:223 17% 8%;--nc:220 13% 69%;--b1:220 18% 20%;--b2:220 17% 17%;--b3:219 18% 15%;--bc:220 13% 69%}[data-theme='aqua']{--p:182 93% 49%;--pf:182 93% 40%;--sf:274 31% 45%;--af:47 100% 64%;--nf:205 54% 40%;--b2:219 53% 39%;--b3:219 53% 35%;--bc:219 100% 89%;--sc:274 100% 91%;--ac:47 100% 16%;--nc:205 100% 90%;--inc:221 100% 91%;--suc:142 100% 87%;--wac:32 100% 9%;--erc:0 100% 90%;--rounded-box:1rem;--rounded-btn:0.5rem;--rounded-badge:1.9rem;--animation-btn:0.25s;--animation-input:0.2s;--btn-text-case:uppercase;--btn-focus-scale:0.95;--border-btn:1px;--tab-border:1px;--tab-radius:0.5rem;--pc:181 100% 17%;--s:274 31% 57%;--a:47 100% 80%;--n:205 54% 50%;--b1:219 53% 43%;--in:221 83% 53%;--su:142 76% 36%;--wa:32 95% 44%;--er:0 72% 51%}[data-theme='business']{--p:210 64% 31%;--pf:210 64% 24%;--sf:200 13% 44%;--af:13 80% 48%;--nf:213 14% 13%;--b2:0 0% 11%;--b3:0 0% 10%;--bc:0 0% 83%;--pc:210 100% 86%;--sc:200 100% 11%;--ac:13 100% 12%;--nc:213 28% 83%;--inc:199 100% 88%;--suc:144 100% 11%;--wac:39 100% 12%;--erc:6 100% 89%;--animation-btn:0.25s;--animation-input:0.2s;--btn-text-case:uppercase;--btn-focus-scale:0.95;--border-btn:1px;--tab-border:1px;--tab-radius:0.5rem;--s:200 13% 55%;--a:13 80% 60%;--n:213 14% 16%;--b1:0 0% 13%;--in:199 100% 42%;--su:144 31% 56%;--wa:39 64% 60%;--er:6 56% 43%;--rounded-box:0.25rem;--rounded-btn:0.125rem;--rounded-badge:0.125rem}[data-theme='corporate']{--p:229 96% 64%;--pf:229 96% 51%;--sf:215 26% 47%;--af:154 49% 48%;--nf:233 27% 10%;--b2:0 0% 90%;--b3:0 0% 81%;--in:198 93% 60%;--su:158 64% 52%;--wa:43 96% 56%;--er:0 91% 71%;--pc:229 100% 93%;--sc:215 100% 12%;--ac:154 100% 12%;--inc:198 100% 12%;--suc:158 100% 10%;--wac:43 100% 11%;--erc:0 100% 14%;--btn-text-case:uppercase;--border-btn:1px;--tab-border:1px;--tab-radius:0.5rem;--s:215 26% 59%;--a:154 49% 60%;--n:233 27% 13%;--nc:210 38% 95%;--b1:0 0% 100%;--bc:233 27% 13%;--rounded-box:0.25rem;--rounded-btn:0.125rem;--rounded-badge:0.125rem;--animation-btn:0;--animation-input:0;--btn-focus-scale:1}[data-theme='fantasy']{--p:296 83% 25%;--pf:296 83% 20%;--sf:200 100% 30%;--af:31 94% 41%;--nf:215 28% 13%;--b2:0 0% 90%;--b3:0 0% 81%;--in:198 93% 60%;--su:158 64% 52%;--wa:43 96% 56%;--er:0 91% 71%;--pc:296 100% 85%;--sc:200 100% 87%;--ac:31 100% 10%;--nc:215 62% 83%;--inc:198 100% 12%;--suc:158 100% 10%;--wac:43 100% 11%;--erc:0 100% 14%;--rounded-box:1rem;--rounded-btn:0.5rem;--rounded-badge:1.9rem;--animation-btn:0.25s;--animation-input:0.2s;--btn-text-case:uppercase;--btn-focus-scale:0.95;--border-btn:1px;--tab-border:1px;--tab-radius:0.5rem;--s:200 100% 37%;--a:31 94% 51%;--n:215 28% 17%;--b1:0 0% 100%;--bc:215 28% 17%}[data-theme='night']{--p:198 93% 60%;--pf:198 93% 48%;--sf:234 89% 59%;--af:329 86% 56%;--b2:222 47% 10%;--b3:222 47% 9%;--bc:222 66% 82%;--pc:198 100% 12%;--sc:234 100% 15%;--ac:329 100% 14%;--nc:217 76% 83%;--inc:198 100% 10%;--suc:172 100% 10%;--wac:41 100% 13%;--erc:351 100% 14%;--rounded-box:1rem;--rounded-btn:0.5rem;--rounded-badge:1.9rem;--animation-btn:0.25s;--animation-input:0.2s;--btn-text-case:uppercase;--btn-focus-scale:0.95;--border-btn:1px;--tab-border:1px;--tab-radius:0.5rem;--s:234 89% 74%;--a:329 86% 70%;--n:217 33% 17%;--nf:217 30% 22%;--b1:222 47% 11%;--in:198 90% 48%;--su:172 66% 50%;--wa:41 88% 64%;--er:351 95% 71%}[data-theme='winter']{--p:212 100% 51%;--pf:212 100% 41%;--sf:247 47% 35%;--af:310 49% 42%;--nf:217 92% 8%;--pc:212 100% 90%;--sc:247 100% 89%;--ac:310 100% 90%;--nc:217 100% 82%;--inc:192 100% 16%;--suc:182 100% 13%;--wac:32 100% 17%;--erc:0 100% 14%;--rounded-box:1rem;--rounded-btn:0.5rem;--rounded-badge:1.9rem;--animation-btn:0.25s;--animation-input:0.2s;--btn-text-case:uppercase;--btn-focus-scale:0.95;--border-btn:1px;--tab-border:1px;--tab-radius:0.5rem;--s:247 47% 43%;--a:310 49% 52%;--n:217 92% 10%;--b1:0 0% 100%;--b2:217 100% 97%;--b3:219 44% 92%;--bc:214 30% 32%;--in:192 93% 78%;--su:182 47% 66%;--wa:32 62% 84%;--er:0 63% 72%}[data-theme='wireframe']{font-family:Chalkboard, comic sans ms, 'sanssecondaryerif';--pf:0 0% 58%;--sf:0 0% 58%;--af:0 0% 58%;--nf:0 0% 74%;--bc:0 0% 20%;--pc:0 0% 14%;--sc:0 0% 14%;--ac:0 0% 14%;--nc:0 0% 18%;--inc:240 100% 90%;--suc:120 100% 85%;--wac:60 100% 10%;--erc:0 100% 90%;--animation-btn:0.25s;--animation-input:0.2s;--btn-text-case:uppercase;--btn-focus-scale:0.95;--border-btn:1px;--tab-border:1px;--p:0 0% 72%;--s:0 0% 72%;--a:0 0% 72%;--n:0 0% 92%;--b1:0 0% 100%;--b2:0 0% 93%;--b3:0 0% 87%;--in:240 100% 50%;--su:120 100% 25%;--wa:60 30% 50%;--er:0 100% 50%;--rounded-box:0.2rem;--rounded-btn:0.2rem;--rounded-badge:0.2rem;--tab-radius:0.2rem}*,::before,::after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}::-webkit-backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}.alert{display:flex;width:100%;flex-direction:column;align-items:center;justify-content:space-between;gap:1rem;--tw-bg-opacity:1;background-color:hsl(var(--b2, var(--b1)) / var(--tw-bg-opacity));padding:1rem;border-radius:var(--rounded-box, 1rem)}.alert>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.5rem * var(--tw-space-y-reverse))}@media (min-width: 768px){.alert{flex-direction:row}.alert>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}}.alert>:where(*){display:flex;align-items:center;gap:0.5rem}.badge{display:inline-flex;align-items:center;justify-content:center;transition-property:color, background-color, border-color, fill, stroke,\n opacity, box-shadow, transform, filter, -webkit-text-decoration-color,\n -webkit-backdrop-filter;transition-property:color, background-color, border-color,\n text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,\n backdrop-filter;transition-property:color, background-color, border-color,\n text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,\n backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter;transition-duration:200ms;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);height:1.25rem;font-size:0.875rem;line-height:1.25rem;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding-left:0.563rem;padding-right:0.563rem;border-width:1px;--tw-border-opacity:1;border-color:hsl(var(--n) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--n) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--nc) / var(--tw-text-opacity));border-radius:var(--rounded-badge, 1.9rem)}.btn{display:inline-flex;flex-shrink:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;justify-content:center;border-color:transparent;border-color:hsl(var(--n) / var(--tw-border-opacity));text-align:center;transition-property:color, background-color, border-color, fill, stroke,\n opacity, box-shadow, transform, filter, -webkit-text-decoration-color,\n -webkit-backdrop-filter;transition-property:color, background-color, border-color,\n text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,\n backdrop-filter;transition-property:color, background-color, border-color,\n text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,\n backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter;transition-duration:200ms;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);border-radius:var(--rounded-btn, 0.5rem);height:3rem;padding-left:1rem;padding-right:1rem;font-size:0.875rem;line-height:1.25rem;line-height:1em;min-height:3rem;font-weight:600;text-transform:uppercase;text-transform:var(--btn-text-case, uppercase);-webkit-text-decoration-line:none;text-decoration-line:none;border-width:var(--border-btn, 1px);-webkit-animation:button-pop var(--animation-btn, 0.25s) ease-out;animation:button-pop var(--animation-btn, 0.25s) ease-out;--tw-border-opacity:1;--tw-bg-opacity:1;background-color:hsl(var(--n) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--nc) / var(--tw-text-opacity))}.btn-disabled,.btn[disabled]{pointer-events:none}.btn-square{height:3rem;width:3rem;padding:0px}.btn.loading,.btn.loading:hover{pointer-events:none}.btn.loading:before{margin-right:0.5rem;height:1rem;width:1rem;border-radius:9999px;border-width:2px;-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite;content:'';border-top-color:transparent;border-left-color:transparent;border-bottom-color:currentColor;border-right-color:currentColor}@media (prefers-reduced-motion: reduce){.btn.loading:before{-webkit-animation:spin 10s linear infinite;animation:spin 10s linear infinite}}@-webkit-keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.btn-group>input[type='radio'].btn{-webkit-appearance:none;-moz-appearance:none;appearance:none}.btn-group>input[type='radio'].btn:before{content:attr(data-title)}.divider{display:flex;flex-direction:row;align-items:center;align-self:stretch;margin-top:1rem;margin-bottom:1rem;height:1rem;white-space:nowrap}.divider:before,.divider:after{content:'';flex-grow:1;height:0.125rem;width:100%}.dropdown{position:relative;display:inline-block}.dropdown>*:focus{outline:2px solid transparent;outline-offset:2px}.dropdown .dropdown-content{visibility:hidden;position:absolute;z-index:50;opacity:0;transform-origin:top;--tw-scale-x:0.95;--tw-scale-y:0.95;transform:translate(var(--tw-translate-x), var(--tw-translate-y))\n rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))\n scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:color, background-color, border-color, fill, stroke,\n opacity, box-shadow, transform, filter, -webkit-text-decoration-color,\n -webkit-backdrop-filter;transition-property:color, background-color, border-color,\n text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,\n backdrop-filter;transition-property:color, background-color, border-color,\n text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,\n backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter;transition-duration:200ms;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.dropdown-end .dropdown-content{right:0px}.dropdown-left .dropdown-content{top:0px;right:100%;bottom:auto;transform-origin:right}.dropdown-right .dropdown-content{left:100%;top:0px;bottom:auto;transform-origin:left}.dropdown-top .dropdown-content{bottom:100%;top:auto;transform-origin:bottom}.dropdown-end.dropdown-right .dropdown-content{bottom:0px;top:auto}.dropdown-end.dropdown-left .dropdown-content{bottom:0px;top:auto}.dropdown.dropdown-open .dropdown-content,.dropdown.dropdown-hover:hover .dropdown-content,.dropdown:not(.dropdown-hover):focus .dropdown-content,.dropdown:not(.dropdown-hover):focus-within .dropdown-content{visibility:visible;opacity:1}.footer{display:grid;width:100%;grid-auto-flow:row;place-items:start;row-gap:2.5rem;-moz-column-gap:1rem;column-gap:1rem;font-size:0.875rem;line-height:1.25rem}.footer>*{display:grid;place-items:start;gap:0.5rem}@media (min-width: 48rem){.footer{grid-auto-flow:column}.footer-center{grid-auto-flow:row dense}}.label{display:flex;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;justify-content:space-between;padding-left:0.25rem;padding-right:0.25rem;padding-top:0.5rem;padding-bottom:0.5rem}.hero{display:grid;width:100%;place-items:center;background-size:cover;background-position:center}.hero>*{grid-column-start:1;grid-row-start:1}.hero-content{z-index:0;display:flex;align-items:center;justify-content:center;max-width:80rem;gap:1rem;padding:1rem}.menu{display:flex;flex-direction:column}.menu.horizontal{display:inline-flex;flex-direction:row}.menu.horizontal :where(li){flex-direction:row}.menu :where(li){position:relative;display:flex;flex-direction:column;flex-wrap:wrap;align-items:stretch}.menu :where(li:not(.menu-title))>:where(*:not(ul)){display:flex}.menu :where(li:not(.disabled):not(.menu-title))>:where(*:not(ul)){cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;outline:2px solid transparent;outline-offset:2px}.menu>:where(li>*:not(ul):focus){outline:2px solid transparent;outline-offset:2px}.menu>:where(li.disabled>*:not(ul):focus){cursor:auto}.menu>:where(li) :where(ul){display:flex;flex-direction:column;align-items:stretch}.menu>:where(li)>:where(ul){position:absolute;display:none;top:initial;left:100%;border-top-left-radius:inherit;border-top-right-radius:inherit;border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.menu>:where(li:hover)>:where(ul){display:flex}.menu>:where(li:focus)>:where(ul){display:flex}.navbar{display:flex;align-items:center;padding:var(--navbar-padding, 0.5rem);min-height:4rem;width:100%}:where(.navbar>*){display:inline-flex;align-items:center}.progress{position:relative;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;overflow:hidden;height:0.5rem;border-radius:var(--rounded-box, 1rem)}.radial-progress{position:relative;display:inline-grid;height:var(--size);width:var(--size);place-content:center;border-radius:9999px;background-color:transparent;vertical-align:middle;box-sizing:content-box;--value:0;--size:5rem;--thickness:calc(var(--size) / 10)}.radial-progress::-moz-progress-bar{-moz-appearance:none;appearance:none;background-color:transparent}.radial-progress::-webkit-progress-value{-webkit-appearance:none;appearance:none;background-color:transparent}.radial-progress::-webkit-progress-bar{-webkit-appearance:none;appearance:none;background-color:transparent}.radial-progress:before,.radial-progress:after{position:absolute;border-radius:9999px;content:''}.radial-progress:before{top:0px;right:0px;bottom:0px;left:0px;background:radial-gradient(farthest-side, currentColor 98%, #0000)\n top/var(--thickness) var(--thickness) no-repeat,\n conic-gradient(currentColor calc(var(--value) * 1%), #0000 0);-webkit-mask:radial-gradient(\n farthest-side,\n #0000 calc(99% - var(--thickness)),\n #000 calc(100% - var(--thickness))\n );mask:radial-gradient(\n farthest-side,\n #0000 calc(99% - var(--thickness)),\n #000 calc(100% - var(--thickness))\n )}.radial-progress:after{inset:calc(50% - var(--thickness) / 2);transform:rotate(calc(var(--value) * 3.6deg - 90deg))\n translate(calc(var(--size) / 2 - 50%));background-color:currentColor}.stats{display:inline-grid;--tw-bg-opacity:1;background-color:hsl(var(--b1) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--bc) / var(--tw-text-opacity));border-radius:var(--rounded-box, 1rem)}:where(.stats){grid-auto-flow:column;overflow-x:auto}.stat{display:inline-grid;width:100%;grid-template-columns:repeat(1, 1fr);-moz-column-gap:1rem;column-gap:1rem;border-color:hsl(var(--bc) / var(--tw-border-opacity));--tw-border-opacity:0.1;padding-left:1.5rem;padding-right:1.5rem;padding-top:1rem;padding-bottom:1rem}.stat-title{grid-column-start:1;white-space:nowrap;opacity:0.6}.stat-value{grid-column-start:1;white-space:nowrap;font-size:2.25rem;line-height:2.5rem;font-weight:800}.stat-desc{grid-column-start:1;white-space:nowrap;font-size:0.75rem;line-height:1rem;opacity:0.6}.table{position:relative;text-align:left}.table th:first-child{position:sticky;position:-webkit-sticky;left:0px;z-index:11}.tooltip{position:relative;display:inline-block;--tooltip-offset:calc(100% + 1px + var(--tooltip-tail, 0px));text-align:center;--tooltip-tail:3px;--tooltip-color:hsl(var(--n));--tooltip-text-color:hsl(var(--nc));--tooltip-tail-offset:calc(100% + 1px - var(--tooltip-tail))}.tooltip:before{position:absolute;pointer-events:none;content:attr(data-tip);transform:translateX(-50%);top:auto;left:50%;right:auto;bottom:var(--tooltip-offset);max-width:20rem;border-radius:0.25rem;padding-left:0.5rem;padding-right:0.5rem;padding-top:0.25rem;padding-bottom:0.25rem;font-size:0.875rem;line-height:1.25rem;background-color:var(--tooltip-color);color:var(--tooltip-text-color);width:-webkit-max-content;width:-moz-max-content;width:max-content}.tooltip-left:before{transform:translateY(-50%);top:50%;left:auto;right:var(--tooltip-offset);bottom:auto}.tooltip-right:before{transform:translateY(-50%);top:50%;left:var(--tooltip-offset);right:auto;bottom:auto}.btn-outline .badge{--tw-border-opacity:1;border-color:hsl(var(--nf, var(--n)) / var(--tw-border-opacity));--tw-text-opacity:1;color:hsl(var(--nc) / var(--tw-text-opacity))}.btn-outline.btn-primary .badge{--tw-border-opacity:1;border-color:hsl(var(--p) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--p) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--pc) / var(--tw-text-opacity))}.btn-outline.btn-secondary .badge{--tw-border-opacity:1;border-color:hsl(var(--s) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--s) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--sc) / var(--tw-text-opacity))}.btn-outline.btn-accent .badge{--tw-border-opacity:1;border-color:hsl(var(--a) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--a) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--ac) / var(--tw-text-opacity))}.btn-outline .badge.outline{--tw-border-opacity:1;border-color:hsl(var(--nf, var(--n)) / var(--tw-border-opacity));background-color:transparent}.btn-outline.btn-primary .badge-outline{--tw-border-opacity:1;border-color:hsl(var(--p) / var(--tw-border-opacity));background-color:transparent;--tw-text-opacity:1;color:hsl(var(--p) / var(--tw-text-opacity))}.btn-outline:hover .badge{--tw-border-opacity:1;border-color:hsl(var(--b2, var(--b1)) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--b2, var(--b1)) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--bc) / var(--tw-text-opacity))}.btn-outline:hover .badge.outline{--tw-border-opacity:1;border-color:hsl(var(--b2, var(--b1)) / var(--tw-border-opacity));--tw-text-opacity:1;color:hsl(var(--nc) / var(--tw-text-opacity))}.btn-outline.btn-primary:hover .badge{--tw-border-opacity:1;border-color:hsl(var(--pc) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--pc) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--p) / var(--tw-text-opacity))}.btn-outline.btn-primary:hover .badge.outline{--tw-border-opacity:1;border-color:hsl(var(--pc) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--pf, var(--p)) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--pc) / var(--tw-text-opacity))}.btn-outline.btn-secondary:hover .badge{--tw-border-opacity:1;border-color:hsl(var(--sc) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--sc) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--s) / var(--tw-text-opacity))}.btn-outline.btn-secondary:hover .badge.outline{--tw-border-opacity:1;border-color:hsl(var(--sc) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--sf, var(--s)) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--sc) / var(--tw-text-opacity))}.btn-outline.btn-accent:hover .badge{--tw-border-opacity:1;border-color:hsl(var(--ac) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--ac) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--a) / var(--tw-text-opacity))}.btn-outline.btn-accent:hover .badge.outline{--tw-border-opacity:1;border-color:hsl(var(--ac) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--af, var(--a)) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--ac) / var(--tw-text-opacity))}.btm-nav>*:where(.active){border-top-width:2px;--tw-bg-opacity:1;background-color:hsl(var(--b1) / var(--tw-bg-opacity))}.btm-nav>* .label{font-size:1rem;line-height:1.5rem}.btn:active:hover,.btn:active:focus{-webkit-animation:none;animation:none;transform:scale(var(--btn-focus-scale, 0.95))}.btn:hover,.btn-active{--tw-border-opacity:1;border-color:hsl(var(--nf, var(--n)) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--nf, var(--n)) / var(--tw-bg-opacity))}.btn:focus-visible{outline:2px solid hsl(var(--nf));outline-offset:2px}.btn-primary{--tw-border-opacity:1;border-color:hsl(var(--p) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--p) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--pc) / var(--tw-text-opacity))}.btn-primary:hover,.btn-primary.btn-active{--tw-border-opacity:1;border-color:hsl(var(--pf, var(--p)) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--pf, var(--p)) / var(--tw-bg-opacity))}.btn-primary:focus-visible{outline:2px solid hsl(var(--p))}.btn.glass:hover,.btn.glass.btn-active{--glass-opacity:25%;--glass-border-opacity:15%}.btn.glass:focus-visible{outline:2px solid 0 0 2px currentColor}.btn-ghost{border-width:1px;border-color:transparent;background-color:transparent;color:currentColor}.btn-ghost:hover,.btn-ghost.btn-active{--tw-border-opacity:0;background-color:hsl(var(--bc) / var(--tw-bg-opacity));--tw-bg-opacity:0.2}.btn-ghost:focus-visible{outline:2px solid 0 0 2px currentColor}.btn-outline.btn-primary{--tw-text-opacity:1;color:hsl(var(--p) / var(--tw-text-opacity))}.btn-outline.btn-primary:hover{--tw-border-opacity:1;border-color:hsl(var(--pf, var(--p)) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--pf, var(--p)) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--pc) / var(--tw-text-opacity))}.btn-disabled,.btn-disabled:hover,.btn[disabled],.btn[disabled]:hover{--tw-border-opacity:0;background-color:hsl(var(--n) / var(--tw-bg-opacity));--tw-bg-opacity:0.2;color:hsl(var(--bc) / var(--tw-text-opacity));--tw-text-opacity:0.2}.btn.loading.btn-square:before,.btn.loading.btn-circle:before{margin-right:0px}.btn.loading.btn-xl:before,.btn.loading.btn-lg:before{height:1.25rem;width:1.25rem}.btn.loading.btn-sm:before,.btn.loading.btn-xs:before{height:0.75rem;width:0.75rem}.btn-group>input[type='radio']:checked.btn,.btn-group>.btn-active{--tw-border-opacity:1;border-color:hsl(var(--p) / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:hsl(var(--p) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--pc) / var(--tw-text-opacity))}.btn-group>input[type='radio']:checked.btn:focus-visible,.btn-group>.btn-active:focus-visible{outline:2px solid hsl(var(--p))}.btn-group:not(.btn-group-vertical)>.btn:not(:first-of-type){margin-left:-1px;border-top-left-radius:0px;border-bottom-left-radius:0px}.btn-group:not(.btn-group-vertical)>.btn:not(:last-of-type){border-top-right-radius:0px;border-bottom-right-radius:0px}.btn-group-vertical>.btn:not(:first-of-type){margin-top:-1px;border-top-left-radius:0px;border-top-right-radius:0px}.btn-group-vertical>.btn:not(:last-of-type){border-bottom-right-radius:0px;border-bottom-left-radius:0px}@-webkit-keyframes button-pop{0%{transform:scale(var(--btn-focus-scale, 0.95))}40%{transform:scale(1.02)}100%{transform:scale(1)}}@keyframes button-pop{0%{transform:scale(var(--btn-focus-scale, 0.95))}40%{transform:scale(1.02)}100%{transform:scale(1)}}@-webkit-keyframes checkmark{0%{background-position-y:5px}50%{background-position-y:-2px}100%{background-position-y:0}}@keyframes checkmark{0%{background-position-y:5px}50%{background-position-y:-2px}100%{background-position-y:0}}.divider:before{background-color:hsl(var(--bc) / var(--tw-bg-opacity));--tw-bg-opacity:0.1}.divider:after{background-color:hsl(var(--bc) / var(--tw-bg-opacity));--tw-bg-opacity:0.1}.divider:not(:empty){gap:1rem}.drawer-toggle:focus-visible~.drawer-content .drawer-button{outline:2px solid hsl(var(--nf));outline-offset:2px}.drawer-toggle:focus-visible~.drawer-content .drawer-button.btn-primary{outline:2px solid hsl(var(--p))}.drawer-toggle:focus-visible~.drawer-content .drawer-button.btn-secondary{outline:2px solid hsl(var(--s))}.drawer-toggle:focus-visible~.drawer-content .drawer-button.btn-accent{outline:2px solid hsl(var(--a))}.drawer-toggle:focus-visible~.drawer-content .drawer-button.btn-info{outline:2px solid hsl(var(--in))}.drawer-toggle:focus-visible~.drawer-content .drawer-button.btn-success{outline:2px solid hsl(var(--su))}.drawer-toggle:focus-visible~.drawer-content .drawer-button.btn-warning{outline:2px solid hsl(var(--wa))}.drawer-toggle:focus-visible~.drawer-content .drawer-button.btn-error{outline:2px solid hsl(var(--er))}.drawer-toggle:focus-visible~.drawer-content .drawer-button.glass{outline:2px solid currentColor}.drawer-toggle:focus-visible~.drawer-content .drawer-button.btn-ghost{outline:2px solid currentColor}.drawer-toggle:focus-visible~.drawer-content .drawer-button.btn-link{outline:2px solid currentColor}.dropdown.dropdown-open .dropdown-content,.dropdown.dropdown-hover:hover .dropdown-content,.dropdown:focus .dropdown-content,.dropdown:focus-within .dropdown-content{--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x), var(--tw-translate-y))\n rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))\n scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.label a:hover{--tw-text-opacity:1;color:hsl(var(--bc) / var(--tw-text-opacity))}.menu.horizontal li.bordered>a,.menu.horizontal li.bordered>button,.menu.horizontal li.bordered>span{border-left-width:0px;border-bottom-width:4px;--tw-border-opacity:1;border-color:hsl(var(--p) / var(--tw-border-opacity))}.menu[class*=' p-'] li>*,.menu[class^='p-'] li>*{border-radius:var(--rounded-btn, 0.5rem)}.menu :where(li.bordered>*){border-left-width:4px;--tw-border-opacity:1;border-color:hsl(var(--p) / var(--tw-border-opacity))}.menu :where(li)>:where(*:not(ul)){gap:0.75rem;padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;color:currentColor}.menu :where(li:not(.menu-title):not(:empty))>:where(*:not(ul):focus),.menu :where(li:not(.menu-title):not(:empty))>:where(*:not(ul):hover){background-color:hsl(var(--bc) / var(--tw-bg-opacity));--tw-bg-opacity:0.1}.menu :where(li:not(.menu-title):not(:empty))>:where(:not(ul).active),.menu :where(li:not(.menu-title):not(:empty))>:where(*:not(ul):active){--tw-bg-opacity:1;background-color:hsl(var(--p) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--pc) / var(--tw-text-opacity))}.menu :where(li:empty){margin-left:1rem;margin-right:1rem;margin-top:0.5rem;margin-bottom:0.5rem;height:1px;background-color:hsl(var(--bc) / var(--tw-bg-opacity));--tw-bg-opacity:0.1}.menu li.disabled>*{-webkit-user-select:none;-moz-user-select:none;user-select:none;color:hsl(var(--bc) / var(--tw-text-opacity));--tw-text-opacity:0.2}.menu li.disabled>*:hover{background-color:transparent}.menu li.hover-bordered a{border-left-width:4px;border-color:transparent}.menu li.hover-bordered a:hover{--tw-border-opacity:1;border-color:hsl(var(--p) / var(--tw-border-opacity))}.menu.compact li>a,.menu.compact li>span{padding-top:0.5rem;padding-bottom:0.5rem;font-size:0.875rem;line-height:1.25rem}.menu .menu-title>*{padding-top:0.25rem;padding-bottom:0.25rem;font-size:0.75rem;line-height:1rem;font-weight:700;color:hsl(var(--bc) / var(--tw-text-opacity));--tw-text-opacity:0.4}.menu :where(li:not(.disabled))>:where(*:not(ul)){outline:2px solid transparent;outline-offset:2px;transition-property:color, background-color, border-color, fill, stroke,\n opacity, box-shadow, transform, filter, -webkit-text-decoration-color,\n -webkit-backdrop-filter;transition-property:color, background-color, border-color,\n text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,\n backdrop-filter;transition-property:color, background-color, border-color,\n text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,\n backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter;transition-duration:200ms;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.menu>:where(li:first-child){border-top-left-radius:inherit;border-top-right-radius:inherit;border-bottom-right-radius:unset;border-bottom-left-radius:unset}.menu>:where(li:first-child)>:where(:not(ul)){border-top-left-radius:inherit;border-top-right-radius:inherit;border-bottom-right-radius:unset;border-bottom-left-radius:unset}.menu>:where(li:last-child){border-top-left-radius:unset;border-top-right-radius:unset;border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.menu>:where(li:last-child)>:where(:not(ul)){border-top-left-radius:unset;border-top-right-radius:unset;border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.menu>:where(li)>:where(ul) :where(li){width:100%;white-space:nowrap}.menu>:where(li)>:where(ul) :where(li) :where(ul){padding-left:1rem}.menu>:where(li)>:where(ul) :where(li)>:where(:not(ul)){width:100%;white-space:nowrap}.menu>:where(li)>:where(ul)>:where(li:first-child){border-top-left-radius:inherit;border-top-right-radius:inherit;border-bottom-right-radius:unset;border-bottom-left-radius:unset}.menu>:where(li)>:where(ul)>:where(li:first-child)>:where(:not(ul)){border-top-left-radius:inherit;border-top-right-radius:inherit;border-bottom-right-radius:unset;border-bottom-left-radius:unset}.menu>:where(li)>:where(ul)>:where(li:last-child){border-top-left-radius:unset;border-top-right-radius:unset;border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.menu>:where(li)>:where(ul)>:where(li:last-child)>:where(:not(ul)){border-top-left-radius:unset;border-top-right-radius:unset;border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.progress::-moz-progress-bar{--tw-bg-opacity:1;background-color:hsl(var(--n) / var(--tw-bg-opacity))}.progress:indeterminate::after{--tw-bg-opacity:1;background-color:hsl(var(--n) / var(--tw-bg-opacity));content:'';position:absolute;top:0px;bottom:0px;left:-40%;width:33.333333%;border-radius:var(--rounded-box, 1rem);-webkit-animation:progress-loading 5s infinite ease-in-out;animation:progress-loading 5s infinite ease-in-out}.progress::-webkit-progress-bar{background-color:hsl(var(--n) / var(--tw-bg-opacity));--tw-bg-opacity:0.2;border-radius:var(--rounded-box, 1rem)}.progress::-webkit-progress-value{--tw-bg-opacity:1;background-color:hsl(var(--nf, var(--n)) / var(--tw-bg-opacity));border-radius:var(--rounded-box, 1rem)}@-webkit-keyframes progress-loading{50%{left:107%}}@keyframes progress-loading{50%{left:107%}}@-webkit-keyframes radiomark{0%{box-shadow:0 0 0 12px hsl(var(--b1)) inset, 0 0 0 12px hsl(var(--b1)) inset}50%{box-shadow:0 0 0 3px hsl(var(--b1)) inset, 0 0 0 3px hsl(var(--b1)) inset}100%{box-shadow:0 0 0 4px hsl(var(--b1)) inset, 0 0 0 4px hsl(var(--b1)) inset}}@keyframes radiomark{0%{box-shadow:0 0 0 12px hsl(var(--b1)) inset, 0 0 0 12px hsl(var(--b1)) inset}50%{box-shadow:0 0 0 3px hsl(var(--b1)) inset, 0 0 0 3px hsl(var(--b1)) inset}100%{box-shadow:0 0 0 4px hsl(var(--b1)) inset, 0 0 0 4px hsl(var(--b1)) inset}}@-webkit-keyframes rating-pop{0%{transform:translateY(-0.125em)}40%{transform:translateY(-0.125em)}100%{transform:translateY(0)}}@keyframes rating-pop{0%{transform:translateY(-0.125em)}40%{transform:translateY(-0.125em)}100%{transform:translateY(0)}}:where(.stats)>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)));--tw-divide-y-reverse:0;border-top-width:calc(0px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(0px * var(--tw-divide-y-reverse))}.table :where(th,td){white-space:nowrap;padding:1rem;vertical-align:middle}.table tr.active th,.table tr.active td,.table tr.active:nth-child(even) th,.table tr.active:nth-child(even) td{--tw-bg-opacity:1;background-color:hsl(var(--b3, var(--b2)) / var(--tw-bg-opacity))}.table tr.hover:hover th,.table tr.hover:hover td,.table tr.hover:nth-child(even):hover th,.table tr.hover:nth-child(even):hover td{--tw-bg-opacity:1;background-color:hsl(var(--b3, var(--b2)) / var(--tw-bg-opacity))}.table:where(:not(.table-zebra)) :where(thead,tbody,tfoot) :where(tr:not(:last-child) :where(th,td)){border-bottom-width:1px;--tw-border-opacity:1;border-color:hsl(var(--b2, var(--b1)) / var(--tw-border-opacity))}.table :where(thead,tfoot) :where(th,td){--tw-bg-opacity:1;background-color:hsl(var(--b2, var(--b1)) / var(--tw-bg-opacity));font-size:0.75rem;line-height:1rem;font-weight:700;text-transform:uppercase}.table :where(:first-child) :where(:first-child) :where(th,td):first-child{border-top-left-radius:0.5rem}.table :where(:first-child) :where(:first-child) :where(th,td):last-child{border-top-right-radius:0.5rem}.table :where(:last-child) :where(:last-child) :where(th,td):first-child{border-bottom-left-radius:0.5rem}.table :where(:last-child) :where(:last-child) :where(th,td):last-child{border-bottom-right-radius:0.5rem}.table :where(tbody th,tbody td){--tw-bg-opacity:1;background-color:hsl(var(--b1) / var(--tw-bg-opacity))}@-webkit-keyframes toast-pop{0%{transform:scale(0.9);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes toast-pop{0%{transform:scale(0.9);opacity:0}100%{transform:scale(1);opacity:1}}.tooltip:before,.tooltip:after{opacity:0;transition-property:color, background-color, border-color, fill, stroke,\n opacity, box-shadow, transform, filter, -webkit-text-decoration-color,\n -webkit-backdrop-filter;transition-property:color, background-color, border-color,\n text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,\n backdrop-filter;transition-property:color, background-color, border-color,\n text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter,\n backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter;transition-delay:100ms;transition-duration:200ms;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.tooltip:after{position:absolute;content:'';border-style:solid;border-width:var(--tooltip-tail, 0);width:0;height:0;display:block;transform:translateX(-50%);border-color:var(--tooltip-color) transparent transparent transparent;top:auto;left:50%;right:auto;bottom:var(--tooltip-tail-offset)}.tooltip.tooltip-open:before,.tooltip.tooltip-open:after,.tooltip:hover:before,.tooltip:hover:after{opacity:1;transition-delay:75ms}.tooltip-left:after{transform:translateY(-50%);border-color:transparent transparent transparent var(--tooltip-color);top:50%;left:auto;right:calc(var(--tooltip-tail-offset) + 1px);bottom:auto}.tooltip-right:after{transform:translateY(-50%);border-color:transparent var(--tooltip-color) transparent transparent;top:50%;left:calc(var(--tooltip-tail-offset) + 1px);right:auto;bottom:auto}.tooltip-warning{--tooltip-color:hsla(var(--wa));--tooltip-text-color:hsl(var(--wac))}.btm-nav-xs>*:where(.active){border-top-width:1px}.btm-nav-sm>*:where(.active){border-top-width:2px}.btm-nav-md>*:where(.active){border-top-width:2px}.btm-nav-lg>*:where(.active){border-top-width:4px}.btn-square:where(.btn-xs){height:1.5rem;width:1.5rem;padding:0px}.btn-square:where(.btn-sm){height:2rem;width:2rem;padding:0px}.btn-square:where(.btn-md){height:3rem;width:3rem;padding:0px}.btn-square:where(.btn-lg){height:4rem;width:4rem;padding:0px}.divider-horizontal{flex-direction:column}.divider-horizontal:before{height:100%;width:0.125rem}.divider-horizontal:after{height:100%;width:0.125rem}.stats-vertical{grid-auto-flow:row}.alert-info{--tw-bg-opacity:1;background-color:hsl(var(--in) / var(--tw-bg-opacity));--tw-text-opacity:1;color:hsl(var(--inc, var(--nc)) / var(--tw-text-opacity))}.divider-horizontal{margin-top:0px;margin-bottom:0px;margin-left:1rem;margin-right:1rem;height:auto;width:1rem}.menu-compact :where(li>*){padding-top:0.5rem;padding-bottom:0.5rem;font-size:0.875rem;line-height:1.25rem}.stats-vertical>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse));--tw-divide-x-reverse:0;border-right-width:calc(0px * var(--tw-divide-x-reverse));border-left-width:calc(0px * calc(1 - var(--tw-divide-x-reverse)))}.stats-vertical{overflow-y:auto}.table-compact :where(th,td){padding:0.5rem;font-size:0.875rem;line-height:1.25rem}.m-1{margin:0.25rem}.mr-8{margin-right:2rem}.mb-4{margin-bottom:1rem}.mt-4{margin-top:1rem}.ml-auto{margin-left:auto}.mt-0{margin-top:0px}.mt-1{margin-top:0.25rem}.inline-block{display:inline-block}.flex{display:flex}.table{display:table}.hidden{display:none}.h-6{height:1.5rem}.h-8{height:2rem}.h-5{height:1.25rem}.min-h-screen{min-height:100vh}.w-6{width:1.5rem}.w-full{width:100%}.w-auto{width:auto}.w-8{width:2rem}.w-40{width:10rem}.w-5{width:1.25rem}.w-52{width:13rem}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-auto{flex:1 1 auto}.flex-shrink-0{flex-shrink:0}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:0.5rem}.gap-4{gap:1rem}.gap-1{gap:0.25rem}.overflow-x-auto{overflow-x:auto}.rounded-md{border-radius:0.375rem}.bg-clrs-slate{background-color:var(--clrs-slate, #708090)}.bg-base-200{--tw-bg-opacity:1;background-color:hsl(var(--b2, var(--b1)) / var(--tw-bg-opacity))}.bg-neutral{--tw-bg-opacity:1;background-color:hsl(var(--n) / var(--tw-bg-opacity))}.bg-base-100{--tw-bg-opacity:1;background-color:hsl(var(--b1) / var(--tw-bg-opacity))}.bg-secondary{--tw-bg-opacity:1;background-color:hsl(var(--s) / var(--tw-bg-opacity))}.bg-accent{--tw-bg-opacity:1;background-color:hsl(var(--a) / var(--tw-bg-opacity))}.fill-current{fill:currentColor}.stroke-current{stroke:currentColor}.p-4{padding:1rem}.p-2{padding:0.5rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pt-0{padding-top:0px}.text-center{text-align:center}.font-sans{font-family:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,\n 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif,\n 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'}.text-5xl{font-size:3rem;line-height:1}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.normal-case{text-transform:none}.text-secondary{--tw-text-opacity:1;color:hsl(var(--s) / var(--tw-text-opacity))}.text-neutral-content{--tw-text-opacity:1;color:hsl(var(--nc) / var(--tw-text-opacity))}.text-secondary-content{--tw-text-opacity:1;color:hsl(var(--sc) / var(--tw-text-opacity))}.text-accent-content{--tw-text-opacity:1;color:hsl(var(--ac) / var(--tw-text-opacity))}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),\n 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1),\n 0 4px 6px -4px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),\n 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast)\n var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate)\n var(--tw-sepia) var(--tw-drop-shadow)}.hover\\:bg-accent-focus:hover{--tw-bg-opacity:1;background-color:hsl(var(--af, var(--a)) / var(--tw-bg-opacity))}@media (min-width: 1024px){.lg\\:stats-horizontal{grid-auto-flow:column}.lg\\:stats-horizontal>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)));--tw-divide-y-reverse:0;border-top-width:calc(0px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(0px * var(--tw-divide-y-reverse))}.lg\\:stats-horizontal{overflow-x:auto}.lg\\:inline-block{display:inline-block}.lg\\:flex{display:flex}}";
|
|
9
9
|
|
|
@@ -3,11 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b50213e7.js');
|
|
6
|
-
const store = require('./store-
|
|
7
|
-
|
|
8
|
-
const ProtoButton = (_props, children) => {
|
|
9
|
-
return index.h("button", { class: "btn btn-primary" }, children);
|
|
10
|
-
};
|
|
6
|
+
const store = require('./store-8375ea96.js');
|
|
11
7
|
|
|
12
8
|
const protoHomeCss = "";
|
|
13
9
|
|
|
@@ -22,7 +18,7 @@ const ProtoHome = class {
|
|
|
22
18
|
const dealer = dealers[pick];
|
|
23
19
|
const { name, stats } = dealer;
|
|
24
20
|
const { progress } = stats;
|
|
25
|
-
return (index.h("div", { class: "mr-8 flex flex-col flex-nowrap items-start gap-2" }, index.h("div", { class: "alert alert-info mb-4 items-start shadow-lg" }, index.h("div", null, index.h("svg", { fill: "none", viewBox: "0 0 24 24", class: "h-6 w-6 flex-shrink-0 stroke-current" }, index.h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", d: "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" })), index.h("span", null, "Welcome... [ ", name, " ]"))), index.h(
|
|
21
|
+
return (index.h("div", { class: "mr-8 flex flex-col flex-nowrap items-start gap-2" }, index.h("div", { class: "alert alert-info mb-4 items-start shadow-lg" }, index.h("div", null, index.h("svg", { fill: "none", viewBox: "0 0 24 24", class: "h-6 w-6 flex-shrink-0 stroke-current" }, index.h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", d: "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" })), index.h("span", null, "Welcome... [ ", name, " ]"))), index.h("button", { class: "btn btn-primary", onClick: () => store.actions.refresh() }, "Refresh"), progress ? (index.h("proto-dial", { class: "mt-4", value: progress })) : ('')));
|
|
26
22
|
}
|
|
27
23
|
};
|
|
28
24
|
ProtoHome.style = protoHomeCss;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-b50213e7.js');
|
|
6
|
-
const store = require('./store-
|
|
6
|
+
const store = require('./store-8375ea96.js');
|
|
7
7
|
|
|
8
8
|
const tw = (...classes) => {
|
|
9
9
|
return classes.filter(Boolean).join(' ');
|
|
@@ -2,28 +2,34 @@
|
|
|
2
2
|
|
|
3
3
|
const index = require('./index-b50213e7.js');
|
|
4
4
|
|
|
5
|
-
const
|
|
6
|
-
const
|
|
5
|
+
const APP = 'proto-daisy-ui';
|
|
6
|
+
const KEY = 'app-data';
|
|
7
|
+
const promisedParseJSON = (json) => {
|
|
8
|
+
return new Promise((resolve, reject) => {
|
|
9
|
+
try {
|
|
10
|
+
resolve(JSON.parse(json));
|
|
11
|
+
}
|
|
12
|
+
catch (e) {
|
|
13
|
+
reject(e);
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
// localStorage implementation...
|
|
7
18
|
const bag = {
|
|
8
|
-
get: (
|
|
9
|
-
const key =
|
|
19
|
+
get: () => {
|
|
20
|
+
const key = `${APP}-${KEY}`;
|
|
10
21
|
const json = localStorage.getItem(key);
|
|
11
|
-
return
|
|
22
|
+
return promisedParseJSON(json);
|
|
12
23
|
},
|
|
13
|
-
store: (
|
|
14
|
-
const
|
|
15
|
-
const
|
|
24
|
+
store: (state) => {
|
|
25
|
+
const { login, mfe, pick, theme, themes, dealers } = state;
|
|
26
|
+
const app = mfe === undefined ? null : mfe;
|
|
27
|
+
const data = { login, mfe: app, pick, theme, themes, dealers };
|
|
28
|
+
const key = `${APP}-${KEY}`;
|
|
29
|
+
const json = JSON.stringify(data);
|
|
16
30
|
localStorage.setItem(key, json);
|
|
17
31
|
},
|
|
18
32
|
};
|
|
19
|
-
const getApp = () => {
|
|
20
|
-
return bag.get(DATA) || {};
|
|
21
|
-
};
|
|
22
|
-
const saveApp = (state) => {
|
|
23
|
-
const { login, mfe, pick, theme, themes } = state;
|
|
24
|
-
const app = mfe === undefined ? null : mfe;
|
|
25
|
-
bag.store(DATA, { login, mfe: app, pick, theme, themes });
|
|
26
|
-
};
|
|
27
33
|
|
|
28
34
|
const appendToMap = (map, propName, value) => {
|
|
29
35
|
const items = map.get(propName);
|
|
@@ -216,6 +222,7 @@ const createStore = (defaultState, shouldUpdate) => {
|
|
|
216
222
|
return map;
|
|
217
223
|
};
|
|
218
224
|
|
|
225
|
+
const APP_DB = bag;
|
|
219
226
|
const themes = [
|
|
220
227
|
'light',
|
|
221
228
|
'dark',
|
|
@@ -247,7 +254,7 @@ const clearStore = (login = false) => {
|
|
|
247
254
|
state.dealers = [];
|
|
248
255
|
};
|
|
249
256
|
// --------------------------------------------------------[ processing ]
|
|
250
|
-
const processApp = (next) => {
|
|
257
|
+
const processApp = (next, save = false) => {
|
|
251
258
|
state.mfe = next;
|
|
252
259
|
if (next) {
|
|
253
260
|
state.login = false;
|
|
@@ -255,19 +262,26 @@ const processApp = (next) => {
|
|
|
255
262
|
else {
|
|
256
263
|
state.login = true;
|
|
257
264
|
}
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
const processLogin = (next) => {
|
|
261
|
-
state.login = next;
|
|
262
|
-
saveApp(state);
|
|
265
|
+
if (save)
|
|
266
|
+
APP_DB.store(state);
|
|
263
267
|
};
|
|
264
|
-
const processPick = (next) => {
|
|
268
|
+
const processPick = (next, save = false) => {
|
|
265
269
|
state.pick = next;
|
|
266
|
-
|
|
270
|
+
if (save)
|
|
271
|
+
APP_DB.store(state);
|
|
267
272
|
};
|
|
268
|
-
const processTheme = (next) => {
|
|
273
|
+
const processTheme = (next, save = false) => {
|
|
269
274
|
state.theme = next;
|
|
270
|
-
|
|
275
|
+
if (save)
|
|
276
|
+
APP_DB.store(state);
|
|
277
|
+
};
|
|
278
|
+
const initStore = (data) => {
|
|
279
|
+
const { dealers, login, mfe, pick, theme } = data;
|
|
280
|
+
state.dealers = dealers;
|
|
281
|
+
state.login = login;
|
|
282
|
+
state.mfe = mfe;
|
|
283
|
+
state.pick = pick;
|
|
284
|
+
state.theme = theme;
|
|
271
285
|
};
|
|
272
286
|
// --------------------------------------------------------[ actions ]
|
|
273
287
|
const fetchData = async () => {
|
|
@@ -275,42 +289,35 @@ const fetchData = async () => {
|
|
|
275
289
|
const json = await response.json();
|
|
276
290
|
state.dealers = json.dealers;
|
|
277
291
|
console.log('-- data:', state.dealers);
|
|
292
|
+
APP_DB.store(state);
|
|
278
293
|
};
|
|
279
294
|
const initApp = () => {
|
|
280
295
|
clearStore(true);
|
|
281
296
|
// this retrieves the last data we stored in the bag...
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
if (theme) {
|
|
287
|
-
processTheme(theme);
|
|
288
|
-
if (login !== undefined) {
|
|
289
|
-
processLogin(login);
|
|
297
|
+
APP_DB.get()
|
|
298
|
+
.then((value) => {
|
|
299
|
+
if (value) {
|
|
300
|
+
initStore(value);
|
|
290
301
|
}
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
processApp(mfe);
|
|
302
|
+
else {
|
|
303
|
+
fetchData();
|
|
294
304
|
}
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
}
|
|
299
|
-
else {
|
|
300
|
-
saveApp(state);
|
|
301
|
-
}
|
|
305
|
+
})
|
|
306
|
+
.catch(reason => {
|
|
307
|
+
console.log(reason);
|
|
308
|
+
});
|
|
302
309
|
};
|
|
303
310
|
const refresh = () => {
|
|
304
|
-
|
|
311
|
+
fetchData();
|
|
305
312
|
};
|
|
306
313
|
const updateApp = (mfe) => {
|
|
307
|
-
processApp(mfe);
|
|
314
|
+
processApp(mfe, true);
|
|
308
315
|
};
|
|
309
316
|
const updatePick = (pick) => {
|
|
310
|
-
processPick(pick);
|
|
317
|
+
processPick(pick, true);
|
|
311
318
|
};
|
|
312
319
|
const updateTheme = (theme) => {
|
|
313
|
-
processTheme(theme);
|
|
320
|
+
processTheme(theme, true);
|
|
314
321
|
};
|
|
315
322
|
const actions = {
|
|
316
323
|
initApp,
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Component, h } from '@stencil/core';
|
|
2
|
-
import { state } from '../../utils';
|
|
3
|
-
import { ProtoButton } from '../functional/';
|
|
2
|
+
import { actions, state } from '../../utils';
|
|
4
3
|
export class ProtoHome {
|
|
5
4
|
render() {
|
|
6
5
|
const { dealers, pick } = state;
|
|
@@ -18,7 +17,7 @@ export class ProtoHome {
|
|
|
18
17
|
"Welcome... [ ",
|
|
19
18
|
name,
|
|
20
19
|
" ]"))),
|
|
21
|
-
h(
|
|
20
|
+
h("button", { class: "btn btn-primary", onClick: () => actions.refresh() }, "Refresh"),
|
|
22
21
|
progress ? (h("proto-dial", { class: "mt-4", value: progress })) : ('')));
|
|
23
22
|
}
|
|
24
23
|
static get is() { return "proto-home"; }
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { get, set, createStore } from 'idb-keyval';
|
|
2
|
+
const KEY = 'app-data';
|
|
3
|
+
const STORE = createStore('proto-daisy-ui-db', 'proto-store');
|
|
4
|
+
// idb-keyval implementation...
|
|
5
|
+
const asyncBag = {
|
|
6
|
+
get: async () => {
|
|
7
|
+
return await get(KEY, STORE);
|
|
8
|
+
},
|
|
9
|
+
store: async (state) => {
|
|
10
|
+
const { login, mfe, pick, theme, themes, dealers } = state;
|
|
11
|
+
const app = mfe === undefined ? null : mfe;
|
|
12
|
+
const data = { login, mfe: app, pick, theme, themes, dealers };
|
|
13
|
+
await set(KEY, data, STORE);
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
export { asyncBag };
|
|
17
|
+
export default asyncBag;
|
|
@@ -1,24 +1,30 @@
|
|
|
1
|
-
const
|
|
2
|
-
const
|
|
1
|
+
const APP = 'proto-daisy-ui';
|
|
2
|
+
const KEY = 'app-data';
|
|
3
|
+
const promisedParseJSON = (json) => {
|
|
4
|
+
return new Promise((resolve, reject) => {
|
|
5
|
+
try {
|
|
6
|
+
resolve(JSON.parse(json));
|
|
7
|
+
}
|
|
8
|
+
catch (e) {
|
|
9
|
+
reject(e);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
// localStorage implementation...
|
|
3
14
|
const bag = {
|
|
4
|
-
get: (
|
|
5
|
-
const key =
|
|
15
|
+
get: () => {
|
|
16
|
+
const key = `${APP}-${KEY}`;
|
|
6
17
|
const json = localStorage.getItem(key);
|
|
7
|
-
return
|
|
18
|
+
return promisedParseJSON(json);
|
|
8
19
|
},
|
|
9
|
-
store: (
|
|
10
|
-
const
|
|
11
|
-
const
|
|
20
|
+
store: (state) => {
|
|
21
|
+
const { login, mfe, pick, theme, themes, dealers } = state;
|
|
22
|
+
const app = mfe === undefined ? null : mfe;
|
|
23
|
+
const data = { login, mfe: app, pick, theme, themes, dealers };
|
|
24
|
+
const key = `${APP}-${KEY}`;
|
|
25
|
+
const json = JSON.stringify(data);
|
|
12
26
|
localStorage.setItem(key, json);
|
|
13
27
|
},
|
|
14
28
|
};
|
|
15
|
-
|
|
16
|
-
return bag.get(DATA) || {};
|
|
17
|
-
};
|
|
18
|
-
const saveApp = (state) => {
|
|
19
|
-
const { login, mfe, pick, theme, themes } = state;
|
|
20
|
-
const app = mfe === undefined ? null : mfe;
|
|
21
|
-
bag.store(DATA, { login, mfe: app, pick, theme, themes });
|
|
22
|
-
};
|
|
23
|
-
export { getApp, saveApp };
|
|
29
|
+
export { bag };
|
|
24
30
|
export default bag;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { createStore } from '@stencil/store';
|
|
2
|
-
import {
|
|
2
|
+
import { bag } from './bag';
|
|
3
|
+
const APP_DB = bag;
|
|
3
4
|
const themes = [
|
|
4
5
|
'light',
|
|
5
6
|
'dark',
|
|
@@ -31,7 +32,7 @@ const clearStore = (login = false) => {
|
|
|
31
32
|
state.dealers = [];
|
|
32
33
|
};
|
|
33
34
|
// --------------------------------------------------------[ processing ]
|
|
34
|
-
const processApp = (next) => {
|
|
35
|
+
const processApp = (next, save = false) => {
|
|
35
36
|
state.mfe = next;
|
|
36
37
|
if (next) {
|
|
37
38
|
state.login = false;
|
|
@@ -39,19 +40,26 @@ const processApp = (next) => {
|
|
|
39
40
|
else {
|
|
40
41
|
state.login = true;
|
|
41
42
|
}
|
|
42
|
-
|
|
43
|
+
if (save)
|
|
44
|
+
APP_DB.store(state);
|
|
43
45
|
};
|
|
44
|
-
const
|
|
45
|
-
state.login = next;
|
|
46
|
-
saveApp(state);
|
|
47
|
-
};
|
|
48
|
-
const processPick = (next) => {
|
|
46
|
+
const processPick = (next, save = false) => {
|
|
49
47
|
state.pick = next;
|
|
50
|
-
|
|
48
|
+
if (save)
|
|
49
|
+
APP_DB.store(state);
|
|
51
50
|
};
|
|
52
|
-
const processTheme = (next) => {
|
|
51
|
+
const processTheme = (next, save = false) => {
|
|
53
52
|
state.theme = next;
|
|
54
|
-
|
|
53
|
+
if (save)
|
|
54
|
+
APP_DB.store(state);
|
|
55
|
+
};
|
|
56
|
+
const initStore = (data) => {
|
|
57
|
+
const { dealers, login, mfe, pick, theme } = data;
|
|
58
|
+
state.dealers = dealers;
|
|
59
|
+
state.login = login;
|
|
60
|
+
state.mfe = mfe;
|
|
61
|
+
state.pick = pick;
|
|
62
|
+
state.theme = theme;
|
|
55
63
|
};
|
|
56
64
|
// --------------------------------------------------------[ actions ]
|
|
57
65
|
const fetchData = async () => {
|
|
@@ -59,42 +67,35 @@ const fetchData = async () => {
|
|
|
59
67
|
const json = await response.json();
|
|
60
68
|
state.dealers = json.dealers;
|
|
61
69
|
console.log('-- data:', state.dealers);
|
|
70
|
+
APP_DB.store(state);
|
|
62
71
|
};
|
|
63
72
|
const initApp = () => {
|
|
64
73
|
clearStore(true);
|
|
65
74
|
// this retrieves the last data we stored in the bag...
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
if (theme) {
|
|
71
|
-
processTheme(theme);
|
|
72
|
-
if (login !== undefined) {
|
|
73
|
-
processLogin(login);
|
|
74
|
-
}
|
|
75
|
-
if (login === false && mfe) {
|
|
76
|
-
console.log('-- app:', mfe);
|
|
77
|
-
processApp(mfe);
|
|
75
|
+
APP_DB.get()
|
|
76
|
+
.then((value) => {
|
|
77
|
+
if (value) {
|
|
78
|
+
initStore(value);
|
|
78
79
|
}
|
|
79
|
-
|
|
80
|
-
|
|
80
|
+
else {
|
|
81
|
+
fetchData();
|
|
81
82
|
}
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
}
|
|
83
|
+
})
|
|
84
|
+
.catch(reason => {
|
|
85
|
+
console.log(reason);
|
|
86
|
+
});
|
|
86
87
|
};
|
|
87
88
|
const refresh = () => {
|
|
88
|
-
|
|
89
|
+
fetchData();
|
|
89
90
|
};
|
|
90
91
|
const updateApp = (mfe) => {
|
|
91
|
-
processApp(mfe);
|
|
92
|
+
processApp(mfe, true);
|
|
92
93
|
};
|
|
93
94
|
const updatePick = (pick) => {
|
|
94
|
-
processPick(pick);
|
|
95
|
+
processPick(pick, true);
|
|
95
96
|
};
|
|
96
97
|
const updateTheme = (theme) => {
|
|
97
|
-
processTheme(theme);
|
|
98
|
+
processTheme(theme, true);
|
|
98
99
|
};
|
|
99
100
|
const actions = {
|
|
100
101
|
initApp,
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { s as state } from './store.js';
|
|
1
|
+
import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
|
|
2
|
+
import { a as actions, s as state } from './store.js';
|
|
3
3
|
import { d as defineCustomElement$2 } from './proto-dial2.js';
|
|
4
4
|
|
|
5
|
-
const ProtoButton = (_props, children) => {
|
|
6
|
-
return h("button", { class: "btn btn-primary" }, children);
|
|
7
|
-
};
|
|
8
|
-
|
|
9
5
|
const protoHomeCss = "";
|
|
10
6
|
|
|
11
7
|
const ProtoHome$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
@@ -20,7 +16,7 @@ const ProtoHome$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
20
16
|
const dealer = dealers[pick];
|
|
21
17
|
const { name, stats } = dealer;
|
|
22
18
|
const { progress } = stats;
|
|
23
|
-
return (h("div", { class: "mr-8 flex flex-col flex-nowrap items-start gap-2" }, h("div", { class: "alert alert-info mb-4 items-start shadow-lg" }, h("div", null, h("svg", { fill: "none", viewBox: "0 0 24 24", class: "h-6 w-6 flex-shrink-0 stroke-current" }, h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", d: "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" })), h("span", null, "Welcome... [ ", name, " ]"))), h(
|
|
19
|
+
return (h("div", { class: "mr-8 flex flex-col flex-nowrap items-start gap-2" }, h("div", { class: "alert alert-info mb-4 items-start shadow-lg" }, h("div", null, h("svg", { fill: "none", viewBox: "0 0 24 24", class: "h-6 w-6 flex-shrink-0 stroke-current" }, h("path", { "stroke-linecap": "round", "stroke-linejoin": "round", "stroke-width": "2", d: "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" })), h("span", null, "Welcome... [ ", name, " ]"))), h("button", { class: "btn btn-primary", onClick: () => actions.refresh() }, "Refresh"), progress ? (h("proto-dial", { class: "mt-4", value: progress })) : ('')));
|
|
24
20
|
}
|
|
25
21
|
static get style() { return protoHomeCss; }
|
|
26
22
|
}, [0, "proto-home"]);
|