@epfl-sti/poesis 0.1.4 → 0.1.5
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/components/ui/FileUpload.d.ts +27 -0
- package/dist/components/ui/FileUpload.d.ts.map +1 -0
- package/dist/components/ui/ProgressBar.d.ts +30 -0
- package/dist/components/ui/ProgressBar.d.ts.map +1 -0
- package/dist/components/ui/index.d.ts +4 -2
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/lib.d.ts +8 -8
- package/dist/lib.d.ts.map +1 -1
- package/dist/poesis.js +644 -455
- package/dist/poesis.js.map +1 -1
- package/package.json +1 -1
package/dist/poesis.js
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
(function(){"use strict";try{if(typeof document<"u"){var r=document.createElement("style");r.appendChild(document.createTextNode(`@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-xl:36rem;--container-6xl:72rem;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 4px 16px #0000001a;--shadow-xl:0 8px 32px #0000001f;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-epfl-red:red;--color-epfl-red-dark:#b51f1f;--color-epfl-leman:#00a79f;--color-epfl-canard:#007480;--color-epfl-canard-dark:#004248;--color-primary:var(--action-primary);--color-primary-hover:var(--action-primary-hover);--color-bg-primary:var(--bg-primary);--color-bg-secondary:var(--bg-secondary);--color-bg-tertiary:var(--bg-tertiary);--color-border:var(--border-default);--color-border-strong:var(--border-strong);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-muted:var(--text-muted);--color-success:var(--semantic-success);--color-success-bg:var(--semantic-success-bg);--color-warning:var(--semantic-warning);--color-warning-bg:var(--semantic-warning-bg);--color-error:var(--semantic-error);--color-error-bg:var(--semantic-error-bg);--color-info:var(--semantic-info);--color-info-bg:var(--semantic-info-bg);--radius-full:9999px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--text-h1:2rem;--text-h1--line-height:1.2;--text-h2:1.5rem;--text-h2--line-height:1.3;--text-h3:1.25rem;--text-h3--line-height:1.4;--text-body:.9375rem;--text-body--line-height:1.5;--text-small:.8125rem;--text-small--line-height:1.5;--text-caption:.75rem;--text-caption--line-height:1.4}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.right-0{right:calc(var(--spacing) * 0)}.right-lg{right:var(--spacing-lg)}.bottom-lg{bottom:var(--spacing-lg)}.left-0{left:calc(var(--spacing) * 0)}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-lg{margin-top:var(--spacing-lg)}.mt-md{margin-top:var(--spacing-md)}.mt-xs{margin-top:var(--spacing-xs)}.mr-lg{margin-right:var(--spacing-lg)}.mr-sm{margin-right:var(--spacing-sm)}.-mb-px{margin-bottom:-1px}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-md{margin-bottom:var(--spacing-md)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-xs{margin-bottom:var(--spacing-xs)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-14{width:calc(var(--spacing) * 14);height:calc(var(--spacing) * 14)}.size-16{width:calc(var(--spacing) * 16);height:calc(var(--spacing) * 16)}.size-20{width:calc(var(--spacing) * 20);height:calc(var(--spacing) * 20)}.size-full{width:100%;height:100%}.h-0\\.5{height:calc(var(--spacing) * .5)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-20{height:calc(var(--spacing) * 20)}.h-64{height:calc(var(--spacing) * 64)}.h-96{height:calc(var(--spacing) * 96)}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-7{width:calc(var(--spacing) * 7)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-16{width:calc(var(--spacing) * 16)}.w-40{width:calc(var(--spacing) * 40)}.w-48{width:calc(var(--spacing) * 48)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-80{width:calc(var(--spacing) * 80)}.w-\\[4px\\]{width:4px}.w-\\[8px\\]{width:8px}.w-\\[16px\\]{width:16px}.w-\\[24px\\]{width:24px}.w-\\[32px\\]{width:32px}.w-\\[48px\\]{width:48px}.w-full{width:100%}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\\[24rem\\]{max-width:24rem}.max-w-\\[32rem\\]{max-width:32rem}.max-w-\\[42rem\\]{max-width:42rem}.max-w-\\[600px\\]{max-width:600px}.max-w-\\[var\\(--container-6xl\\)\\]{max-width:var(--container-6xl)}.max-w-\\[var\\(--container-md\\)\\]{max-width:var(--container-md)}.max-w-\\[var\\(--container-xl\\)\\]{max-width:var(--container-xl)}.max-w-\\[var\\(--container-xs\\)\\]{max-width:var(--container-xs)}.max-w-full{max-width:100%}.max-w-md{max-width:var(--spacing-md)}.max-w-screen{max-width:100vw}.max-w-sm{max-width:var(--spacing-sm)}.max-w-xl{max-width:var(--spacing-xl)}.max-w-xs{max-width:var(--spacing-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\\[10rem\\]{min-width:10rem}.min-w-\\[500px\\]{min-width:500px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.-rotate-90{rotate:-90deg}.rotate-45{rotate:45deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-dialog-in{animation:.2s ease-out dialog-in}.animate-floating-in{animation:.15s ease-out floating-in}.animate-slide-in{animation:.25s ease-out slide-in}.animate-spin{animation:var(--animate-spin)}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.resize-y{resize:vertical}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2xl{gap:var(--spacing-2xl)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-lg{gap:var(--spacing-lg)}.gap-md{gap:var(--spacing-md)}.gap-px{gap:1px}.gap-sm{gap:var(--spacing-sm)}.gap-xl{gap:var(--spacing-xl)}.gap-xs{gap:var(--spacing-xs)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:var(--color-border)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.\\!rounded-lg{border-radius:var(--radius-lg)!important}.\\!rounded-md{border-radius:var(--radius-md)!important}.\\!rounded-sm{border-radius:var(--radius-sm)!important}.rounded{border-radius:.25rem}.rounded-full{border-radius:var(--radius-full)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.\\!border{border-style:var(--tw-border-style)!important;border-width:1px!important}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.\\!border-border{border-color:var(--color-border)!important}.\\!border-epfl-canard{border-color:var(--color-epfl-canard)!important}.\\!border-error{border-color:var(--color-error)!important}.\\!border-primary{border-color:var(--color-primary)!important}.border-border{border-color:var(--color-border)}.border-border-strong{border-color:var(--color-border-strong)}.border-error,.border-error\\/30{border-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.border-error\\/30{border-color:color-mix(in oklab,var(--color-error) 30%,transparent)}}.border-info\\/30{border-color:var(--color-info)}@supports (color:color-mix(in lab,red,red)){.border-info\\/30{border-color:color-mix(in oklab,var(--color-info) 30%,transparent)}}.border-primary{border-color:var(--color-primary)}.border-success\\/30{border-color:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.border-success\\/30{border-color:color-mix(in oklab,var(--color-success) 30%,transparent)}}.border-transparent{border-color:#0000}.border-warning\\/30{border-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\\/30{border-color:color-mix(in oklab,var(--color-warning) 30%,transparent)}}.\\!bg-bg-tertiary{background-color:var(--color-bg-tertiary)!important}.\\!bg-epfl-canard{background-color:var(--color-epfl-canard)!important}.\\!bg-primary{background-color:var(--color-primary)!important}.bg-bg-primary{background-color:var(--color-bg-primary)}.bg-bg-secondary{background-color:var(--color-bg-secondary)}.bg-bg-tertiary,.bg-bg-tertiary\\/50{background-color:var(--color-bg-tertiary)}@supports (color:color-mix(in lab,red,red)){.bg-bg-tertiary\\/50{background-color:color-mix(in oklab,var(--color-bg-tertiary) 50%,transparent)}}.bg-black\\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\\/40{background-color:color-mix(in oklab,var(--color-black) 40%,transparent)}}.bg-black\\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-border{background-color:var(--color-border)}.bg-border-strong{background-color:var(--color-border-strong)}.bg-epfl-canard{background-color:var(--color-epfl-canard)}.bg-epfl-canard-dark{background-color:var(--color-epfl-canard-dark)}.bg-epfl-leman{background-color:var(--color-epfl-leman)}.bg-epfl-red{background-color:var(--color-epfl-red)}.bg-epfl-red-dark{background-color:var(--color-epfl-red-dark)}.bg-error{background-color:var(--color-error)}.bg-error-bg{background-color:var(--color-error-bg)}.bg-info{background-color:var(--color-info)}.bg-info-bg{background-color:var(--color-info-bg)}.bg-primary,.bg-primary\\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\\/10{background-color:color-mix(in oklab,var(--color-primary) 10%,transparent)}}.bg-success{background-color:var(--color-success)}.bg-success-bg{background-color:var(--color-success-bg)}.bg-text-muted{background-color:var(--color-text-muted)}.bg-text-primary{background-color:var(--color-text-primary)}.bg-warning{background-color:var(--color-warning)}.bg-warning-bg{background-color:var(--color-warning-bg)}.object-cover{object-fit:cover}.p-0\\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.p-2xl{padding:var(--spacing-2xl)}.p-16{padding:calc(var(--spacing) * 16)}.p-lg{padding:var(--spacing-lg)}.p-md{padding:var(--spacing-md)}.p-sm{padding:var(--spacing-sm)}.p-xl{padding:var(--spacing-xl)}.p-xs{padding:var(--spacing-xs)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-lg{padding-inline:var(--spacing-lg)}.px-md{padding-inline:var(--spacing-md)}.px-sm{padding-inline:var(--spacing-sm)}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\\.5{padding-block:calc(var(--spacing) * 2.5)}.py-2xl{padding-block:var(--spacing-2xl)}.py-lg{padding-block:var(--spacing-lg)}.py-md{padding-block:var(--spacing-md)}.py-sm{padding-block:var(--spacing-sm)}.py-xl{padding-block:var(--spacing-xl)}.py-xs{padding-block:var(--spacing-xs)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-14{padding-top:calc(var(--spacing) * 14)}.pt-xl{padding-top:var(--spacing-xl)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pr-11{padding-right:calc(var(--spacing) * 11)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-6{padding-left:calc(var(--spacing) * 6)}.pl-8{padding-left:calc(var(--spacing) * 8)}.pl-10{padding-left:calc(var(--spacing) * 10)}.pl-11{padding-left:calc(var(--spacing) * 11)}.pl-14{padding-left:calc(var(--spacing) * 14)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-body{font-size:var(--text-body);line-height:var(--tw-leading,var(--text-body--line-height))}.text-caption{font-size:var(--text-caption);line-height:var(--tw-leading,var(--text-caption--line-height))}.text-h1{font-size:var(--text-h1);line-height:var(--tw-leading,var(--text-h1--line-height))}.text-h2{font-size:var(--text-h2);line-height:var(--tw-leading,var(--text-h2--line-height))}.text-h3{font-size:var(--text-h3);line-height:var(--tw-leading,var(--text-h3--line-height))}.text-small{font-size:var(--text-small);line-height:var(--tw-leading,var(--text-small--line-height))}.leading-\\[1\\.2\\]{--tw-leading:1.2;line-height:1.2}.leading-\\[1\\.3\\]{--tw-leading:1.3;line-height:1.3}.leading-\\[1\\.4\\]{--tw-leading:1.4;line-height:1.4}.leading-\\[1\\.5\\]{--tw-leading:1.5;line-height:1.5}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.whitespace-nowrap{white-space:nowrap}.\\!text-white{color:var(--color-white)!important}.text-bg-primary{color:var(--color-bg-primary)}.text-epfl-canard{color:var(--color-epfl-canard)}.text-epfl-leman{color:var(--color-epfl-leman)}.text-epfl-red{color:var(--color-epfl-red)}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-text-muted{color:var(--color-text-muted)}.text-text-primary{color:var(--color-text-primary)}.text-text-secondary{color:var(--color-text-secondary)}.text-warning{color:var(--color-warning)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-dotted{text-decoration-style:dotted}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.\\!shadow-lg{--tw-shadow:0 4px 16px var(--tw-shadow-color,#0000001a)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}.\\!shadow-sm{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000000f)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}.shadow-lg{--tw-shadow:0 4px 16px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 2px 8px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 8px 32px var(--tw-shadow-color,#0000001f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.\\!ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}.\\!ring-epfl-canard{--tw-ring-color:var(--color-epfl-canard)!important}.\\!ring-primary{--tw-ring-color:var(--color-primary)!important}.transition-\\[width\\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.peer-checked\\:bg-primary:is(:where(.peer):checked~*){background-color:var(--color-primary)}.peer-focus-visible\\:ring-2:is(:where(.peer):focus-visible~*){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.peer-focus-visible\\:ring-primary:is(:where(.peer):focus-visible~*){--tw-ring-color:var(--color-primary)}.peer-focus-visible\\:ring-offset-2:is(:where(.peer):focus-visible~*){--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.peer-focus-visible\\:ring-offset-bg-primary:is(:where(.peer):focus-visible~*){--tw-ring-offset-color:var(--color-bg-primary)}.peer-disabled\\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.placeholder\\:text-text-muted::placeholder{color:var(--color-text-muted)}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:top-0\\.5:after{content:var(--tw-content);top:calc(var(--spacing) * .5)}.after\\:left-0\\.5:after{content:var(--tw-content);left:calc(var(--spacing) * .5)}.after\\:size-5:after{content:var(--tw-content);width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.after\\:rounded-full:after{content:var(--tw-content);border-radius:var(--radius-full)}.after\\:bg-white:after{content:var(--tw-content);background-color:var(--color-white)}.after\\:shadow-sm:after{content:var(--tw-content);--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.after\\:transition-transform:after{content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.after\\:content-\\[\\'\\'\\]:after{--tw-content:"";content:var(--tw-content)}.peer-checked\\:after\\:translate-x-5:is(:where(.peer):checked~*):after{content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 5);translate:var(--tw-translate-x) var(--tw-translate-y)}.last\\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.checked\\:border-\\[5px\\]:checked{border-style:var(--tw-border-style);border-width:5px}.checked\\:border-primary:checked{border-color:var(--color-primary)}.checked\\:bg-primary:checked{background-color:var(--color-primary)}.checked\\:bg-\\[url\\(\\'data\\:image\\/svg\\+xml\\,\\%3Csvg\\%20viewBox\\%3D\\%220\\%200\\%2016\\%2016\\%22\\%20fill\\%3D\\%22white\\%22\\%20xmlns\\%3D\\%22http\\%3A\\%2F\\%2Fwww\\.w3\\.org\\%2F2000\\%2Fsvg\\%22\\%3E\\%3Cpath\\%20d\\%3D\\%22M12\\.207\\%204\\.793a1\\%201\\%200\\%20010\\%201\\.414l-5\\%205a1\\%201\\%200\\%2001-1\\.414\\%200l-2-2a1\\%201\\%200\\%20011\\.414-1\\.414L6\\.5\\%209\\.086l4\\.293-4\\.293a1\\%201\\%200\\%20011\\.414\\%200z\\%22\\%2F\\%3E\\%3C\\%2Fsvg\\%3E\\'\\)\\]:checked{background-image:url(data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22white%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.207%204.793a1%201%200%20010%201.414l-5%205a1%201%200%2001-1.414%200l-2-2a1%201%200%20011.414-1.414L6.5%209.086l4.293-4.293a1%201%200%20011.414%200z%22%2F%3E%3C%2Fsvg%3E)}.checked\\:bg-center:checked{background-position:50%}.checked\\:bg-no-repeat:checked{background-repeat:no-repeat}.indeterminate\\:border-primary:indeterminate{border-color:var(--color-primary)}.indeterminate\\:bg-primary:indeterminate{background-color:var(--color-primary)}.indeterminate\\:bg-\\[url\\(\\'data\\:image\\/svg\\+xml\\,\\%3Csvg\\%20viewBox\\%3D\\%220\\%200\\%2016\\%2016\\%22\\%20fill\\%3D\\%22white\\%22\\%20xmlns\\%3D\\%22http\\%3A\\%2F\\%2Fwww\\.w3\\.org\\%2F2000\\%2Fsvg\\%22\\%3E\\%3Crect\\%20x\\%3D\\%223\\%22\\%20y\\%3D\\%227\\%22\\%20width\\%3D\\%2210\\%22\\%20height\\%3D\\%222\\%22\\%20rx\\%3D\\%221\\%22\\%2F\\%3E\\%3C\\%2Fsvg\\%3E\\'\\)\\]:indeterminate{background-image:url(data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22white%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Crect%20x%3D%223%22%20y%3D%227%22%20width%3D%2210%22%20height%3D%222%22%20rx%3D%221%22%2F%3E%3C%2Fsvg%3E)}.indeterminate\\:bg-center:indeterminate{background-position:50%}.indeterminate\\:bg-no-repeat:indeterminate{background-repeat:no-repeat}@media(hover:hover){.hover\\:border-border-strong:hover{border-color:var(--color-border-strong)}.hover\\:bg-bg-tertiary:hover,.hover\\:bg-bg-tertiary\\/70:hover{background-color:var(--color-bg-tertiary)}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-bg-tertiary\\/70:hover{background-color:color-mix(in oklab,var(--color-bg-tertiary) 70%,transparent)}}.hover\\:bg-error-bg:hover{background-color:var(--color-error-bg)}.hover\\:bg-error\\/80:hover{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-error\\/80:hover{background-color:color-mix(in oklab,var(--color-error) 80%,transparent)}}.hover\\:bg-primary-hover:hover{background-color:var(--color-primary-hover)}.hover\\:text-text-primary:hover{color:var(--color-text-primary)}.hover\\:text-text-secondary:hover{color:var(--color-text-secondary)}.hover\\:opacity-90:hover{opacity:.9}}.focus\\:border-error:focus{border-color:var(--color-error)}.focus\\:border-primary:focus{border-color:var(--color-primary)}.focus\\:bg-bg-tertiary:focus{background-color:var(--color-bg-tertiary)}.focus\\:bg-error-bg:focus{background-color:var(--color-error-bg)}.focus\\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\\:ring-error:focus{--tw-ring-color:var(--color-error)}.focus\\:ring-primary:focus{--tw-ring-color:var(--color-primary)}.focus-visible\\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\\:ring-error:focus-visible{--tw-ring-color:var(--color-error)}.focus-visible\\:ring-primary:focus-visible{--tw-ring-color:var(--color-primary)}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\\:ring-offset-bg-primary:focus-visible{--tw-ring-offset-color:var(--color-bg-primary)}.focus-visible\\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-bg-secondary:disabled{background-color:var(--color-bg-secondary)}.disabled\\:opacity-50:disabled{opacity:.5}@media(min-width:40rem){.sm\\:col-span-2{grid-column:span 2/span 2}.sm\\:w-1\\/3{width:33.3333%}.sm\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\\:flex-row{flex-direction:row}.sm\\:gap-lg{gap:var(--spacing-lg)}}@media(min-width:48rem){.md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:64rem){.lg\\:flex{display:flex}.lg\\:hidden{display:none}.lg\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\\:px-lg{padding-inline:var(--spacing-lg)}}.\\[\\&\\>svg\\]\\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\\[\\&\\>svg\\]\\:size-5>svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}}:root{--bg-primary:#fff;--bg-secondary:#f5f5f5;--bg-tertiary:#e6e6e6;--border-default:#d5d5d5;--border-strong:#c1c1c1;--text-primary:#212121;--text-secondary:#707070;--text-muted:#8e8e8e;--semantic-success:#1b874b;--semantic-success-bg:#e8f5e9;--semantic-warning:#d4860a;--semantic-warning-bg:#fff3e0;--semantic-error:#d32f2f;--semantic-error-bg:#ffebee;--semantic-info:#1976d2;--semantic-info-bg:#e3f2fd;--action-primary:#007480;--action-primary-hover:#004248}.dark{--bg-primary:#1a1a1a;--bg-secondary:#242424;--bg-tertiary:#2e2e2e;--border-default:#3a3a3a;--border-strong:#505050;--text-primary:#f0f0f0;--text-secondary:#a0a0a0;--text-muted:#707070;--semantic-success:#34d37a;--semantic-success-bg:#1a2e1a;--semantic-warning:#ffad33;--semantic-warning-bg:#2e2410;--semantic-error:#ff6b6b;--semantic-error-bg:#2e1515;--semantic-info:#64b5f6;--semantic-info-bg:#152538;--action-primary:#009ba6;--action-primary-hover:#007480;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 2px 8px #0006;--shadow-lg:0 4px 16px #00000080;--shadow-xl:0 8px 32px #0009}@keyframes slide-in{0%{opacity:0;transform:translate(1rem)}to{opacity:1;transform:translate(0)}}@keyframes dialog-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes floating-in{0%{opacity:0}to{opacity:1}}body{font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--text-body--line-height);color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}`)),document.head.appendChild(r)}}catch(a){console.error("vite-plugin-css-injected-by-js",a)}})();
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { SunFill as
|
|
6
|
-
import { createPortal as
|
|
7
|
-
import { useFloating as
|
|
8
|
-
import
|
|
9
|
-
const
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var r=document.createElement("style");r.appendChild(document.createTextNode(`@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-xl:36rem;--container-6xl:72rem;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 4px 16px #0000001a;--shadow-xl:0 8px 32px #0000001f;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-epfl-red:red;--color-epfl-red-dark:#b51f1f;--color-epfl-leman:#00a79f;--color-epfl-canard:#007480;--color-epfl-canard-dark:#004248;--color-primary:var(--action-primary);--color-primary-hover:var(--action-primary-hover);--color-bg-primary:var(--bg-primary);--color-bg-secondary:var(--bg-secondary);--color-bg-tertiary:var(--bg-tertiary);--color-border:var(--border-default);--color-border-strong:var(--border-strong);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-muted:var(--text-muted);--color-success:var(--semantic-success);--color-success-bg:var(--semantic-success-bg);--color-warning:var(--semantic-warning);--color-warning-bg:var(--semantic-warning-bg);--color-error:var(--semantic-error);--color-error-bg:var(--semantic-error-bg);--color-info:var(--semantic-info);--color-info-bg:var(--semantic-info-bg);--radius-full:9999px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--text-h1:2rem;--text-h1--line-height:1.2;--text-h2:1.5rem;--text-h2--line-height:1.3;--text-h3:1.25rem;--text-h3--line-height:1.4;--text-body:.9375rem;--text-body--line-height:1.5;--text-small:.8125rem;--text-small--line-height:1.5;--text-caption:.75rem;--text-caption--line-height:1.4}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.right-0{right:calc(var(--spacing) * 0)}.right-lg{right:var(--spacing-lg)}.bottom-lg{bottom:var(--spacing-lg)}.left-0{left:calc(var(--spacing) * 0)}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-lg{margin-top:var(--spacing-lg)}.mt-md{margin-top:var(--spacing-md)}.mt-xs{margin-top:var(--spacing-xs)}.mr-lg{margin-right:var(--spacing-lg)}.mr-sm{margin-right:var(--spacing-sm)}.-mb-px{margin-bottom:-1px}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-md{margin-bottom:var(--spacing-md)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-xs{margin-bottom:var(--spacing-xs)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-14{width:calc(var(--spacing) * 14);height:calc(var(--spacing) * 14)}.size-16{width:calc(var(--spacing) * 16);height:calc(var(--spacing) * 16)}.size-20{width:calc(var(--spacing) * 20);height:calc(var(--spacing) * 20)}.size-full{width:100%;height:100%}.h-0\\.5{height:calc(var(--spacing) * .5)}.h-1\\.5{height:calc(var(--spacing) * 1.5)}.h-2\\.5{height:calc(var(--spacing) * 2.5)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-20{height:calc(var(--spacing) * 20)}.h-64{height:calc(var(--spacing) * 64)}.h-96{height:calc(var(--spacing) * 96)}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.w-7{width:calc(var(--spacing) * 7)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-16{width:calc(var(--spacing) * 16)}.w-40{width:calc(var(--spacing) * 40)}.w-48{width:calc(var(--spacing) * 48)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-80{width:calc(var(--spacing) * 80)}.w-96{width:calc(var(--spacing) * 96)}.w-\\[4px\\]{width:4px}.w-\\[8px\\]{width:8px}.w-\\[16px\\]{width:16px}.w-\\[24px\\]{width:24px}.w-\\[32px\\]{width:32px}.w-\\[48px\\]{width:48px}.w-full{width:100%}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\\[24rem\\]{max-width:24rem}.max-w-\\[32rem\\]{max-width:32rem}.max-w-\\[42rem\\]{max-width:42rem}.max-w-\\[600px\\]{max-width:600px}.max-w-\\[var\\(--container-6xl\\)\\]{max-width:var(--container-6xl)}.max-w-\\[var\\(--container-md\\)\\]{max-width:var(--container-md)}.max-w-\\[var\\(--container-xl\\)\\]{max-width:var(--container-xl)}.max-w-\\[var\\(--container-xs\\)\\]{max-width:var(--container-xs)}.max-w-full{max-width:100%}.max-w-md{max-width:var(--spacing-md)}.max-w-screen{max-width:100vw}.max-w-sm{max-width:var(--spacing-sm)}.max-w-xl{max-width:var(--spacing-xl)}.max-w-xs{max-width:var(--spacing-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\\[10rem\\]{min-width:10rem}.min-w-\\[500px\\]{min-width:500px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.-rotate-90{rotate:-90deg}.rotate-45{rotate:45deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-dialog-in{animation:.2s ease-out dialog-in}.animate-floating-in{animation:.15s ease-out floating-in}.animate-slide-in{animation:.25s ease-out slide-in}.animate-spin{animation:var(--animate-spin)}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.resize-y{resize:vertical}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2xl{gap:var(--spacing-2xl)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-lg{gap:var(--spacing-lg)}.gap-md{gap:var(--spacing-md)}.gap-px{gap:1px}.gap-sm{gap:var(--spacing-sm)}.gap-xl{gap:var(--spacing-xl)}.gap-xs{gap:var(--spacing-xs)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:var(--color-border)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.\\!rounded-lg{border-radius:var(--radius-lg)!important}.\\!rounded-md{border-radius:var(--radius-md)!important}.\\!rounded-sm{border-radius:var(--radius-sm)!important}.rounded{border-radius:.25rem}.rounded-full{border-radius:var(--radius-full)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.\\!border{border-style:var(--tw-border-style)!important;border-width:1px!important}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.\\!border-border{border-color:var(--color-border)!important}.\\!border-epfl-canard{border-color:var(--color-epfl-canard)!important}.\\!border-error{border-color:var(--color-error)!important}.\\!border-primary{border-color:var(--color-primary)!important}.border-border{border-color:var(--color-border)}.border-border-strong{border-color:var(--color-border-strong)}.border-error,.border-error\\/30{border-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.border-error\\/30{border-color:color-mix(in oklab,var(--color-error) 30%,transparent)}}.border-info\\/30{border-color:var(--color-info)}@supports (color:color-mix(in lab,red,red)){.border-info\\/30{border-color:color-mix(in oklab,var(--color-info) 30%,transparent)}}.border-primary{border-color:var(--color-primary)}.border-success\\/30{border-color:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.border-success\\/30{border-color:color-mix(in oklab,var(--color-success) 30%,transparent)}}.border-transparent{border-color:#0000}.border-warning\\/30{border-color:var(--color-warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\\/30{border-color:color-mix(in oklab,var(--color-warning) 30%,transparent)}}.\\!bg-bg-tertiary{background-color:var(--color-bg-tertiary)!important}.\\!bg-epfl-canard{background-color:var(--color-epfl-canard)!important}.\\!bg-primary{background-color:var(--color-primary)!important}.bg-bg-primary{background-color:var(--color-bg-primary)}.bg-bg-secondary{background-color:var(--color-bg-secondary)}.bg-bg-tertiary,.bg-bg-tertiary\\/50{background-color:var(--color-bg-tertiary)}@supports (color:color-mix(in lab,red,red)){.bg-bg-tertiary\\/50{background-color:color-mix(in oklab,var(--color-bg-tertiary) 50%,transparent)}}.bg-black\\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\\/40{background-color:color-mix(in oklab,var(--color-black) 40%,transparent)}}.bg-black\\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-border{background-color:var(--color-border)}.bg-border-strong{background-color:var(--color-border-strong)}.bg-epfl-canard{background-color:var(--color-epfl-canard)}.bg-epfl-canard-dark{background-color:var(--color-epfl-canard-dark)}.bg-epfl-leman{background-color:var(--color-epfl-leman)}.bg-epfl-red{background-color:var(--color-epfl-red)}.bg-epfl-red-dark{background-color:var(--color-epfl-red-dark)}.bg-error{background-color:var(--color-error)}.bg-error-bg{background-color:var(--color-error-bg)}.bg-info{background-color:var(--color-info)}.bg-info-bg{background-color:var(--color-info-bg)}.bg-primary,.bg-primary\\/5{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\\/5{background-color:color-mix(in oklab,var(--color-primary) 5%,transparent)}}.bg-primary\\/10{background-color:var(--color-primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\\/10{background-color:color-mix(in oklab,var(--color-primary) 10%,transparent)}}.bg-success{background-color:var(--color-success)}.bg-success-bg{background-color:var(--color-success-bg)}.bg-text-muted{background-color:var(--color-text-muted)}.bg-text-primary{background-color:var(--color-text-primary)}.bg-warning{background-color:var(--color-warning)}.bg-warning-bg{background-color:var(--color-warning-bg)}.object-cover{object-fit:cover}.p-0\\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.p-2xl{padding:var(--spacing-2xl)}.p-16{padding:calc(var(--spacing) * 16)}.p-lg{padding:var(--spacing-lg)}.p-md{padding:var(--spacing-md)}.p-sm{padding:var(--spacing-sm)}.p-xl{padding:var(--spacing-xl)}.p-xs{padding:var(--spacing-xs)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-lg{padding-inline:var(--spacing-lg)}.px-md{padding-inline:var(--spacing-md)}.px-sm{padding-inline:var(--spacing-sm)}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\\.5{padding-block:calc(var(--spacing) * 2.5)}.py-2xl{padding-block:var(--spacing-2xl)}.py-lg{padding-block:var(--spacing-lg)}.py-md{padding-block:var(--spacing-md)}.py-sm{padding-block:var(--spacing-sm)}.py-xl{padding-block:var(--spacing-xl)}.py-xs{padding-block:var(--spacing-xs)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-14{padding-top:calc(var(--spacing) * 14)}.pt-xl{padding-top:var(--spacing-xl)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pr-11{padding-right:calc(var(--spacing) * 11)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-6{padding-left:calc(var(--spacing) * 6)}.pl-8{padding-left:calc(var(--spacing) * 8)}.pl-10{padding-left:calc(var(--spacing) * 10)}.pl-11{padding-left:calc(var(--spacing) * 11)}.pl-14{padding-left:calc(var(--spacing) * 14)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-body{font-size:var(--text-body);line-height:var(--tw-leading,var(--text-body--line-height))}.text-caption{font-size:var(--text-caption);line-height:var(--tw-leading,var(--text-caption--line-height))}.text-h1{font-size:var(--text-h1);line-height:var(--tw-leading,var(--text-h1--line-height))}.text-h2{font-size:var(--text-h2);line-height:var(--tw-leading,var(--text-h2--line-height))}.text-h3{font-size:var(--text-h3);line-height:var(--tw-leading,var(--text-h3--line-height))}.text-small{font-size:var(--text-small);line-height:var(--tw-leading,var(--text-small--line-height))}.leading-\\[1\\.2\\]{--tw-leading:1.2;line-height:1.2}.leading-\\[1\\.3\\]{--tw-leading:1.3;line-height:1.3}.leading-\\[1\\.4\\]{--tw-leading:1.4;line-height:1.4}.leading-\\[1\\.5\\]{--tw-leading:1.5;line-height:1.5}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.whitespace-nowrap{white-space:nowrap}.\\!text-white{color:var(--color-white)!important}.text-bg-primary{color:var(--color-bg-primary)}.text-epfl-canard{color:var(--color-epfl-canard)}.text-epfl-leman{color:var(--color-epfl-leman)}.text-epfl-red{color:var(--color-epfl-red)}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-text-muted{color:var(--color-text-muted)}.text-text-primary{color:var(--color-text-primary)}.text-text-secondary{color:var(--color-text-secondary)}.text-warning{color:var(--color-warning)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.decoration-dotted{text-decoration-style:dotted}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.\\!shadow-lg{--tw-shadow:0 4px 16px var(--tw-shadow-color,#0000001a)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}.\\!shadow-sm{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000000f)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}.shadow-lg{--tw-shadow:0 4px 16px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 2px 8px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 8px 32px var(--tw-shadow-color,#0000001f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.\\!ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}.\\!ring-epfl-canard{--tw-ring-color:var(--color-epfl-canard)!important}.\\!ring-primary{--tw-ring-color:var(--color-primary)!important}.transition-\\[width\\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.peer-checked\\:bg-primary:is(:where(.peer):checked~*){background-color:var(--color-primary)}.peer-focus-visible\\:ring-2:is(:where(.peer):focus-visible~*){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.peer-focus-visible\\:ring-primary:is(:where(.peer):focus-visible~*){--tw-ring-color:var(--color-primary)}.peer-focus-visible\\:ring-offset-2:is(:where(.peer):focus-visible~*){--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.peer-focus-visible\\:ring-offset-bg-primary:is(:where(.peer):focus-visible~*){--tw-ring-offset-color:var(--color-bg-primary)}.peer-disabled\\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.placeholder\\:text-text-muted::placeholder{color:var(--color-text-muted)}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:top-0\\.5:after{content:var(--tw-content);top:calc(var(--spacing) * .5)}.after\\:left-0\\.5:after{content:var(--tw-content);left:calc(var(--spacing) * .5)}.after\\:size-5:after{content:var(--tw-content);width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.after\\:rounded-full:after{content:var(--tw-content);border-radius:var(--radius-full)}.after\\:bg-white:after{content:var(--tw-content);background-color:var(--color-white)}.after\\:shadow-sm:after{content:var(--tw-content);--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.after\\:transition-transform:after{content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.after\\:content-\\[\\'\\'\\]:after{--tw-content:"";content:var(--tw-content)}.peer-checked\\:after\\:translate-x-5:is(:where(.peer):checked~*):after{content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 5);translate:var(--tw-translate-x) var(--tw-translate-y)}.last\\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.checked\\:border-\\[5px\\]:checked{border-style:var(--tw-border-style);border-width:5px}.checked\\:border-primary:checked{border-color:var(--color-primary)}.checked\\:bg-primary:checked{background-color:var(--color-primary)}.checked\\:bg-\\[url\\(\\'data\\:image\\/svg\\+xml\\,\\%3Csvg\\%20viewBox\\%3D\\%220\\%200\\%2016\\%2016\\%22\\%20fill\\%3D\\%22white\\%22\\%20xmlns\\%3D\\%22http\\%3A\\%2F\\%2Fwww\\.w3\\.org\\%2F2000\\%2Fsvg\\%22\\%3E\\%3Cpath\\%20d\\%3D\\%22M12\\.207\\%204\\.793a1\\%201\\%200\\%20010\\%201\\.414l-5\\%205a1\\%201\\%200\\%2001-1\\.414\\%200l-2-2a1\\%201\\%200\\%20011\\.414-1\\.414L6\\.5\\%209\\.086l4\\.293-4\\.293a1\\%201\\%200\\%20011\\.414\\%200z\\%22\\%2F\\%3E\\%3C\\%2Fsvg\\%3E\\'\\)\\]:checked{background-image:url(data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22white%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.207%204.793a1%201%200%20010%201.414l-5%205a1%201%200%2001-1.414%200l-2-2a1%201%200%20011.414-1.414L6.5%209.086l4.293-4.293a1%201%200%20011.414%200z%22%2F%3E%3C%2Fsvg%3E)}.checked\\:bg-center:checked{background-position:50%}.checked\\:bg-no-repeat:checked{background-repeat:no-repeat}.indeterminate\\:border-primary:indeterminate{border-color:var(--color-primary)}.indeterminate\\:bg-primary:indeterminate{background-color:var(--color-primary)}.indeterminate\\:bg-\\[url\\(\\'data\\:image\\/svg\\+xml\\,\\%3Csvg\\%20viewBox\\%3D\\%220\\%200\\%2016\\%2016\\%22\\%20fill\\%3D\\%22white\\%22\\%20xmlns\\%3D\\%22http\\%3A\\%2F\\%2Fwww\\.w3\\.org\\%2F2000\\%2Fsvg\\%22\\%3E\\%3Crect\\%20x\\%3D\\%223\\%22\\%20y\\%3D\\%227\\%22\\%20width\\%3D\\%2210\\%22\\%20height\\%3D\\%222\\%22\\%20rx\\%3D\\%221\\%22\\%2F\\%3E\\%3C\\%2Fsvg\\%3E\\'\\)\\]:indeterminate{background-image:url(data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22white%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Crect%20x%3D%223%22%20y%3D%227%22%20width%3D%2210%22%20height%3D%222%22%20rx%3D%221%22%2F%3E%3C%2Fsvg%3E)}.indeterminate\\:bg-center:indeterminate{background-position:50%}.indeterminate\\:bg-no-repeat:indeterminate{background-repeat:no-repeat}@media(hover:hover){.hover\\:border-border-strong:hover{border-color:var(--color-border-strong)}.hover\\:border-error:hover{border-color:var(--color-error)}.hover\\:border-primary:hover{border-color:var(--color-primary)}.hover\\:bg-bg-tertiary:hover,.hover\\:bg-bg-tertiary\\/70:hover{background-color:var(--color-bg-tertiary)}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-bg-tertiary\\/70:hover{background-color:color-mix(in oklab,var(--color-bg-tertiary) 70%,transparent)}}.hover\\:bg-error-bg:hover{background-color:var(--color-error-bg)}.hover\\:bg-error\\/80:hover{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.hover\\:bg-error\\/80:hover{background-color:color-mix(in oklab,var(--color-error) 80%,transparent)}}.hover\\:bg-primary-hover:hover{background-color:var(--color-primary-hover)}.hover\\:text-text-primary:hover{color:var(--color-text-primary)}.hover\\:text-text-secondary:hover{color:var(--color-text-secondary)}.hover\\:opacity-90:hover{opacity:.9}}.focus\\:border-error:focus{border-color:var(--color-error)}.focus\\:border-primary:focus{border-color:var(--color-primary)}.focus\\:bg-bg-tertiary:focus{background-color:var(--color-bg-tertiary)}.focus\\:bg-error-bg:focus{background-color:var(--color-error-bg)}.focus\\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\\:ring-error:focus{--tw-ring-color:var(--color-error)}.focus\\:ring-primary:focus{--tw-ring-color:var(--color-primary)}.focus-visible\\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\\:ring-error:focus-visible{--tw-ring-color:var(--color-error)}.focus-visible\\:ring-primary:focus-visible{--tw-ring-color:var(--color-primary)}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\\:ring-offset-bg-primary:focus-visible{--tw-ring-offset-color:var(--color-bg-primary)}.focus-visible\\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-bg-secondary:disabled{background-color:var(--color-bg-secondary)}.disabled\\:opacity-50:disabled{opacity:.5}@media(min-width:40rem){.sm\\:col-span-2{grid-column:span 2/span 2}.sm\\:w-1\\/3{width:33.3333%}.sm\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\\:flex-row{flex-direction:row}.sm\\:gap-lg{gap:var(--spacing-lg)}}@media(min-width:48rem){.md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:64rem){.lg\\:flex{display:flex}.lg\\:hidden{display:none}.lg\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\\:px-lg{padding-inline:var(--spacing-lg)}}.\\[\\&\\>svg\\]\\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\\[\\&\\>svg\\]\\:size-5>svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}}:root{--bg-primary:#fff;--bg-secondary:#f5f5f5;--bg-tertiary:#e6e6e6;--border-default:#d5d5d5;--border-strong:#c1c1c1;--text-primary:#212121;--text-secondary:#707070;--text-muted:#8e8e8e;--semantic-success:#1b874b;--semantic-success-bg:#e8f5e9;--semantic-warning:#d4860a;--semantic-warning-bg:#fff3e0;--semantic-error:#d32f2f;--semantic-error-bg:#ffebee;--semantic-info:#1976d2;--semantic-info-bg:#e3f2fd;--action-primary:#007480;--action-primary-hover:#004248}.dark{--bg-primary:#1a1a1a;--bg-secondary:#242424;--bg-tertiary:#2e2e2e;--border-default:#3a3a3a;--border-strong:#505050;--text-primary:#f0f0f0;--text-secondary:#a0a0a0;--text-muted:#707070;--semantic-success:#34d37a;--semantic-success-bg:#1a2e1a;--semantic-warning:#ffad33;--semantic-warning-bg:#2e2410;--semantic-error:#ff6b6b;--semantic-error-bg:#2e1515;--semantic-info:#64b5f6;--semantic-info-bg:#152538;--action-primary:#009ba6;--action-primary-hover:#007480;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 2px 8px #0006;--shadow-lg:0 4px 16px #00000080;--shadow-xl:0 8px 32px #0009}@keyframes slide-in{0%{opacity:0;transform:translate(1rem)}to{opacity:1;transform:translate(0)}}@keyframes dialog-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes floating-in{0%{opacity:0}to{opacity:1}}body{font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--text-body--line-height);color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}`)),document.head.appendChild(r)}}catch(a){console.error("vite-plugin-css-injected-by-js",a)}})();
|
|
2
|
+
import { jsx as e, jsxs as m, Fragment as V } from "react/jsx-runtime";
|
|
3
|
+
import { useState as C, forwardRef as z, useRef as D, useCallback as k, useId as j, useEffect as I, createContext as R, useContext as M, useSyncExternalStore as ge, useMemo as K } from "react";
|
|
4
|
+
import { useTranslation as oe } from "react-i18next";
|
|
5
|
+
import { CloudArrowUp as he, X as U, SunFill as ye, MoonFill as ve, List as Ne, ChevronDown as ie, XLg as we, SortDown as ke, SortNumericDown as Ce, SortNumericDownAlt as $e, SortAlphaDown as ze, SortAlphaDownAlt as De, InfoCircleFill as se, XCircleFill as ae, ExclamationTriangleFill as q, CheckCircleFill as le } from "react-bootstrap-icons";
|
|
6
|
+
import { createPortal as Ie } from "react-dom";
|
|
7
|
+
import { useFloating as G, autoUpdate as X, offset as Y, flip as _, shift as W, useClick as ce, useDismiss as J, useRole as Q, useListNavigation as je, useInteractions as Z, FloatingPortal as ee, FloatingFocusManager as de, arrow as Fe, useHover as Ee, useFocus as Se } from "@floating-ui/react";
|
|
8
|
+
import Ae from "react-select";
|
|
9
|
+
const Be = {
|
|
10
10
|
sm: "size-8 text-caption",
|
|
11
11
|
md: "size-10 text-small",
|
|
12
12
|
lg: "size-14 text-body"
|
|
13
13
|
};
|
|
14
|
-
function
|
|
14
|
+
function Pe(t) {
|
|
15
15
|
const r = t.trim().split(/\s+/);
|
|
16
16
|
return r.length === 0 ? "?" : r.length === 1 ? r[0][0].toUpperCase() : (r[0][0] + r[r.length - 1][0]).toUpperCase();
|
|
17
17
|
}
|
|
18
|
-
function
|
|
19
|
-
const [a, c] =
|
|
18
|
+
function Ft({ src: t, name: r, size: o = "md", alt: n, className: s = "", ...i }) {
|
|
19
|
+
const [a, c] = C(!1), d = !!t && !a;
|
|
20
20
|
return /* @__PURE__ */ e(
|
|
21
21
|
"span",
|
|
22
22
|
{
|
|
@@ -25,10 +25,10 @@ function wt({ src: t, name: r, size: o = "md", alt: n, className: i = "", ...s }
|
|
|
25
25
|
className: [
|
|
26
26
|
"inline-flex items-center justify-center rounded-full overflow-hidden",
|
|
27
27
|
"bg-primary text-white font-semibold select-none shrink-0",
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
Be[o],
|
|
29
|
+
s
|
|
30
30
|
].join(" "),
|
|
31
|
-
...
|
|
31
|
+
...i,
|
|
32
32
|
children: d ? /* @__PURE__ */ e(
|
|
33
33
|
"img",
|
|
34
34
|
{
|
|
@@ -37,30 +37,30 @@ function wt({ src: t, name: r, size: o = "md", alt: n, className: i = "", ...s }
|
|
|
37
37
|
className: "size-full object-cover",
|
|
38
38
|
onError: () => c(!0)
|
|
39
39
|
}
|
|
40
|
-
) : /* @__PURE__ */ e("span", { "aria-hidden": "true", children:
|
|
40
|
+
) : /* @__PURE__ */ e("span", { "aria-hidden": "true", children: Pe(r) })
|
|
41
41
|
}
|
|
42
42
|
);
|
|
43
43
|
}
|
|
44
|
-
const
|
|
44
|
+
const Le = {
|
|
45
45
|
default: "bg-bg-tertiary text-text-primary",
|
|
46
46
|
success: "bg-success-bg text-success",
|
|
47
47
|
warning: "bg-warning-bg text-warning",
|
|
48
48
|
error: "bg-error-bg text-error",
|
|
49
49
|
info: "bg-info-bg text-info"
|
|
50
|
-
},
|
|
50
|
+
}, Te = {
|
|
51
51
|
default: "bg-text-muted",
|
|
52
52
|
success: "bg-success",
|
|
53
53
|
warning: "bg-warning",
|
|
54
54
|
error: "bg-error",
|
|
55
55
|
info: "bg-info"
|
|
56
56
|
};
|
|
57
|
-
function
|
|
57
|
+
function Et({ color: t = "default", dot: r, className: o = "", children: n, ...s }) {
|
|
58
58
|
return r ? /* @__PURE__ */ e(
|
|
59
59
|
"span",
|
|
60
60
|
{
|
|
61
61
|
role: "status",
|
|
62
|
-
className: `inline-block size-2.5 rounded-full ${
|
|
63
|
-
...
|
|
62
|
+
className: `inline-block size-2.5 rounded-full ${Te[t]} ${o}`,
|
|
63
|
+
...s
|
|
64
64
|
}
|
|
65
65
|
) : /* @__PURE__ */ e(
|
|
66
66
|
"span",
|
|
@@ -68,27 +68,27 @@ function Nt({ color: t = "default", dot: r, className: o = "", children: n, ...i
|
|
|
68
68
|
className: [
|
|
69
69
|
"inline-flex items-center rounded-sm px-2 py-0.5",
|
|
70
70
|
"text-caption font-medium leading-none",
|
|
71
|
-
|
|
71
|
+
Le[t],
|
|
72
72
|
o
|
|
73
73
|
].join(" "),
|
|
74
|
-
...
|
|
74
|
+
...s,
|
|
75
75
|
children: n
|
|
76
76
|
}
|
|
77
77
|
);
|
|
78
78
|
}
|
|
79
|
-
const
|
|
79
|
+
const Re = {
|
|
80
80
|
sm: "size-4",
|
|
81
81
|
md: "size-6",
|
|
82
82
|
lg: "size-8"
|
|
83
83
|
};
|
|
84
|
-
function
|
|
84
|
+
function me({ size: t = "md", className: r = "", ...o }) {
|
|
85
85
|
return /* @__PURE__ */ m(
|
|
86
86
|
"svg",
|
|
87
87
|
{
|
|
88
88
|
viewBox: "0 0 24 24",
|
|
89
89
|
fill: "none",
|
|
90
90
|
xmlns: "http://www.w3.org/2000/svg",
|
|
91
|
-
className: `animate-spin ${
|
|
91
|
+
className: `animate-spin ${Re[t]} ${r}`,
|
|
92
92
|
role: "status",
|
|
93
93
|
"aria-label": "Loading",
|
|
94
94
|
...o,
|
|
@@ -116,37 +116,37 @@ function se({ size: t = "md", className: r = "", ...o }) {
|
|
|
116
116
|
}
|
|
117
117
|
);
|
|
118
118
|
}
|
|
119
|
-
const
|
|
119
|
+
const Me = {
|
|
120
120
|
primary: "bg-primary text-white hover:bg-primary-hover focus-visible:ring-primary",
|
|
121
121
|
secondary: "border border-border text-text-primary bg-bg-primary hover:bg-bg-tertiary focus-visible:ring-primary",
|
|
122
122
|
ghost: "text-text-primary hover:bg-bg-tertiary focus-visible:ring-primary",
|
|
123
123
|
danger: "bg-error text-white hover:opacity-90 focus-visible:ring-error"
|
|
124
|
-
},
|
|
124
|
+
}, Oe = {
|
|
125
125
|
sm: "text-small px-3 py-1 gap-1.5",
|
|
126
126
|
md: "text-body px-4 py-2 gap-2",
|
|
127
127
|
lg: "text-body px-5 py-2.5 gap-2"
|
|
128
|
-
},
|
|
128
|
+
}, Ve = {
|
|
129
129
|
sm: "sm",
|
|
130
130
|
md: "sm",
|
|
131
131
|
lg: "md"
|
|
132
|
-
},
|
|
132
|
+
}, St = z(function({
|
|
133
133
|
variant: r = "primary",
|
|
134
134
|
size: o = "md",
|
|
135
135
|
loading: n = !1,
|
|
136
|
-
disabled:
|
|
137
|
-
iconLeft:
|
|
136
|
+
disabled: s,
|
|
137
|
+
iconLeft: i,
|
|
138
138
|
iconRight: a,
|
|
139
139
|
className: c = "",
|
|
140
140
|
children: d,
|
|
141
141
|
...l
|
|
142
142
|
}, u) {
|
|
143
|
-
const
|
|
143
|
+
const f = s || n;
|
|
144
144
|
return /* @__PURE__ */ m(
|
|
145
145
|
"button",
|
|
146
146
|
{
|
|
147
147
|
ref: u,
|
|
148
148
|
type: "button",
|
|
149
|
-
disabled:
|
|
149
|
+
disabled: f,
|
|
150
150
|
"aria-busy": n || void 0,
|
|
151
151
|
className: [
|
|
152
152
|
// base
|
|
@@ -154,31 +154,31 @@ const Ae = {
|
|
|
154
154
|
"transition-colors duration-150 cursor-pointer",
|
|
155
155
|
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
|
|
156
156
|
// variant + size
|
|
157
|
-
|
|
158
|
-
|
|
157
|
+
Me[r],
|
|
158
|
+
Oe[o],
|
|
159
159
|
// disabled / loading
|
|
160
|
-
|
|
160
|
+
f && "opacity-50 pointer-events-none",
|
|
161
161
|
c
|
|
162
162
|
].filter(Boolean).join(" "),
|
|
163
163
|
...l,
|
|
164
164
|
children: [
|
|
165
|
-
n ? /* @__PURE__ */ e(
|
|
165
|
+
n ? /* @__PURE__ */ e(me, { size: Ve[o], "aria-hidden": "true" }) : i,
|
|
166
166
|
d,
|
|
167
167
|
!n && a
|
|
168
168
|
]
|
|
169
169
|
}
|
|
170
170
|
);
|
|
171
|
-
}),
|
|
171
|
+
}), Ue = {
|
|
172
172
|
primary: "bg-primary text-white hover:bg-primary-hover focus-visible:ring-primary",
|
|
173
173
|
secondary: "border border-border text-text-primary bg-bg-primary hover:bg-bg-tertiary focus-visible:ring-primary",
|
|
174
174
|
ghost: "text-text-primary hover:bg-bg-tertiary focus-visible:ring-primary",
|
|
175
175
|
danger: "bg-error text-white hover:opacity-90 focus-visible:ring-error"
|
|
176
|
-
},
|
|
176
|
+
}, Ke = {
|
|
177
177
|
sm: "size-7 text-small",
|
|
178
178
|
md: "size-9 text-body",
|
|
179
179
|
lg: "size-11 text-body"
|
|
180
|
-
},
|
|
181
|
-
const l =
|
|
180
|
+
}, He = z(function({ variant: r = "ghost", size: o = "md", loading: n = !1, disabled: s, icon: i, className: a = "", ...c }, d) {
|
|
181
|
+
const l = s || n;
|
|
182
182
|
return /* @__PURE__ */ e(
|
|
183
183
|
"button",
|
|
184
184
|
{
|
|
@@ -192,45 +192,232 @@ const Ae = {
|
|
|
192
192
|
"transition-colors duration-150 cursor-pointer",
|
|
193
193
|
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
|
|
194
194
|
// variant + size
|
|
195
|
-
|
|
196
|
-
|
|
195
|
+
Ue[r],
|
|
196
|
+
Ke[o],
|
|
197
197
|
// disabled / loading
|
|
198
198
|
l && "opacity-50 pointer-events-none",
|
|
199
199
|
a
|
|
200
200
|
].filter(Boolean).join(" "),
|
|
201
201
|
...c,
|
|
202
|
-
children: n ? /* @__PURE__ */ e(
|
|
202
|
+
children: n ? /* @__PURE__ */ e(me, { size: "sm", "aria-hidden": "true" }) : i
|
|
203
203
|
}
|
|
204
204
|
);
|
|
205
|
-
})
|
|
205
|
+
});
|
|
206
|
+
function qe(t) {
|
|
207
|
+
return t < 1024 ? `${t} B` : t < 1024 * 1024 ? `${(t / 1024).toFixed(1)} KB` : `${(t / (1024 * 1024)).toFixed(1)} MB`;
|
|
208
|
+
}
|
|
209
|
+
function At({
|
|
210
|
+
accept: t,
|
|
211
|
+
multiple: r = !1,
|
|
212
|
+
maxSize: o,
|
|
213
|
+
onFilesSelected: n,
|
|
214
|
+
onReject: s,
|
|
215
|
+
disabled: i = !1,
|
|
216
|
+
label: a = "Drop files here or click to browse",
|
|
217
|
+
helperText: c,
|
|
218
|
+
error: d,
|
|
219
|
+
illustration: l,
|
|
220
|
+
className: u = ""
|
|
221
|
+
}) {
|
|
222
|
+
const [f, h] = C(!1), [p, y] = C([]), b = D(null), v = !!d, N = k(
|
|
223
|
+
(w) => {
|
|
224
|
+
const S = Array.from(w), A = [], L = [];
|
|
225
|
+
for (const P of S)
|
|
226
|
+
o && P.size > o ? L.push(P) : A.push(P);
|
|
227
|
+
if (A.length > 0) {
|
|
228
|
+
const P = r ? [...p, ...A] : A.slice(0, 1);
|
|
229
|
+
y(P), n?.(P);
|
|
230
|
+
}
|
|
231
|
+
L.length > 0 && s?.(L);
|
|
232
|
+
},
|
|
233
|
+
[o, r, n, s, p]
|
|
234
|
+
), g = k(
|
|
235
|
+
(w) => {
|
|
236
|
+
w.preventDefault(), i || h(!0);
|
|
237
|
+
},
|
|
238
|
+
[i]
|
|
239
|
+
), x = k((w) => {
|
|
240
|
+
w.preventDefault(), h(!1);
|
|
241
|
+
}, []), $ = k(
|
|
242
|
+
(w) => {
|
|
243
|
+
w.preventDefault(), h(!1), !(i || !w.dataTransfer.files.length) && N(w.dataTransfer.files);
|
|
244
|
+
},
|
|
245
|
+
[i, N]
|
|
246
|
+
), B = k(
|
|
247
|
+
(w) => {
|
|
248
|
+
w.target.files?.length && N(w.target.files);
|
|
249
|
+
},
|
|
250
|
+
[N]
|
|
251
|
+
), F = k(() => {
|
|
252
|
+
i || b.current?.click();
|
|
253
|
+
}, [i]), E = k(
|
|
254
|
+
(w) => {
|
|
255
|
+
!i && (w.key === "Enter" || w.key === " ") && (w.preventDefault(), b.current?.click());
|
|
256
|
+
},
|
|
257
|
+
[i]
|
|
258
|
+
), O = k(
|
|
259
|
+
(w) => {
|
|
260
|
+
const S = p.filter((A, L) => L !== w);
|
|
261
|
+
y(S), n?.(S);
|
|
262
|
+
},
|
|
263
|
+
[p, n]
|
|
264
|
+
);
|
|
265
|
+
return /* @__PURE__ */ m("div", { className: `flex flex-col gap-1.5 ${u}`, children: [
|
|
266
|
+
/* @__PURE__ */ m(
|
|
267
|
+
"div",
|
|
268
|
+
{
|
|
269
|
+
role: "button",
|
|
270
|
+
tabIndex: i ? -1 : 0,
|
|
271
|
+
onClick: F,
|
|
272
|
+
onKeyDown: E,
|
|
273
|
+
onDragOver: g,
|
|
274
|
+
onDragLeave: x,
|
|
275
|
+
onDrop: $,
|
|
276
|
+
className: [
|
|
277
|
+
"flex flex-col items-center justify-center gap-2 rounded-lg border-2 border-dashed p-lg",
|
|
278
|
+
"transition-colors cursor-pointer select-none",
|
|
279
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2",
|
|
280
|
+
i ? "opacity-50 pointer-events-none bg-bg-secondary" : f ? "border-primary bg-primary/5" : v ? "border-error hover:border-error bg-bg-primary" : "border-border hover:border-primary bg-bg-primary"
|
|
281
|
+
].filter(Boolean).join(" "),
|
|
282
|
+
"aria-disabled": i,
|
|
283
|
+
children: [
|
|
284
|
+
l ?? /* @__PURE__ */ e(
|
|
285
|
+
he,
|
|
286
|
+
{
|
|
287
|
+
size: 32,
|
|
288
|
+
className: f ? "text-primary" : "text-text-muted",
|
|
289
|
+
"aria-hidden": !0
|
|
290
|
+
}
|
|
291
|
+
),
|
|
292
|
+
/* @__PURE__ */ e("span", { className: "text-body font-medium text-text-primary text-center", children: a }),
|
|
293
|
+
c && /* @__PURE__ */ e("span", { className: "text-caption text-text-secondary text-center", children: c })
|
|
294
|
+
]
|
|
295
|
+
}
|
|
296
|
+
),
|
|
297
|
+
/* @__PURE__ */ e(
|
|
298
|
+
"input",
|
|
299
|
+
{
|
|
300
|
+
ref: b,
|
|
301
|
+
type: "file",
|
|
302
|
+
accept: t,
|
|
303
|
+
multiple: r,
|
|
304
|
+
onChange: B,
|
|
305
|
+
className: "hidden",
|
|
306
|
+
tabIndex: -1,
|
|
307
|
+
"aria-hidden": !0
|
|
308
|
+
}
|
|
309
|
+
),
|
|
310
|
+
d && /* @__PURE__ */ e("p", { className: "text-caption text-error", children: d }),
|
|
311
|
+
p.length > 0 && /* @__PURE__ */ e("ul", { className: "flex flex-col gap-1 mt-1", children: p.map((w, S) => /* @__PURE__ */ m(
|
|
312
|
+
"li",
|
|
313
|
+
{
|
|
314
|
+
className: "flex items-center gap-2 rounded-md bg-bg-secondary px-3 py-1.5 text-small text-text-primary",
|
|
315
|
+
children: [
|
|
316
|
+
/* @__PURE__ */ e("span", { className: "truncate flex-1", children: w.name }),
|
|
317
|
+
/* @__PURE__ */ e("span", { className: "shrink-0 text-text-secondary", children: qe(w.size) }),
|
|
318
|
+
/* @__PURE__ */ e(
|
|
319
|
+
"button",
|
|
320
|
+
{
|
|
321
|
+
type: "button",
|
|
322
|
+
onClick: (A) => {
|
|
323
|
+
A.stopPropagation(), O(S);
|
|
324
|
+
},
|
|
325
|
+
className: "shrink-0 p-0.5 rounded-sm text-text-secondary hover:text-text-primary hover:bg-bg-tertiary transition-colors cursor-pointer",
|
|
326
|
+
"aria-label": `Remove ${w.name}`,
|
|
327
|
+
children: /* @__PURE__ */ e(U, { size: 14 })
|
|
328
|
+
}
|
|
329
|
+
)
|
|
330
|
+
]
|
|
331
|
+
},
|
|
332
|
+
`${w.name}-${w.size}-${S}`
|
|
333
|
+
)) })
|
|
334
|
+
] });
|
|
335
|
+
}
|
|
336
|
+
const Ge = {
|
|
337
|
+
sm: "h-1.5",
|
|
338
|
+
md: "h-2.5",
|
|
339
|
+
lg: "h-4"
|
|
340
|
+
}, Xe = {
|
|
341
|
+
primary: "bg-primary",
|
|
342
|
+
success: "bg-success",
|
|
343
|
+
warning: "bg-warning",
|
|
344
|
+
error: "bg-error",
|
|
345
|
+
info: "bg-info"
|
|
346
|
+
}, Bt = z(
|
|
347
|
+
function({
|
|
348
|
+
value: r,
|
|
349
|
+
variant: o = "primary",
|
|
350
|
+
size: n = "md",
|
|
351
|
+
showLabel: s = !1,
|
|
352
|
+
formatLabel: i,
|
|
353
|
+
className: a = "",
|
|
354
|
+
...c
|
|
355
|
+
}, d) {
|
|
356
|
+
const l = Math.round(Math.min(100, Math.max(0, r))), u = i ? i(l) : `${l}%`;
|
|
357
|
+
return /* @__PURE__ */ m(
|
|
358
|
+
"div",
|
|
359
|
+
{
|
|
360
|
+
ref: d,
|
|
361
|
+
className: `flex items-center gap-2 ${a}`,
|
|
362
|
+
...c,
|
|
363
|
+
children: [
|
|
364
|
+
/* @__PURE__ */ e(
|
|
365
|
+
"div",
|
|
366
|
+
{
|
|
367
|
+
className: [
|
|
368
|
+
"flex-1 overflow-hidden rounded-full bg-bg-tertiary",
|
|
369
|
+
Ge[n]
|
|
370
|
+
].join(" "),
|
|
371
|
+
role: "progressbar",
|
|
372
|
+
"aria-valuenow": l,
|
|
373
|
+
"aria-valuemin": 0,
|
|
374
|
+
"aria-valuemax": 100,
|
|
375
|
+
children: /* @__PURE__ */ e(
|
|
376
|
+
"div",
|
|
377
|
+
{
|
|
378
|
+
className: [
|
|
379
|
+
"h-full rounded-full transition-all duration-300 ease-out",
|
|
380
|
+
Xe[o]
|
|
381
|
+
].join(" "),
|
|
382
|
+
style: { width: `${l}%` }
|
|
383
|
+
}
|
|
384
|
+
)
|
|
385
|
+
}
|
|
386
|
+
),
|
|
387
|
+
s && /* @__PURE__ */ e("span", { className: "text-small font-medium text-text-secondary tabular-nums shrink-0", children: u })
|
|
388
|
+
]
|
|
389
|
+
}
|
|
390
|
+
);
|
|
391
|
+
}
|
|
392
|
+
), Pt = z(function({
|
|
206
393
|
label: r,
|
|
207
394
|
indeterminate: o = !1,
|
|
208
395
|
helperText: n,
|
|
209
|
-
error:
|
|
210
|
-
className:
|
|
396
|
+
error: s,
|
|
397
|
+
className: i = "",
|
|
211
398
|
id: a,
|
|
212
399
|
disabled: c,
|
|
213
400
|
...d
|
|
214
401
|
}, l) {
|
|
215
|
-
const u =
|
|
402
|
+
const u = j(), f = a ?? u, h = `${f}-helper`, p = !!s, y = D(null), b = k(
|
|
216
403
|
(v) => {
|
|
217
404
|
y.current = v, typeof l == "function" ? l(v) : l && (l.current = v);
|
|
218
405
|
},
|
|
219
406
|
[l]
|
|
220
407
|
);
|
|
221
|
-
return
|
|
408
|
+
return I(() => {
|
|
222
409
|
y.current && (y.current.indeterminate = o);
|
|
223
|
-
}, [o]), /* @__PURE__ */ m("div", { className: `flex flex-col gap-1 ${
|
|
410
|
+
}, [o]), /* @__PURE__ */ m("div", { className: `flex flex-col gap-1 ${i}`, children: [
|
|
224
411
|
/* @__PURE__ */ m("div", { className: "flex items-start gap-2", children: [
|
|
225
412
|
/* @__PURE__ */ e(
|
|
226
413
|
"input",
|
|
227
414
|
{
|
|
228
|
-
ref:
|
|
229
|
-
id:
|
|
415
|
+
ref: b,
|
|
416
|
+
id: f,
|
|
230
417
|
type: "checkbox",
|
|
231
418
|
disabled: c,
|
|
232
419
|
"aria-invalid": p || void 0,
|
|
233
|
-
"aria-describedby": n ||
|
|
420
|
+
"aria-describedby": n || s ? h : void 0,
|
|
234
421
|
className: [
|
|
235
422
|
"mt-0.5 size-4 shrink-0 cursor-pointer rounded-sm border appearance-none",
|
|
236
423
|
"bg-bg-primary transition-colors",
|
|
@@ -250,88 +437,88 @@ const Ae = {
|
|
|
250
437
|
r && /* @__PURE__ */ e(
|
|
251
438
|
"label",
|
|
252
439
|
{
|
|
253
|
-
htmlFor:
|
|
440
|
+
htmlFor: f,
|
|
254
441
|
className: `text-body select-none ${c ? "text-text-muted cursor-not-allowed" : "text-text-primary cursor-pointer"}`,
|
|
255
442
|
children: r
|
|
256
443
|
}
|
|
257
444
|
)
|
|
258
445
|
] }),
|
|
259
|
-
(n ||
|
|
446
|
+
(n || s) && /* @__PURE__ */ e(
|
|
260
447
|
"p",
|
|
261
448
|
{
|
|
262
449
|
id: h,
|
|
263
450
|
className: `text-caption pl-6 ${p ? "text-error" : "text-text-secondary"}`,
|
|
264
|
-
children:
|
|
451
|
+
children: s ?? n
|
|
265
452
|
}
|
|
266
453
|
)
|
|
267
454
|
] });
|
|
268
|
-
}),
|
|
455
|
+
}), Ye = {
|
|
269
456
|
sm: "h-8 text-small px-2.5",
|
|
270
457
|
md: "h-10 text-body px-3",
|
|
271
458
|
lg: "h-12 text-body px-3.5"
|
|
272
|
-
},
|
|
459
|
+
}, _e = {
|
|
273
460
|
sm: "pl-8",
|
|
274
461
|
md: "pl-10",
|
|
275
462
|
lg: "pl-11"
|
|
276
|
-
},
|
|
463
|
+
}, We = {
|
|
277
464
|
sm: "pr-8",
|
|
278
465
|
md: "pr-10",
|
|
279
466
|
lg: "pr-11"
|
|
280
|
-
},
|
|
467
|
+
}, re = {
|
|
281
468
|
sm: "[&>svg]:size-4",
|
|
282
469
|
md: "[&>svg]:size-5",
|
|
283
470
|
lg: "[&>svg]:size-5"
|
|
284
|
-
},
|
|
471
|
+
}, Lt = z(function({
|
|
285
472
|
label: r,
|
|
286
473
|
helperText: o,
|
|
287
474
|
error: n,
|
|
288
|
-
leftIcon:
|
|
289
|
-
rightIcon:
|
|
475
|
+
leftIcon: s,
|
|
476
|
+
rightIcon: i,
|
|
290
477
|
inputSize: a = "md",
|
|
291
478
|
className: c = "",
|
|
292
479
|
id: d,
|
|
293
480
|
disabled: l,
|
|
294
481
|
...u
|
|
295
|
-
},
|
|
296
|
-
const h =
|
|
482
|
+
}, f) {
|
|
483
|
+
const h = j(), p = d ?? h, y = `${p}-helper`, b = !!n;
|
|
297
484
|
return /* @__PURE__ */ m("div", { className: `flex flex-col gap-1.5 ${c}`, children: [
|
|
298
485
|
r && /* @__PURE__ */ e("label", { htmlFor: p, className: "text-small font-medium text-text-primary", children: r }),
|
|
299
486
|
/* @__PURE__ */ m("div", { className: "relative", children: [
|
|
300
|
-
|
|
487
|
+
s && /* @__PURE__ */ e(
|
|
301
488
|
"span",
|
|
302
489
|
{
|
|
303
|
-
className: `pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3 text-text-secondary ${
|
|
490
|
+
className: `pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3 text-text-secondary ${re[a]}`,
|
|
304
491
|
"aria-hidden": "true",
|
|
305
|
-
children:
|
|
492
|
+
children: s
|
|
306
493
|
}
|
|
307
494
|
),
|
|
308
495
|
/* @__PURE__ */ e(
|
|
309
496
|
"input",
|
|
310
497
|
{
|
|
311
|
-
ref:
|
|
498
|
+
ref: f,
|
|
312
499
|
id: p,
|
|
313
500
|
disabled: l,
|
|
314
|
-
"aria-invalid":
|
|
501
|
+
"aria-invalid": b || void 0,
|
|
315
502
|
"aria-describedby": o || n ? y : void 0,
|
|
316
503
|
className: [
|
|
317
504
|
"w-full rounded-md border bg-bg-primary text-text-primary placeholder:text-text-muted",
|
|
318
505
|
"outline-none transition-colors",
|
|
319
506
|
"focus:border-primary focus:ring-1 focus:ring-primary",
|
|
320
507
|
"disabled:cursor-not-allowed disabled:opacity-50 disabled:bg-bg-secondary",
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
508
|
+
b ? "border-error focus:border-error focus:ring-error" : "border-border hover:border-border-strong",
|
|
509
|
+
Ye[a],
|
|
510
|
+
s ? _e[a] : "",
|
|
511
|
+
i ? We[a] : ""
|
|
325
512
|
].join(" "),
|
|
326
513
|
...u
|
|
327
514
|
}
|
|
328
515
|
),
|
|
329
|
-
|
|
516
|
+
i && /* @__PURE__ */ e(
|
|
330
517
|
"span",
|
|
331
518
|
{
|
|
332
|
-
className: `pointer-events-none absolute inset-y-0 right-0 flex items-center pr-3 text-text-secondary ${
|
|
519
|
+
className: `pointer-events-none absolute inset-y-0 right-0 flex items-center pr-3 text-text-secondary ${re[a]}`,
|
|
333
520
|
"aria-hidden": "true",
|
|
334
|
-
children:
|
|
521
|
+
children: i
|
|
335
522
|
}
|
|
336
523
|
)
|
|
337
524
|
] }),
|
|
@@ -339,35 +526,35 @@ const Ae = {
|
|
|
339
526
|
"p",
|
|
340
527
|
{
|
|
341
528
|
id: y,
|
|
342
|
-
className: `text-caption ${
|
|
529
|
+
className: `text-caption ${b ? "text-error" : "text-text-secondary"}`,
|
|
343
530
|
children: n ?? o
|
|
344
531
|
}
|
|
345
532
|
)
|
|
346
533
|
] });
|
|
347
|
-
}),
|
|
348
|
-
function
|
|
349
|
-
const t =
|
|
534
|
+
}), ue = R(null);
|
|
535
|
+
function Je() {
|
|
536
|
+
const t = M(ue);
|
|
350
537
|
if (!t) throw new Error("RadioGroup.Item must be used within RadioGroup");
|
|
351
538
|
return t;
|
|
352
539
|
}
|
|
353
|
-
function
|
|
540
|
+
function Qe({
|
|
354
541
|
name: t,
|
|
355
542
|
value: r,
|
|
356
543
|
onChange: o,
|
|
357
544
|
label: n,
|
|
358
|
-
helperText:
|
|
359
|
-
error:
|
|
545
|
+
helperText: s,
|
|
546
|
+
error: i,
|
|
360
547
|
orientation: a = "vertical",
|
|
361
548
|
disabled: c = !1,
|
|
362
549
|
children: d,
|
|
363
550
|
className: l = ""
|
|
364
551
|
}) {
|
|
365
|
-
const u =
|
|
366
|
-
return /* @__PURE__ */ e(
|
|
552
|
+
const u = j(), f = t ?? u, p = `${`${f}-group`}-helper`, y = !!i;
|
|
553
|
+
return /* @__PURE__ */ e(ue.Provider, { value: { name: f, value: r, onChange: o, disabled: c, hasError: y }, children: /* @__PURE__ */ m(
|
|
367
554
|
"fieldset",
|
|
368
555
|
{
|
|
369
556
|
className: `flex flex-col gap-2 ${l}`,
|
|
370
|
-
"aria-describedby":
|
|
557
|
+
"aria-describedby": s || i ? p : void 0,
|
|
371
558
|
disabled: c,
|
|
372
559
|
children: [
|
|
373
560
|
n && /* @__PURE__ */ e("legend", { className: "text-small font-medium text-text-primary mb-1", children: n }),
|
|
@@ -379,35 +566,35 @@ function He({
|
|
|
379
566
|
children: d
|
|
380
567
|
}
|
|
381
568
|
),
|
|
382
|
-
(
|
|
569
|
+
(s || i) && /* @__PURE__ */ e(
|
|
383
570
|
"p",
|
|
384
571
|
{
|
|
385
572
|
id: p,
|
|
386
573
|
className: `text-caption ${y ? "text-error" : "text-text-secondary"}`,
|
|
387
|
-
children:
|
|
574
|
+
children: i ?? s
|
|
388
575
|
}
|
|
389
576
|
)
|
|
390
577
|
]
|
|
391
578
|
}
|
|
392
579
|
) });
|
|
393
580
|
}
|
|
394
|
-
function
|
|
581
|
+
function Ze({ value: t, label: r, description: o, disabled: n }) {
|
|
395
582
|
const {
|
|
396
|
-
name:
|
|
397
|
-
value:
|
|
583
|
+
name: s,
|
|
584
|
+
value: i,
|
|
398
585
|
onChange: a,
|
|
399
586
|
disabled: c,
|
|
400
587
|
hasError: d
|
|
401
|
-
} =
|
|
588
|
+
} = Je(), l = j(), u = c || n;
|
|
402
589
|
return /* @__PURE__ */ m("div", { className: "flex items-start gap-2", children: [
|
|
403
590
|
/* @__PURE__ */ e(
|
|
404
591
|
"input",
|
|
405
592
|
{
|
|
406
593
|
id: l,
|
|
407
594
|
type: "radio",
|
|
408
|
-
name:
|
|
595
|
+
name: s,
|
|
409
596
|
value: t,
|
|
410
|
-
checked:
|
|
597
|
+
checked: i !== void 0 ? i === t : void 0,
|
|
411
598
|
disabled: u,
|
|
412
599
|
onChange: () => a?.(t),
|
|
413
600
|
className: [
|
|
@@ -433,8 +620,8 @@ function qe({ value: t, label: r, description: o, disabled: n }) {
|
|
|
433
620
|
] })
|
|
434
621
|
] });
|
|
435
622
|
}
|
|
436
|
-
|
|
437
|
-
const
|
|
623
|
+
Qe.Item = Ze;
|
|
624
|
+
const et = (t) => ({
|
|
438
625
|
...t,
|
|
439
626
|
borderRadius: 8,
|
|
440
627
|
colors: {
|
|
@@ -467,36 +654,36 @@ const Ke = (t) => ({
|
|
|
467
654
|
danger: "var(--color-error)",
|
|
468
655
|
dangerLight: "var(--color-error-bg)"
|
|
469
656
|
}
|
|
470
|
-
}),
|
|
657
|
+
}), ne = {
|
|
471
658
|
control: ({ isFocused: t }) => `!shadow-sm !rounded-md !border-border ${t ? "!border-primary !ring-1 !ring-primary" : ""}`,
|
|
472
659
|
menu: () => "!rounded-lg !shadow-lg !border !border-border",
|
|
473
660
|
option: ({ isFocused: t, isSelected: r }) => `${r ? "!bg-primary !text-white" : t ? "!bg-bg-tertiary" : ""}`,
|
|
474
661
|
multiValue: () => "!rounded-sm !bg-bg-tertiary"
|
|
475
662
|
};
|
|
476
|
-
function
|
|
477
|
-
const
|
|
663
|
+
function Tt({ label: t, helperText: r, error: o, className: n = "", ...s }) {
|
|
664
|
+
const i = j(), a = s.inputId ?? i, c = `${a}-helper`, d = !!o;
|
|
478
665
|
return /* @__PURE__ */ m("div", { className: `flex flex-col gap-1.5 ${n}`, children: [
|
|
479
666
|
t && /* @__PURE__ */ e("label", { htmlFor: a, className: "text-small font-medium text-text-primary", children: t }),
|
|
480
667
|
/* @__PURE__ */ e(
|
|
481
|
-
|
|
668
|
+
Ae,
|
|
482
669
|
{
|
|
483
670
|
inputId: a,
|
|
484
|
-
theme:
|
|
671
|
+
theme: et,
|
|
485
672
|
menuPortalTarget: document.body,
|
|
486
673
|
styles: {
|
|
487
674
|
menuPortal: (l) => ({ ...l, zIndex: 50 }),
|
|
488
|
-
...
|
|
675
|
+
...s.styles
|
|
489
676
|
},
|
|
490
677
|
classNames: {
|
|
491
|
-
...
|
|
678
|
+
...ne,
|
|
492
679
|
control: (l) => {
|
|
493
|
-
const u =
|
|
680
|
+
const u = ne.control?.(l) ?? "";
|
|
494
681
|
return d ? `${u} !border-error !focus:ring-error` : u;
|
|
495
682
|
}
|
|
496
683
|
},
|
|
497
684
|
"aria-invalid": d || void 0,
|
|
498
685
|
"aria-errormessage": d ? c : void 0,
|
|
499
|
-
...
|
|
686
|
+
...s
|
|
500
687
|
}
|
|
501
688
|
),
|
|
502
689
|
(r || o) && /* @__PURE__ */ e(
|
|
@@ -509,8 +696,8 @@ function $t({ label: t, helperText: r, error: o, className: n = "", ...i }) {
|
|
|
509
696
|
)
|
|
510
697
|
] });
|
|
511
698
|
}
|
|
512
|
-
const
|
|
513
|
-
const d =
|
|
699
|
+
const Rt = z(function({ label: r, helperText: o, className: n = "", id: s, disabled: i, ...a }, c) {
|
|
700
|
+
const d = j(), l = s ?? d, u = `${l}-helper`;
|
|
514
701
|
return /* @__PURE__ */ m("div", { className: `flex flex-col gap-1 ${n}`, children: [
|
|
515
702
|
/* @__PURE__ */ m("div", { className: "flex items-center gap-3", children: [
|
|
516
703
|
/* @__PURE__ */ m("div", { className: "relative inline-flex items-center", children: [
|
|
@@ -521,7 +708,7 @@ const Dt = C(function({ label: r, helperText: o, className: n = "", id: i, disab
|
|
|
521
708
|
id: l,
|
|
522
709
|
type: "checkbox",
|
|
523
710
|
role: "switch",
|
|
524
|
-
disabled:
|
|
711
|
+
disabled: i,
|
|
525
712
|
"aria-describedby": o ? u : void 0,
|
|
526
713
|
className: "peer sr-only",
|
|
527
714
|
...a
|
|
@@ -537,7 +724,7 @@ const Dt = C(function({ label: r, helperText: o, className: n = "", id: i, disab
|
|
|
537
724
|
"peer-checked:bg-primary",
|
|
538
725
|
"peer-focus-visible:ring-2 peer-focus-visible:ring-primary peer-focus-visible:ring-offset-2 peer-focus-visible:ring-offset-bg-primary",
|
|
539
726
|
"peer-disabled:opacity-50 peer-disabled:cursor-not-allowed",
|
|
540
|
-
|
|
727
|
+
i ? "cursor-not-allowed" : "cursor-pointer",
|
|
541
728
|
// Thumb
|
|
542
729
|
"after:content-[''] after:absolute after:top-0.5 after:left-0.5",
|
|
543
730
|
"after:size-5 after:rounded-full after:bg-white after:shadow-sm",
|
|
@@ -551,37 +738,37 @@ const Dt = C(function({ label: r, helperText: o, className: n = "", id: i, disab
|
|
|
551
738
|
"label",
|
|
552
739
|
{
|
|
553
740
|
htmlFor: l,
|
|
554
|
-
className: `text-body select-none ${
|
|
741
|
+
className: `text-body select-none ${i ? "text-text-muted cursor-not-allowed" : "text-text-primary cursor-pointer"}`,
|
|
555
742
|
children: r
|
|
556
743
|
}
|
|
557
744
|
)
|
|
558
745
|
] }),
|
|
559
746
|
o && /* @__PURE__ */ e("p", { id: u, className: "text-caption text-text-secondary pl-14", children: o })
|
|
560
747
|
] });
|
|
561
|
-
}),
|
|
748
|
+
}), Mt = z(function({
|
|
562
749
|
label: r,
|
|
563
750
|
helperText: o,
|
|
564
751
|
error: n,
|
|
565
|
-
autoGrow:
|
|
566
|
-
minRows:
|
|
752
|
+
autoGrow: s = !1,
|
|
753
|
+
minRows: i = 3,
|
|
567
754
|
className: a = "",
|
|
568
755
|
id: c,
|
|
569
756
|
disabled: d,
|
|
570
757
|
onChange: l,
|
|
571
758
|
...u
|
|
572
|
-
},
|
|
573
|
-
const h =
|
|
759
|
+
}, f) {
|
|
760
|
+
const h = j(), p = c ?? h, y = `${p}-helper`, b = !!n, v = D(null), N = k(() => {
|
|
574
761
|
const x = v.current;
|
|
575
|
-
!x || !
|
|
576
|
-
}, [
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
}, [
|
|
762
|
+
!x || !s || (x.style.height = "auto", x.style.height = `${x.scrollHeight}px`);
|
|
763
|
+
}, [s]);
|
|
764
|
+
I(() => {
|
|
765
|
+
N();
|
|
766
|
+
}, [N, u.value, u.defaultValue]);
|
|
580
767
|
const g = k(
|
|
581
768
|
(x) => {
|
|
582
|
-
v.current = x, typeof
|
|
769
|
+
v.current = x, typeof f == "function" ? f(x) : f && (f.current = x);
|
|
583
770
|
},
|
|
584
|
-
[
|
|
771
|
+
[f]
|
|
585
772
|
);
|
|
586
773
|
return /* @__PURE__ */ m("div", { className: `flex flex-col gap-1.5 ${a}`, children: [
|
|
587
774
|
r && /* @__PURE__ */ e("label", { htmlFor: p, className: "text-small font-medium text-text-primary", children: r }),
|
|
@@ -590,20 +777,20 @@ const Dt = C(function({ label: r, helperText: o, className: n = "", id: i, disab
|
|
|
590
777
|
{
|
|
591
778
|
ref: g,
|
|
592
779
|
id: p,
|
|
593
|
-
rows:
|
|
780
|
+
rows: i,
|
|
594
781
|
disabled: d,
|
|
595
|
-
"aria-invalid":
|
|
782
|
+
"aria-invalid": b || void 0,
|
|
596
783
|
"aria-describedby": o || n ? y : void 0,
|
|
597
784
|
onChange: (x) => {
|
|
598
|
-
l?.(x),
|
|
785
|
+
l?.(x), N();
|
|
599
786
|
},
|
|
600
787
|
className: [
|
|
601
788
|
"w-full rounded-md border bg-bg-primary text-text-primary placeholder:text-text-muted",
|
|
602
789
|
"px-3 py-2 text-body outline-none transition-colors",
|
|
603
790
|
"focus:border-primary focus:ring-1 focus:ring-primary",
|
|
604
791
|
"disabled:cursor-not-allowed disabled:opacity-50 disabled:bg-bg-secondary",
|
|
605
|
-
|
|
606
|
-
|
|
792
|
+
s ? "resize-none overflow-hidden" : "resize-y",
|
|
793
|
+
b ? "border-error focus:border-error focus:ring-error" : "border-border hover:border-border-strong"
|
|
607
794
|
].join(" "),
|
|
608
795
|
...u
|
|
609
796
|
}
|
|
@@ -612,12 +799,12 @@ const Dt = C(function({ label: r, helperText: o, className: n = "", id: i, disab
|
|
|
612
799
|
"p",
|
|
613
800
|
{
|
|
614
801
|
id: y,
|
|
615
|
-
className: `text-caption ${
|
|
802
|
+
className: `text-caption ${b ? "text-error" : "text-text-secondary"}`,
|
|
616
803
|
children: n ?? o
|
|
617
804
|
}
|
|
618
805
|
)
|
|
619
806
|
] });
|
|
620
|
-
}),
|
|
807
|
+
}), pe = R({
|
|
621
808
|
close: () => {
|
|
622
809
|
},
|
|
623
810
|
getItemProps: () => ({}),
|
|
@@ -625,26 +812,26 @@ const Dt = C(function({ label: r, helperText: o, className: n = "", id: i, disab
|
|
|
625
812
|
setActiveIndex: () => {
|
|
626
813
|
}
|
|
627
814
|
});
|
|
628
|
-
function
|
|
815
|
+
function Ot() {
|
|
629
816
|
return /* @__PURE__ */ e("div", { role: "separator", className: "my-1 border-t border-border" });
|
|
630
817
|
}
|
|
631
|
-
const
|
|
632
|
-
const { close: l } =
|
|
818
|
+
const Vt = z(function({ children: r, icon: o, danger: n = !1, disabled: s = !1, onClick: i, className: a = "", ...c }, d) {
|
|
819
|
+
const { close: l } = M(pe);
|
|
633
820
|
return /* @__PURE__ */ m(
|
|
634
821
|
"button",
|
|
635
822
|
{
|
|
636
823
|
ref: d,
|
|
637
824
|
type: "button",
|
|
638
825
|
role: "menuitem",
|
|
639
|
-
disabled:
|
|
826
|
+
disabled: s,
|
|
640
827
|
onClick: () => {
|
|
641
|
-
|
|
828
|
+
s || (i?.(), l());
|
|
642
829
|
},
|
|
643
830
|
className: [
|
|
644
831
|
"flex w-full items-center gap-2 px-3 py-2 text-small rounded-md",
|
|
645
832
|
"text-left transition-colors outline-none cursor-pointer",
|
|
646
833
|
n ? "text-error hover:bg-error-bg focus:bg-error-bg" : "text-text-primary hover:bg-bg-tertiary focus:bg-bg-tertiary",
|
|
647
|
-
|
|
834
|
+
s && "opacity-50 pointer-events-none",
|
|
648
835
|
a
|
|
649
836
|
].filter(Boolean).join(" "),
|
|
650
837
|
...c,
|
|
@@ -655,32 +842,32 @@ const Ft = C(function({ children: r, icon: o, danger: n = !1, disabled: i = !1,
|
|
|
655
842
|
}
|
|
656
843
|
);
|
|
657
844
|
});
|
|
658
|
-
function
|
|
845
|
+
function Ut({
|
|
659
846
|
trigger: t,
|
|
660
847
|
children: r,
|
|
661
848
|
placement: o = "bottom-start",
|
|
662
849
|
className: n = ""
|
|
663
850
|
}) {
|
|
664
|
-
const [
|
|
665
|
-
open:
|
|
666
|
-
onOpenChange:
|
|
851
|
+
const [s, i] = C(!1), [a, c] = C(null), d = D([]), { refs: l, floatingStyles: u, context: f } = G({
|
|
852
|
+
open: s,
|
|
853
|
+
onOpenChange: i,
|
|
667
854
|
placement: o,
|
|
668
|
-
middleware: [
|
|
669
|
-
whileElementsMounted:
|
|
670
|
-
}), h =
|
|
855
|
+
middleware: [Y(4), _(), W({ padding: 8 })],
|
|
856
|
+
whileElementsMounted: X
|
|
857
|
+
}), h = ce(f), p = J(f), y = Q(f, { role: "menu" }), b = je(f, {
|
|
671
858
|
listRef: d,
|
|
672
859
|
activeIndex: a,
|
|
673
860
|
onNavigate: c,
|
|
674
861
|
loop: !0
|
|
675
|
-
}), { getReferenceProps: v, getFloatingProps:
|
|
862
|
+
}), { getReferenceProps: v, getFloatingProps: N, getItemProps: g } = Z([
|
|
676
863
|
h,
|
|
677
864
|
p,
|
|
678
865
|
y,
|
|
679
|
-
|
|
680
|
-
]), x = k(() =>
|
|
681
|
-
return /* @__PURE__ */ m(
|
|
866
|
+
b
|
|
867
|
+
]), x = k(() => i(!1), []);
|
|
868
|
+
return /* @__PURE__ */ m(V, { children: [
|
|
682
869
|
/* @__PURE__ */ e("span", { ref: l.setReference, className: "inline-flex", ...v(), children: t }),
|
|
683
|
-
|
|
870
|
+
s && /* @__PURE__ */ e(ee, { children: /* @__PURE__ */ e(de, { context: f, modal: !1, children: /* @__PURE__ */ e(
|
|
684
871
|
"div",
|
|
685
872
|
{
|
|
686
873
|
ref: l.setFloating,
|
|
@@ -690,9 +877,9 @@ function Et({
|
|
|
690
877
|
"bg-bg-primary shadow-lg animate-floating-in",
|
|
691
878
|
n
|
|
692
879
|
].join(" "),
|
|
693
|
-
...
|
|
880
|
+
...N(),
|
|
694
881
|
children: /* @__PURE__ */ e(
|
|
695
|
-
|
|
882
|
+
pe.Provider,
|
|
696
883
|
{
|
|
697
884
|
value: { close: x, getItemProps: g, activeIndex: a, setActiveIndex: c },
|
|
698
885
|
children: r
|
|
@@ -702,32 +889,32 @@ function Et({
|
|
|
702
889
|
) }) })
|
|
703
890
|
] });
|
|
704
891
|
}
|
|
705
|
-
function
|
|
892
|
+
function Kt({
|
|
706
893
|
trigger: t,
|
|
707
894
|
children: r,
|
|
708
895
|
placement: o = "bottom",
|
|
709
896
|
open: n,
|
|
710
|
-
onOpenChange:
|
|
711
|
-
className:
|
|
897
|
+
onOpenChange: s,
|
|
898
|
+
className: i = ""
|
|
712
899
|
}) {
|
|
713
|
-
const [a, c] =
|
|
900
|
+
const [a, c] = C(!1), d = n !== void 0, l = d ? n : a, u = d ? (x) => s?.(x) : c, { refs: f, floatingStyles: h, context: p } = G({
|
|
714
901
|
open: l,
|
|
715
902
|
onOpenChange: u,
|
|
716
903
|
placement: o,
|
|
717
|
-
middleware: [
|
|
718
|
-
whileElementsMounted:
|
|
719
|
-
}), y =
|
|
720
|
-
return /* @__PURE__ */ m(
|
|
721
|
-
/* @__PURE__ */ e("span", { ref:
|
|
722
|
-
l && /* @__PURE__ */ e(
|
|
904
|
+
middleware: [Y(8), _(), W({ padding: 8 })],
|
|
905
|
+
whileElementsMounted: X
|
|
906
|
+
}), y = ce(p), b = J(p), v = Q(p), { getReferenceProps: N, getFloatingProps: g } = Z([y, b, v]);
|
|
907
|
+
return /* @__PURE__ */ m(V, { children: [
|
|
908
|
+
/* @__PURE__ */ e("span", { ref: f.setReference, className: "inline-flex", ...N(), children: t }),
|
|
909
|
+
l && /* @__PURE__ */ e(ee, { children: /* @__PURE__ */ e(de, { context: p, modal: !1, children: /* @__PURE__ */ e(
|
|
723
910
|
"div",
|
|
724
911
|
{
|
|
725
|
-
ref:
|
|
912
|
+
ref: f.setFloating,
|
|
726
913
|
style: h,
|
|
727
914
|
className: [
|
|
728
915
|
"z-50 rounded-lg border border-border p-md",
|
|
729
916
|
"bg-bg-primary shadow-lg animate-floating-in",
|
|
730
|
-
|
|
917
|
+
i
|
|
731
918
|
].join(" "),
|
|
732
919
|
...g(),
|
|
733
920
|
children: r
|
|
@@ -735,67 +922,67 @@ function St({
|
|
|
735
922
|
) }) })
|
|
736
923
|
] });
|
|
737
924
|
}
|
|
738
|
-
const
|
|
925
|
+
const fe = R({
|
|
739
926
|
activeValue: "",
|
|
740
927
|
idPrefix: ""
|
|
741
928
|
});
|
|
742
|
-
function
|
|
743
|
-
const { activeValue: n, idPrefix:
|
|
929
|
+
function Ht({ value: t, children: r, className: o = "" }) {
|
|
930
|
+
const { activeValue: n, idPrefix: s } = M(fe), i = n === t;
|
|
744
931
|
return /* @__PURE__ */ e(
|
|
745
932
|
"div",
|
|
746
933
|
{
|
|
747
|
-
id: `${
|
|
934
|
+
id: `${s}-panel-${t}`,
|
|
748
935
|
role: "tabpanel",
|
|
749
|
-
"aria-labelledby": `${
|
|
750
|
-
hidden: !
|
|
936
|
+
"aria-labelledby": `${s}-tab-${t}`,
|
|
937
|
+
hidden: !i,
|
|
751
938
|
tabIndex: 0,
|
|
752
939
|
className: o,
|
|
753
|
-
children:
|
|
940
|
+
children: i && r
|
|
754
941
|
}
|
|
755
942
|
);
|
|
756
943
|
}
|
|
757
|
-
function
|
|
944
|
+
function qt({
|
|
758
945
|
items: t,
|
|
759
946
|
value: r,
|
|
760
947
|
defaultValue: o,
|
|
761
948
|
onChange: n,
|
|
762
|
-
children:
|
|
763
|
-
className:
|
|
949
|
+
children: s,
|
|
950
|
+
className: i = ""
|
|
764
951
|
}) {
|
|
765
|
-
const a =
|
|
766
|
-
() => o ?? t.find((
|
|
767
|
-
),
|
|
768
|
-
(
|
|
769
|
-
d || u(
|
|
952
|
+
const a = j().replace(/:/g, ""), c = D(null), d = r !== void 0, [l, u] = C(
|
|
953
|
+
() => o ?? t.find((b) => !b.disabled)?.value ?? t[0]?.value ?? ""
|
|
954
|
+
), f = d ? r : l, h = k(
|
|
955
|
+
(b) => {
|
|
956
|
+
d || u(b), n?.(b);
|
|
770
957
|
},
|
|
771
958
|
[d, n]
|
|
772
|
-
), p = t.filter((
|
|
773
|
-
const v = p.findIndex((x) => x.value ===
|
|
774
|
-
let
|
|
775
|
-
switch (
|
|
959
|
+
), p = t.filter((b) => !b.disabled), y = (b) => {
|
|
960
|
+
const v = p.findIndex((x) => x.value === f);
|
|
961
|
+
let N = v;
|
|
962
|
+
switch (b.key) {
|
|
776
963
|
case "ArrowRight":
|
|
777
964
|
case "ArrowDown":
|
|
778
|
-
|
|
965
|
+
b.preventDefault(), N = (v + 1) % p.length;
|
|
779
966
|
break;
|
|
780
967
|
case "ArrowLeft":
|
|
781
968
|
case "ArrowUp":
|
|
782
|
-
|
|
969
|
+
b.preventDefault(), N = (v - 1 + p.length) % p.length;
|
|
783
970
|
break;
|
|
784
971
|
case "Home":
|
|
785
|
-
|
|
972
|
+
b.preventDefault(), N = 0;
|
|
786
973
|
break;
|
|
787
974
|
case "End":
|
|
788
|
-
|
|
975
|
+
b.preventDefault(), N = p.length - 1;
|
|
789
976
|
break;
|
|
790
977
|
default:
|
|
791
978
|
return;
|
|
792
979
|
}
|
|
793
|
-
const g = p[
|
|
980
|
+
const g = p[N];
|
|
794
981
|
g && (h(g.value), c.current?.querySelector(
|
|
795
982
|
`[data-tab-value="${g.value}"]`
|
|
796
983
|
)?.focus());
|
|
797
984
|
};
|
|
798
|
-
return /* @__PURE__ */ e(
|
|
985
|
+
return /* @__PURE__ */ e(fe.Provider, { value: { activeValue: f, idPrefix: a }, children: /* @__PURE__ */ m("div", { className: i, children: [
|
|
799
986
|
/* @__PURE__ */ e(
|
|
800
987
|
"div",
|
|
801
988
|
{
|
|
@@ -804,75 +991,75 @@ function Pt({
|
|
|
804
991
|
"aria-orientation": "horizontal",
|
|
805
992
|
onKeyDown: y,
|
|
806
993
|
className: "flex border-b border-border",
|
|
807
|
-
children: t.map((
|
|
808
|
-
const v =
|
|
994
|
+
children: t.map((b) => {
|
|
995
|
+
const v = b.value === f;
|
|
809
996
|
return /* @__PURE__ */ m(
|
|
810
997
|
"button",
|
|
811
998
|
{
|
|
812
|
-
id: `${a}-tab-${
|
|
999
|
+
id: `${a}-tab-${b.value}`,
|
|
813
1000
|
role: "tab",
|
|
814
1001
|
type: "button",
|
|
815
|
-
"data-tab-value":
|
|
1002
|
+
"data-tab-value": b.value,
|
|
816
1003
|
"aria-selected": v,
|
|
817
|
-
"aria-controls": `${a}-panel-${
|
|
1004
|
+
"aria-controls": `${a}-panel-${b.value}`,
|
|
818
1005
|
tabIndex: v ? 0 : -1,
|
|
819
|
-
disabled:
|
|
820
|
-
onClick: () => h(
|
|
1006
|
+
disabled: b.disabled,
|
|
1007
|
+
onClick: () => h(b.value),
|
|
821
1008
|
className: [
|
|
822
1009
|
"inline-flex items-center gap-1.5 px-4 py-2.5 text-small font-medium",
|
|
823
1010
|
"border-b-2 -mb-px transition-colors outline-none cursor-pointer",
|
|
824
1011
|
"focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2",
|
|
825
1012
|
v ? "border-primary text-primary" : "border-transparent text-text-secondary hover:text-text-primary hover:border-border-strong",
|
|
826
|
-
|
|
1013
|
+
b.disabled && "opacity-50 pointer-events-none"
|
|
827
1014
|
].filter(Boolean).join(" "),
|
|
828
1015
|
children: [
|
|
829
|
-
|
|
830
|
-
|
|
1016
|
+
b.icon && /* @__PURE__ */ e("span", { className: "shrink-0 size-4", children: b.icon }),
|
|
1017
|
+
b.label
|
|
831
1018
|
]
|
|
832
1019
|
},
|
|
833
|
-
|
|
1020
|
+
b.value
|
|
834
1021
|
);
|
|
835
1022
|
})
|
|
836
1023
|
}
|
|
837
1024
|
),
|
|
838
|
-
|
|
1025
|
+
s
|
|
839
1026
|
] }) });
|
|
840
1027
|
}
|
|
841
|
-
const
|
|
1028
|
+
const tt = {
|
|
842
1029
|
top: "bottom",
|
|
843
1030
|
bottom: "top",
|
|
844
1031
|
left: "right",
|
|
845
1032
|
right: "left"
|
|
846
1033
|
};
|
|
847
|
-
function
|
|
1034
|
+
function Gt({
|
|
848
1035
|
children: t,
|
|
849
1036
|
content: r,
|
|
850
1037
|
placement: o = "top",
|
|
851
1038
|
delay: n = 200,
|
|
852
|
-
className:
|
|
1039
|
+
className: s = ""
|
|
853
1040
|
}) {
|
|
854
|
-
const [
|
|
1041
|
+
const [i, a] = C(!1), c = D(null), {
|
|
855
1042
|
refs: d,
|
|
856
1043
|
floatingStyles: l,
|
|
857
1044
|
context: u,
|
|
858
|
-
middlewareData:
|
|
1045
|
+
middlewareData: f,
|
|
859
1046
|
placement: h
|
|
860
|
-
} =
|
|
861
|
-
open:
|
|
1047
|
+
} = G({
|
|
1048
|
+
open: i,
|
|
862
1049
|
onOpenChange: a,
|
|
863
1050
|
placement: o,
|
|
864
1051
|
middleware: [
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
1052
|
+
Y(8),
|
|
1053
|
+
_(),
|
|
1054
|
+
W({ padding: 8 }),
|
|
868
1055
|
// eslint-disable-next-line react-hooks/refs -- floating-ui arrow middleware needs ref object
|
|
869
|
-
|
|
1056
|
+
Fe({ element: c })
|
|
870
1057
|
],
|
|
871
|
-
whileElementsMounted:
|
|
872
|
-
}), p =
|
|
873
|
-
return /* @__PURE__ */ m(
|
|
874
|
-
/* @__PURE__ */ e("span", { ref: d.setReference, className: "inline-flex", ...
|
|
875
|
-
|
|
1058
|
+
whileElementsMounted: X
|
|
1059
|
+
}), p = Ee(u, { delay: n, move: !1 }), y = Se(u), b = J(u), v = Q(u, { role: "tooltip" }), { getReferenceProps: N, getFloatingProps: g } = Z([p, y, b, v]), x = h.split("-")[0], $ = f.arrow?.x, B = f.arrow?.y;
|
|
1060
|
+
return /* @__PURE__ */ m(V, { children: [
|
|
1061
|
+
/* @__PURE__ */ e("span", { ref: d.setReference, className: "inline-flex", ...N(), children: t }),
|
|
1062
|
+
i && r && /* @__PURE__ */ e(ee, { children: /* @__PURE__ */ m(
|
|
876
1063
|
"div",
|
|
877
1064
|
{
|
|
878
1065
|
ref: d.setFloating,
|
|
@@ -882,7 +1069,7 @@ function Bt({
|
|
|
882
1069
|
"z-50 max-w-[var(--container-xs)] px-3 py-1.5 rounded-md text-small",
|
|
883
1070
|
"bg-text-primary text-bg-primary shadow-md",
|
|
884
1071
|
"pointer-events-none animate-floating-in",
|
|
885
|
-
|
|
1072
|
+
s
|
|
886
1073
|
].join(" "),
|
|
887
1074
|
...g(),
|
|
888
1075
|
children: [
|
|
@@ -893,9 +1080,9 @@ function Bt({
|
|
|
893
1080
|
ref: c,
|
|
894
1081
|
className: "absolute size-2 bg-text-primary rotate-45",
|
|
895
1082
|
style: {
|
|
896
|
-
left:
|
|
897
|
-
top:
|
|
898
|
-
[
|
|
1083
|
+
left: $ != null ? `${$}px` : "",
|
|
1084
|
+
top: B != null ? `${B}px` : "",
|
|
1085
|
+
[tt[x]]: "-4px"
|
|
899
1086
|
}
|
|
900
1087
|
}
|
|
901
1088
|
)
|
|
@@ -904,10 +1091,10 @@ function Bt({
|
|
|
904
1091
|
) })
|
|
905
1092
|
] });
|
|
906
1093
|
}
|
|
907
|
-
function
|
|
908
|
-
const { i18n: t } =
|
|
909
|
-
(
|
|
910
|
-
t.changeLanguage(
|
|
1094
|
+
function rt() {
|
|
1095
|
+
const { i18n: t } = oe(), r = t.language ?? "en", o = k(
|
|
1096
|
+
(s) => {
|
|
1097
|
+
t.changeLanguage(s);
|
|
911
1098
|
},
|
|
912
1099
|
[t]
|
|
913
1100
|
), n = k(() => {
|
|
@@ -915,12 +1102,12 @@ function Xe() {
|
|
|
915
1102
|
}, [r, o]);
|
|
916
1103
|
return { language: r, toggleLanguage: n, setLanguage: o };
|
|
917
1104
|
}
|
|
918
|
-
const
|
|
1105
|
+
const nt = [
|
|
919
1106
|
{ value: "en", label: "EN" },
|
|
920
1107
|
{ value: "fr", label: "FR" }
|
|
921
1108
|
];
|
|
922
|
-
function
|
|
923
|
-
const { language: r, setLanguage: o } =
|
|
1109
|
+
function Xt({ className: t = "" }) {
|
|
1110
|
+
const { language: r, setLanguage: o } = rt();
|
|
924
1111
|
return /* @__PURE__ */ e(
|
|
925
1112
|
"div",
|
|
926
1113
|
{
|
|
@@ -930,20 +1117,20 @@ function Lt({ className: t = "" }) {
|
|
|
930
1117
|
"inline-flex items-center rounded-full border border-border bg-bg-secondary p-0.5",
|
|
931
1118
|
t
|
|
932
1119
|
].filter(Boolean).join(" "),
|
|
933
|
-
children:
|
|
934
|
-
const
|
|
1120
|
+
children: nt.map(({ value: n, label: s }) => {
|
|
1121
|
+
const i = r === n;
|
|
935
1122
|
return /* @__PURE__ */ e(
|
|
936
1123
|
"button",
|
|
937
1124
|
{
|
|
938
1125
|
type: "button",
|
|
939
1126
|
role: "radio",
|
|
940
|
-
"aria-checked":
|
|
1127
|
+
"aria-checked": i,
|
|
941
1128
|
onClick: () => o(n),
|
|
942
1129
|
className: [
|
|
943
1130
|
"rounded-full px-2.5 py-0.5 text-caption font-medium transition-colors cursor-pointer",
|
|
944
|
-
|
|
1131
|
+
i ? "bg-primary text-white shadow-sm" : "text-text-secondary hover:text-text-primary"
|
|
945
1132
|
].join(" "),
|
|
946
|
-
children:
|
|
1133
|
+
children: s
|
|
947
1134
|
},
|
|
948
1135
|
n
|
|
949
1136
|
);
|
|
@@ -951,77 +1138,77 @@ function Lt({ className: t = "" }) {
|
|
|
951
1138
|
}
|
|
952
1139
|
);
|
|
953
1140
|
}
|
|
954
|
-
const
|
|
955
|
-
function
|
|
956
|
-
|
|
1141
|
+
const te = "poesis-theme", H = /* @__PURE__ */ new Set();
|
|
1142
|
+
function ot() {
|
|
1143
|
+
H.forEach((t) => t());
|
|
957
1144
|
}
|
|
958
|
-
function
|
|
959
|
-
return
|
|
1145
|
+
function it(t) {
|
|
1146
|
+
return H.add(t), () => H.delete(t);
|
|
960
1147
|
}
|
|
961
|
-
function
|
|
1148
|
+
function st() {
|
|
962
1149
|
return document.documentElement.classList.contains("dark") ? "dark" : "light";
|
|
963
1150
|
}
|
|
964
|
-
function
|
|
1151
|
+
function at() {
|
|
965
1152
|
return "light";
|
|
966
1153
|
}
|
|
967
|
-
function
|
|
968
|
-
t === "dark" ? document.documentElement.classList.add("dark") : document.documentElement.classList.remove("dark"), localStorage.setItem(
|
|
1154
|
+
function T(t) {
|
|
1155
|
+
t === "dark" ? document.documentElement.classList.add("dark") : document.documentElement.classList.remove("dark"), localStorage.setItem(te, t), ot();
|
|
969
1156
|
}
|
|
970
|
-
function
|
|
971
|
-
const t = localStorage.getItem(
|
|
1157
|
+
function Yt() {
|
|
1158
|
+
const t = localStorage.getItem(te);
|
|
972
1159
|
if (t) {
|
|
973
|
-
|
|
1160
|
+
T(t);
|
|
974
1161
|
return;
|
|
975
1162
|
}
|
|
976
1163
|
const r = window.matchMedia("(prefers-color-scheme: dark)").matches;
|
|
977
|
-
|
|
1164
|
+
T(r ? "dark" : "light");
|
|
978
1165
|
}
|
|
979
|
-
function
|
|
980
|
-
const t =
|
|
981
|
-
|
|
982
|
-
const n = window.matchMedia("(prefers-color-scheme: dark)"),
|
|
983
|
-
localStorage.getItem(
|
|
1166
|
+
function lt() {
|
|
1167
|
+
const t = ge(it, st, at);
|
|
1168
|
+
I(() => {
|
|
1169
|
+
const n = window.matchMedia("(prefers-color-scheme: dark)"), s = (i) => {
|
|
1170
|
+
localStorage.getItem(te) || T(i.matches ? "dark" : "light");
|
|
984
1171
|
};
|
|
985
|
-
return n.addEventListener("change",
|
|
1172
|
+
return n.addEventListener("change", s), () => n.removeEventListener("change", s);
|
|
986
1173
|
}, []);
|
|
987
1174
|
const r = k(() => {
|
|
988
|
-
|
|
1175
|
+
T(t === "dark" ? "light" : "dark");
|
|
989
1176
|
}, [t]), o = k((n) => {
|
|
990
|
-
|
|
1177
|
+
T(n);
|
|
991
1178
|
}, []);
|
|
992
1179
|
return { theme: t, toggleTheme: r, setTheme: o, isDark: t === "dark" };
|
|
993
1180
|
}
|
|
994
|
-
function
|
|
995
|
-
const { isDark: n, toggleTheme:
|
|
1181
|
+
function _t({ variant: t = "ghost", size: r = "md", className: o }) {
|
|
1182
|
+
const { isDark: n, toggleTheme: s } = lt(), { t: i } = oe();
|
|
996
1183
|
return /* @__PURE__ */ e(
|
|
997
|
-
|
|
1184
|
+
He,
|
|
998
1185
|
{
|
|
999
1186
|
variant: t,
|
|
1000
1187
|
size: r,
|
|
1001
|
-
icon: n ? /* @__PURE__ */ e(
|
|
1002
|
-
"aria-label":
|
|
1003
|
-
onClick:
|
|
1188
|
+
icon: n ? /* @__PURE__ */ e(ye, { size: 16 }) : /* @__PURE__ */ e(ve, { size: 16 }),
|
|
1189
|
+
"aria-label": i("theme.toggleTheme"),
|
|
1190
|
+
onClick: s,
|
|
1004
1191
|
className: o
|
|
1005
1192
|
}
|
|
1006
1193
|
);
|
|
1007
1194
|
}
|
|
1008
|
-
function
|
|
1195
|
+
function ct({
|
|
1009
1196
|
logo: t,
|
|
1010
1197
|
categories: r = [],
|
|
1011
1198
|
activeCategoryId: o,
|
|
1012
1199
|
onCategoryChange: n,
|
|
1013
|
-
actions:
|
|
1014
|
-
onBurgerClick:
|
|
1200
|
+
actions: s,
|
|
1201
|
+
onBurgerClick: i
|
|
1015
1202
|
}) {
|
|
1016
1203
|
return /* @__PURE__ */ m("header", { className: "fixed inset-x-0 top-0 z-40 flex h-14 items-center border-b border-border bg-bg-primary px-md", children: [
|
|
1017
1204
|
/* @__PURE__ */ e(
|
|
1018
1205
|
"button",
|
|
1019
1206
|
{
|
|
1020
1207
|
type: "button",
|
|
1021
|
-
onClick:
|
|
1208
|
+
onClick: i,
|
|
1022
1209
|
className: "mr-sm flex size-9 items-center justify-center rounded-md text-text-secondary hover:bg-bg-tertiary hover:text-text-primary lg:hidden",
|
|
1023
1210
|
"aria-label": "Open menu",
|
|
1024
|
-
children: /* @__PURE__ */ e(
|
|
1211
|
+
children: /* @__PURE__ */ e(Ne, { size: 22 })
|
|
1025
1212
|
}
|
|
1026
1213
|
),
|
|
1027
1214
|
/* @__PURE__ */ e("div", { className: "mr-lg flex shrink-0 items-center", children: t ?? /* @__PURE__ */ e("span", { className: "text-h3 font-bold text-epfl-red", children: "EPFL" }) }),
|
|
@@ -1046,10 +1233,10 @@ function et({
|
|
|
1046
1233
|
);
|
|
1047
1234
|
}) }),
|
|
1048
1235
|
/* @__PURE__ */ e("div", { className: "flex-1 lg:hidden" }),
|
|
1049
|
-
|
|
1236
|
+
s && /* @__PURE__ */ e("div", { className: "flex items-center gap-xs", children: s })
|
|
1050
1237
|
] });
|
|
1051
1238
|
}
|
|
1052
|
-
function
|
|
1239
|
+
function dt({
|
|
1053
1240
|
sections: t = [],
|
|
1054
1241
|
activeLinkId: r,
|
|
1055
1242
|
onLinkClick: o,
|
|
@@ -1062,46 +1249,46 @@ function tt({
|
|
|
1062
1249
|
"hidden lg:flex flex-col border-r border-border bg-bg-secondary overflow-y-auto transition-[width] duration-200",
|
|
1063
1250
|
n ? "w-16" : "w-64"
|
|
1064
1251
|
].join(" "),
|
|
1065
|
-
children: /* @__PURE__ */ e("nav", { className: "flex flex-col gap-xs p-sm", "aria-label": "Page navigation", children: t.map((
|
|
1066
|
-
|
|
1252
|
+
children: /* @__PURE__ */ e("nav", { className: "flex flex-col gap-xs p-sm", "aria-label": "Page navigation", children: t.map((s) => /* @__PURE__ */ e(
|
|
1253
|
+
mt,
|
|
1067
1254
|
{
|
|
1068
|
-
section:
|
|
1255
|
+
section: s,
|
|
1069
1256
|
activeLinkId: r,
|
|
1070
1257
|
onLinkClick: o,
|
|
1071
1258
|
collapsed: n
|
|
1072
1259
|
},
|
|
1073
|
-
|
|
1260
|
+
s.id
|
|
1074
1261
|
)) })
|
|
1075
1262
|
}
|
|
1076
1263
|
);
|
|
1077
1264
|
}
|
|
1078
|
-
function
|
|
1265
|
+
function mt({
|
|
1079
1266
|
section: t,
|
|
1080
1267
|
activeLinkId: r,
|
|
1081
1268
|
onLinkClick: o,
|
|
1082
1269
|
collapsed: n
|
|
1083
1270
|
}) {
|
|
1084
|
-
const [
|
|
1271
|
+
const [s, i] = C(!0);
|
|
1085
1272
|
return /* @__PURE__ */ m("div", { className: "flex flex-col", children: [
|
|
1086
1273
|
t.title && !n && /* @__PURE__ */ m(
|
|
1087
1274
|
"button",
|
|
1088
1275
|
{
|
|
1089
1276
|
type: "button",
|
|
1090
|
-
onClick: () =>
|
|
1277
|
+
onClick: () => i((a) => !a),
|
|
1091
1278
|
className: "flex items-center justify-between rounded-md px-sm py-xs text-caption font-semibold uppercase tracking-wide text-text-muted hover:text-text-secondary",
|
|
1092
1279
|
children: [
|
|
1093
1280
|
/* @__PURE__ */ e("span", { children: t.title }),
|
|
1094
1281
|
/* @__PURE__ */ e(
|
|
1095
|
-
|
|
1282
|
+
ie,
|
|
1096
1283
|
{
|
|
1097
1284
|
size: 14,
|
|
1098
|
-
className: `transition-transform ${
|
|
1285
|
+
className: `transition-transform ${s ? "" : "-rotate-90"}`
|
|
1099
1286
|
}
|
|
1100
1287
|
)
|
|
1101
1288
|
]
|
|
1102
1289
|
}
|
|
1103
1290
|
),
|
|
1104
|
-
(
|
|
1291
|
+
(s || n) && /* @__PURE__ */ e("ul", { className: "flex flex-col gap-px", children: t.links.map((a) => {
|
|
1105
1292
|
const c = a.id === r;
|
|
1106
1293
|
return /* @__PURE__ */ e("li", { children: /* @__PURE__ */ m(
|
|
1107
1294
|
"button",
|
|
@@ -1124,29 +1311,29 @@ function rt({
|
|
|
1124
1311
|
}) })
|
|
1125
1312
|
] });
|
|
1126
1313
|
}
|
|
1127
|
-
function
|
|
1314
|
+
function ut({
|
|
1128
1315
|
open: t,
|
|
1129
1316
|
onClose: r,
|
|
1130
1317
|
categories: o = [],
|
|
1131
1318
|
activeCategoryId: n,
|
|
1132
|
-
onCategoryChange:
|
|
1133
|
-
sections:
|
|
1319
|
+
onCategoryChange: s,
|
|
1320
|
+
sections: i = [],
|
|
1134
1321
|
activeLinkId: a,
|
|
1135
1322
|
onLinkClick: c
|
|
1136
1323
|
}) {
|
|
1137
1324
|
const d = D(null);
|
|
1138
|
-
return
|
|
1325
|
+
return I(() => {
|
|
1139
1326
|
if (!t) return;
|
|
1140
1327
|
const l = (u) => {
|
|
1141
1328
|
u.key === "Escape" && r();
|
|
1142
1329
|
};
|
|
1143
1330
|
return document.addEventListener("keydown", l), () => document.removeEventListener("keydown", l);
|
|
1144
|
-
}, [t, r]),
|
|
1331
|
+
}, [t, r]), I(() => {
|
|
1145
1332
|
if (!t) return;
|
|
1146
1333
|
d.current?.focus();
|
|
1147
|
-
}, [t]),
|
|
1334
|
+
}, [t]), I(() => (t ? document.body.style.overflow = "hidden" : document.body.style.overflow = "", () => {
|
|
1148
1335
|
document.body.style.overflow = "";
|
|
1149
|
-
}), [t]), /* @__PURE__ */ m(
|
|
1336
|
+
}), [t]), /* @__PURE__ */ m(V, { children: [
|
|
1150
1337
|
/* @__PURE__ */ e(
|
|
1151
1338
|
"div",
|
|
1152
1339
|
{
|
|
@@ -1180,7 +1367,7 @@ function nt({
|
|
|
1180
1367
|
onClick: r,
|
|
1181
1368
|
className: "flex size-9 items-center justify-center rounded-md text-text-secondary hover:bg-bg-tertiary hover:text-text-primary",
|
|
1182
1369
|
"aria-label": "Close menu",
|
|
1183
|
-
children: /* @__PURE__ */ e(
|
|
1370
|
+
children: /* @__PURE__ */ e(we, { size: 18 })
|
|
1184
1371
|
}
|
|
1185
1372
|
)
|
|
1186
1373
|
] }),
|
|
@@ -1194,7 +1381,7 @@ function nt({
|
|
|
1194
1381
|
{
|
|
1195
1382
|
type: "button",
|
|
1196
1383
|
onClick: () => {
|
|
1197
|
-
|
|
1384
|
+
s?.(l.id);
|
|
1198
1385
|
},
|
|
1199
1386
|
className: [
|
|
1200
1387
|
"flex items-center gap-sm rounded-md px-sm py-xs text-small font-medium transition-colors",
|
|
@@ -1209,8 +1396,8 @@ function nt({
|
|
|
1209
1396
|
);
|
|
1210
1397
|
})
|
|
1211
1398
|
] }),
|
|
1212
|
-
|
|
1213
|
-
|
|
1399
|
+
i.map((l) => /* @__PURE__ */ e(
|
|
1400
|
+
pt,
|
|
1214
1401
|
{
|
|
1215
1402
|
section: l,
|
|
1216
1403
|
activeLinkId: a,
|
|
@@ -1226,23 +1413,23 @@ function nt({
|
|
|
1226
1413
|
)
|
|
1227
1414
|
] });
|
|
1228
1415
|
}
|
|
1229
|
-
function
|
|
1416
|
+
function pt({
|
|
1230
1417
|
section: t,
|
|
1231
1418
|
activeLinkId: r,
|
|
1232
1419
|
onLinkClick: o
|
|
1233
1420
|
}) {
|
|
1234
|
-
const [n,
|
|
1421
|
+
const [n, s] = C(!0);
|
|
1235
1422
|
return /* @__PURE__ */ m("div", { className: "mb-xs flex flex-col", children: [
|
|
1236
1423
|
t.title && /* @__PURE__ */ m(
|
|
1237
1424
|
"button",
|
|
1238
1425
|
{
|
|
1239
1426
|
type: "button",
|
|
1240
|
-
onClick: () =>
|
|
1427
|
+
onClick: () => s((i) => !i),
|
|
1241
1428
|
className: "flex items-center justify-between rounded-md px-sm py-xs text-caption font-semibold uppercase tracking-wide text-text-muted hover:text-text-secondary",
|
|
1242
1429
|
children: [
|
|
1243
1430
|
/* @__PURE__ */ e("span", { children: t.title }),
|
|
1244
1431
|
/* @__PURE__ */ e(
|
|
1245
|
-
|
|
1432
|
+
ie,
|
|
1246
1433
|
{
|
|
1247
1434
|
size: 14,
|
|
1248
1435
|
className: `transition-transform ${n ? "" : "-rotate-90"}`
|
|
@@ -1251,57 +1438,57 @@ function ot({
|
|
|
1251
1438
|
]
|
|
1252
1439
|
}
|
|
1253
1440
|
),
|
|
1254
|
-
n && /* @__PURE__ */ e("ul", { className: "flex flex-col gap-px", children: t.links.map((
|
|
1255
|
-
const a =
|
|
1441
|
+
n && /* @__PURE__ */ e("ul", { className: "flex flex-col gap-px", children: t.links.map((i) => {
|
|
1442
|
+
const a = i.id === r;
|
|
1256
1443
|
return /* @__PURE__ */ e("li", { children: /* @__PURE__ */ m(
|
|
1257
1444
|
"button",
|
|
1258
1445
|
{
|
|
1259
1446
|
type: "button",
|
|
1260
|
-
onClick: () => o?.(
|
|
1447
|
+
onClick: () => o?.(i.href),
|
|
1261
1448
|
className: [
|
|
1262
1449
|
"flex w-full items-center gap-sm rounded-md px-sm py-xs text-small transition-colors",
|
|
1263
1450
|
a ? "bg-primary/10 font-medium text-primary" : "text-text-secondary hover:bg-bg-tertiary hover:text-text-primary"
|
|
1264
1451
|
].join(" "),
|
|
1265
1452
|
"aria-current": a ? "page" : void 0,
|
|
1266
1453
|
children: [
|
|
1267
|
-
|
|
1268
|
-
/* @__PURE__ */ e("span", { children:
|
|
1454
|
+
i.icon && /* @__PURE__ */ e(i.icon, { size: 18 }),
|
|
1455
|
+
/* @__PURE__ */ e("span", { children: i.label })
|
|
1269
1456
|
]
|
|
1270
1457
|
}
|
|
1271
|
-
) },
|
|
1458
|
+
) }, i.id);
|
|
1272
1459
|
}) })
|
|
1273
1460
|
] });
|
|
1274
1461
|
}
|
|
1275
|
-
function
|
|
1462
|
+
function Wt({
|
|
1276
1463
|
children: t,
|
|
1277
1464
|
logo: r,
|
|
1278
1465
|
categories: o = [],
|
|
1279
1466
|
activeCategoryId: n,
|
|
1280
|
-
onCategoryChange:
|
|
1281
|
-
sections:
|
|
1467
|
+
onCategoryChange: s,
|
|
1468
|
+
sections: i = [],
|
|
1282
1469
|
activeLinkId: a,
|
|
1283
1470
|
onLinkClick: c,
|
|
1284
1471
|
actions: d,
|
|
1285
1472
|
sideNavCollapsed: l = !1
|
|
1286
1473
|
}) {
|
|
1287
|
-
const [u,
|
|
1474
|
+
const [u, f] = C(!1);
|
|
1288
1475
|
return /* @__PURE__ */ m("div", { className: "flex h-screen flex-col bg-bg-primary", children: [
|
|
1289
1476
|
/* @__PURE__ */ e(
|
|
1290
|
-
|
|
1477
|
+
ct,
|
|
1291
1478
|
{
|
|
1292
1479
|
logo: r,
|
|
1293
1480
|
categories: o,
|
|
1294
1481
|
activeCategoryId: n,
|
|
1295
|
-
onCategoryChange:
|
|
1482
|
+
onCategoryChange: s,
|
|
1296
1483
|
actions: d,
|
|
1297
|
-
onBurgerClick: () =>
|
|
1484
|
+
onBurgerClick: () => f(!0)
|
|
1298
1485
|
}
|
|
1299
1486
|
),
|
|
1300
1487
|
/* @__PURE__ */ m("div", { className: "flex flex-1 overflow-hidden pt-14", children: [
|
|
1301
1488
|
/* @__PURE__ */ e(
|
|
1302
|
-
|
|
1489
|
+
dt,
|
|
1303
1490
|
{
|
|
1304
|
-
sections:
|
|
1491
|
+
sections: i,
|
|
1305
1492
|
activeLinkId: a,
|
|
1306
1493
|
onLinkClick: c,
|
|
1307
1494
|
collapsed: l
|
|
@@ -1310,25 +1497,25 @@ function Mt({
|
|
|
1310
1497
|
/* @__PURE__ */ e("main", { className: "flex-1 overflow-y-auto px-md py-lg lg:px-lg", children: /* @__PURE__ */ e("div", { className: "mx-auto max-w-[var(--container-6xl)]", children: t }) })
|
|
1311
1498
|
] }),
|
|
1312
1499
|
/* @__PURE__ */ e(
|
|
1313
|
-
|
|
1500
|
+
ut,
|
|
1314
1501
|
{
|
|
1315
1502
|
open: u,
|
|
1316
|
-
onClose: () =>
|
|
1503
|
+
onClose: () => f(!1),
|
|
1317
1504
|
categories: o,
|
|
1318
1505
|
activeCategoryId: n,
|
|
1319
1506
|
onCategoryChange: (h) => {
|
|
1320
|
-
|
|
1507
|
+
s?.(h), f(!1);
|
|
1321
1508
|
},
|
|
1322
|
-
sections:
|
|
1509
|
+
sections: i,
|
|
1323
1510
|
activeLinkId: a,
|
|
1324
1511
|
onLinkClick: (h) => {
|
|
1325
|
-
c?.(h),
|
|
1512
|
+
c?.(h), f(!1);
|
|
1326
1513
|
}
|
|
1327
1514
|
}
|
|
1328
1515
|
)
|
|
1329
1516
|
] });
|
|
1330
1517
|
}
|
|
1331
|
-
const
|
|
1518
|
+
const Jt = z(function({ header: r, footer: o, actions: n, noPadding: s = !1, className: i = "", children: a, ...c }, d) {
|
|
1332
1519
|
const l = o || n;
|
|
1333
1520
|
return /* @__PURE__ */ m(
|
|
1334
1521
|
"div",
|
|
@@ -1337,12 +1524,12 @@ const Ot = C(function({ header: r, footer: o, actions: n, noPadding: i = !1, cla
|
|
|
1337
1524
|
className: [
|
|
1338
1525
|
"rounded-md shadow-md border border-border bg-bg-secondary",
|
|
1339
1526
|
"flex flex-col overflow-hidden",
|
|
1340
|
-
|
|
1527
|
+
i
|
|
1341
1528
|
].filter(Boolean).join(" "),
|
|
1342
1529
|
...c,
|
|
1343
1530
|
children: [
|
|
1344
1531
|
r && /* @__PURE__ */ e("div", { className: "px-lg py-md border-b border-border", children: /* @__PURE__ */ e("div", { className: "font-semibold text-body text-text-primary", children: r }) }),
|
|
1345
|
-
/* @__PURE__ */ e("div", { className:
|
|
1532
|
+
/* @__PURE__ */ e("div", { className: s ? "" : "p-lg", children: a }),
|
|
1346
1533
|
l && /* @__PURE__ */ m("div", { className: "px-lg py-md border-t border-border flex items-center gap-3", children: [
|
|
1347
1534
|
o && /* @__PURE__ */ e("div", { className: "flex-1 min-w-0", children: o }),
|
|
1348
1535
|
n && /* @__PURE__ */ e("div", { className: "ml-auto flex items-center gap-2", children: n })
|
|
@@ -1350,15 +1537,15 @@ const Ot = C(function({ header: r, footer: o, actions: n, noPadding: i = !1, cla
|
|
|
1350
1537
|
]
|
|
1351
1538
|
}
|
|
1352
1539
|
);
|
|
1353
|
-
}),
|
|
1354
|
-
function({ items: r, layout: o = "horizontal", dividers: n = !0, className:
|
|
1540
|
+
}), Qt = z(
|
|
1541
|
+
function({ items: r, layout: o = "horizontal", dividers: n = !0, className: s = "", ...i }, a) {
|
|
1355
1542
|
const c = o === "horizontal";
|
|
1356
1543
|
return /* @__PURE__ */ e(
|
|
1357
1544
|
"dl",
|
|
1358
1545
|
{
|
|
1359
1546
|
ref: a,
|
|
1360
|
-
className: ["text-body", n && "divide-y divide-border",
|
|
1361
|
-
...
|
|
1547
|
+
className: ["text-body", n && "divide-y divide-border", s].filter(Boolean).join(" "),
|
|
1548
|
+
...i,
|
|
1362
1549
|
children: r.map((d, l) => /* @__PURE__ */ m(
|
|
1363
1550
|
"div",
|
|
1364
1551
|
{
|
|
@@ -1385,26 +1572,26 @@ const Ot = C(function({ header: r, footer: o, actions: n, noPadding: i = !1, cla
|
|
|
1385
1572
|
}
|
|
1386
1573
|
);
|
|
1387
1574
|
}
|
|
1388
|
-
),
|
|
1575
|
+
), Zt = z(function({ illustration: r, title: o, description: n, action: s, className: i = "", ...a }, c) {
|
|
1389
1576
|
return /* @__PURE__ */ m(
|
|
1390
1577
|
"div",
|
|
1391
1578
|
{
|
|
1392
1579
|
ref: c,
|
|
1393
1580
|
className: [
|
|
1394
1581
|
"flex flex-col items-center justify-center text-center py-2xl px-lg",
|
|
1395
|
-
|
|
1582
|
+
i
|
|
1396
1583
|
].filter(Boolean).join(" "),
|
|
1397
1584
|
...a,
|
|
1398
1585
|
children: [
|
|
1399
1586
|
r && /* @__PURE__ */ e("div", { className: "mb-lg text-text-secondary", children: r }),
|
|
1400
1587
|
/* @__PURE__ */ e("h3", { className: "text-h3 font-semibold text-text-primary", children: o }),
|
|
1401
1588
|
n && /* @__PURE__ */ e("p", { className: "mt-xs text-body text-text-secondary max-w-[var(--container-md)]", children: n }),
|
|
1402
|
-
|
|
1589
|
+
s && /* @__PURE__ */ e("div", { className: "mt-lg", children: s })
|
|
1403
1590
|
]
|
|
1404
1591
|
}
|
|
1405
1592
|
);
|
|
1406
1593
|
});
|
|
1407
|
-
function
|
|
1594
|
+
function ft(t, r) {
|
|
1408
1595
|
if (!t.sortValue || r.length === 0) return "text";
|
|
1409
1596
|
for (const o of r) {
|
|
1410
1597
|
const n = t.sortValue(o);
|
|
@@ -1412,49 +1599,49 @@ function it(t, r) {
|
|
|
1412
1599
|
}
|
|
1413
1600
|
return "text";
|
|
1414
1601
|
}
|
|
1415
|
-
function
|
|
1602
|
+
function bt({
|
|
1416
1603
|
active: t,
|
|
1417
1604
|
direction: r,
|
|
1418
1605
|
columnType: o
|
|
1419
1606
|
}) {
|
|
1420
|
-
return t ? o === "numeric" ? r === "asc" ? /* @__PURE__ */ e(
|
|
1607
|
+
return t ? o === "numeric" ? r === "asc" ? /* @__PURE__ */ e(Ce, { size: 14, className: "ml-1 inline", "aria-hidden": !0 }) : /* @__PURE__ */ e($e, { size: 14, className: "ml-1 inline", "aria-hidden": !0 }) : r === "asc" ? /* @__PURE__ */ e(ze, { size: 14, className: "ml-1 inline", "aria-hidden": !0 }) : /* @__PURE__ */ e(De, { size: 14, className: "ml-1 inline", "aria-hidden": !0 }) : /* @__PURE__ */ e(ke, { size: 14, className: "ml-1 inline opacity-30", "aria-hidden": !0 });
|
|
1421
1608
|
}
|
|
1422
|
-
const
|
|
1609
|
+
const er = z(function({
|
|
1423
1610
|
columns: r,
|
|
1424
1611
|
data: o,
|
|
1425
1612
|
rowKey: n,
|
|
1426
|
-
striped:
|
|
1427
|
-
sort:
|
|
1613
|
+
striped: s = !1,
|
|
1614
|
+
sort: i,
|
|
1428
1615
|
onSortChange: a,
|
|
1429
1616
|
emptyContent: c,
|
|
1430
1617
|
className: d = "",
|
|
1431
1618
|
...l
|
|
1432
1619
|
}, u) {
|
|
1433
|
-
const [
|
|
1620
|
+
const [f, h] = C(), p = i ?? f, y = k(
|
|
1434
1621
|
(g) => {
|
|
1435
1622
|
const x = p?.column === g && p.direction === "asc" ? { column: g, direction: "desc" } : { column: g, direction: "asc" };
|
|
1436
1623
|
a ? a(x) : h(x);
|
|
1437
1624
|
},
|
|
1438
1625
|
[p, a]
|
|
1439
|
-
),
|
|
1626
|
+
), b = K(() => {
|
|
1440
1627
|
if (!p || a) return o;
|
|
1441
|
-
const g = r.find((
|
|
1628
|
+
const g = r.find(($) => $.key === p.column);
|
|
1442
1629
|
if (!g?.sortValue) return o;
|
|
1443
1630
|
const x = g.sortValue;
|
|
1444
|
-
return [...o].sort((
|
|
1445
|
-
const
|
|
1446
|
-
if (
|
|
1447
|
-
if (
|
|
1448
|
-
if (
|
|
1449
|
-
const
|
|
1450
|
-
return p.direction === "asc" ?
|
|
1631
|
+
return [...o].sort(($, B) => {
|
|
1632
|
+
const F = x($), E = x(B);
|
|
1633
|
+
if (F == null && E == null) return 0;
|
|
1634
|
+
if (F == null) return 1;
|
|
1635
|
+
if (E == null) return -1;
|
|
1636
|
+
const O = typeof F == "number" && typeof E == "number" ? F - E : String(F).localeCompare(String(E));
|
|
1637
|
+
return p.direction === "asc" ? O : -O;
|
|
1451
1638
|
});
|
|
1452
|
-
}, [o, p, r, a]), v =
|
|
1639
|
+
}, [o, p, r, a]), v = K(() => {
|
|
1453
1640
|
const g = /* @__PURE__ */ new Map();
|
|
1454
1641
|
for (const x of r)
|
|
1455
|
-
x.sortable && g.set(x.key,
|
|
1642
|
+
x.sortable && g.set(x.key, ft(x, o));
|
|
1456
1643
|
return g;
|
|
1457
|
-
}, [r, o]),
|
|
1644
|
+
}, [r, o]), N = b.length === 0;
|
|
1458
1645
|
return /* @__PURE__ */ e(
|
|
1459
1646
|
"div",
|
|
1460
1647
|
{
|
|
@@ -1477,7 +1664,7 @@ const Ht = C(function({
|
|
|
1477
1664
|
children: /* @__PURE__ */ m("span", { className: "inline-flex items-center", children: [
|
|
1478
1665
|
g.header,
|
|
1479
1666
|
g.sortable && /* @__PURE__ */ e(
|
|
1480
|
-
|
|
1667
|
+
bt,
|
|
1481
1668
|
{
|
|
1482
1669
|
active: x,
|
|
1483
1670
|
direction: x ? p.direction : void 0,
|
|
@@ -1489,31 +1676,31 @@ const Ht = C(function({
|
|
|
1489
1676
|
g.key
|
|
1490
1677
|
);
|
|
1491
1678
|
}) }) }),
|
|
1492
|
-
/* @__PURE__ */ e("tbody", { children:
|
|
1679
|
+
/* @__PURE__ */ e("tbody", { children: N ? /* @__PURE__ */ e("tr", { children: /* @__PURE__ */ e(
|
|
1493
1680
|
"td",
|
|
1494
1681
|
{
|
|
1495
1682
|
colSpan: r.length,
|
|
1496
1683
|
className: "px-md py-xl text-center text-text-secondary",
|
|
1497
1684
|
children: c ?? "No data available."
|
|
1498
1685
|
}
|
|
1499
|
-
) }) :
|
|
1686
|
+
) }) : b.map((g, x) => /* @__PURE__ */ e(
|
|
1500
1687
|
"tr",
|
|
1501
1688
|
{
|
|
1502
1689
|
className: [
|
|
1503
1690
|
"border-b border-border last:border-b-0 transition-colors",
|
|
1504
|
-
|
|
1691
|
+
s && x % 2 === 1 && "bg-bg-tertiary/50",
|
|
1505
1692
|
"hover:bg-bg-tertiary/70"
|
|
1506
1693
|
].filter(Boolean).join(" "),
|
|
1507
|
-
children: r.map((
|
|
1694
|
+
children: r.map(($) => /* @__PURE__ */ e(
|
|
1508
1695
|
"td",
|
|
1509
1696
|
{
|
|
1510
1697
|
className: [
|
|
1511
1698
|
"px-md py-sm text-text-primary",
|
|
1512
|
-
|
|
1699
|
+
$.cellClassName
|
|
1513
1700
|
].filter(Boolean).join(" "),
|
|
1514
|
-
children:
|
|
1701
|
+
children: $.cell(g, x)
|
|
1515
1702
|
},
|
|
1516
|
-
|
|
1703
|
+
$.key
|
|
1517
1704
|
))
|
|
1518
1705
|
},
|
|
1519
1706
|
n(g, x)
|
|
@@ -1521,52 +1708,52 @@ const Ht = C(function({
|
|
|
1521
1708
|
] })
|
|
1522
1709
|
}
|
|
1523
1710
|
);
|
|
1524
|
-
}),
|
|
1711
|
+
}), xt = {
|
|
1525
1712
|
success: {
|
|
1526
1713
|
bg: "bg-success-bg",
|
|
1527
1714
|
border: "border-success/30",
|
|
1528
1715
|
text: "text-success",
|
|
1529
|
-
icon:
|
|
1716
|
+
icon: le
|
|
1530
1717
|
},
|
|
1531
1718
|
warning: {
|
|
1532
1719
|
bg: "bg-warning-bg",
|
|
1533
1720
|
border: "border-warning/30",
|
|
1534
1721
|
text: "text-warning",
|
|
1535
|
-
icon:
|
|
1722
|
+
icon: q
|
|
1536
1723
|
},
|
|
1537
1724
|
error: {
|
|
1538
1725
|
bg: "bg-error-bg",
|
|
1539
1726
|
border: "border-error/30",
|
|
1540
1727
|
text: "text-error",
|
|
1541
|
-
icon:
|
|
1728
|
+
icon: ae
|
|
1542
1729
|
},
|
|
1543
1730
|
info: {
|
|
1544
1731
|
bg: "bg-info-bg",
|
|
1545
1732
|
border: "border-info/30",
|
|
1546
1733
|
text: "text-info",
|
|
1547
|
-
icon:
|
|
1734
|
+
icon: se
|
|
1548
1735
|
}
|
|
1549
1736
|
};
|
|
1550
|
-
function
|
|
1737
|
+
function tr({
|
|
1551
1738
|
variant: t,
|
|
1552
1739
|
title: r,
|
|
1553
1740
|
children: o,
|
|
1554
1741
|
dismissible: n = !1,
|
|
1555
|
-
onDismiss:
|
|
1556
|
-
className:
|
|
1742
|
+
onDismiss: s,
|
|
1743
|
+
className: i = ""
|
|
1557
1744
|
}) {
|
|
1558
|
-
const [a, c] =
|
|
1745
|
+
const [a, c] = C(!0), { bg: d, border: l, text: u, icon: f } = xt[t];
|
|
1559
1746
|
if (!a) return null;
|
|
1560
1747
|
const h = () => {
|
|
1561
|
-
c(!1),
|
|
1748
|
+
c(!1), s?.();
|
|
1562
1749
|
};
|
|
1563
1750
|
return /* @__PURE__ */ m(
|
|
1564
1751
|
"div",
|
|
1565
1752
|
{
|
|
1566
1753
|
role: "alert",
|
|
1567
|
-
className: `flex gap-3 rounded-md border p-md ${d} ${l} ${
|
|
1754
|
+
className: `flex gap-3 rounded-md border p-md ${d} ${l} ${i}`,
|
|
1568
1755
|
children: [
|
|
1569
|
-
/* @__PURE__ */ e(
|
|
1756
|
+
/* @__PURE__ */ e(f, { size: 20, className: `shrink-0 mt-0.5 ${u}`, "aria-hidden": !0 }),
|
|
1570
1757
|
/* @__PURE__ */ m("div", { className: "flex-1 min-w-0", children: [
|
|
1571
1758
|
r && /* @__PURE__ */ e("p", { className: `font-semibold text-body ${u}`, children: r }),
|
|
1572
1759
|
/* @__PURE__ */ e("div", { className: "text-body text-text-primary", children: o })
|
|
@@ -1578,35 +1765,35 @@ function qt({
|
|
|
1578
1765
|
onClick: h,
|
|
1579
1766
|
className: "shrink-0 p-1 rounded-sm text-text-secondary hover:text-text-primary hover:bg-bg-tertiary transition-colors cursor-pointer",
|
|
1580
1767
|
"aria-label": "Dismiss alert",
|
|
1581
|
-
children: /* @__PURE__ */ e(
|
|
1768
|
+
children: /* @__PURE__ */ e(U, { size: 16 })
|
|
1582
1769
|
}
|
|
1583
1770
|
)
|
|
1584
1771
|
]
|
|
1585
1772
|
}
|
|
1586
1773
|
);
|
|
1587
1774
|
}
|
|
1588
|
-
const
|
|
1775
|
+
const gt = {
|
|
1589
1776
|
sm: "max-w-[24rem]",
|
|
1590
1777
|
md: "max-w-[32rem]",
|
|
1591
1778
|
lg: "max-w-[42rem]"
|
|
1592
1779
|
};
|
|
1593
|
-
function
|
|
1780
|
+
function ht({
|
|
1594
1781
|
open: t,
|
|
1595
1782
|
onClose: r,
|
|
1596
1783
|
title: o,
|
|
1597
1784
|
size: n = "md",
|
|
1598
|
-
children:
|
|
1599
|
-
footer:
|
|
1785
|
+
children: s,
|
|
1786
|
+
footer: i,
|
|
1600
1787
|
className: a = ""
|
|
1601
1788
|
}) {
|
|
1602
1789
|
const c = D(null);
|
|
1603
|
-
|
|
1790
|
+
I(() => {
|
|
1604
1791
|
if (!t) return;
|
|
1605
1792
|
const l = document.activeElement;
|
|
1606
1793
|
return c.current?.focus(), () => {
|
|
1607
1794
|
l?.focus();
|
|
1608
1795
|
};
|
|
1609
|
-
}, [t]),
|
|
1796
|
+
}, [t]), I(() => {
|
|
1610
1797
|
if (!t) return;
|
|
1611
1798
|
const l = document.body.style.overflow;
|
|
1612
1799
|
return document.body.style.overflow = "hidden", () => {
|
|
@@ -1623,11 +1810,11 @@ function ct({
|
|
|
1623
1810
|
'a[href], button:not([disabled]), textarea, input:not([disabled]), select, [tabindex]:not([tabindex="-1"])'
|
|
1624
1811
|
);
|
|
1625
1812
|
if (u.length === 0) return;
|
|
1626
|
-
const
|
|
1627
|
-
l.shiftKey && document.activeElement ===
|
|
1813
|
+
const f = u[0], h = u[u.length - 1];
|
|
1814
|
+
l.shiftKey && document.activeElement === f ? (l.preventDefault(), h.focus()) : !l.shiftKey && document.activeElement === h && (l.preventDefault(), f.focus());
|
|
1628
1815
|
}
|
|
1629
1816
|
};
|
|
1630
|
-
return t ?
|
|
1817
|
+
return t ? Ie(
|
|
1631
1818
|
/* @__PURE__ */ m(
|
|
1632
1819
|
"div",
|
|
1633
1820
|
{
|
|
@@ -1663,7 +1850,7 @@ function ct({
|
|
|
1663
1850
|
{
|
|
1664
1851
|
ref: c,
|
|
1665
1852
|
tabIndex: -1,
|
|
1666
|
-
className: `relative z-10 flex flex-col w-full ${
|
|
1853
|
+
className: `relative z-10 flex flex-col w-full ${gt[n]} rounded-lg border border-border bg-bg-primary shadow-xl outline-none animate-dialog-in ${a}`,
|
|
1667
1854
|
children: [
|
|
1668
1855
|
o && /* @__PURE__ */ m("div", { className: "flex items-center justify-between px-lg py-md border-b border-border", children: [
|
|
1669
1856
|
/* @__PURE__ */ e(
|
|
@@ -1681,12 +1868,12 @@ function ct({
|
|
|
1681
1868
|
onClick: r,
|
|
1682
1869
|
className: "shrink-0 p-1 rounded-sm text-text-secondary hover:text-text-primary hover:bg-bg-tertiary transition-colors cursor-pointer",
|
|
1683
1870
|
"aria-label": "Close dialog",
|
|
1684
|
-
children: /* @__PURE__ */ e(
|
|
1871
|
+
children: /* @__PURE__ */ e(U, { size: 18 })
|
|
1685
1872
|
}
|
|
1686
1873
|
)
|
|
1687
1874
|
] }),
|
|
1688
|
-
/* @__PURE__ */ e("div", { className: "flex-1 overflow-y-auto px-lg py-md text-body text-text-primary", children:
|
|
1689
|
-
|
|
1875
|
+
/* @__PURE__ */ e("div", { className: "flex-1 overflow-y-auto px-lg py-md text-body text-text-primary", children: s }),
|
|
1876
|
+
i && /* @__PURE__ */ e("div", { className: "flex items-center justify-end gap-sm px-lg py-md border-t border-border", children: i })
|
|
1690
1877
|
]
|
|
1691
1878
|
}
|
|
1692
1879
|
)
|
|
@@ -1698,28 +1885,28 @@ function ct({
|
|
|
1698
1885
|
document.body
|
|
1699
1886
|
) : null;
|
|
1700
1887
|
}
|
|
1701
|
-
function
|
|
1888
|
+
function rr({
|
|
1702
1889
|
open: t,
|
|
1703
1890
|
onCancel: r,
|
|
1704
1891
|
onConfirm: o,
|
|
1705
1892
|
title: n,
|
|
1706
|
-
children:
|
|
1707
|
-
confirmLabel:
|
|
1893
|
+
children: s,
|
|
1894
|
+
confirmLabel: i = "Confirm",
|
|
1708
1895
|
cancelLabel: a = "Cancel",
|
|
1709
1896
|
danger: c = !1,
|
|
1710
1897
|
size: d = "sm"
|
|
1711
1898
|
}) {
|
|
1712
|
-
return /* @__PURE__ */ m(
|
|
1899
|
+
return /* @__PURE__ */ m(ht, { open: t, onClose: r, title: n, size: d, children: [
|
|
1713
1900
|
/* @__PURE__ */ m("div", { className: "flex gap-3", children: [
|
|
1714
1901
|
c && /* @__PURE__ */ e(
|
|
1715
|
-
|
|
1902
|
+
q,
|
|
1716
1903
|
{
|
|
1717
1904
|
size: 22,
|
|
1718
1905
|
className: "shrink-0 mt-0.5 text-error",
|
|
1719
1906
|
"aria-hidden": !0
|
|
1720
1907
|
}
|
|
1721
1908
|
),
|
|
1722
|
-
/* @__PURE__ */ e("div", { className: "text-body text-text-secondary", children:
|
|
1909
|
+
/* @__PURE__ */ e("div", { className: "text-body text-text-secondary", children: s })
|
|
1723
1910
|
] }),
|
|
1724
1911
|
/* @__PURE__ */ m("div", { className: "flex items-center justify-end gap-sm mt-lg", children: [
|
|
1725
1912
|
/* @__PURE__ */ e(
|
|
@@ -1737,59 +1924,59 @@ function Kt({
|
|
|
1737
1924
|
type: "button",
|
|
1738
1925
|
onClick: o,
|
|
1739
1926
|
className: `px-4 py-2 rounded-md text-small font-medium text-white transition-colors cursor-pointer ${c ? "bg-error hover:bg-error/80" : "bg-primary hover:bg-primary-hover"}`,
|
|
1740
|
-
children:
|
|
1927
|
+
children: i
|
|
1741
1928
|
}
|
|
1742
1929
|
)
|
|
1743
1930
|
] })
|
|
1744
1931
|
] });
|
|
1745
1932
|
}
|
|
1746
|
-
const
|
|
1747
|
-
function
|
|
1748
|
-
const t =
|
|
1933
|
+
const be = R(null);
|
|
1934
|
+
function nr() {
|
|
1935
|
+
const t = M(be);
|
|
1749
1936
|
if (!t) throw new Error("useToast must be used within a <ToastProvider>");
|
|
1750
1937
|
return t;
|
|
1751
1938
|
}
|
|
1752
|
-
const
|
|
1939
|
+
const yt = {
|
|
1753
1940
|
success: {
|
|
1754
1941
|
bg: "bg-bg-primary",
|
|
1755
1942
|
accent: "bg-success",
|
|
1756
1943
|
text: "text-success",
|
|
1757
|
-
icon:
|
|
1944
|
+
icon: le
|
|
1758
1945
|
},
|
|
1759
1946
|
warning: {
|
|
1760
1947
|
bg: "bg-bg-primary",
|
|
1761
1948
|
accent: "bg-warning",
|
|
1762
1949
|
text: "text-warning",
|
|
1763
|
-
icon:
|
|
1950
|
+
icon: q
|
|
1764
1951
|
},
|
|
1765
1952
|
error: {
|
|
1766
1953
|
bg: "bg-bg-primary",
|
|
1767
1954
|
accent: "bg-error",
|
|
1768
1955
|
text: "text-error",
|
|
1769
|
-
icon:
|
|
1956
|
+
icon: ae
|
|
1770
1957
|
},
|
|
1771
1958
|
info: {
|
|
1772
1959
|
bg: "bg-bg-primary",
|
|
1773
1960
|
accent: "bg-info",
|
|
1774
1961
|
text: "text-info",
|
|
1775
|
-
icon:
|
|
1962
|
+
icon: se
|
|
1776
1963
|
}
|
|
1777
1964
|
};
|
|
1778
|
-
function
|
|
1779
|
-
const { variant: o, title: n, message:
|
|
1780
|
-
return
|
|
1781
|
-
if (
|
|
1965
|
+
function vt({ toast: t, onRemove: r }) {
|
|
1966
|
+
const { variant: o, title: n, message: s, duration: i = 5e3 } = t, { bg: a, accent: c, text: d, icon: l } = yt[o], [u, f] = C(100), h = D(0), p = D(0);
|
|
1967
|
+
return I(() => {
|
|
1968
|
+
if (i <= 0) return;
|
|
1782
1969
|
h.current = performance.now();
|
|
1783
|
-
const y = (
|
|
1784
|
-
const v =
|
|
1785
|
-
if (
|
|
1970
|
+
const y = (b) => {
|
|
1971
|
+
const v = b - h.current, N = Math.max(0, 100 - v / i * 100);
|
|
1972
|
+
if (f(N), N <= 0) {
|
|
1786
1973
|
r(t.id);
|
|
1787
1974
|
return;
|
|
1788
1975
|
}
|
|
1789
1976
|
p.current = requestAnimationFrame(y);
|
|
1790
1977
|
};
|
|
1791
1978
|
return p.current = requestAnimationFrame(y), () => cancelAnimationFrame(p.current);
|
|
1792
|
-
}, [
|
|
1979
|
+
}, [i, t.id, r]), /* @__PURE__ */ m(
|
|
1793
1980
|
"div",
|
|
1794
1981
|
{
|
|
1795
1982
|
role: "status",
|
|
@@ -1800,7 +1987,7 @@ function mt({ toast: t, onRemove: r }) {
|
|
|
1800
1987
|
/* @__PURE__ */ e(l, { size: 18, className: `shrink-0 mt-0.5 ${d}`, "aria-hidden": !0 }),
|
|
1801
1988
|
/* @__PURE__ */ m("div", { className: "flex-1 min-w-0", children: [
|
|
1802
1989
|
n && /* @__PURE__ */ e("p", { className: "font-semibold text-small text-text-primary", children: n }),
|
|
1803
|
-
/* @__PURE__ */ e("p", { className: "text-small text-text-secondary", children:
|
|
1990
|
+
/* @__PURE__ */ e("p", { className: "text-small text-text-secondary", children: s })
|
|
1804
1991
|
] }),
|
|
1805
1992
|
/* @__PURE__ */ e(
|
|
1806
1993
|
"button",
|
|
@@ -1809,11 +1996,11 @@ function mt({ toast: t, onRemove: r }) {
|
|
|
1809
1996
|
onClick: () => r(t.id),
|
|
1810
1997
|
className: "shrink-0 p-1 rounded-sm text-text-secondary hover:text-text-primary hover:bg-bg-tertiary transition-colors cursor-pointer",
|
|
1811
1998
|
"aria-label": "Dismiss notification",
|
|
1812
|
-
children: /* @__PURE__ */ e(
|
|
1999
|
+
children: /* @__PURE__ */ e(U, { size: 14 })
|
|
1813
2000
|
}
|
|
1814
2001
|
)
|
|
1815
2002
|
] }),
|
|
1816
|
-
|
|
2003
|
+
i > 0 && /* @__PURE__ */ e("div", { className: "h-0.5 w-full bg-bg-tertiary", children: /* @__PURE__ */ e(
|
|
1817
2004
|
"div",
|
|
1818
2005
|
{
|
|
1819
2006
|
className: `h-full ${c} transition-none`,
|
|
@@ -1824,80 +2011,82 @@ function mt({ toast: t, onRemove: r }) {
|
|
|
1824
2011
|
}
|
|
1825
2012
|
);
|
|
1826
2013
|
}
|
|
1827
|
-
let
|
|
1828
|
-
function
|
|
1829
|
-
const [r, o] =
|
|
1830
|
-
const a = `toast-${++
|
|
1831
|
-
return o((c) => [...c, { ...
|
|
1832
|
-
}, []),
|
|
1833
|
-
o((a) => a.filter((c) => c.id !==
|
|
2014
|
+
let Nt = 0;
|
|
2015
|
+
function or({ children: t }) {
|
|
2016
|
+
const [r, o] = C([]), n = k((i) => {
|
|
2017
|
+
const a = `toast-${++Nt}`;
|
|
2018
|
+
return o((c) => [...c, { ...i, id: a }]), a;
|
|
2019
|
+
}, []), s = k((i) => {
|
|
2020
|
+
o((a) => a.filter((c) => c.id !== i));
|
|
1834
2021
|
}, []);
|
|
1835
|
-
return /* @__PURE__ */ m(
|
|
2022
|
+
return /* @__PURE__ */ m(be, { value: { addToast: n, removeToast: s }, children: [
|
|
1836
2023
|
t,
|
|
1837
2024
|
/* @__PURE__ */ e(
|
|
1838
2025
|
"div",
|
|
1839
2026
|
{
|
|
1840
2027
|
"aria-label": "Notifications",
|
|
1841
2028
|
className: "fixed bottom-lg right-lg z-50 flex flex-col-reverse gap-sm pointer-events-none",
|
|
1842
|
-
children: r.map((
|
|
2029
|
+
children: r.map((i) => /* @__PURE__ */ e("div", { className: "pointer-events-auto", children: /* @__PURE__ */ e(vt, { toast: i, onRemove: s }) }, i.id))
|
|
1843
2030
|
}
|
|
1844
2031
|
)
|
|
1845
2032
|
] });
|
|
1846
2033
|
}
|
|
1847
|
-
const
|
|
2034
|
+
const xe = R(null), wt = {
|
|
1848
2035
|
name: "Alice Martin",
|
|
1849
2036
|
email: "alice.martin@epfl.ch",
|
|
1850
2037
|
role: "admin"
|
|
1851
2038
|
};
|
|
1852
|
-
function
|
|
1853
|
-
const [o, n] =
|
|
1854
|
-
return /* @__PURE__ */ e(
|
|
2039
|
+
function ir({ initialUser: t = wt, children: r }) {
|
|
2040
|
+
const [o, n] = C(t), s = (a) => n((c) => ({ ...c, role: a })), i = K(() => ({ user: o, setRole: s }), [o]);
|
|
2041
|
+
return /* @__PURE__ */ e(xe.Provider, { value: i, children: r });
|
|
1855
2042
|
}
|
|
1856
|
-
function
|
|
1857
|
-
const t =
|
|
2043
|
+
function sr() {
|
|
2044
|
+
const t = M(xe);
|
|
1858
2045
|
if (!t) throw new Error("useAuth must be used within an AuthProvider");
|
|
1859
2046
|
return t;
|
|
1860
2047
|
}
|
|
1861
2048
|
export {
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
Lt as
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
2049
|
+
tr as Alert,
|
|
2050
|
+
ir as AuthProvider,
|
|
2051
|
+
Ft as Avatar,
|
|
2052
|
+
Et as Badge,
|
|
2053
|
+
ut as BurgerDrawer,
|
|
2054
|
+
St as Button,
|
|
2055
|
+
Jt as Card,
|
|
2056
|
+
Pt as Checkbox,
|
|
2057
|
+
rr as ConfirmDialog,
|
|
2058
|
+
Qt as DescriptionList,
|
|
2059
|
+
ht as Dialog,
|
|
2060
|
+
Ot as DropdownDivider,
|
|
2061
|
+
Vt as DropdownItem,
|
|
2062
|
+
Ut as DropdownMenu,
|
|
2063
|
+
Zt as EmptyState,
|
|
2064
|
+
At as FileUpload,
|
|
2065
|
+
He as IconButton,
|
|
2066
|
+
Lt as Input,
|
|
2067
|
+
Xt as LanguageSwitcher,
|
|
2068
|
+
Wt as PageShell,
|
|
2069
|
+
Kt as Popover,
|
|
2070
|
+
Bt as ProgressBar,
|
|
2071
|
+
Qe as RadioGroup,
|
|
2072
|
+
Tt as Select,
|
|
2073
|
+
dt as SideNav,
|
|
2074
|
+
me as Spinner,
|
|
2075
|
+
Rt as Switch,
|
|
2076
|
+
Ht as TabPanel,
|
|
2077
|
+
er as Table,
|
|
2078
|
+
qt as Tabs,
|
|
2079
|
+
Mt as Textarea,
|
|
2080
|
+
_t as ThemeToggle,
|
|
2081
|
+
or as ToastProvider,
|
|
2082
|
+
Gt as Tooltip,
|
|
2083
|
+
ct as TopNav,
|
|
2084
|
+
ne as epflSelectClassNames,
|
|
2085
|
+
et as epflSelectTheme,
|
|
2086
|
+
Yt as initTheme,
|
|
2087
|
+
sr as useAuth,
|
|
2088
|
+
rt as useLanguage,
|
|
2089
|
+
lt as useTheme,
|
|
2090
|
+
nr as useToast
|
|
1902
2091
|
};
|
|
1903
2092
|
//# sourceMappingURL=poesis.js.map
|