fvn-ui 0.1.0-alpha.77 → 0.1.0-alpha.78
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/ui.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(){var d=document,s=d.createElement("style");s.textContent="@import\"https://fonts.googleapis.com/css2?display=swap&family=Geist:wght@100..900\";:root{--ui-primary-font: \"Geist\";--ui-font: var(--ui-test-font, var(--ui-primary-font)), -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif}.fvn-ui{font-family:var(--ui-font);font-feature-settings:\"liga\" 1,\"calt\" 1;font-optical-sizing:auto;font-synthesis:none}@supports (font-variation-settings: normal){:root{--ui-test-font: \"Inter var\"}}.fvn-ui{--core: 15px;--ui-icon-size: calc(1.2 * var(--core));--radius: calc(var(--core) * .375);--space-1: calc(var(--core) * .25);--space-2: calc(var(--core) * .5);--space-3: calc(var(--core) * .75);--space-4: calc(var(--core) * 1);--space-5: calc(var(--core) * 1.5);--space-6: calc(var(--core) * 1.75);--space-7: calc(var(--core) * 2);--space-8: calc(var(--core) * 3);--space-9: calc(var(--core) * 4);--space-10: calc(var(--core) * 5);--space: var(--space-3);--padding: var(--space-8);--input-padding: calc(var(--space) * .75) var(--space);--shadow-sm: 0 1px 2px rgba(0,0,0,.1);--shadow-md: rgba(100, 100, 111, .2) 0px 7px 29px 0px;--core-transition: all .15s ease;--hsl-white: 0 0% 100%;--hsl-black: 256 15% 20%;--hsl-back: 0 0% 100%;--hsl-text: var(--hsl-black);--hsl-muted: 256 15% 15%;--hsl-hover: 210 22.22% 96.47%;--hsl-border: var(--hsl-text);--back: hsl(var(--hsl-back));--text: hsl(var(--hsl-text));--muted: hsl(var(--hsl-muted) / .5);--border-opacity: .15;--border-opacity-sub: .5;--border: hsl(var(--hsl-border) / var(--border-opacity, 1));--border-dark: hsl(var(--hsl-border) / .3);--hover: hsl(var(--hsl-hover) / var(--hover-opacity, 1));--hover-bright: hsl(var(--hsl-text) / .02);--hsl-shade: 240 5.88% 96.67%;--shade: hsl(var(--hsl-shade));--hsl-green: 166 100% 37%;--green: hsl(var(--hsl-green));--green-text: hsl(var(--hsl-white));--hsl-blue: 208 100% 50%;--blue: hsl(var(--hsl-blue));--blue-text: hsl(var(--hsl-white));--hsl-primary: 256 91% 54%;--primary: hsl(var(--hsl-primary));--primary-text: hsl(var(--hsl-white));--hsl-pink: 314 100% 47%;--pink: hsl(var(--hsl-pink));--pink-text: hsl(var(--hsl-white));--hsl-red: 332 100% 50%;--red: hsl(var(--hsl-red));--red-text: hsl(var(--hsl-white));--hsl-orange: 40 100% 62%;--orange: hsl(var(--hsl-orange));--orange-text: hsl(var(--hsl-black));--hsl-yellow: 60 92% 71%;--yellow: hsl(var(--hsl-yellow));--yellow-text: hsl(var(--hsl-black));--dark-hsl-black: 222 20% 20%;--dark-hsl-white: 0 0% 90%;--dark-hsl-back: 222 20% 15%;--dark-hsl-text: 0 0% 90%;--dark-hsl-muted: 0 0% 95%;--dark-hsl-primary: 256 91% 70%;--dark-hsl-red: 332 100% 60%;--dark-hsl-shade: 222 20% 19%;--dark-hover: hsl(222 20% 25%);--dark-hover-bright: hsl(var(--hsl-white) / .02);--dark-shade: hsl(var(--dark-hsl-shade));--dark-border-opacity: .15;--dark-shadow-sm: 0 1px 2px rgba(0,0,0,.3);--dark-shadow-md: 0 10px 25px rgba(0,0,0,.4);--shade-mix: black}.dark{color-scheme:dark;--hsl-black: var(--dark-hsl-black);--hsl-white: var(--dark-hsl-white);--hsl-back: var(--dark-hsl-back);--hsl-text: var(--dark-hsl-text);--hsl-muted: var(--dark-hsl-muted);--hsl-primary: var(--dark-hsl-primary);--hsl-red: var(--dark-hsl-red);--hover: var(--dark-hover);--border: hsl(222 20% 30%);--hover-bright: var(--dark-hover-bright);--hsl-shade: var(--dark-hsl-shade);--shade: var(--dark-shade);--border-opacity: var(--dark-border-opacity);--shadow-sm: var(--dark-shadow-sm);--shadow-md: var(--dark-shadow-md);--shade-mix: white}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}svg{shape-rendering:geometricPrecision}body.fvn-ui{margin:0;background:var(--back);color:var(--text);padding:var(--padding);text-rendering:optimizeLegibility;font-optical-sizing:auto;font-weight:400;font-size:var(--core)}body.fvn-ui button,body.fvn-ui input,body.fvn-ui select,body.fvn-ui textarea{font:inherit;font-weight:400;font-size:calc(.9 * var(--core))}body.fvn-ui.shaded{--shade: color-mix(in hsl, hsl(var(--hsl-shade)), var(--shade-mix) 3%);--shade-back: hsl(var(--hsl-shade));background:var(--shade-back)}body.fvn-ui.shaded .ui-select__trigger,body.fvn-ui.shaded .ui-editable,body.fvn-ui.shaded .ui-input{background:var(--back)}body.fvn-ui.shaded .ui-border:not(.ui-card *){border-color:transparent}body.fvn-ui.shaded .ui-card{border-color:transparent;box-shadow:none}body.fvn-ui.shaded .ui-card .ui-card{border-color:var(--border);box-shadow:var(--shadow-sm)}body.fvn-ui b{font-weight:500}body.fvn-ui a{color:var(--primary);text-decoration:underline}body.fvn-ui [hidden],body.fvn-ui .ui-hidden{display:none}.ui-component{color:var(--text)}.row,.col{--gap: var(--space-2);--jc: flex-start;display:flex;flex:1;width:100%;gap:var(--gap);justify-content:var(--jc)}.row[data-grow=false],.col[data-grow=false]{flex:0 0 auto;width:auto}.row{flex-direction:row;align-items:var(--ai, stretch)}.col{flex-direction:column;align-items:var(--ai, start)}.row>*,.col>*{min-width:0;min-height:0}.row[data-distribute=equal]>*,.col[data-distribute=equal]>*{flex:1}.row[data-wrap],.col[data-wrap]{flex-wrap:wrap}.row>[data-grow=true],.col>[data-grow=true]{flex:1 1 0}.row>[data-grow=false],.col>[data-grow=false]{flex:0 0 auto;width:auto}.row>[data-self=center],.col>[data-self=center]{align-self:center}.row>[data-self=start],.col>[data-self=start]{align-self:flex-start}.row>[data-self=end],.col>[data-self=end]{align-self:flex-end}.row>[data-self=stretch],.col>[data-self=stretch]{align-self:stretch}.row>[data-self=top],.col>[data-self=left]{align-self:flex-start}.row>[data-self=bottom],.col>[data-self=right]{align-self:flex-end}.row>[data-end]{margin-left:auto}.row>[data-start]{margin-right:auto}.col>[data-end]{align-self:flex-end}.col>[data-start]{align-self:flex-start}.col>[data-bottom]{margin-top:auto}.col>[data-top]{margin-bottom:auto}.col>[data-center]{margin-top:auto;margin-bottom:auto}.col.reverse{flex-direction:column-reverse}.row.reverse{flex-direction:row-reverse}.fvn-ui .w-full{width:100%}.fvn-ui .h-full{height:100%}.fvn-ui .ma{margin:auto}.fvn-ui .round{border-radius:var(--radius)}.fvn-ui .shade{background:var(--shade);padding:var(--padding)}.fvn-ui .border{border:1px solid var(--border);padding:var(--padding);border-radius:var(--radius)}.fvn-ui .border-bottom{border-bottom:1px solid var(--border);padding-bottom:var(--space)}.fvn-ui .border-top{border-top:1px solid var(--border);padding-top:var(--space)}.fvn-ui .pad{padding:var(--padding)}.fvn-ui .pad-1{padding:var(--space-1)}.fvn-ui .pad-2{padding:var(--space-2)}.fvn-ui .pad-3{padding:var(--space-3)}.fvn-ui .pad-4{padding:var(--space-4)}.fvn-ui .pad-5{padding:var(--space-5)}.fvn-ui .pad-6{padding:var(--space-6)}.fvn-ui .pad-7{padding:var(--space-7)}.fvn-ui .pad-8{padding:var(--space-8)}.fvn-ui .pad-9{padding:var(--space-9)}.fvn-ui .pad-10{padding:var(--space-10)}.fvn-ui .block-1{padding-block:var(--space-1)}.fvn-ui .block-2{padding-block:var(--space-2)}.fvn-ui .block-3{padding-block:var(--space-3)}.fvn-ui .block-4{padding-block:var(--space-4)}.fvn-ui .block-5{padding-block:var(--space-5)}.fvn-ui .block-6{padding-block:var(--space-6)}.fvn-ui .block-7{padding-block:var(--space-7)}.fvn-ui .block-8{padding-block:var(--space-8)}.fvn-ui .block-9{padding-block:var(--space-9)}.fvn-ui .block-10{padding-block:var(--space-10)}.fvn-ui .inline-1{padding-inline:var(--space-1)}.fvn-ui .inline-2{padding-inline:var(--space-2)}.fvn-ui .inline-3{padding-inline:var(--space-3)}.fvn-ui .inline-4{padding-inline:var(--space-4)}.fvn-ui .inline-5{padding-inline:var(--space-5)}.fvn-ui .inline-6{padding-inline:var(--space-6)}.fvn-ui .inline-7{padding-inline:var(--space-7)}.fvn-ui .inline-8{padding-inline:var(--space-8)}.fvn-ui .inline-9{padding-inline:var(--space-9)}.fvn-ui .inline-10{padding-inline:var(--space-10)}.fvn-ui .small,.fvn-ui small{font-size:.9em;line-height:1.25em}.fvn-ui .muted{color:var(--muted)}.fvn-ui .ui-inverted{--back: hsl(var(--hsl-text));--text: hsl(var(--hsl-back));--muted: hsl(var(--hsl-back) / .5);--border: hsl(var(--hsl-text) / var(--border-opacity, .2));--hover: hsl(var(--hsl-text) / var(--hover-opacity, .08))}.fvn-ui [data-ui-col=none],.fvn-ui [data-ui-col=default]{--bg: var(--text);--fg: var(--back)}.fvn-ui [data-ui-col=primary]{--bg: var(--primary);--fg: var(--primary-text, var(--back))}.fvn-ui [data-ui-col=secondary]{--bg: var(--hover)}.fvn-ui [data-ui-col=red]{--bg: var(--red);--fg: var(--red-text, var(--back))}.fvn-ui [data-ui-col=green]{--bg: var(--green);--fg: var(--green-text, var(--back))}.fvn-ui [data-ui-col=yellow]{--bg: var(--yellow);--fg: var(--yellow-text, var(--front))}.fvn-ui [data-ui-col=orange]{--bg: var(--orange);--fg: var(--orange-text, var(--front))}.fvn-ui [data-ui-col=blue]{--bg: var(--blue);--fg: var(--blue-text, var(--back))}.fvn-ui [data-ui-col=pink]{--bg: var(--pink);--fg: var(--pink-text, var(--back))}.fvn-ui [data-ui-col=sub-none]{--fg: var(--text)}.fvn-ui [data-ui-col=sub-default]{--hover: var(--text);--fg: var(--text)}.fvn-ui [data-ui-col=sub-primary]{--hover: var(--primary);--fg: var(--primary);--border: hsl(var(--hsl-primary) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-red]{--hover: var(--red);--fg: var(--red);--border: hsl(var(--hsl-red) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-green]{--hover: var(--green);--fg: var(--green);--border: hsl(var(--hsl-green) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-yellow]{--hover: var(--yellow);--fg: var(--text);--inverted: var(--yellow-text);--border: hsl(var(--hsl-yellow) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-orange]{--hover: var(--orange);--fg: var(--text);--inverted: var(--orange-text);--border: hsl(var(--hsl-orange) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-blue]{--hover: var(--blue);--fg: var(--blue);--border: hsl(var(--hsl-blue) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-pink]{--hover: var(--pink);--fg: var(--pink);--border: hsl(var(--hsl-pink) / var(--border-opacity-sub, 1))}.fvn-ui .ui-size--small{--input-padding: calc(var(--space-3) * .75) var(--space-3)}.fvn-ui .ui-size--medium{--input-padding: calc(var(--space-4) * .75) var(--space-4)}.fvn-ui .ui-size--large{--input-padding: calc(var(--space-6) * .75) var(--space-6)}.fvn-ui .ui-ratio--square{--input-padding: calc(var(--space) * .75);aspect-ratio:1}.fvn-ui .ui-ratio--square.ui-size--medium{--input-padding: calc(var(--space-4) * .75);--ui-icon-size: calc(1.25 * var(--input-padding));--stroke-width: 1.25}.fvn-ui .ui-ratio--square.ui-size--large{--input-padding: calc(var(--space-6) * .75);--ui-icon-size: calc(1.5 * var(--input-padding));--stroke-width: 1}.ui-fadein{transition:opacity .2s ease}.ui-pending{opacity:0}.ui-dialog::backdrop{background:hsl(var(--hsl-text) / .2)}.ui-dialog{border:none;border-radius:var(--radius);width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;box-shadow:var(--shadow-md);background:var(--back);color:var(--text)}.ui-dialog:not([open]){display:none}.ui-dialog__inner{padding:var(--space-4)}.ui-dialog__inner>.row,.ui-dialog__inner>.col{flex:1;width:100%}.ui-dialog__footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-4)}.ui-popover{position:fixed;z-index:50;border:1px solid var(--border);border-radius:var(--radius);background:var(--back);color:var(--text);box-shadow:var(--shadow-sm);padding:var(--space-3);opacity:0;pointer-events:none;transition:opacity .12s ease}.ui-popover[data-open=true]{opacity:1;pointer-events:auto}.ui-popover[data-open=true]:before{content:\"\";position:absolute;left:0;right:0;height:12px}.ui-popover[data-position=bottom][data-open=true]:before{top:-12px}.ui-popover[data-position=top][data-open=true]:before{bottom:-12px}.ui-popover__arrow{--size: 10px;--offset: calc(var(--size) / -2);position:absolute;width:var(--size);height:var(--size);background:var(--back);border:1px solid var(--border);border-right:0;border-bottom:0;left:50%;transform:translate(-50%) rotate(45deg)}.ui-popover[data-position=bottom] .ui-popover__arrow{top:var(--offset)}.ui-popover[data-position=top] .ui-popover__arrow{bottom:var(--offset);transform:translate(-50%) rotate(-135deg)}.ui-icon{flex:none;width:var(--ui-icon-size);height:var(--ui-icon-size);stroke-width:var(--stroke-width, 1.5)}.ui-btn{--bg: transparent;--fg: var(--text);flex:none;height:fit-content;border:1px solid transparent;background:var(--bg);color:var(--fg);border-radius:var(--radius);padding:var(--input-padding);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2);position:relative;white-space:nowrap;font:inherit;font-weight:500;font-size:calc(.9 * var(--core));transition:var(--core-transition)}.fvn-ui .ui-btn{font-weight:500}.ui-btn--reverse{flex-direction:row-reverse}.ui-btn--badge{padding:.5em;text-transform:uppercase;letter-spacing:.1em;pointer-events:none;font-weight:700!important;font-size:75%!important;line-height:1!important}.ui-btn>div{position:relative;z-index:1;pointer-events:none}.ui-btn--list-item{gap:var(--space-4);padding:0 var(--space-4) 0 0;flex-direction:row-reverse;width:100%}.ui-btn--list-item>.col{--gap: .1em;background:var(--back);color:var(--text);padding-right:var(--space-8);padding-left:var(--space-4);padding-block:var(--space-2);border-radius:var(--radius) 0 0 var(--radius)}.ui-btn--list-item.ui-btn--filled>.col{color:var(--bg, var(--text))}.ui-btn--list-item.ui-btn--sub:hover,.ui-btn--list-item:not(.ui-btn--sub){border-color:hsl(var(--hsl-border) / .15)!important}.ui-btn--list-item.ui-btn--outline:hover{border-color:hsl(var(--hsl-border) / .35)!important}.ui-btn--list-item>.col>div:last-child{font-weight:400;font-size:90%;color:var(--muted)}.ui-btn--muted{color:var(--muted)}[aria-expanded=true] .ui-btn--muted,:focus-visible+.ui-btn--muted{color:var(--fg)}.ui-btn:hover{color:var(--fg)}.ui-btn--sub{--bg: transparent}.ui-btn--round{--input-padding: calc(var(--space) * .75) calc(var(--space) * 1.75);border-radius:999px;gap:var(--space-2)}.ui-btn--square{--input-padding: calc(var(--space) * .75);aspect-ratio:1}.ui-btn--stripped{--input-padding: 0}.ui-btn--stripped>div{border-bottom:1px solid var(--muted)}.ui-btn--minimal:not(.ui-btn--list-item){--bg: transparent;--fg: var(--text)}.ui-btn--minimal:not(.ui-btn--list-item):before{content:\"\";background:var(--fg);opacity:var(--border-opacity, .25);position:absolute;width:calc(100% - (2 * var(--space)));height:1px;top:50%;transform:translatey(.65em)}.ui-btn--minimal:not(.ui-btn--list-item):hover:before{opacity:1}.ui-btn--minimal.ui-col-sub:not(:hover):before{opacity:var(--border-opacity-sub, .25)}.ui-btn--hover:hover{background:var(--hover);border-color:transparent}.ui-btn--hover-sub:hover{--fg: var(--inverted, var(--back));--bg: var(--hover)}.ui-btn--filled:after{content:\"\";position:absolute;inset:-1px;border-radius:inherit;transition:opacity var(--core-transition);background:var(--back);opacity:0;pointer-events:none}.ui-btn--filled:hover:after{opacity:.2}.ui-btn:disabled{--bg: transparent;--fg: var(--muted);cursor:not-allowed}.ui-btn:not(.ui-btn--ghost):not(.ui-btn--minimal):disabled{border-color:var(--border)}.ui-btn--outline{border-color:var(--border)}.ui-btn__icon{position:relative;width:var(--ui-icon-size);display:flex;align-items:center;justify-content:center}.ui-btn__icon>svg{position:absolute}.ui-btn__icon>span{position:relative}.ui-btn__icon>span>svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ui-btn.loading{--ui-icon-size: var(--core);flex-direction:row-reverse;pointer-events:none;position:relative;padding-left:calc(3.5 * var(--space))}.ui-btn.loading:before{content:\"\";width:var(--ui-icon-size);height:var(--ui-icon-size);border:1px solid var(--fg);border-radius:50%;border-color:var(--fg) var(--fg) var(--fg) transparent;animation:loadingSpin 1s linear infinite;position:absolute;left:var(--space)}.ui-btn__tip{font-size:.8em;line-height:1.2;max-width:220px}@keyframes loadingSpin{to{transform:rotate(359deg)}}.ui-title{line-height:1.2;font-weight:650;font-size:1.1em;margin:0}.ui-title--large{font-weight:700;font-size:1.5em}.ui-title--small{font-weight:500;font-size:1em!important}.ui-description{display:block;line-height:1.4;margin:0}.ui-label{display:block;font-size:.875em;font-weight:500;color:var(--text);min-height:auto}.ui-label--soft{font-weight:400;opacity:.7}.ui-truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ui-name{font-weight:500;font-size:.95em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-subtitle{font-size:.85em;color:var(--muted);white-space:nowrap;overflow:hidden}.ui-divider{flex:1;width:100%;border-top:1px solid var(--border);margin:var(--space) 0}.ui-divider--vertical{width:auto;height:100%;border-top:none;border-left:1px solid var(--border);margin:0 var(--space)}.ui-image{position:relative;overflow:hidden;background:var(--shade)}.ui-image[data-loaded=true] .ui-image__img{opacity:1}.ui-image[data-error=true]{background:var(--shade)}.ui-image__img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .3s ease}.ui-avatar{--size: calc(3.25 * var(--core));flex:none;display:inline-flex;align-items:center;gap:var(--space-2);font-size:calc(.3 * var(--size))}.ui-avatar--round .ui-avatar__box{border-radius:50%}.ui-avatar--medium{--size: calc(3.75 * var(--core))}.ui-avatar--large{--size: calc(4.5 * var(--core))}.ui-avatar__box{width:var(--size);height:var(--size);border-radius:var(--radius);background:var(--bg, var(--hover));color:var(--fg, var(--text));display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.ui-avatar__image{width:100%;height:100%}.ui-avatar__fallback{font-size:calc(var(--size) * .4);font-weight:500;text-transform:uppercase;letter-spacing:.02em}.ui-avatar__info{display:flex;flex-direction:column;gap:calc(.025 * var(--size));min-width:0}.ui-card{border-radius:var(--radius);color:var(--text)}.ui-card__body>.row,.ui-card__body>.col{flex:1;width:100%}.ui-dialog-component .ui-card{box-shadow:none}.ui-collapsible:disabled{opacity:.5;pointer-events:none}.ui-collapsible .ui-collapsible__trigger{--input-padding: 0;gap:var(--space-1);font-size:1em;font-weight:500}.ui-collapsible .ui-collapsible__trigger[disabled]{border:none}.ui-collapsible[data-open=false]>.ui-collapsible__content{display:none}.ui-collapsible[data-open=true]>.ui-collapsible__content{display:flex}.ui-collapsible--divider .ui-collapsible__content{border:1px solid var(--border);border-width:1px 0;margin-block:var(--space-4);padding-block:var(--space-4)}.ui-editable{border:1px solid var(--border);border-radius:var(--radius);padding:var(--input-padding);color:var(--text);background:transparent;width:100%;font:inherit;min-height:1.5em;outline:none;overflow-wrap:break-word;word-wrap:break-word;white-space:pre-wrap;font-size:calc(.9 * var(--core))}.ui-editable.ui-plain{border:none;padding:0;min-height:auto;border-radius:0;background:transparent!important}.ui-editable:not(.ui-plain):hover{border-color:var(--border-dark)}.ui-editable:not(.ui-plain):focus-visible{border-color:var(--muted)}.ui-editable.invalid{border-color:var(--red)}.ui-editable:empty:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none}.ui-editable:after{content:\"\";display:inline}.ui-editable--rich:after{content:none}.ui-editable--rich{position:relative}.ui-editable--rich[data-empty=true]:before{content:attr(data-placeholder);position:absolute;top:var(--input-padding);left:var(--input-padding);color:var(--muted);pointer-events:none}.ui-editable--size-large{padding:calc(var(--input-padding) * 1.5);font-size:1.1em}.ui-editable--single-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-editable__wrap{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.ui-editable__footer{font-size:.8em}.ui-editable__message{color:var(--red)}.ui-editable__info,.ui-editable__counter{color:var(--muted)}.ui-editable__counter.ok{color:var(--green)}.ui-editable__counter.warn{color:var(--orange)}.ui-editable__counter.error{color:var(--red)}.ui-editable__toolbar{--text: var(--muted);border:1px solid var(--border);border-bottom-width:0;border-radius:var(--radius) var(--radius) 0 0}.ui-editable__toolbar:hover{--text: hsl(var(--hsl-text))}.col.ui-editable__wrap:has(.ui-editable:focus) .ui-editable__toolbar,.col.ui-editable__wrap:has(.ui-input:focus) .ui-editable__toolbar{border-color:var(--text)}.ui-editable__rte-btn.is-active{background:var(--hover);color:var(--text)}.ui-editable__rte-btn[disabled]{visibility:hidden}.ui-editable__toolbar+.ui-editable{border-radius:0 0 var(--radius) var(--radius);margin-top:calc(-1 * var(--space-2))}.ui-editable__toolbar~.ui-input-root{margin-top:calc(-1 * var(--space-2))}.ui-editable__toolbar~.ui-input-root .ui-input{border-radius:0 0 var(--radius) var(--radius)}.ui-editable__toolbar~.ui-input-root .ui-input__footer{display:none}.ui-editable--rich h3{font-weight:900;font-size:1.35em;margin:0}.ui-editable--rich span[data-ui-paragraph],.ui-editable--rich blockquote,.ui-editable--rich ul,.ui-editable--rich ol{margin:0}.ui-editable--rich span[data-ui-paragraph]{display:block}.ui-editable--rich b,.ui-editable--rich strong{font-weight:700!important}.ui-editable__tooltip{min-width:300px}.ui-editable__markdown-toggle{margin-right:auto}.ui-dashboard,.ui-dashboard__header{width:100%}.ui-dashboard__menu{flex-shrink:0}.ui-dashboard__content{width:100%;position:relative}.ui-dashboard__close{position:absolute;top:var(--space);right:var(--space);z-index:10}.ui-draggable{counter-reset:draggable-index;display:flex;flex-direction:column;gap:0!important;width:100%}.ui-draggable__item{counter-increment:draggable-index;position:relative;display:flex;align-items:center;width:100%}.ui-draggable__item:not(.ui-draggable--plain){gap:var(--space-3);border-bottom:1px dashed var(--border);padding:var(--space-3)}.ui-draggable__item:not(.ui-draggable--plain):last-child{border-bottom:none}.ui-draggable__item.ui-draggable--index:before{content:counter(draggable-index);color:var(--muted);text-align:right}.ui-draggable--disabled{opacity:.5;pointer-events:none}.ui-draggable__content{flex:1;min-width:0}.ui-draggable__handle{display:flex;align-items:center;justify-content:center;cursor:grab;color:var(--muted);border-radius:var(--radius);flex-shrink:0;-webkit-user-select:none;user-select:none;touch-action:none}.ui-draggable__handle:hover{color:var(--text);background:var(--hover)}.ui-draggable__handle:active{cursor:grabbing}.ui-draggable__item.ui-dragging{background:var(--shade)}.ui-input-root{flex:1;width:100%}.ui-input{border:1px solid var(--border);border-radius:var(--radius);padding:var(--input-padding);color:var(--text);background:transparent;width:100%;font:inherit;resize:vertical}.ui-input::placeholder{color:var(--muted)}.ui-input__wrap{position:relative;display:flex;align-items:center;width:100%}.ui-input__wrap .ui-input--submit{padding-right:40px}.ui-input__wrap .ui-btn{position:absolute;top:1px;right:1px;height:calc(100% - 2px);padding:var(--input-padding);border-radius:0 var(--radius) var(--radius) 0}.ui-input__wrap.has-value .ui-btn:not(.ui-input__num-btn){background:var(--hover)}.ui-input:hover{border-color:var(--border-dark)}.ui-input:focus-visible{border-color:var(--muted);outline:none}.ui-input__wrap.invalid .ui-input{border-color:var(--red)}.ui-input__footer{font-size:.8em}.ui-input__counter{color:var(--muted)}.ui-input__counter.ok{color:var(--green)}.ui-input__counter.warn{color:var(--orange)}.ui-input__counter.error,.ui-input__message{color:var(--red)}.ui-input__info{color:var(--muted)}.ui-input--number{-moz-appearance:textfield;padding-right:70px}.ui-input--number::-webkit-outer-spin-button,.ui-input--number::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ui-input__num-btns{display:flex;position:absolute;right:1px;top:1px;height:calc(100% - 2px);gap:0}.ui-input__num-btn{position:static!important;height:100%!important;border:none!important;border-radius:0!important;flex-shrink:0;border-left:1px solid var(--border)!important}.ui-input__num-btn:last-child{border-radius:0 var(--radius) var(--radius) 0!important}.ui-input__num-btn:hover{background:var(--hover)}.ui-upload{width:100%;gap:var(--space-2)}.ui-upload__drop{display:flex;align-items:center;gap:var(--space-3);border:1px dashed var(--border);border-radius:var(--radius);padding:var(--space-3);background:transparent;cursor:pointer;width:100%;transition:border-color .14s ease,background-color .14s ease}.ui-upload__drop:hover{border-color:var(--text)}.ui-upload__drop:focus-visible{outline:none;border-color:var(--muted)}.ui-upload__drop.drag-over{border-color:var(--blue);background:var(--shade)}.ui-upload__drop.invalid{border-color:var(--red)}.ui-upload__drop.invalid:hover,.ui-upload__drop.invalid:focus-visible{border-color:var(--red)}.ui-upload--disabled .ui-upload__drop{opacity:.65;cursor:not-allowed}.ui-upload__preview{flex-shrink:0;width:56px;height:56px;border-radius:var(--radius);display:grid;place-items:center;color:var(--muted);background:var(--shade)}.ui-upload__preview-icon .ui-icon{width:var(--space-7);height:var(--space-7);stroke-width:1}.ui-upload__drop.drag-over .ui-upload__preview{color:var(--text);border:1px solid var(--border)}.ui-upload__content{flex:1;min-width:0;gap:var(--space-1);overflow:hidden;position:relative}.ui-upload__content .ui-description{max-width:70%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ui-upload__content .ui-btn--badge{position:absolute;right:0;top:50%;transform:translateY(-50%)}.ui-upload__placeholder{font-weight:500}.ui-upload__hint{color:var(--muted);font-size:.9em}.ui-upload__filename{color:var(--text);font-size:.9em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-upload__error{color:var(--red);font-size:.9em}.ui-upload__actions{flex:0}.ui-upload__input{display:none}.ui-form-input{position:absolute;opacity:0;pointer-events:none}.ui-form-control{--control-size: calc(var(--space) * 1.75);width:var(--control-size);height:var(--control-size);border-radius:calc(var(--radius) * .5);border:1px solid var(--border);background:var(--bg, var(--back));display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--core-transition)}.ui-form-control--round{border-radius:50%}.ui-form-control .ui-icon{--ui-icon-size: calc(var(--control-size) * .7);color:var(--fg, var(--back));opacity:0;transform:scale(.5);transition:var(--core-transition)}[data-state=checked]>.ui-form-control{border-color:transparent}[data-state=checked]>.ui-form-control .ui-icon{opacity:1;transform:scale(1)}.ui-form-input:focus-visible+.ui-form-control{box-shadow:var(--shadow-sm)}.ui-form-item{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.ui-form-item .ui-label{pointer-events:none}.ui-form-item.disabled{opacity:.5;cursor:not-allowed}.ui-form-item:hover .ui-form-input:not(:checked):not(:disabled)+.ui-form-control{background:var(--shade)}.ui-form-group{display:flex;flex-direction:column;gap:var(--space-2)}.ui-form-group.horizontal{flex-direction:row;align-items:center}.ui-form-group.horizontal .ui-form-group__items{flex-direction:row}.ui-form-group__items{display:flex;flex-direction:column;gap:var(--space-2)}.ui-checkbox .ui-form-control svg{stroke-width:2.5}.ui-select{position:relative}.ui-select.invalid .ui-select__trigger{border-color:var(--red)}.ui-select__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--border);border-radius:var(--radius);padding:var(--input-padding);background:transparent;color:var(--text);cursor:pointer}.ui-select__trigger:hover{border-color:var(--border-dark)}.ui-select__trigger.ui-select--ghost{border:1px solid transparent}.ui-select__trigger.ui-select--ghost:hover{background:var(--hover)}.ui-select__trigger .ui-btn{padding:0}.ui-select__trigger .ui-btn .ui-btn__icon{position:absolute;top:50%;right:0;transform:translatey(-50%)}.ui-select__separator{height:0;border-top:1px dashed var(--border);margin:calc(var(--space) * .5) 0}.ui-select__value{display:inline-flex;min-width:0;gap:8px;align-items:center}.ui-select__placeholder{color:var(--muted)}.ui-select__icon{opacity:.7}.ui-select__actions{display:flex;align-items:center;gap:var(--space-1)}.ui-select__filter{display:block;width:100%;border:none;border-bottom:1px solid var(--border);background:var(--hover-bright);padding:var(--space-2) var(--space-3);font-size:inherit;outline:none;color:var(--text)}.ui-select__filter::placeholder{color:var(--muted)}.ui-select__badge{display:flex;align-items:center;justify-content:center;height:100%;aspect-ratio:1;font-weight:500;background:var(--hover);border-radius:0 var(--radius) var(--radius) 0;cursor:pointer;position:absolute;top:1px;right:1px;height:calc(100% - 2px);z-index:2}.ui-select__badge:hover{background:var(--text);color:var(--back)}.ui-select__badge:before{content:none;font-size:1.5rem;font-weight:300;line-height:0}.ui-select__badge:hover:before{content:\"×\"}.ui-select__badge:hover{font-size:0}.ui-select__badge[hidden]{display:none}.ui-select__popover{position:absolute;left:0;right:0;top:calc(100% - 1px);border:1px solid var(--border);border-radius:var(--radius);background:transparent;box-shadow:var(--shadow-md);overflow:hidden;transform-origin:top;opacity:0;transform:scale(.99) translateY(4px);pointer-events:none;transition:all .12s ease;z-index:50}.ui-select[data-open=true] .ui-select__popover{opacity:1;transform:scale(1) translateY(0);pointer-events:auto}.ui-select[data-open=true] .ui-select__trigger .ui-btn .ui-btn__icon{transform:translatey(-50%) rotate(-90deg);opacity:.35}.ui-select__list{max-height:240px;overflow:auto;scrollbar-width:none;-ms-overflow-style:none;padding:6px}.ui-select__list::-webkit-scrollbar{display:none}.ui-select__item{width:100%;text-align:left;border:0;background:transparent;border-radius:var(--radius);padding:10px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;transition:background .12s ease;color:var(--text);position:relative}.ui-select__item[disabled]{pointer-events:none;color:var(--muted)}.ui-select__item[hidden]{display:none}.ui-select__item:hover{background:var(--shade)}.ui-select__item[aria-selected=true]{background:var(--hover)}.ui-select__check{position:absolute;right:var(--space);top:50%;transform:translatey(-40%);color:var(--muted)}.ui-switch{--bg: var(--text);flex:none;display:inline-flex;align-items:center;gap:var(--space-2)}.ui-switch__button{--switch-size: calc(1.75 * var(--space));width:calc(2 * var(--switch-size));height:var(--switch-size);border-radius:999px;border:none;background:hsl(var(--hsl-muted) / .25);position:relative;cursor:pointer;padding:0;transition:var(--core-transition)}.ui-switch__thumb{width:calc(.8 * var(--switch-size));height:calc(.8 * var(--switch-size));border-radius:999px;background:hsl(var(--hsl-white));position:absolute;top:50%;left:calc(.1 * var(--switch-size));transform:translateY(-50%);transition:left var(--core-transition)}.ui-switch[data-checked=true] .ui-switch__button{background:var(--bg);border-color:var(--bg)}.ui-switch[data-checked=true] .ui-switch__thumb{left:calc(1.1 * var(--switch-size))}.ui-tabs .ui-btn[aria-selected=true]{pointer-events:none}.ui-tabs__buttons{display:inline-flex;gap:var(--space-1);flex-wrap:wrap;background:var(--shade);padding:var(--space-1);border-radius:calc(1.5 * var(--radius))}.ui-tabs__panel{width:100%;border-radius:var(--radius)}.ui-tabs__tab{background:transparent;cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--core-transition)}.ui-tabs--shade .ui-tabs__panel{background:var(--shade)}.ui-tabs--shade .ui-btn[aria-selected=false]{--bg: var(--shade)}.ui-tabs--round .ui-tabs--default{border-radius:999px;gap:0;padding:var(--space-1) calc(var(--space-1) + .2em)}.ui-tabs--round .ui-tabs--default .ui-btn{--input-padding: calc(var(--space) * .5) calc(var(--space) * 1.5);--bg: transparent;margin:0 -.2em}.ui-tabs--default .ui-btn{--input-padding: calc(var(--space) * .5) calc(var(--space) * .75)}.ui-tabs--default .ui-btn:not(.colorized)[aria-selected=true]{background:hsl(var(--hsl-white))!important;color:hsl(var(--hsl-black))!important;box-shadow:0 1px 4px #0003}.ui-tabs--outline{padding:0;background:none;gap:0}.ui-tabs--outline+.ui-tabs__panel{margin-top:calc(-1 * var(--gap))}.ui-tabs--outline:not([data-centered])+.ui-tabs__panel{border-top-left-radius:0}.ui-tabs--outline .ui-btn{--core-transition: none;border-color:transparent;border-radius:0}.ui-tabs--outline:not(.ui-tabs--toggle-group) .ui-btn:first-child{border-top-left-radius:var(--radius)}.ui-tabs--outline:not(.ui-tabs--toggle-group) .ui-btn:last-child{border-top-right-radius:var(--radius)}.ui-tabs--outline .ui-btn[aria-selected=false]{--fg: var(--muted);--bg: var(--shade);border-left-color:hsl(var(--hsl-text) / .08)}.ui-tabs--outline .ui-btn[aria-selected=false]:first-child,.ui-tabs--outline .ui-btn[aria-selected=true]+[aria-selected=false]{border-left-color:transparent}.ui-tabs--outline .ui-btn[aria-selected=true]{--fg: var(--text);--bg: var(--shade-back, var(--back));border-color:var(--border)}.ui-tabs--outline:not(.ui-tabs--toggle-group) .ui-btn[aria-selected=true]:after{content:\"\";background:var(--bg);bottom:0;left:0;width:100%;height:3px;position:absolute;transform:translatey(100%)}.ui-tabs--ghost{gap:0;background:transparent;padding:0}.ui-tabs--ghost .ui-btn[aria-selected=true]:not([data-ui-col]){--bg: var(--hover)}.ui-tabs--border{padding:0;background:none;gap:0}.ui-tabs--border .ui-btn{border-color:transparent;border-width:2px;border-radius:0}.ui-tabs--border .ui-btn:after{content:\"\";background:var(--bg);bottom:0;left:0;width:100%;height:2px;position:absolute;transform:translatey(100%);pointer-events:none;opacity:0;transition:var(--core-transition)}.ui-tabs--border .ui-btn:hover{background:transparent}.ui-tabs--border .ui-btn:hover:after{background:var(--fg);opacity:.5}.ui-tabs--border .ui-btn[aria-selected=true]:after{background:var(--fg);opacity:1}.ui-tabs--border .ui-btn[aria-selected=false]{--fg: var(--muted)}.ui-tabs--minimal{gap:var(--space-4);padding:var(--space-2) 0;background:transparent}.ui-tabs--minimal .ui-btn{--fg: var(--muted);background:transparent;padding:0;--space: 0px}.ui-tabs--minimal .ui-btn[aria-selected=true]{--fg: var(--text)}.ui-tabs--minimal .ui-btn[aria-selected=true]:before{opacity:1}.ui-toggle{--bg: var(--text);--fg: var(--back);flex:none;display:inline-flex;background:var(--hover);padding:0;border-radius:999px;-webkit-user-select:none;user-select:none;text-transform:uppercase;letter-spacing:.05em;font-size:72.5%;font-weight:500;cursor:pointer}.ui-toggle[disabled]{opacity:.5;pointer-events:none}.ui-toggle div{pointer-events:none;padding:var(--space-2) var(--space-5);border-radius:999px}.ui-toggle div:first-child{background:var(--text);color:var(--back)}.ui-toggle div:last-child{background:transparent;color:inherit;padding-left:var(--space-3)}.ui-toggle[data-checked=true] div:first-child{background:transparent;color:inherit;padding-right:var(--space-3);color:var(--muted)}.ui-toggle[data-checked=false] div:last-child{color:var(--muted)}.ui-toggle[data-checked=true] div:last-child{background:var(--bg);color:var(--fg);padding:var(--space-2) var(--space-5)}.ui-toggle--minimal{background:transparent;padding:var(--input-padding);gap:var(--space-3)}.ui-toggle--minimal>div{background:transparent!important;border-bottom:1px solid transparent;border-radius:0;padding:1px 0!important;color:var(--muted);position:relative}.ui-toggle--minimal>div:last-child:before{content:\"/\";position:absolute;font-size:150%;font-weight:300;top:50%;left:0;transform:translate(-175%,-50%);color:var(--muted)}.ui-toggle--minimal[data-checked=true] div:last-child,.ui-toggle--minimal[data-checked=false] div:first-child{color:var(--text);border-bottom-color:var(--text)}nav.ui-toggle--minimal>div:hover{color:var(--text)!important}\n";d.head.appendChild(s)})();const Pi = (t, ...e) => {
|
|
1
|
+
(function(){var d=document,s=d.createElement("style");s.textContent="@import\"https://fonts.googleapis.com/css2?display=swap&family=Geist:wght@100..900\";:root{--ui-primary-font: \"Geist\";--ui-font: var(--ui-test-font, var(--ui-primary-font)), -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif}.fvn-ui{font-family:var(--ui-font);font-feature-settings:\"liga\" 1,\"calt\" 1;font-optical-sizing:auto;font-synthesis:none}@supports (font-variation-settings: normal){:root{--ui-test-font: \"Inter var\"}}.fvn-ui{--core: 15px;--ui-icon-size: calc(1.2 * var(--core));--radius: calc(var(--core) * .375);--space-1: calc(var(--core) * .25);--space-2: calc(var(--core) * .5);--space-3: calc(var(--core) * .75);--space-4: calc(var(--core) * 1);--space-5: calc(var(--core) * 1.5);--space-6: calc(var(--core) * 1.75);--space-7: calc(var(--core) * 2);--space-8: calc(var(--core) * 3);--space-9: calc(var(--core) * 4);--space-10: calc(var(--core) * 5);--space: var(--space-3);--padding: var(--space-8);--input-padding: calc(var(--space) * .75) var(--space);--shadow-sm: 0 1px 2px rgba(0,0,0,.1);--shadow-md: rgba(100, 100, 111, .2) 0px 7px 29px 0px;--core-transition: all .15s ease;--hsl-white: 0 0% 100%;--hsl-black: 256 15% 20%;--hsl-back: 0 0% 100%;--hsl-text: var(--hsl-black);--hsl-muted: 256 15% 15%;--hsl-hover: 210 22.22% 96.47%;--hsl-border: var(--hsl-text);--back: hsl(var(--hsl-back));--text: hsl(var(--hsl-text));--muted: hsl(var(--hsl-muted) / .5);--border-opacity: .15;--border-opacity-sub: .5;--border: hsl(var(--hsl-border) / var(--border-opacity, 1));--border-dark: hsl(var(--hsl-border) / .3);--hover: hsl(var(--hsl-hover) / var(--hover-opacity, 1));--hover-bright: hsl(var(--hsl-text) / .02);--hsl-shade: 240 5.88% 96.67%;--shade: hsl(var(--hsl-shade));--hsl-green: 166 100% 37%;--green: hsl(var(--hsl-green));--green-text: hsl(var(--hsl-white));--hsl-blue: 208 100% 50%;--blue: hsl(var(--hsl-blue));--blue-text: hsl(var(--hsl-white));--hsl-primary: 256 91% 54%;--primary: hsl(var(--hsl-primary));--primary-text: hsl(var(--hsl-white));--hsl-pink: 314 100% 47%;--pink: hsl(var(--hsl-pink));--pink-text: hsl(var(--hsl-white));--hsl-red: 332 100% 50%;--red: hsl(var(--hsl-red));--red-text: hsl(var(--hsl-white));--hsl-orange: 40 100% 62%;--orange: hsl(var(--hsl-orange));--orange-text: hsl(var(--hsl-black));--hsl-yellow: 60 92% 71%;--yellow: hsl(var(--hsl-yellow));--yellow-text: hsl(var(--hsl-black));--dark-hsl-black: 222 20% 20%;--dark-hsl-white: 0 0% 90%;--dark-hsl-back: 222 20% 15%;--dark-hsl-text: 0 0% 90%;--dark-hsl-muted: 0 0% 95%;--dark-hsl-primary: 256 91% 70%;--dark-hsl-red: 332 100% 60%;--dark-hsl-shade: 222 20% 19%;--dark-hover: hsl(222 20% 25%);--dark-hover-bright: hsl(var(--hsl-white) / .02);--dark-shade: hsl(var(--dark-hsl-shade));--dark-border-opacity: .15;--dark-shadow-sm: 0 1px 2px rgba(0,0,0,.3);--dark-shadow-md: 0 10px 25px rgba(0,0,0,.4);--shade-mix: black}.dark{color-scheme:dark;--hsl-black: var(--dark-hsl-black);--hsl-white: var(--dark-hsl-white);--hsl-back: var(--dark-hsl-back);--hsl-text: var(--dark-hsl-text);--hsl-muted: var(--dark-hsl-muted);--hsl-primary: var(--dark-hsl-primary);--hsl-red: var(--dark-hsl-red);--hover: var(--dark-hover);--border: hsl(222 20% 30%);--hover-bright: var(--dark-hover-bright);--hsl-shade: var(--dark-hsl-shade);--shade: var(--dark-shade);--border-opacity: var(--dark-border-opacity);--shadow-sm: var(--dark-shadow-sm);--shadow-md: var(--dark-shadow-md);--shade-mix: white}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}svg{shape-rendering:geometricPrecision}body.fvn-ui{margin:0;background:var(--back);color:var(--text);padding:var(--padding);text-rendering:optimizeLegibility;font-optical-sizing:auto;font-weight:400;font-size:var(--core)}body.fvn-ui button,body.fvn-ui input,body.fvn-ui select,body.fvn-ui textarea{font:inherit;font-weight:400;font-size:calc(.9 * var(--core))}body.fvn-ui.shaded{--shade: color-mix(in hsl, hsl(var(--hsl-shade)), var(--shade-mix) 3%);--shade-back: hsl(var(--hsl-shade));background:var(--shade-back)}body.fvn-ui.shaded .ui-select__trigger,body.fvn-ui.shaded .ui-editable,body.fvn-ui.shaded .ui-input{background:var(--back)}body.fvn-ui.shaded .ui-border:not(.ui-card *){border-color:transparent}body.fvn-ui.shaded .ui-card{border-color:transparent;box-shadow:none}body.fvn-ui.shaded .ui-card .ui-card{border-color:var(--border);box-shadow:var(--shadow-sm)}body.fvn-ui b{font-weight:500}body.fvn-ui a{color:var(--primary);text-decoration:underline}body.fvn-ui [hidden],body.fvn-ui .ui-hidden{display:none}.ui-component{color:var(--text)}.row,.col{--gap: var(--space-2);--jc: flex-start;display:flex;flex:1;width:100%;gap:var(--gap);justify-content:var(--jc)}.row[data-grow=false],.col[data-grow=false]{flex:0 0 auto;width:auto}.row{flex-direction:row;align-items:var(--ai, stretch)}.col{flex-direction:column;align-items:var(--ai, start)}.row>*,.col>*{min-width:0;min-height:0}.row[data-distribute=equal]>*,.col[data-distribute=equal]>*{flex:1}.row[data-wrap],.col[data-wrap]{flex-wrap:wrap}.row>[data-grow=true],.col>[data-grow=true]{flex:1 1 0}.row>[data-grow=false],.col>[data-grow=false]{flex:0 0 auto;width:auto}.row>[data-self=center],.col>[data-self=center]{align-self:center}.row>[data-self=start],.col>[data-self=start]{align-self:flex-start}.row>[data-self=end],.col>[data-self=end]{align-self:flex-end}.row>[data-self=stretch],.col>[data-self=stretch]{align-self:stretch}.row>[data-self=top],.col>[data-self=left]{align-self:flex-start}.row>[data-self=bottom],.col>[data-self=right]{align-self:flex-end}.row>[data-end]{margin-left:auto}.row>[data-start]{margin-right:auto}.col>[data-end]{align-self:flex-end}.col>[data-start]{align-self:flex-start}.col>[data-bottom]{margin-top:auto}.col>[data-top]{margin-bottom:auto}.col>[data-center]{margin-top:auto;margin-bottom:auto}.col.reverse{flex-direction:column-reverse}.row.reverse{flex-direction:row-reverse}.fvn-ui .w-full{width:100%}.fvn-ui .h-full{height:100%}.fvn-ui .ma{margin:auto}.fvn-ui .round{border-radius:var(--radius)}.fvn-ui .shade{background:var(--shade);padding:var(--padding)}.fvn-ui .border{border:1px solid var(--border);padding:var(--padding);border-radius:var(--radius)}.fvn-ui .border-bottom{border-bottom:1px solid var(--border);padding-bottom:var(--space)}.fvn-ui .border-top{border-top:1px solid var(--border);padding-top:var(--space)}.fvn-ui .pad{padding:var(--padding)}.fvn-ui .pad-1{padding:var(--space-1)}.fvn-ui .pad-2{padding:var(--space-2)}.fvn-ui .pad-3{padding:var(--space-3)}.fvn-ui .pad-4{padding:var(--space-4)}.fvn-ui .pad-5{padding:var(--space-5)}.fvn-ui .pad-6{padding:var(--space-6)}.fvn-ui .pad-7{padding:var(--space-7)}.fvn-ui .pad-8{padding:var(--space-8)}.fvn-ui .pad-9{padding:var(--space-9)}.fvn-ui .pad-10{padding:var(--space-10)}.fvn-ui .block-1{padding-block:var(--space-1)}.fvn-ui .block-2{padding-block:var(--space-2)}.fvn-ui .block-3{padding-block:var(--space-3)}.fvn-ui .block-4{padding-block:var(--space-4)}.fvn-ui .block-5{padding-block:var(--space-5)}.fvn-ui .block-6{padding-block:var(--space-6)}.fvn-ui .block-7{padding-block:var(--space-7)}.fvn-ui .block-8{padding-block:var(--space-8)}.fvn-ui .block-9{padding-block:var(--space-9)}.fvn-ui .block-10{padding-block:var(--space-10)}.fvn-ui .inline-1{padding-inline:var(--space-1)}.fvn-ui .inline-2{padding-inline:var(--space-2)}.fvn-ui .inline-3{padding-inline:var(--space-3)}.fvn-ui .inline-4{padding-inline:var(--space-4)}.fvn-ui .inline-5{padding-inline:var(--space-5)}.fvn-ui .inline-6{padding-inline:var(--space-6)}.fvn-ui .inline-7{padding-inline:var(--space-7)}.fvn-ui .inline-8{padding-inline:var(--space-8)}.fvn-ui .inline-9{padding-inline:var(--space-9)}.fvn-ui .inline-10{padding-inline:var(--space-10)}.fvn-ui .small,.fvn-ui small{font-size:.9em;line-height:1.25em}.fvn-ui .muted{color:var(--muted)}.fvn-ui .ui-inverted{--back: hsl(var(--hsl-text));--text: hsl(var(--hsl-back));--muted: hsl(var(--hsl-back) / .5);--border: hsl(var(--hsl-text) / var(--border-opacity, .2));--hover: hsl(var(--hsl-text) / var(--hover-opacity, .08))}.fvn-ui [data-ui-col=none],.fvn-ui [data-ui-col=default]{--bg: var(--text);--fg: var(--back)}.fvn-ui [data-ui-col=primary]{--bg: var(--primary);--fg: var(--primary-text, var(--back))}.fvn-ui [data-ui-col=secondary]{--bg: var(--hover)}.fvn-ui [data-ui-col=red]{--bg: var(--red);--fg: var(--red-text, var(--back))}.fvn-ui [data-ui-col=green]{--bg: var(--green);--fg: var(--green-text, var(--back))}.fvn-ui [data-ui-col=yellow]{--bg: var(--yellow);--fg: var(--yellow-text, var(--front))}.fvn-ui [data-ui-col=orange]{--bg: var(--orange);--fg: var(--orange-text, var(--front))}.fvn-ui [data-ui-col=blue]{--bg: var(--blue);--fg: var(--blue-text, var(--back))}.fvn-ui [data-ui-col=pink]{--bg: var(--pink);--fg: var(--pink-text, var(--back))}.fvn-ui [data-ui-col=sub-none]{--fg: var(--text)}.fvn-ui [data-ui-col=sub-default]{--hover: var(--text);--fg: var(--text)}.fvn-ui [data-ui-col=sub-primary]{--hover: var(--primary);--fg: var(--primary);--border: hsl(var(--hsl-primary) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-red]{--hover: var(--red);--fg: var(--red);--border: hsl(var(--hsl-red) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-green]{--hover: var(--green);--fg: var(--green);--border: hsl(var(--hsl-green) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-yellow]{--hover: var(--yellow);--fg: var(--text);--inverted: var(--yellow-text);--border: hsl(var(--hsl-yellow) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-orange]{--hover: var(--orange);--fg: var(--text);--inverted: var(--orange-text);--border: hsl(var(--hsl-orange) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-blue]{--hover: var(--blue);--fg: var(--blue);--border: hsl(var(--hsl-blue) / var(--border-opacity-sub, 1))}.fvn-ui [data-ui-col=sub-pink]{--hover: var(--pink);--fg: var(--pink);--border: hsl(var(--hsl-pink) / var(--border-opacity-sub, 1))}.fvn-ui .ui-size--small{--input-padding: calc(var(--space-3) * .75) var(--space-3)}.fvn-ui .ui-size--medium{--input-padding: calc(var(--space-4) * .75) var(--space-4)}.fvn-ui .ui-size--large{--input-padding: calc(var(--space-6) * .75) var(--space-6)}.fvn-ui .ui-ratio--square{--input-padding: calc(var(--space) * .75);aspect-ratio:1}.fvn-ui .ui-ratio--square.ui-size--medium{--input-padding: calc(var(--space-4) * .75);--ui-icon-size: calc(1.25 * var(--input-padding));--stroke-width: 1.25}.fvn-ui .ui-ratio--square.ui-size--large{--input-padding: calc(var(--space-6) * .75);--ui-icon-size: calc(1.5 * var(--input-padding));--stroke-width: 1}.ui-fadein{transition:opacity .2s ease}.ui-pending{opacity:0}.ui-dialog::backdrop{background:hsl(var(--hsl-text) / .2)}.ui-dialog{border:none;border-radius:var(--radius);width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;box-shadow:var(--shadow-md);background:var(--back);color:var(--text)}.ui-dialog:not([open]){display:none}.ui-dialog__inner{padding:var(--space-4)}.ui-dialog__inner>.row,.ui-dialog__inner>.col{flex:1;width:100%}.ui-dialog__footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-4)}.ui-popover{position:fixed;z-index:50;border:1px solid var(--border);border-radius:var(--radius);background:var(--back);color:var(--text);box-shadow:var(--shadow-sm);padding:var(--space-3);opacity:0;pointer-events:none;transition:opacity .12s ease}.ui-popover[data-open=true]{opacity:1;pointer-events:auto}.ui-popover[data-open=true]:before{content:\"\";position:absolute;left:0;right:0;height:12px}.ui-popover[data-position=bottom][data-open=true]:before{top:-12px}.ui-popover[data-position=top][data-open=true]:before{bottom:-12px}.ui-popover__arrow{--size: 10px;--offset: calc(var(--size) / -2);position:absolute;width:var(--size);height:var(--size);background:var(--back);border:1px solid var(--border);border-right:0;border-bottom:0;left:50%;transform:translate(-50%) rotate(45deg)}.ui-popover[data-position=bottom] .ui-popover__arrow{top:var(--offset)}.ui-popover[data-position=top] .ui-popover__arrow{bottom:var(--offset);transform:translate(-50%) rotate(-135deg)}.ui-icon{flex:none;width:var(--ui-icon-size);height:var(--ui-icon-size);stroke-width:var(--stroke-width, 1.5)}.ui-btn{--bg: transparent;--fg: var(--text);flex:none;height:fit-content;border:1px solid transparent;background:var(--bg);color:var(--fg);border-radius:var(--radius);padding:var(--input-padding);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2);position:relative;white-space:nowrap;font:inherit;font-weight:500;font-size:calc(.9 * var(--core));transition:var(--core-transition)}.fvn-ui .ui-btn{font-weight:500}.ui-btn--reverse{flex-direction:row-reverse}.ui-btn--badge{padding:.5em;text-transform:uppercase;letter-spacing:.1em;pointer-events:none;font-weight:700!important;font-size:75%!important;line-height:1!important}.ui-btn>div{position:relative;z-index:1;pointer-events:none}.ui-btn--list-item{gap:var(--space-4);padding:0 var(--space-4) 0 0;flex-direction:row-reverse;width:100%}.ui-btn--list-item>.col{--gap: .1em;background:var(--back);color:var(--text);padding-right:var(--space-8);padding-left:var(--space-4);padding-block:var(--space-2);border-radius:var(--radius) 0 0 var(--radius)}.ui-btn--list-item.ui-btn--filled>.col{color:var(--bg, var(--text))}.ui-btn--list-item.ui-btn--sub:hover,.ui-btn--list-item:not(.ui-btn--sub){border-color:hsl(var(--hsl-border) / .15)!important}.ui-btn--list-item.ui-btn--outline:hover{border-color:hsl(var(--hsl-border) / .35)!important}.ui-btn--list-item>.col>div:last-child{font-weight:400;font-size:90%;color:var(--muted)}.ui-btn--muted{color:var(--muted)}[aria-expanded=true] .ui-btn--muted,:focus-visible+.ui-btn--muted{color:var(--fg)}.ui-btn:hover{color:var(--fg)}.ui-btn--sub{--bg: transparent}.ui-btn--round{--input-padding: calc(var(--space) * .75) calc(var(--space) * 1.75);border-radius:999px;gap:var(--space-2)}.ui-btn--square{--input-padding: calc(var(--space) * .75);aspect-ratio:1}.ui-btn--stripped{--input-padding: 0}.ui-btn--stripped>div{border-bottom:1px solid var(--muted)}.ui-btn--minimal:not(.ui-btn--list-item){--bg: transparent;--fg: var(--text)}.ui-btn--minimal:not(.ui-btn--list-item):before{content:\"\";background:var(--fg);opacity:var(--border-opacity, .25);position:absolute;width:calc(100% - (2 * var(--space)));height:1px;top:50%;transform:translatey(.65em)}.ui-btn--minimal:not(.ui-btn--list-item):hover:before{opacity:1}.ui-btn--minimal.ui-col-sub:not(:hover):before{opacity:var(--border-opacity-sub, .25)}.ui-btn--hover:hover{background:var(--hover);border-color:transparent}.ui-btn--hover-sub:hover{--fg: var(--inverted, var(--back));--bg: var(--hover)}.ui-btn--filled:after{content:\"\";position:absolute;inset:-1px;border-radius:inherit;transition:opacity var(--core-transition);background:var(--back);opacity:0;pointer-events:none}.ui-btn--filled:hover:after{opacity:.2}.ui-btn:disabled{--bg: transparent;--fg: var(--muted);cursor:not-allowed}.ui-btn:not(.ui-btn--ghost):not(.ui-btn--minimal):disabled{border-color:var(--border)}.ui-btn--outline{border-color:var(--border)}.ui-btn__icon{position:relative;width:var(--ui-icon-size);display:flex;align-items:center;justify-content:center}.ui-btn__icon>svg{position:absolute}.ui-btn__icon>span{position:relative}.ui-btn__icon>span>svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ui-btn.loading{--ui-icon-size: var(--core);flex-direction:row-reverse;pointer-events:none;position:relative;padding-left:calc(3.5 * var(--space))}.ui-btn.loading:before{content:\"\";width:var(--ui-icon-size);height:var(--ui-icon-size);border:1px solid var(--fg);border-radius:50%;border-color:var(--fg) var(--fg) var(--fg) transparent;animation:loadingSpin 1s linear infinite;position:absolute;left:var(--space)}.ui-btn__tip{font-size:.8em;line-height:1.2;max-width:220px}@keyframes loadingSpin{to{transform:rotate(359deg)}}.ui-title{line-height:1.2;font-weight:650;font-size:1.1em;margin:0}.ui-title--large{font-weight:700;font-size:1.5em}.ui-title--small{font-weight:500;font-size:1em!important}.ui-description{display:block;line-height:1.4;margin:0}.ui-label{display:block;font-size:.875em;font-weight:500;color:var(--text);min-height:auto}.ui-label--soft{font-weight:400;opacity:.7}.ui-truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ui-name{font-weight:500;font-size:.95em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-subtitle{font-size:.85em;color:var(--muted);white-space:nowrap;overflow:hidden}.ui-divider{flex:1;width:100%;border-top:1px solid var(--border);margin:var(--space) 0}.ui-divider--vertical{width:auto;height:100%;border-top:none;border-left:1px solid var(--border);margin:0 var(--space)}.ui-image{position:relative;overflow:hidden;background:var(--shade)}.ui-image[data-loaded=true] .ui-image__img{opacity:1}.ui-image[data-error=true]{background:var(--shade)}.ui-image__img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .3s ease}.ui-avatar{--size: calc(3.25 * var(--core));flex:none;display:inline-flex;align-items:center;gap:var(--space-2);font-size:calc(.3 * var(--size))}.ui-avatar--round .ui-avatar__box{border-radius:50%}.ui-avatar--medium{--size: calc(3.75 * var(--core))}.ui-avatar--large{--size: calc(4.5 * var(--core))}.ui-avatar__box{width:var(--size);height:var(--size);border-radius:var(--radius);background:var(--bg, var(--hover));color:var(--fg, var(--text));display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.ui-avatar__image{width:100%;height:100%}.ui-avatar__fallback{font-size:calc(var(--size) * .4);font-weight:500;text-transform:uppercase;letter-spacing:.02em}.ui-avatar__info{display:flex;flex-direction:column;gap:calc(.025 * var(--size));min-width:0}.ui-card{border-radius:var(--radius);color:var(--text)}.ui-card__body>.row,.ui-card__body>.col{flex:1;width:100%}.ui-dialog-component .ui-card{box-shadow:none}.ui-collapsible:disabled{opacity:.5;pointer-events:none}.ui-collapsible .ui-collapsible__trigger{--input-padding: 0;gap:var(--space-1);font-size:1em;font-weight:500}.ui-collapsible .ui-collapsible__trigger[disabled]{border:none}.ui-collapsible[data-open=false]>.ui-collapsible__content{display:none}.ui-collapsible[data-open=true]>.ui-collapsible__content{display:flex}.ui-collapsible--divider .ui-collapsible__content{border:1px solid var(--border);border-width:1px 0;margin-block:var(--space-4);padding-block:var(--space-4)}.ui-editable{border:1px solid var(--border);border-radius:var(--radius);padding:var(--input-padding);color:var(--text);background:transparent;width:100%;font:inherit;min-height:1.5em;outline:none;overflow-wrap:break-word;word-wrap:break-word;white-space:pre-wrap;font-size:calc(.9 * var(--core))}.ui-editable.ui-plain{border:none;padding:0;min-height:auto;border-radius:0;background:transparent!important}.ui-editable:not(.ui-plain):hover{border-color:var(--border-dark)}.ui-editable:not(.ui-plain):focus-visible{border-color:var(--muted)}.ui-editable.invalid{border-color:var(--red)}.ui-editable:empty:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none}.ui-editable:after{content:\"\";display:inline}.ui-editable--rich:after{content:none}.ui-editable--rich{position:relative}.ui-editable--rich[data-empty=true]:before{content:attr(data-placeholder);position:absolute;top:var(--input-padding);left:var(--input-padding);color:var(--muted);pointer-events:none}.ui-editable--size-large{padding:calc(var(--input-padding) * 1.5);font-size:1.1em}.ui-editable--single-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-editable__wrap{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.ui-editable__footer{font-size:.8em}.ui-editable__message{color:var(--red)}.ui-editable__info,.ui-editable__counter{color:var(--muted)}.ui-editable__counter.ok{color:var(--green)}.ui-editable__counter.warn{color:var(--orange)}.ui-editable__counter.error{color:var(--red)}.ui-editable__toolbar{--text: var(--muted);border:1px solid var(--border);border-bottom-width:0;border-radius:var(--radius) var(--radius) 0 0}.ui-editable__toolbar:hover{--text: hsl(var(--hsl-text))}.col.ui-editable__wrap:has(.ui-editable:focus) .ui-editable__toolbar,.col.ui-editable__wrap:has(.ui-input:focus) .ui-editable__toolbar{border-color:var(--text)}.ui-editable__rte-btn.is-active{background:var(--hover);color:var(--text)}.ui-editable__rte-btn[disabled]{visibility:hidden}.ui-editable__toolbar+.ui-editable{border-radius:0 0 var(--radius) var(--radius);margin-top:calc(-1 * var(--space-2))}.ui-editable__toolbar~.ui-input-root{margin-top:calc(-1 * var(--space-2))}.ui-editable__toolbar~.ui-input-root .ui-input{border-radius:0 0 var(--radius) var(--radius)}.ui-editable__toolbar~.ui-input-root .ui-input__footer{display:none}.ui-editable--rich h3{font-weight:900;font-size:1.35em;margin:0}.ui-editable--rich span[data-ui-paragraph],.ui-editable--rich blockquote,.ui-editable--rich ul,.ui-editable--rich ol{margin:0}.ui-editable--rich span[data-ui-paragraph]{display:block}.ui-editable--rich b,.ui-editable--rich strong{font-weight:700!important}.ui-editable__tooltip{min-width:300px}.ui-editable__markdown-toggle{margin-right:auto}.ui-dashboard,.ui-dashboard__header{width:100%}.ui-dashboard__menu{flex-shrink:0}.ui-dashboard__content{width:100%;position:relative}.ui-dashboard__close{position:absolute;top:var(--space);right:var(--space);z-index:10}.ui-draggable{counter-reset:draggable-index;display:flex;flex-direction:column;gap:0!important;width:100%}.ui-draggable__item{counter-increment:draggable-index;position:relative;display:flex;align-items:center;width:100%}.ui-draggable__item:not(.ui-draggable--plain){gap:var(--space-3);border-bottom:1px dashed var(--border);padding:var(--space-3)}.ui-draggable__item:not(.ui-draggable--plain):last-child{border-bottom:none}.ui-draggable__item.ui-draggable--index:before{content:counter(draggable-index);color:var(--muted);text-align:right}.ui-draggable--disabled{opacity:.5;pointer-events:none}.ui-draggable__content{flex:1;min-width:0}.ui-draggable__handle{display:flex;align-items:center;justify-content:center;cursor:grab;color:var(--muted);border-radius:var(--radius);flex-shrink:0;-webkit-user-select:none;user-select:none;touch-action:none}.ui-draggable__handle:hover{color:var(--text);background:var(--hover)}.ui-draggable__handle:active{cursor:grabbing}.ui-draggable__item.ui-dragging{background:var(--shade)}.ui-input-root{flex:1;width:100%}.ui-input{border:1px solid var(--border);border-radius:var(--radius);padding:var(--input-padding);color:var(--text);background:transparent;width:100%;font:inherit;resize:vertical}.ui-input::placeholder{color:var(--muted)}.ui-input__wrap{position:relative;display:flex;align-items:center;width:100%}.ui-input__wrap .ui-input--submit{padding-right:40px}.ui-input__wrap .ui-btn{position:absolute;top:1px;right:1px;height:calc(100% - 2px);padding:var(--input-padding);border-radius:0 var(--radius) var(--radius) 0}.ui-input__wrap.has-value .ui-btn:not(.ui-input__num-btn){background:var(--hover)}.ui-input:hover{border-color:var(--border-dark)}.ui-input:focus-visible{border-color:var(--muted);outline:none}.ui-input__wrap.invalid .ui-input{border-color:var(--red)}.ui-input__footer{font-size:.8em}.ui-input__counter{color:var(--muted)}.ui-input__counter.ok{color:var(--green)}.ui-input__counter.warn{color:var(--orange)}.ui-input__counter.error,.ui-input__message{color:var(--red)}.ui-input__info{color:var(--muted)}.ui-input--number{-moz-appearance:textfield;padding-right:70px}.ui-input--number::-webkit-outer-spin-button,.ui-input--number::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ui-input__num-btns{display:flex;position:absolute;right:1px;top:1px;height:calc(100% - 2px);gap:0}.ui-input__num-btn{position:static!important;height:100%!important;border:none!important;border-radius:0!important;flex-shrink:0;border-left:1px solid var(--border)!important}.ui-input__num-btn:last-child{border-radius:0 var(--radius) var(--radius) 0!important}.ui-input__num-btn:hover{background:var(--hover)}.ui-upload{width:100%;gap:var(--space-2)}.ui-upload__drop{display:flex;align-items:center;gap:var(--space-3);border:1px dashed var(--border);border-radius:var(--radius);padding:var(--space-3);background:transparent;cursor:pointer;width:100%;transition:border-color .14s ease,background-color .14s ease}.ui-upload__drop:hover{border-color:var(--text)}.ui-upload__drop:focus-visible{outline:none;border-color:var(--muted)}.ui-upload__drop.drag-over{border-color:var(--blue);background:var(--shade)}.ui-upload__drop.invalid{border-color:var(--red)}.ui-upload__drop.invalid:hover,.ui-upload__drop.invalid:focus-visible{border-color:var(--red)}.ui-upload--disabled .ui-upload__drop{opacity:.65;cursor:not-allowed}.ui-upload__preview{flex-shrink:0;width:56px;height:56px;border-radius:var(--radius);display:grid;place-items:center;color:var(--muted);background:var(--shade)}.ui-upload__preview-icon .ui-icon{width:var(--space-7);height:var(--space-7);stroke-width:1}.ui-upload__drop.drag-over .ui-upload__preview{color:var(--text);border:1px solid var(--border)}.ui-upload__content{flex:1;min-width:0;gap:var(--space-1);overflow:hidden;position:relative}.ui-upload__content .ui-description{max-width:70%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ui-upload__content .ui-btn--badge{position:absolute;right:0;top:50%;transform:translateY(-50%)}.ui-upload__placeholder{font-weight:500}.ui-upload__hint{color:var(--muted);font-size:.9em}.ui-upload__filename{color:var(--text);font-size:.9em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-upload__error{color:var(--red);font-size:.9em}.ui-upload__actions{flex:0}.ui-upload__input{display:none}.ui-form-input{position:absolute;opacity:0;pointer-events:none}.ui-form-control{--control-size: calc(var(--space) * 1.75);width:var(--control-size);height:var(--control-size);border-radius:calc(var(--radius) * .5);border:1px solid var(--border);background:var(--bg, var(--back));display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--core-transition)}.ui-form-control--round{border-radius:50%}.ui-form-control .ui-icon{--ui-icon-size: calc(var(--control-size) * .7);color:var(--fg, var(--back));opacity:0;transform:scale(.5);transition:var(--core-transition)}[data-state=checked]>.ui-form-control{border-color:transparent}[data-state=checked]>.ui-form-control .ui-icon{opacity:1;transform:scale(1)}.ui-form-input:focus-visible+.ui-form-control{box-shadow:var(--shadow-sm)}.ui-form-item{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.ui-form-item .ui-label{pointer-events:none}.ui-form-item.disabled{opacity:.5;cursor:not-allowed}.ui-form-item:hover .ui-form-input:not(:checked):not(:disabled)+.ui-form-control{background:var(--shade)}.ui-form-group{display:flex;flex-direction:column;gap:var(--space-2)}.ui-form-group.horizontal{flex-direction:row;align-items:center}.ui-form-group.horizontal .ui-form-group__items{flex-direction:row}.ui-form-group__items{display:flex;flex-direction:column;gap:var(--space-2)}.ui-checkbox .ui-form-control svg{stroke-width:2.5}.ui-select{position:relative}.ui-select.invalid .ui-select__trigger{border-color:var(--red)}.ui-select__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--border);border-radius:var(--radius);padding:var(--input-padding);background:transparent;color:var(--text);cursor:pointer}.ui-select__trigger:hover{border-color:var(--border-dark)}.ui-select__trigger.ui-select--ghost{border:1px solid transparent}.ui-select__trigger.ui-select--ghost:hover{background:var(--hover)}.ui-select__trigger .ui-btn{padding:0}.ui-select__trigger .ui-btn .ui-btn__icon{position:absolute;top:50%;right:0;transform:translatey(-50%)}.ui-select__separator{height:0;border-top:1px dashed var(--border);margin:calc(var(--space) * .5) 0}.ui-select__value{display:inline-flex;min-width:0;gap:8px;align-items:center}.ui-select__placeholder{color:var(--muted)}.ui-select__icon{opacity:.7}.ui-select__actions{display:flex;align-items:center;gap:var(--space-1)}.ui-select__filter{display:block;width:100%;border:none;border-bottom:1px solid var(--border);background:var(--hover-bright);padding:var(--space-2) var(--space-3);font-size:inherit;outline:none;color:var(--text)}.ui-select__filter::placeholder{color:var(--muted)}.ui-select__badge{display:flex;align-items:center;justify-content:center;height:100%;aspect-ratio:1;font-weight:500;background:var(--hover);border-radius:0 var(--radius) var(--radius) 0;cursor:pointer;position:absolute;top:1px;right:1px;height:calc(100% - 2px);z-index:2}.ui-select__badge:hover{background:var(--text);color:var(--back)}.ui-select__badge:before{content:none;font-size:1.5rem;font-weight:300;line-height:0}.ui-select__badge:hover:before{content:\"×\"}.ui-select__badge:hover{font-size:0}.ui-select__badge[hidden]{display:none}.ui-select__popover{position:absolute;left:0;right:0;top:calc(100% - 1px);border:1px solid var(--border);border-radius:var(--radius);background:var(--back);box-shadow:var(--shadow-md);overflow:hidden;transform-origin:top;opacity:0;transform:scale(.99) translateY(4px);pointer-events:none;transition:all .12s ease;z-index:50}.ui-select[data-open=true] .ui-select__popover{opacity:1;transform:scale(1) translateY(0);pointer-events:auto}.ui-select[data-open=true] .ui-select__trigger .ui-btn .ui-btn__icon{transform:translatey(-50%) rotate(-90deg);opacity:.35}.ui-select__list{max-height:240px;overflow:auto;scrollbar-width:none;-ms-overflow-style:none;padding:6px}.ui-select__list::-webkit-scrollbar{display:none}.ui-select__item{width:100%;text-align:left;border:0;background:transparent;border-radius:var(--radius);padding:10px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;transition:background .12s ease;color:var(--text);position:relative}.ui-select__item[disabled]{pointer-events:none;color:var(--muted)}.ui-select__item[hidden]{display:none}.ui-select__item:hover{background:var(--shade)}.ui-select__item[aria-selected=true]{background:var(--hover)}.ui-select__check{position:absolute;right:var(--space);top:50%;transform:translatey(-40%);color:var(--muted)}.ui-switch{--bg: var(--text);flex:none;display:inline-flex;align-items:center;gap:var(--space-2)}.ui-switch__button{--switch-size: calc(1.75 * var(--space));width:calc(2 * var(--switch-size));height:var(--switch-size);border-radius:999px;border:none;background:hsl(var(--hsl-muted) / .25);position:relative;cursor:pointer;padding:0;transition:var(--core-transition)}.ui-switch__thumb{width:calc(.8 * var(--switch-size));height:calc(.8 * var(--switch-size));border-radius:999px;background:hsl(var(--hsl-white));position:absolute;top:50%;left:calc(.1 * var(--switch-size));transform:translateY(-50%);transition:left var(--core-transition)}.ui-switch[data-checked=true] .ui-switch__button{background:var(--bg);border-color:var(--bg)}.ui-switch[data-checked=true] .ui-switch__thumb{left:calc(1.1 * var(--switch-size))}.ui-tabs .ui-btn[aria-selected=true]{pointer-events:none}.ui-tabs__buttons{display:inline-flex;gap:var(--space-1);flex-wrap:wrap;background:var(--shade);padding:var(--space-1);border-radius:calc(1.5 * var(--radius))}.ui-tabs__panel{width:100%;border-radius:var(--radius)}.ui-tabs__tab{background:transparent;cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--core-transition)}.ui-tabs--shade .ui-tabs__panel{background:var(--shade)}.ui-tabs--shade .ui-btn[aria-selected=false]{--bg: var(--shade)}.ui-tabs--round .ui-tabs--default{border-radius:999px;gap:0;padding:var(--space-1) calc(var(--space-1) + .2em)}.ui-tabs--round .ui-tabs--default .ui-btn{--input-padding: calc(var(--space) * .5) calc(var(--space) * 1.5);--bg: transparent;margin:0 -.2em}.ui-tabs--default .ui-btn{--input-padding: calc(var(--space) * .5) calc(var(--space) * .75)}.ui-tabs--default .ui-btn:not(.colorized)[aria-selected=true]{background:hsl(var(--hsl-white))!important;color:hsl(var(--hsl-black))!important;box-shadow:0 1px 4px #0003}.ui-tabs--outline{padding:0;background:none;gap:0}.ui-tabs--outline+.ui-tabs__panel{margin-top:calc(-1 * var(--gap))}.ui-tabs--outline:not([data-centered])+.ui-tabs__panel{border-top-left-radius:0}.ui-tabs--outline .ui-btn{--core-transition: none;border-color:transparent;border-radius:0}.ui-tabs--outline:not(.ui-tabs--toggle-group) .ui-btn:first-child{border-top-left-radius:var(--radius)}.ui-tabs--outline:not(.ui-tabs--toggle-group) .ui-btn:last-child{border-top-right-radius:var(--radius)}.ui-tabs--outline .ui-btn[aria-selected=false]{--fg: var(--muted);--bg: var(--shade);border-left-color:hsl(var(--hsl-text) / .08)}.ui-tabs--outline .ui-btn[aria-selected=false]:first-child,.ui-tabs--outline .ui-btn[aria-selected=true]+[aria-selected=false]{border-left-color:transparent}.ui-tabs--outline .ui-btn[aria-selected=true]{--fg: var(--text);--bg: var(--shade-back, var(--back));border-color:var(--border)}.ui-tabs--outline:not(.ui-tabs--toggle-group) .ui-btn[aria-selected=true]:after{content:\"\";background:var(--bg);bottom:0;left:0;width:100%;height:3px;position:absolute;transform:translatey(100%)}.ui-tabs--ghost{gap:0;background:transparent;padding:0}.ui-tabs--ghost .ui-btn[aria-selected=true]:not([data-ui-col]){--bg: var(--hover)}.ui-tabs--border{padding:0;background:none;gap:0}.ui-tabs--border .ui-btn{border-color:transparent;border-width:2px;border-radius:0}.ui-tabs--border .ui-btn:after{content:\"\";background:var(--bg);bottom:0;left:0;width:100%;height:2px;position:absolute;transform:translatey(100%);pointer-events:none;opacity:0;transition:var(--core-transition)}.ui-tabs--border .ui-btn:hover{background:transparent}.ui-tabs--border .ui-btn:hover:after{background:var(--fg);opacity:.5}.ui-tabs--border .ui-btn[aria-selected=true]:after{background:var(--fg);opacity:1}.ui-tabs--border .ui-btn[aria-selected=false]{--fg: var(--muted)}.ui-tabs--minimal{gap:var(--space-4);padding:var(--space-2) 0;background:transparent}.ui-tabs--minimal .ui-btn{--fg: var(--muted);background:transparent;padding:0;--space: 0px}.ui-tabs--minimal .ui-btn[aria-selected=true]{--fg: var(--text)}.ui-tabs--minimal .ui-btn[aria-selected=true]:before{opacity:1}.ui-toggle{--bg: var(--text);--fg: var(--back);flex:none;display:inline-flex;background:var(--hover);padding:0;border-radius:999px;-webkit-user-select:none;user-select:none;text-transform:uppercase;letter-spacing:.05em;font-size:72.5%;font-weight:500;cursor:pointer}.ui-toggle[disabled]{opacity:.5;pointer-events:none}.ui-toggle div{pointer-events:none;padding:var(--space-2) var(--space-5);border-radius:999px}.ui-toggle div:first-child{background:var(--text);color:var(--back)}.ui-toggle div:last-child{background:transparent;color:inherit;padding-left:var(--space-3)}.ui-toggle[data-checked=true] div:first-child{background:transparent;color:inherit;padding-right:var(--space-3);color:var(--muted)}.ui-toggle[data-checked=false] div:last-child{color:var(--muted)}.ui-toggle[data-checked=true] div:last-child{background:var(--bg);color:var(--fg);padding:var(--space-2) var(--space-5)}.ui-toggle--minimal{background:transparent;padding:var(--input-padding);gap:var(--space-3)}.ui-toggle--minimal>div{background:transparent!important;border-bottom:1px solid transparent;border-radius:0;padding:1px 0!important;color:var(--muted);position:relative}.ui-toggle--minimal>div:last-child:before{content:\"/\";position:absolute;font-size:150%;font-weight:300;top:50%;left:0;transform:translate(-175%,-50%);color:var(--muted)}.ui-toggle--minimal[data-checked=true] div:last-child,.ui-toggle--minimal[data-checked=false] div:first-child{color:var(--text);border-bottom-color:var(--text)}nav.ui-toggle--minimal>div:hover{color:var(--text)!important}\n";d.head.appendChild(s)})();const Pi = (t, ...e) => {
|
|
2
2
|
for (const n of e)
|
|
3
3
|
for (const [r, i] of Object.entries(n)) {
|
|
4
4
|
const u = t[r];
|
|
@@ -277,14 +277,14 @@ function ln(...t) {
|
|
|
277
277
|
let D = null, E = !1;
|
|
278
278
|
if (b instanceof Event) {
|
|
279
279
|
if (D = b.currentTarget || b.target, E = ["mouseover", "mouseenter"].includes(b.type), E && D) {
|
|
280
|
-
const
|
|
281
|
-
if (
|
|
280
|
+
const Y = pr.get(D);
|
|
281
|
+
if (Y?.isOpen) return Y;
|
|
282
282
|
}
|
|
283
283
|
} else b instanceof Element ? D = b : b === !0 && i instanceof Element && (D = i);
|
|
284
284
|
if (D) {
|
|
285
|
-
const
|
|
286
|
-
if (
|
|
287
|
-
return s !== void 0 &&
|
|
285
|
+
const Y = pr.get(D);
|
|
286
|
+
if (Y?.isConnected)
|
|
287
|
+
return s !== void 0 && Y.setContent?.(s), E ? Y.isOpen || Y.show(D) : Y.toggle(D), Y;
|
|
288
288
|
}
|
|
289
289
|
D && E && (D.style.position = D.style.position || "relative");
|
|
290
290
|
const z = ln({
|
|
@@ -307,13 +307,13 @@ function ln(...t) {
|
|
|
307
307
|
D.key === "Escape" && (D.preventDefault(), p && j());
|
|
308
308
|
}, j = () => {
|
|
309
309
|
C && (C = !1, q ? N.close() : N.dataset.open = "false", w?.(), document.removeEventListener("keydown", R, !0), S && (window.removeEventListener("resize", B), S = !1), x?.());
|
|
310
|
-
},
|
|
310
|
+
}, G = (D) => {
|
|
311
311
|
C || (!i && D && (k = D instanceof Event ? D.currentTarget || D.target : D), N.isConnected || document.body.appendChild(N), C = !0, q ? N.showModal() : (B(), N.dataset.open = "true", S || (window.addEventListener("resize", B), S = !0), w = Xs(N, (E) => {
|
|
312
312
|
k?.contains(E.target) || j();
|
|
313
313
|
})), document.addEventListener("keydown", R, !0), y?.());
|
|
314
|
-
}, V = (D) => C ? j() :
|
|
314
|
+
}, V = (D) => C ? j() : G(D), B = () => {
|
|
315
315
|
if (!k || q) return;
|
|
316
|
-
const D = 8, E = 12, z = k.getBoundingClientRect(),
|
|
316
|
+
const D = 8, E = 12, z = k.getBoundingClientRect(), Y = N.offsetWidth || 200, re = N.offsetHeight || 100, ae = window.innerWidth, ce = window.innerHeight, we = Math.max(0, ce - z.bottom - D - E), pe = Math.max(0, z.top - D - E);
|
|
317
317
|
let he = u;
|
|
318
318
|
u === "bottom" && re > we ? he = pe > we ? "top" : "bottom" : u === "top" && re > pe && (he = we >= pe ? "bottom" : "top"), N.dataset.position = he;
|
|
319
319
|
const me = Math.max(120, he === "bottom" ? we : pe);
|
|
@@ -321,7 +321,7 @@ function ln(...t) {
|
|
|
321
321
|
const Ie = Math.max(80, me - 24);
|
|
322
322
|
U.style.maxHeight = `${Ie}px`, U.style.overflowY = "auto";
|
|
323
323
|
}
|
|
324
|
-
const $ = z.left + z.width / 2, ge = $ -
|
|
324
|
+
const $ = z.left + z.width / 2, ge = $ - Y / 2, oe = Math.max(E, Math.min(ae - Y - E, ge));
|
|
325
325
|
if (d) {
|
|
326
326
|
const Ie = oe - z.left;
|
|
327
327
|
N.style.left = `${Ie}px`, N.style.top = he === "bottom" ? `${z.height + D}px` : "auto", N.style.bottom = he === "top" ? `${z.height + D}px` : "auto";
|
|
@@ -366,7 +366,7 @@ function ln(...t) {
|
|
|
366
366
|
o && I("div", { class: no.el("arrow"), ref: (D) => _ = D }),
|
|
367
367
|
U
|
|
368
368
|
]
|
|
369
|
-
}), f && N.classList.add("ui-inverted"), N.show =
|
|
369
|
+
}), f && N.classList.add("ui-inverted"), N.show = G, N.hide = j, N.toggle = V, N.setContent = v, N.destroy = () => {
|
|
370
370
|
j(), k && pr.delete(k), N.remove();
|
|
371
371
|
}, Object.defineProperty(N, "isOpen", { get: () => C }), d && i ? i.addEventListener("mouseleave", j) : c && i && (i.addEventListener("mouseleave", j), N.addEventListener("mouseleave", j)), N;
|
|
372
372
|
}
|
|
@@ -486,7 +486,7 @@ function Ne(...t) {
|
|
|
486
486
|
dataset: y,
|
|
487
487
|
props: x,
|
|
488
488
|
...C
|
|
489
|
-
} = le(...t), w = /primary|secondary/.test(o), _ = /outline|ghost/.test(o), k = /minimal|stripped|none/.test(o), S = !_ && !k, T = Array.isArray(a), q = () => T ? a[Math.floor(Math.random() * a.length)] : a, R = q(),
|
|
489
|
+
} = le(...t), w = /primary|secondary/.test(o), _ = /outline|ghost/.test(o), k = /minimal|stripped|none/.test(o), S = !_ && !k, T = Array.isArray(a), q = () => T ? a[Math.floor(Math.random() * a.length)] : a, R = q(), G = S ? w ? o : R || "default" : R && `sub-${R}`, V = Array.isArray(u) ? u : u ? [u] : [], B = [];
|
|
490
490
|
r && !V.length && V.push("arrow-right");
|
|
491
491
|
const U = [
|
|
492
492
|
n && I("div", { html: n }),
|
|
@@ -513,7 +513,7 @@ function Ne(...t) {
|
|
|
513
513
|
C.class
|
|
514
514
|
],
|
|
515
515
|
attrs: b,
|
|
516
|
-
data: { ...y, uiCol:
|
|
516
|
+
data: { ...y, uiCol: G },
|
|
517
517
|
children: [
|
|
518
518
|
V.length && I("div", {
|
|
519
519
|
class: Ve.el("icon"),
|
|
@@ -555,7 +555,7 @@ function Ne(...t) {
|
|
|
555
555
|
let D = null, E = null;
|
|
556
556
|
const z = () => {
|
|
557
557
|
D && (clearTimeout(D), D = null);
|
|
558
|
-
},
|
|
558
|
+
}, Y = () => E || (E = ln({
|
|
559
559
|
type: "tooltip",
|
|
560
560
|
anchor: v,
|
|
561
561
|
inverted: p,
|
|
@@ -564,7 +564,7 @@ function Ne(...t) {
|
|
|
564
564
|
text: h
|
|
565
565
|
})
|
|
566
566
|
}), E), re = () => {
|
|
567
|
-
v.disabled ||
|
|
567
|
+
v.disabled || Y().show(v);
|
|
568
568
|
}, ae = () => {
|
|
569
569
|
z(), E?.hide?.();
|
|
570
570
|
};
|
|
@@ -957,10 +957,10 @@ function Zc(...t) {
|
|
|
957
957
|
onKeydown: q,
|
|
958
958
|
onSubmit: R,
|
|
959
959
|
props: j,
|
|
960
|
-
attrs:
|
|
960
|
+
attrs: G = {},
|
|
961
961
|
...V
|
|
962
962
|
} = le(...t), B = s === 1 || f === !1, U = s && s > 1 ? s : null;
|
|
963
|
-
let v, N, D, E, z = null,
|
|
963
|
+
let v, N, D, E, z = null, Y = g, re = b, ae = !1;
|
|
964
964
|
const ce = () => z?.getHTML?.() ?? (v?.innerHTML || ""), we = () => {
|
|
965
965
|
const F = document.createElement("div");
|
|
966
966
|
return F.innerHTML = ce(), F.textContent || "";
|
|
@@ -972,7 +972,7 @@ function Zc(...t) {
|
|
|
972
972
|
}, $ = pu({
|
|
973
973
|
validate: d,
|
|
974
974
|
required: m,
|
|
975
|
-
min:
|
|
975
|
+
min: Y,
|
|
976
976
|
max: re,
|
|
977
977
|
message: x,
|
|
978
978
|
checkLength: !0,
|
|
@@ -987,7 +987,7 @@ function Zc(...t) {
|
|
|
987
987
|
D && (D.hidden = F);
|
|
988
988
|
}
|
|
989
989
|
}), ge = rl({
|
|
990
|
-
min:
|
|
990
|
+
min: Y,
|
|
991
991
|
max: re,
|
|
992
992
|
checkLength: !0,
|
|
993
993
|
getValue: we,
|
|
@@ -1020,7 +1020,7 @@ function Zc(...t) {
|
|
|
1020
1020
|
z?.isReady?.() || (oe(), T?.call(v, ce(), F));
|
|
1021
1021
|
}, je = I("div", {
|
|
1022
1022
|
...V,
|
|
1023
|
-
...
|
|
1023
|
+
...G,
|
|
1024
1024
|
...Ys,
|
|
1025
1025
|
id: n,
|
|
1026
1026
|
contentEditable: "true",
|
|
@@ -1108,7 +1108,7 @@ function Zc(...t) {
|
|
|
1108
1108
|
return z?.fromMarkdown ? z.fromMarkdown(J) : A(Jc(J)), $.clearManualError(), he(), ce();
|
|
1109
1109
|
}, be.toggleMarkdownMode = (F) => z?.toggleMarkdownMode?.(F) ?? !1, be.isMarkdownMode = () => z?.isMarkdownMode?.() ?? !1, be.setLimits = (F, J) => {
|
|
1110
1110
|
const { min: ie, max: Je } = jc(F, J);
|
|
1111
|
-
ie !== void 0 && (
|
|
1111
|
+
ie !== void 0 && (Y = ie), Je !== void 0 && (re = Je), $.setLimits({ min: ie, max: Je }), ge.setLimits({ min: ie, max: Je }), z?.setLimits?.({ min: ie, max: Je }), ae && $.check(), y && ge.update();
|
|
1112
1112
|
}, be.reset = () => {
|
|
1113
1113
|
z?.reset ? z.reset() : (v.innerHTML = "", oe()), ae = !1, $.reset(), y && ge.reset();
|
|
1114
1114
|
}, l && Wc().then(({ createProseMirrorAdapter: F }) => {
|
|
@@ -1124,7 +1124,7 @@ function Zc(...t) {
|
|
|
1124
1124
|
validate: d,
|
|
1125
1125
|
required: m,
|
|
1126
1126
|
message: x,
|
|
1127
|
-
min:
|
|
1127
|
+
min: Y,
|
|
1128
1128
|
max: re
|
|
1129
1129
|
},
|
|
1130
1130
|
bem: lt,
|
|
@@ -1243,8 +1243,8 @@ function Xc(...t) {
|
|
|
1243
1243
|
});
|
|
1244
1244
|
return R._content = S, R.ondragstart = (j) => {
|
|
1245
1245
|
p = R, d = [...h.children].indexOf(R), R.classList.add("ui-dragging"), j.dataTransfer.effectAllowed = "move";
|
|
1246
|
-
const
|
|
1247
|
-
|
|
1246
|
+
const G = document.createElement("div");
|
|
1247
|
+
G.style.cssText = "position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;", document.body.appendChild(G), j.dataTransfer.setDragImage(G, 0, 0), requestAnimationFrame(() => G.remove()), a?.({ item: S, element: R });
|
|
1248
1248
|
}, R.ondragend = () => {
|
|
1249
1249
|
R.classList.remove("ui-dragging");
|
|
1250
1250
|
const j = [...h.children].indexOf(R);
|
|
@@ -1255,10 +1255,10 @@ function Xc(...t) {
|
|
|
1255
1255
|
}), p = null, d = -1, c?.({ item: S, element: R, index: j });
|
|
1256
1256
|
}, R.ondragover = (j) => {
|
|
1257
1257
|
if (j.preventDefault(), !p || p === R) return;
|
|
1258
|
-
const
|
|
1258
|
+
const G = R.getBoundingClientRect();
|
|
1259
1259
|
h.insertBefore(
|
|
1260
1260
|
p,
|
|
1261
|
-
j.clientY >
|
|
1261
|
+
j.clientY > G.top + G.height / 2 ? R.nextElementSibling : R
|
|
1262
1262
|
);
|
|
1263
1263
|
}, R;
|
|
1264
1264
|
}, y = (k, S) => {
|
|
@@ -1320,7 +1320,7 @@ function Er(...t) {
|
|
|
1320
1320
|
props: w,
|
|
1321
1321
|
..._
|
|
1322
1322
|
} = le(...t), k = u && u > 1, S = r === "number", T = !k && Oe("onSubmit", _, !0), q = Oe("onSubmit", _), R = Oe("onInput", _), j = Oe("onChange", _);
|
|
1323
|
-
let
|
|
1323
|
+
let G, V, B, U, v, N = p, D = d;
|
|
1324
1324
|
const E = () => q?.call(V, V.value), z = pu({
|
|
1325
1325
|
validate: f,
|
|
1326
1326
|
required: h,
|
|
@@ -1329,14 +1329,14 @@ function Er(...t) {
|
|
|
1329
1329
|
message: y,
|
|
1330
1330
|
checkLength: !S,
|
|
1331
1331
|
getValue: () => V?.value || "",
|
|
1332
|
-
setInvalid: ($) =>
|
|
1332
|
+
setInvalid: ($) => G?.classList.toggle("invalid", $),
|
|
1333
1333
|
setMessage: ($, ge) => {
|
|
1334
1334
|
U && (U.textContent = $, U.hidden = !ge);
|
|
1335
1335
|
},
|
|
1336
1336
|
onInvalidChange: ($) => {
|
|
1337
1337
|
v && (v.hidden = $);
|
|
1338
1338
|
}
|
|
1339
|
-
}),
|
|
1339
|
+
}), Y = rl({
|
|
1340
1340
|
min: N,
|
|
1341
1341
|
max: D,
|
|
1342
1342
|
checkLength: !S,
|
|
@@ -1345,7 +1345,7 @@ function Er(...t) {
|
|
|
1345
1345
|
B && (B.textContent = $, B.classList.remove("warn", "error", "ok"), ge && B.classList.add(ge));
|
|
1346
1346
|
} : null
|
|
1347
1347
|
}), re = ($) => {
|
|
1348
|
-
z.clearManualError(),
|
|
1348
|
+
z.clearManualError(), G.classList.toggle("has-value", !!V.value), z.hasRules && z.check(), b && Y.update(), R?.call(V, V.value, $);
|
|
1349
1349
|
}, ae = ($) => {
|
|
1350
1350
|
j?.call(V, V.value, $);
|
|
1351
1351
|
}, ce = ($) => {
|
|
@@ -1360,7 +1360,7 @@ function Er(...t) {
|
|
|
1360
1360
|
l && nt({ text: l, soft: !0 }),
|
|
1361
1361
|
I("div", {
|
|
1362
1362
|
class: [Ke.el("wrap"), Ke.core("size", i), S && Ke.el("wrap--number")],
|
|
1363
|
-
ref: ($) =>
|
|
1363
|
+
ref: ($) => G = $,
|
|
1364
1364
|
children: [
|
|
1365
1365
|
I(pe, {
|
|
1366
1366
|
..._,
|
|
@@ -1426,7 +1426,7 @@ function Er(...t) {
|
|
|
1426
1426
|
class: Ke.el("counter"),
|
|
1427
1427
|
end: !0,
|
|
1428
1428
|
ref: ($) => {
|
|
1429
|
-
B = $,
|
|
1429
|
+
B = $, Y.update();
|
|
1430
1430
|
}
|
|
1431
1431
|
})
|
|
1432
1432
|
])
|
|
@@ -1434,9 +1434,9 @@ function Er(...t) {
|
|
|
1434
1434
|
});
|
|
1435
1435
|
return me.input = V, me.isValid = z.check, me.error = z.error, me.ok = z.ok, me.setLimits = ($, ge) => {
|
|
1436
1436
|
const { min: oe, max: Ie } = Qc($, ge);
|
|
1437
|
-
oe !== void 0 && (N = oe), Ie !== void 0 && (D = Ie), z.setLimits({ min: oe, max: Ie }),
|
|
1437
|
+
oe !== void 0 && (N = oe), Ie !== void 0 && (D = Ie), z.setLimits({ min: oe, max: Ie }), Y.setLimits({ min: oe, max: Ie }), k && g && V && (D == null ? V.removeAttribute("maxlength") : V.setAttribute("maxlength", String(D))), z.check(), b && Y.update();
|
|
1438
1438
|
}, me.reset = () => {
|
|
1439
|
-
V.value = "",
|
|
1439
|
+
V.value = "", G.classList.remove("has-value"), z.reset(), b && Y.reset();
|
|
1440
1440
|
}, Ht(me, () => V.value, ($) => {
|
|
1441
1441
|
V.value = $, re();
|
|
1442
1442
|
});
|
|
@@ -1683,15 +1683,15 @@ function ff(...t) {
|
|
|
1683
1683
|
}), q = (E, z) => {
|
|
1684
1684
|
if (!E) return;
|
|
1685
1685
|
T.clearManualError();
|
|
1686
|
-
let
|
|
1687
|
-
if (E && al(E) && (
|
|
1688
|
-
return S._render(E, !0), T.error(
|
|
1686
|
+
let Y;
|
|
1687
|
+
if (E && al(E) && (Y = "This file type is blocked for security reasons."), af(E, g) || (Y = `Please choose a valid ${g === "any" ? "supported file" : `${g} file`}.`), Y)
|
|
1688
|
+
return S._render(E, !0), T.error(Y);
|
|
1689
1689
|
T.ok(), k = cf(E), w && (S._render(E), w.textContent = E.name), y && (y.dataset.hasValue = "true"), co(_, lf(E)), m?.call(y, k, E, z);
|
|
1690
1690
|
}, R = () => {
|
|
1691
1691
|
k = null, C && (C.value = ""), w && (w.textContent = o), y && (y.dataset.hasValue = "false"), x && x.classList.remove("drag-over"), co(_, cl(g)), T.reset();
|
|
1692
1692
|
}, j = () => {
|
|
1693
1693
|
f || C?.click();
|
|
1694
|
-
},
|
|
1694
|
+
}, G = (E) => {
|
|
1695
1695
|
T.clearManualError(), q(E.target.files?.[0], E);
|
|
1696
1696
|
}, V = (E) => {
|
|
1697
1697
|
f || (E.preventDefault(), E.stopPropagation(), x.classList.add("drag-over"));
|
|
@@ -1777,7 +1777,7 @@ function ff(...t) {
|
|
|
1777
1777
|
accept: b,
|
|
1778
1778
|
disabled: f,
|
|
1779
1779
|
ref: (E) => C = E,
|
|
1780
|
-
onChange:
|
|
1780
|
+
onChange: G
|
|
1781
1781
|
})
|
|
1782
1782
|
]
|
|
1783
1783
|
})
|
|
@@ -1929,10 +1929,10 @@ function gf(...t) {
|
|
|
1929
1929
|
let b = n || r || [];
|
|
1930
1930
|
for (let A = 0; A < b.length; A++) b[A].label ||= "";
|
|
1931
1931
|
const y = Number.isInteger(f) ? b.length > f : !!f, x = Oe("onChange", g);
|
|
1932
|
-
let C, w, _, k, S, T, q, R = !1, j = "",
|
|
1932
|
+
let C, w, _, k, S, T, q, R = !1, j = "", G = !1, V = 0, B = null;
|
|
1933
1933
|
const U = (A) => Number.isInteger(A) && b[A] ? String(b[A].value) : String(A);
|
|
1934
1934
|
let v = c ? new Set(Array.isArray(i) ? i.map(U) : i != null ? [U(i)] : []) : i ?? null, N = -1;
|
|
1935
|
-
const D = (A) => b.findIndex((Z) => String(Z.value) === String(A)), E = (A) => `<span class="${Ae.el("placeholder")}">${hr(A)}</span>`, z = () => c ? b.filter((A) => v.has(String(A.value))) : b[D(v)],
|
|
1935
|
+
const D = (A) => b.findIndex((Z) => String(Z.value) === String(A)), E = (A) => `<span class="${Ae.el("placeholder")}">${hr(A)}</span>`, z = () => c ? b.filter((A) => v.has(String(A.value))) : b[D(v)], Y = () => {
|
|
1936
1936
|
if (!c || !T) return;
|
|
1937
1937
|
const A = v.size;
|
|
1938
1938
|
T.textContent = A || "", T.hidden = A === 0;
|
|
@@ -1946,7 +1946,7 @@ function gf(...t) {
|
|
|
1946
1946
|
_.innerHTML = hr(J?.label || u);
|
|
1947
1947
|
} else
|
|
1948
1948
|
_.innerHTML = hr(u);
|
|
1949
|
-
|
|
1949
|
+
Y();
|
|
1950
1950
|
return;
|
|
1951
1951
|
}
|
|
1952
1952
|
const A = Number.isInteger(v) ? v : D(v);
|
|
@@ -2007,9 +2007,9 @@ function gf(...t) {
|
|
|
2007
2007
|
}
|
|
2008
2008
|
he(), ae(), N = c ? 0 : Math.max(0, D(v)), bt(), setTimeout(y && S ? () => S.focus() : () => k.focus(), 0), q = Xs(C, () => me(!1)), document.addEventListener("keydown", fn, !0);
|
|
2009
2009
|
}, $ = (A, Z) => {
|
|
2010
|
-
|
|
2010
|
+
G && (G = !1, C.classList.remove("invalid")), v = A, re(), x?.call(je, v, z(), Z);
|
|
2011
2011
|
}, ge = (A, Z) => {
|
|
2012
|
-
|
|
2012
|
+
G && (G = !1, C.classList.remove("invalid"));
|
|
2013
2013
|
const F = String(A);
|
|
2014
2014
|
v.has(F) ? v.delete(F) : v.add(F), re(), ae(), x?.call(je, [...v], z(), Z);
|
|
2015
2015
|
}, oe = (A) => {
|
|
@@ -2106,11 +2106,11 @@ function gf(...t) {
|
|
|
2106
2106
|
c ? (v = new Set(Array.isArray(A) ? A.map(U) : A != null ? [U(A)] : []), re(), Z && x?.call(je, [...v], z(), Z)) : $(A, Z);
|
|
2107
2107
|
};
|
|
2108
2108
|
return je.error = () => {
|
|
2109
|
-
|
|
2109
|
+
G = !0, C.classList.add("invalid");
|
|
2110
2110
|
}, je.ok = () => {
|
|
2111
|
-
|
|
2111
|
+
G = !1, C.classList.remove("invalid");
|
|
2112
2112
|
}, je.reset = () => {
|
|
2113
|
-
|
|
2113
|
+
G = !1, C.classList.remove("invalid"), c ? v.clear() : v = null, re(), R && ae();
|
|
2114
2114
|
}, je.isValid = () => {
|
|
2115
2115
|
if (!p) return !0;
|
|
2116
2116
|
const A = c ? v.size > 0 : v != null;
|
|
@@ -2203,13 +2203,13 @@ function fl(...t) {
|
|
|
2203
2203
|
for (const N of x) {
|
|
2204
2204
|
const D = N.dataset.value === T;
|
|
2205
2205
|
N.setAttribute("aria-selected", D);
|
|
2206
|
-
const z = (y.find((
|
|
2206
|
+
const z = (y.find((Y) => Bn(Y) === N.dataset.value) || {}).color || o;
|
|
2207
2207
|
N.dataset.uiCol = D && z && w ? `${u !== "ghost" && _ !== "default" ? "sub-" : ""}${z}` : "", N.tabIndex = D ? 0 : -1;
|
|
2208
2208
|
}
|
|
2209
2209
|
!d && q(T), !v && b?.(T, y.find((N) => Bn(N) === T), U);
|
|
2210
2210
|
}, j = (B) => {
|
|
2211
2211
|
x.length && x[(B + x.length) % x.length].focus();
|
|
2212
|
-
},
|
|
2212
|
+
}, G = (B, U, v) => {
|
|
2213
2213
|
const D = {
|
|
2214
2214
|
ArrowRight: () => j(U + 1),
|
|
2215
2215
|
ArrowLeft: () => j(U - 1),
|
|
@@ -2253,7 +2253,7 @@ function fl(...t) {
|
|
|
2253
2253
|
attrs: { role: "tab" },
|
|
2254
2254
|
aria: { selected: "false" },
|
|
2255
2255
|
onmousedown: (D) => R(v, D),
|
|
2256
|
-
onkeydown: (D) =>
|
|
2256
|
+
onkeydown: (D) => G(D, U, v)
|
|
2257
2257
|
});
|
|
2258
2258
|
return x.push(N), N;
|
|
2259
2259
|
})
|
|
@@ -14067,8 +14067,8 @@ function b1(t, e, n, r) {
|
|
|
14067
14067
|
s = t.push("list_item_open", "li", 1), s.markup = String.fromCharCode(d);
|
|
14068
14068
|
const T = [l, 0];
|
|
14069
14069
|
s.map = T, f && (s.info = t.src.slice(o, p - 1));
|
|
14070
|
-
const q = t.tight, R = t.tShift[l], j = t.sCount[l],
|
|
14071
|
-
if (t.listIndent = t.blkIndent, t.blkIndent = S, t.tight = !0, t.tShift[l] = _ - t.bMarks[l], t.sCount[l] = w, _ >= i && t.isEmpty(l + 1) ? t.line = Math.min(t.line + 2, n) : t.md.block.tokenize(t, l, n, !0), (!t.tight || b) && (a = !1), b = t.line - l > 1 && t.isEmpty(t.line - 1), t.blkIndent = t.listIndent, t.listIndent =
|
|
14070
|
+
const q = t.tight, R = t.tShift[l], j = t.sCount[l], G = t.listIndent;
|
|
14071
|
+
if (t.listIndent = t.blkIndent, t.blkIndent = S, t.tight = !0, t.tShift[l] = _ - t.bMarks[l], t.sCount[l] = w, _ >= i && t.isEmpty(l + 1) ? t.line = Math.min(t.line + 2, n) : t.md.block.tokenize(t, l, n, !0), (!t.tight || b) && (a = !1), b = t.line - l > 1 && t.isEmpty(t.line - 1), t.blkIndent = t.listIndent, t.listIndent = G, t.tShift[l] = R, t.sCount[l] = j, t.tight = q, s = t.push("list_item_close", "li", -1), s.markup = String.fromCharCode(d), l = t.line, T[1] = l, l >= n || t.sCount[l] < t.blkIndent || t.sCount[l] - t.blkIndent >= 4)
|
|
14072
14072
|
break;
|
|
14073
14073
|
let V = !1;
|
|
14074
14074
|
for (let B = 0, U = y.length; B < U; B++)
|
|
@@ -16331,7 +16331,7 @@ function o2({
|
|
|
16331
16331
|
let g = !1, b = !1, y = null, x = null, C = null, w = null, _ = null, k = null, S = null, T, q;
|
|
16332
16332
|
const R = ot({ gap: 1, align: "center", class: l.el("toolbar") });
|
|
16333
16333
|
R.setAttribute("role", "toolbar"), t.insertBefore(R, e);
|
|
16334
|
-
let j = s.min,
|
|
16334
|
+
let j = s.min, G = s.max;
|
|
16335
16335
|
const V = Er({
|
|
16336
16336
|
rows: Math.max(r || 6, 4),
|
|
16337
16337
|
placeholder: n,
|
|
@@ -16339,7 +16339,7 @@ function o2({
|
|
|
16339
16339
|
validate: s.validate,
|
|
16340
16340
|
message: s.message,
|
|
16341
16341
|
min: j,
|
|
16342
|
-
max:
|
|
16342
|
+
max: G,
|
|
16343
16343
|
class: l.el("markdown-field"),
|
|
16344
16344
|
onInput: (M, L) => {
|
|
16345
16345
|
w = null, _ = null, a?.(N(), B, L);
|
|
@@ -16355,10 +16355,10 @@ function o2({
|
|
|
16355
16355
|
const M = String(B.value || "");
|
|
16356
16356
|
return _ && w === M || (w = M, _ = Ri(M)), _;
|
|
16357
16357
|
}, N = () => b ? Us(v()) : k ?? Us(W.state.doc), D = () => b ? String(B.value || "") : Bi(W.state.doc), E = ({ min: M, max: L } = {}) => {
|
|
16358
|
-
M !== void 0 && (j = M), L !== void 0 && (
|
|
16358
|
+
M !== void 0 && (j = M), L !== void 0 && (G = L), V.setLimits({ min: M, max: L });
|
|
16359
16359
|
}, z = (M) => {
|
|
16360
16360
|
W.updateState(Zs(M, m)), U(), dn();
|
|
16361
|
-
},
|
|
16361
|
+
}, Y = () => {
|
|
16362
16362
|
const M = () => {
|
|
16363
16363
|
W.focus(), document.activeElement !== W.dom && W.dom.focus({ preventScroll: !0 });
|
|
16364
16364
|
};
|
|
@@ -16425,9 +16425,9 @@ function o2({
|
|
|
16425
16425
|
if (L === b)
|
|
16426
16426
|
return b;
|
|
16427
16427
|
if (L)
|
|
16428
|
-
return y = N(), x = Bi(W.state.doc), C = W.state, B.value = x, w = x, _ = W.state.doc, b = !0, e.hidden = !0, e.classList.add(l("markdown")), V.hidden = !1, dn(), re(zi(!0), B),
|
|
16428
|
+
return y = N(), x = Bi(W.state.doc), C = W.state, B.value = x, w = x, _ = W.state.doc, b = !0, e.hidden = !0, e.classList.add(l("markdown")), V.hidden = !1, dn(), re(zi(!0), B), b;
|
|
16429
16429
|
const X = String(B.value || "");
|
|
16430
|
-
return b = !1, e.hidden = !1, e.classList.remove(l("markdown")), V.hidden = !0, C && X === (x || "") ? (W.updateState(C), k = y, U(), dn()) : (k = null, z(Ri(X))), y = null, x = null, C = null, w = null, _ = null, re(zi(!0), e),
|
|
16430
|
+
return b = !1, e.hidden = !1, e.classList.remove(l("markdown")), V.hidden = !0, C && X === (x || "") ? (W.updateState(C), k = y, U(), dn()) : (k = null, z(Ri(X))), y = null, x = null, C = null, w = null, _ = null, re(zi(!0), e), b;
|
|
16431
16431
|
}, He = ({ option: M, icon: L, onClick: X, isActive: _e }) => {
|
|
16432
16432
|
if (!d.has(M) || !Wm.has(M))
|
|
16433
16433
|
return null;
|
|
@@ -16639,7 +16639,7 @@ function o2({
|
|
|
16639
16639
|
k = null, B.value = "", w = "", _ = lu(), z(lu()), b && re(zi(!0), B);
|
|
16640
16640
|
},
|
|
16641
16641
|
focus() {
|
|
16642
|
-
b ? B?.focus() :
|
|
16642
|
+
b ? B?.focus() : Y();
|
|
16643
16643
|
}
|
|
16644
16644
|
};
|
|
16645
16645
|
}
|