@protonradio/proton-ui 0.8.3 → 0.9.0

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/style.css CHANGED
@@ -1 +1 @@
1
- :root{--proton-color__primary:#e26014;--proton-color__primary-light:#fbe5d7;--proton-color__secondary:#f2f2f2;--proton-color__gray-super-dark:#141211;--proton-color__gray-dark:#4d4d4d;--proton-color__gray-medium:#7d7d7d;--proton-color__gray-medium-light:#b1b1b1;--proton-color__gray-light:#ddd;--proton-color__gray-lightest:#f0f1f2;--proton-color__gray-super-light:#f7f8f9;--proton-color__white:#fff;--proton-color__danger-super-dark:#991b1b;--proton-color__danger-dark:#a80724;--proton-color__danger-medium:#e23f5c;--proton-color__danger-light:#f16880;--proton-color__danger-super-light:#ffe1e1;--proton-color__warning-dark:#8b5600;--proton-color__warning-medium:#b37208;--proton-color__warning-light:#ffac23;--proton-color__warning-super-light:#fff0c9;--proton-color__success-dark:#247800;--proton-color__success-medium:#339a07;--proton-color__success-light:#66cf39;--proton-color__success-super-light:#deffd1;--proton-control__text-color:var(--proton-color__white);--proton-control__background-color:var(--proton-color__white);--proton-control__border-color:var(--proton-color__gray-dark);--proton-control__shadow-color:var(--proton-color__gray-dark)}.proton-ScreenOverlay__background{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.proton-ScreenOverlay__z-index{z-index:10000}.proton-ScreenOverlay__overlay{background-color:#000c}.proton-ScreenOverlay__image{object-fit:cover;width:100vw;height:100vh;position:absolute}.proton-ScreenOverlay__blur{-webkit-backdrop-filter:blur(24px)brightness(75%);backdrop-filter:blur(24px)brightness(75%);filter:brightness(50%);position:absolute;top:0;bottom:0;left:0;right:0}@keyframes fadeInBackground{0%{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0000001a}to{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000c}}.proton-ScreenOverlay__fade-in{animation:.2s ease-in-out forwards fadeInBackground}.proton-ScreenOverlay__close-button{fill:var(--proton-color__white);color:var(--proton-color__white);pointer-events:none;text-align:center;margin-right:12px;transition:visibility ease-out,opacity .35s ease-out;position:absolute;top:1rem;right:0}.proton-ScreenOverlay__close-button div{letter-spacing:.1em;margin:.5rem;font-weight:500;display:block}.proton-ActionMenu__wrapper{z-index:10;max-height:100vh;overflow:none;flex:1;width:100%;position:fixed;bottom:0;left:0}@media (min-width:768px){.proton-ActionMenu__wrapper{display:none}}.proton-ActionMenu__background-wrapper{opacity:0;transition:opacity .3s cubic-bezier(.34,1.56,.64,1)}.proton-ActionMenu__wrapper--scrollable{overflow-y:scroll}.proton-ActionMenu__card{background:var(--proton-control__background-color);color:var(--proton-control__text-color);z-index:1;border-radius:14px 14px 0 0;flex-direction:column;height:0;transition:height .3s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative;overflow:hidden;box-shadow:0 0 4px #0000001a,0 0 20px #00000026}.proton-ActionMenu__card>div{flex-direction:column;flex:1;display:flex}@media (min-width:768px){.proton-ActionMenu__card{border-radius:.8rem;min-width:300px}}.proton-ActionMenu__cancel-button{margin:0 12px 16px}.proton-ActionMenu__cancel-button button{justify-content:center;width:100%}.proton-ActionMenu__content{padding:12px 12px 0}.proton-ActionMenu__list{flex-direction:column;margin:10px 0;display:flex}.proton-ActionMenu__list--disabled{opacity:.5;cursor:not-allowed}.proton-ActionMenu__item{color:inherit;cursor:pointer;padding:12px 8px 12px 12px;text-decoration:none;transition:background-color .1s}.proton-ActionMenu__item:hover,.proton-ActionMenu__item:focus{background-color:var(--proton-color__gray-super-light);border:none;outline:none}.proton-ui__theme--dark .proton-ActionMenu__item:hover,.proton-ui__theme--dark .proton-ActionMenu__item:focus,.proton-ui__theme--custom-dark .proton-ActionMenu__item:focus,.proton-ui__theme--custom-dark .proton-ActionMenu__item:hover{background-color:#606060fa}.proton-ActionMenu__item[aria-checked=true]{background-color:var(--proton-color__primary-light);color:var(--proton-color__primary)}.proton-ui__theme--custom-dark .proton-ActionMenu__item[aria-checked=true],.proton-ui__theme--dark .proton-ActionMenu__item[aria-checked=true]{background-color:var(--proton-color__primary);color:var(--proton-control__text-color)}.proton-ActionMenu__item[aria-disabled=true]{opacity:.5;cursor:not-allowed}.proton-ActionMenu__item[aria-disabled=true]:hover{background-color:#0000}.proton-ActionMenu__content:has(.proton-ListBox){padding:0}html .proton-ActionMenu__content>.proton-ListBox{box-shadow:none;background:0 0;border:none;border-radius:0;margin-bottom:12px}.proton-Badge{letter-spacing:.2em;text-align:center;text-transform:uppercase;white-space:nowrap;height:1.6rem;color:var(--proton-control__text-color);border-radius:10rem;padding-bottom:calc(1rem - 1.1em);padding-left:1rem;padding-right:calc(1rem - .2em);font-size:max(11px,min(.6875rem + .1vw,16px));font-weight:500;line-height:1.8rem;display:inline-block}.proton-ui__theme--dark.proton-Badge:not([class*=proton-Badge--]){background-color:var(--proton-control__background-color)}.proton-ui__theme--light.proton-Badge:not([class*=proton-Badge--]),.proton-ui__theme--light.proton-Badge--secondary{background-color:var(--proton-color__secondary);color:#666}.proton-ui__theme--dark.proton-Badge--secondary{background-color:#ffffff26}.proton-ui__theme--custom-dark.proton-Badge:not([class*=proton-Badge--]){background-color:var(--proton-color__primary)}.proton-ui__theme--custom-dark.proton-Badge--secondary{background-color:var(--proton-control__primary-dark)}.proton-Badge--primary{background-color:var(--proton-color__primary);color:var(--proton-color__white)}.proton-Badge--success{background-color:var(--proton-color__success-super-light);color:var(--proton-color__success-dark)}.proton-Badge--warning{background-color:var(--proton-color__warning-super-light);color:var(--proton-color__warning-dark)}.proton-Badge--danger{background-color:var(--proton-color__danger-super-light);color:var(--proton-color__danger-dark)}.proton-Badge--transparent{color:#666;background-color:#0000}.proton-Button{letter-spacing:.05em;border:0;border-radius:4px;justify-content:center;align-items:center;column-gap:.4em;padding:.4em .86em;font-weight:300;text-decoration:none;transition:filter .1s,background-color .1s;display:flex}.proton-Button:hover{filter:brightness(1.08);cursor:pointer;text-decoration:none}.proton-Button--primary,.proton-Button--primary:hover{color:var(--proton-color__white);background-color:var(--proton-color__primary)}.proton-Button--secondary,.proton-Button--secondary:hover{color:var(--proton-color__gray-dark);background-color:var(--proton-color__gray-light)}.proton-Button--danger{color:var(--proton-color__white);background-color:var(--proton-color__danger-medium)}.proton-Button--success{color:var(--proton-color__white);background-color:var(--proton-color__success-medium)}.proton-Button--translucent{color:var(--proton-color__white);background-color:#ffffff1a}.proton-Button--translucent:hover{background-color:#ffffff24}.proton-Button--disabled,.proton-Button--disabled:hover{opacity:.5;filter:none;cursor:not-allowed}.proton-Button:focus{outline:solid var(--proton-color__primary)1px;border:none}.proton-Button:focus-visible{outline:solid var(--proton-color__primary)1px;border:none}:root{--banner__default-background:var(--proton-color__gray-lightest);--banner__default-title:var(--proton-color__gray-dark);--banner__default-content:var(--proton-color__gray-medium);--banner__default-icon:var(--proton-color__gray-medium-light);--banner__warning-background:var(--proton-color__warning-super-light);--banner__warning-title:var(--proton-color__warning-dark);--banner__warning-content:var(--proton-color__warning-medium);--banner__warning-icon:var(--proton-color__warning-light);--banner__success-background:var(--proton-color__success-super-light);--banner__success-title:var(--proton-color__success-dark);--banner__success-content:var(--proton-color__success-medium);--banner__success-icon:var(--proton-color__success-light);--banner__danger-background:var(--proton-color__danger-super-light);--banner__danger-title:var(--proton-color__danger-dark);--banner__danger-content:var(--proton-color__danger-medium);--banner__danger-icon:var(--proton-color__danger-light)}.proton-Banner{margin:0}.proton-Banner--rounded{border-radius:.375rem}.proton-Banner__wrapper{padding:2rem;display:flex}.proton-Banner__wrapper--compact{padding:1rem}.proton-Banner__content-wrapper{flex:1;min-width:0}.proton-Banner__container{flex-direction:column;padding:0 10px;display:flex}.proton-Banner__title{letter-spacing:.01rem;margin:0;font-size:max(14px,min(1.8rem,20px));font-weight:600}.proton-Banner__actions{gap:.5rem;margin:6px 0 0;display:flex}.proton-Banner__icon{margin-top:2px}@media (min-width:768px){.proton-Banner__container{grid-template-columns:1fr auto;align-items:center;display:grid}.proton-Banner__container>.proton-Banner__title,.proton-Banner__container>.proton-Banner__content{grid-column:1}.proton-Banner__container>div:last-child{grid-area:1/2/span 2}.proton-Banner__actions{margin:0 0 0 12px}}.proton-Banner--default{background-color:var(--banner__default-background)}.proton-Banner--default__title{color:var(--banner__default-title)}.proton-Banner--default__content{color:var(--banner__default-content)}.proton-Banner--default__icon{fill:var(--banner__default-icon)}.proton-Banner--warning{background-color:var(--banner__warning-background)}.proton-Banner--warning__title{color:var(--banner__warning-title)}.proton-Banner--warning__content{color:var(--banner__warning-content)}.proton-Banner--warning__icon{fill:var(--banner__warning-icon)}.proton-Banner--success{background-color:var(--banner__success-background)}.proton-Banner--success__title{color:var(--banner__success-title)}.proton-Banner--success__content{color:var(--banner__success-content)}.proton-Banner--success__icon{fill:var(--banner__success-icon)}.proton-Banner--danger{background-color:var(--banner__danger-background)}.proton-Banner--danger__title{color:var(--banner__danger-title)}.proton-Banner--danger__content{color:var(--banner__danger-content)}.proton-Banner--danger__icon{fill:var(--banner__danger-icon)}.proton-ButtonGroup{border:1px solid var(--proton-color__gray-light);border-radius:4px;font-weight:400;display:flex;overflow:hidden}.proton-ButtonGroup__option{background-color:var(--proton-color__gray-super-light);cursor:pointer;border-left:1px solid var(--proton-color__gray-light);color:var(--proton-color__gray-dark);text-align:center;border-radius:0;flex:1;padding:.5em 1em}.proton-ButtonGroup__option:first-child{border-left:0}.proton-ButtonGroup__option--selected{background-color:var(--proton-color__white);color:var(--proton-color__primary);z-index:2;cursor:default;border-radius:inherit;box-shadow:0 0 6px #00000026}.proton-ButtonGroup__option--selected+.proton-ButtonGroup__option{border-left:1px solid #0000}.proton-Dialog{background-color:var(--proton-color__primary);box-shadow:0 0 2px 0 var(--proton-control__shadow-color),0 0 12px 0 var(--proton-control__shadow-color);color:var(--proton-control__text-color);border-radius:4px;outline:none;padding:.65rem .85rem;font-weight:300}.proton-Dialog__header{margin-top:0;margin-bottom:5px}.proton-Input{box-sizing:border-box;outline:1px solid var(--proton-control__border-color);background-color:var(--proton-control__background-color);width:100%;min-height:40px;color:var(--proton-control__text-color);border:1px solid #0000;border-radius:4px;flex:1;padding-left:12px;font-weight:500;transition:all .2s ease-in-out}.proton-ui__theme--custom-dark .proton-Input{background-color:#fff3}.proton-Input:disabled{opacity:.6;cursor:not-allowed}.proton-Input:not(.proton-Input--error):focus{outline:1px solid var(--proton-color__primary)}.proton-Input:not(.proton-Input--error):focus-visible{outline:1px solid var(--proton-color__primary)}.proton-Input.proton-Input--error{outline:1px solid var(--proton-color__danger-dark)}.proton-Input__container{flex-direction:column;flex:1;width:100%;display:flex}.proton-Input__container-inner{flex:1;align-items:center;display:flex;position:relative}.proton-Input__descriptor{z-index:1;background-position:50%;background-repeat:no-repeat;background-size:50%;justify-content:center;align-items:center;height:100%;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.proton-Input__prefix,.proton-Input__suffix{flex:0 0 32px;justify-content:center;align-items:center;display:flex}.proton-Input__prefix{opacity:.5;cursor:text;margin-left:12px;left:0}.proton-Input__suffix{outline:none;padding-right:12px;right:0}.proton-Input__container-inner:has(.proton-Input__prefix) .proton-Input{padding-left:32px}.proton-Input__container-inner:has(.proton-Input__suffix) .proton-Input{padding-right:44px}.proton-Input__text{color:var(--proton-color__gray-medium);padding:4px 0;font-size:.75rem}.proton-ui__theme--custom-dark .proton-Input__text{color:var(--proton-color__gray-medium-light)}.proton-Input__error{color:var(--proton-color__danger-medium)}.proton-Input__label-top{padding-top:24px;padding-bottom:8px}.proton-Input__label{color:var(--proton-color__gray-medium-light);pointer-events:none;transform-origin:left center 0px;transition:color .2s,font-size .5s,top .5s;position:absolute;top:15px;left:14px}.proton-Input:focus+.proton-Input__label,.proton-Input__label--filled{font-size:.75rem;top:7px}.proton-Input:focus+.proton-Input__label{color:var(--proton-color__primary)}.proton-ui__theme--custom-dark .proton-Input:focus+.proton-Input__label{color:var(--proton-color__primary-light)}.proton-SearchInput__wrapper{width:100%}.proton-SearchInput__wrapper input{border-radius:50px;padding-left:44px!important}.proton-SearchInput__button{color:currentColor;cursor:pointer;opacity:1;background-color:#0000;border:none;transition:opacity .2s ease-in-out}.proton-SearchInput__button--hide{opacity:0}.proton-SearchInput__wrapper input[type=search]::-ms-clear{width:0;height:0;display:none}.proton-SearchInput__wrapper input[type=search]::-ms-reveal{width:0;height:0;display:none}.proton-SearchInput__wrapper input[type=search]::-webkit-search-decoration{display:none}.proton-SearchInput__wrapper input[type=search]::-webkit-search-cancel-button{display:none}.proton-SearchInput__wrapper input[type=search]::-webkit-search-results-button{display:none}.proton-SearchInput__wrapper input[type=search]::-webkit-search-results-decoration{display:none}.proton-Popover{transform-origin:top}.arrow{fill:var(--proton-color__primary);stroke-width:1px;width:12px;height:12px;position:absolute}.arrow[data-placement=top]{top:100%;transform:translate(-50%)}.arrow[data-placement=bottom]{bottom:100%;transform:translate(-50%)rotate(180deg)}.arrow[data-placement=left]{left:100%;transform:translateY(-50%)rotate(-90deg)}.arrow[data-placement=right]{right:100%;transform:translateY(-50%)rotate(90deg)}.proton-Popover[data-placement=top]{--origin:translateY(10px)scaleY(.9)}.proton-Popover[data-placement=bottom]{--origin:translateY(-10px)scaleY(.9)}.proton-Popover[data-placement=left]{--origin:translateX(18px)scaleX(.96)}.proton-Popover[data-placement=right]{--origin:translateX(-18px)scaleX(.96)}.proton-Popover[data-entering]{animation:.2s ease-out forwards popoverSlide}@keyframes popoverSlide{0%{opacity:0;transform:var(--origin)}to{opacity:1;transform:translateY(0)scaleY(1)scaleX(1)}}.proton-ResponsiveMenuTrigger{display:inline-block;position:relative}.proton-ResponsiveMenuTrigger__button{cursor:pointer;color:var(--proton-control__text-color);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}.proton-ResponsiveMenuTrigger__button:disabled{cursor:not-allowed;opacity:.5}.proton-ui__theme--dark .proton-ResponsiveMenuTrigger__button:disabled:hover,.proton-ResponsiveMenuTrigger__button:disabled:hover{background:0 0}.proton-ResponsiveMenuTrigger__button:focus{outline:2px solid var(--proton-control__border-color)}.proton-ResponsiveMenuTrigger__button:hover{background-color:#60606026}.proton-ui__theme--dark .proton-ResponsiveMenuTrigger__button:hover{background-color:#ffffff1a}.proton-ListBox{letter-spacing:.05em;background:var(--proton-control__background-color);border:1px solid var(--proton-control__border-color);min-width:100px;color:var(--proton-control__text-color);box-shadow:0 0 3px var(--proton-control__shadow-color);border-radius:10px;margin:.5rem 0 0;padding:0;list-style:none;overflow:auto}.proton-ui__theme--custom-dark .proton-ListBox{background:var(--proton-color__primary)}.proton-ListBox:focus{outline:none}.proton-ListBox:focus-visible{outline:none}.proton-ListBox__item{cursor:pointer;outline:none;justify-content:space-between;padding:8px 16px;transition:background-color .1s;display:flex}.proton-ListBox__item:hover{background:#0000000a}.proton-ui__theme--dark .proton-ListBox__item:hover,.proton-ui__theme--custom-dark .proton-ListBox__item:hover{color:var(--proton-control__text-color);background:#ffffff1a}.proton-ListBox__item--disabled{opacity:.5;cursor:not-allowed}.proton-ListBox__item--selected{background:var(--proton-color__primary-light);color:var(--proton-color__primary)}.proton-Select{flex-direction:column;width:100%;margin:0;display:flex}.proton-Select__label{color:var(--proton-control__text-color);margin-bottom:2px}.proton-Select__trigger{color:var(--proton-control__text-color);font-size:inherit;border-radius:50px;flex:1;justify-content:space-between;align-items:center;width:100%;padding:.2rem .6rem .2rem 1rem;display:flex}button.proton-Select__trigger{letter-spacing:.05em;cursor:pointer;background:var(--proton-control__background-color);outline:1px solid var(--proton-control__border-color);border:1px solid #0000;font-weight:400;transition:outline .2s;position:relative}.proton-ui__theme--custom-dark button.proton-Select__trigger{background:var(--proton-color__primary)}button.proton-Select__trigger:hover:after{content:"";-webkit-backdrop-filter:brightness(98%);backdrop-filter:brightness(98%);z-index:1;border-radius:50px;width:100%;height:100%;position:absolute;left:0}button.proton-Select__trigger:focus{outline:solid var(--proton-color__primary)1px;border:1px solid #0000}button.proton-Select__trigger:focus-visible{outline:solid var(--proton-color__primary)1px;border:1px solid #0000}.proton-ui__theme--custom-dark button.proton-Select__trigger:focus{outline:solid var(--proton-color__gray-medium-light)1px;border:1px solid #0000}.proton-ui__theme--custom-dark button.proton-Select__trigger:focus-visible{outline:solid var(--proton-color__gray-medium-light)1px;border:1px solid #0000}.proton-Select__popover{padding-left:.25rem}.proton-Select__trigger_icon{color:var(--proton-control__text-color);width:.75em;height:.75em;margin-left:.8em;transition:transform .2s;position:relative}.proton-Select__trigger_icon svg{width:100%;height:100%;position:absolute;top:50%;left:0;transform:translateY(-50%)}.proton-Select__trigger_icon--flipped{transform:rotateX(180deg)}.proton-Select:hover{cursor:pointer}.proton-Select__trigger--disabled,.proton-Select__trigger--disabled:hover{opacity:.5;filter:none;cursor:not-allowed}.proton-Select__value{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.proton-Switch{flex-flow:column;row-gap:5px;display:flex}.proton-Switch__label{text-transform:uppercase;letter-spacing:.1em;color:var(--proton-color__gray-dark);font-size:.7em;font-weight:600}.proton-Switch__description{color:var(--proton-color__gray-medium);align-self:center;font-size:.9em}.proton-Switch__wrapper{column-gap:12px;display:flex}.proton-Switch__toggle{background-color:var(--proton-color__gray-light);cursor:pointer;border-radius:26px;flex-shrink:0;width:50px;height:26px;position:relative}.proton-ui__theme--dark .proton-Switch__toggle,.proton-ui__theme--custom-dark .proton-Switch__toggle{background-color:var(--proton-color__gray-dark)}.proton-Switch__slider{background-color:#fff;border-radius:22px;width:22px;height:22px;transition:left .2s;position:absolute;top:2px;left:2px}.proton-Switch--on .proton-Switch__toggle{background-color:var(--proton-color__primary)}.proton-Switch--on .proton-Switch__slider{left:26px}.proton-Switch--disabled{opacity:.4}.proton-Switch--disabled .proton-Switch__toggle{cursor:not-allowed}.proton-Table{border-collapse:collapse;color:var(--proton-control__text-color);width:100%;font-weight:300}.proton-Table__header{cursor:default;letter-spacing:.1em;text-transform:uppercase;text-align:left;outline:none;padding:7px 10px;font-size:max(10px,min(.75rem,12px));font-weight:500;line-height:1rem}.proton-Table__header--center{text-align:center}.proton-Table__header--right{text-align:right}.proton-Table__headerSortIcon{padding:0 2px}.proton-Table__row{cursor:default;outline:none}.proton-Table__rowGroup--header{border-bottom:1px solid #ccc}.proton-Table__row--showLines{border-top:1px solid #ccc}.proton-Table--clickable{cursor:pointer}.proton-Table__cell{vertical-align:middle;outline:none;padding:7px 10px}.proton-Table__cell--center{text-align:center}.proton-Table__cell--right{text-align:right}.proton-TextEllipsis{vertical-align:middle;color:var(--proton-control__text-color,inherit);font-family:inherit;font-size:inherit;line-height:inherit;width:100%;display:inline-block;position:relative}.proton-TextEllipsis--single-line{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.proton-TextEllipsis--multi-line{text-overflow:ellipsis;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.proton-TextEmphasis{color:var(--proton-color__gray-super-dark);background-image:linear-gradient(0deg,#0000 0,#0000 15%,#ff713480 15%,#ff713480 35%,#0000 35%,#0000);padding:0 .05rem;font-style:normal;font-weight:700}.proton-TextEmphasis a{color:inherit;text-decoration:none;transition:color .15s}.proton-TextEmphasis a:hover{color:var(--proton-color__primary);text-decoration:none}.proton-ui__theme--custom-dark .proton-TextEmphasis,.proton-ui__theme--dark .proton-TextEmphasis{color:var(--proton-control__text-color)}.proton-TextEmphasis--tooltip{background-image:linear-gradient(0deg,#0000 0,#0000 15%,#ff713480 25%,#ff713480 87%,#0000 80%,#0000);background-position:bottom;background-repeat:no-repeat;background-size:100% 35%;font-style:italic;font-weight:400;transition:background-size .3s,border-radius .3s}.proton-TextEmphasis--tooltip:hover{background-size:100% 100%;border-radius:2px}.proton-TextEmphasis--tooltip:not(:hover){transition-delay:.2s}.proton__Tooltip{background-color:var(--proton-control__background-color);color:var(--proton-control__text-color);position:absolute}.proton-ui__theme--custom-dark.proton__Tooltip{background-color:var(--proton-color__primary)}.proton__TooltipTrigger{all:unset}.proton__Tooltip[data-placement=top]{--origin:translateY(4px);margin-bottom:8px}.proton__Tooltip[data-placement=bottom]{--origin:translateY(-4px);margin-top:8px}.proton__Tooltip[data-placement=bottom] .proton__TooltipArrow svg{transform:rotate(180deg)}.proton__Tooltip[data-placement=right]{--origin:translateX(-4px);margin-left:8px}.proton__Tooltip[data-placement=right] .proton__TooltipArrow svg{transform:rotate(90deg)}.proton__Tooltip[data-placement=left]{--origin:translateX(4px);margin-right:8px}.proton__Tooltip[data-placement=left] .proton__TooltipArrow svg{transform:rotate(-90deg)}.proton__Tooltip .proton__TooltipArrow svg{fill:var(--proton-control__background-color);display:block}.proton__Tooltip .proton-ui__theme--custom-dark.proton__TooltipArrow svg{fill:var(--proton-color__primary)}.proton__Tooltip[data-entering]{animation:.2s slide}.proton__Tooltip[data-exiting]{animation:.2s reverse slide}@keyframes slide{0%{opacity:0;transform:var(--origin)}to{opacity:1;transform:translateY(0)}}:root{--waveform-bar-color-dark:#ffffffe6;--waveform-bar-color-light:#000000b3;--waveform-disabled-color-dark:#fff3;--waveform-disabled-color-light:#0003;--waveform-animation-curve:cubic-bezier(.34,1.56,.64,1);--waveform-animation-duration:.4s;--waveform-bar-delay-multiplier:.7ms;--waveform-timestamp-padding:.25rem;--waveform-timestamp-font-size:.75rem;--waveform-timestamp-border-radius:.125rem;--waveform-hover-line-width:2px}.proton-Waveform{flex-direction:row;align-items:center;width:100%;height:100%;display:flex;position:relative}.proton-Waveform__container{z-index:0;flex:1;align-items:center;width:100%;height:100%;display:flex;position:relative}.proton-Waveform__container[data-disabled=true]{cursor:not-allowed}.proton-Waveform__timestamp{pointer-events:none;border-radius:var(--waveform-timestamp-border-radius);padding:0 var(--waveform-timestamp-padding);font-size:var(--waveform-timestamp-font-size);z-index:1;background-color:#0009;position:absolute}.proton-ui__theme--light .proton-Waveform__timestamp{color:#000c;background-color:#ffffffe6;box-shadow:0 2px 2px #0000004d}.proton-ui__theme--dark .proton-Waveform__timestamp{background-color:var(--proton-control__background-color)}.proton-ui__theme--custom-dark .proton-Waveform__timestamp{background-color:var(--proton-control__primary-dark)}.proton-Waveform__timestamp--left{left:1px}.proton-Waveform__timestamp--right{right:3px}.proton-Waveform__hover-line{width:var(--waveform-hover-line-width);background-color:#ffffff80;position:absolute;top:0;bottom:0;transform:translate(-50%)}.proton-ui__theme--light .proton-Waveform__hover-line{background-color:#00000080}.proton-Waveform__bar-wrapper{flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex;position:relative}.proton-Waveform__bar{background-color:var(--waveform-bar-color-dark);transform-origin:50%;width:100%;height:0;transition:height var(--waveform-animation-duration)var(--waveform-animation-curve);position:relative}.proton-Waveform__bar.proton-Waveform__bar--visible{height:var(--target-height);transition-delay:calc(var(--index)*var(--waveform-bar-delay-multiplier))}.proton-Waveform__bar.proton-Waveform__bar--upper{transform-origin:bottom}.proton-Waveform__bar.proton-Waveform__bar--lower{transform-origin:top}.proton-ui__theme--light .proton-Waveform__bar{background-color:var(--waveform-bar-color-light)}.proton-Waveform__bar.proton-Waveform__bar--disabled{background-color:var(--waveform-disabled-color-dark)}.proton-ui__theme--light .proton-Waveform__bar.proton-Waveform__bar--disabled{background-color:var(--waveform-disabled-color-light)}.proton-Waveform__bar.proton-Waveform__bar--disabled.proton-Waveform__bar--played{background-color:var(--waveform-disabled-color-dark)}.proton-ui__theme--light .proton-Waveform__bar.proton-Waveform__bar--disabled.proton-Waveform__bar--played{background-color:var(--waveform-disabled-color-light)}.proton-Waveform__bar.proton-Waveform__bar--played{background-color:var(--proton-color__primary)}.proton-Waveform__bar--hover{height:var(--hover-height);z-index:10;background-color:color-mix(in srgb,var(--proton-color__primary)50%,transparent);mix-blend-mode:darken;width:100%;position:absolute;top:50%;transform:translateY(-50%)}.proton-ui__theme--light .proton-Waveform__bar--hover{background-color:color-mix(in srgb,var(--proton-color__primary)50%,white);mix-blend-mode:lighten}.proton-Waveform__bar-unavailable{pointer-events:none;text-align:center;z-index:10;color:#fff;background-color:#000000b3;border-radius:4px;padding:3px 6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.proton-ui__theme--light .proton-Waveform__bar-unavailable{color:#000;background-color:#fff;box-shadow:0 5px 5px #0000004d}.proton-ui__theme--dark .proton-Waveform__bar-unavailable{background-color:var(--proton-control__background-color)}.proton-ui__theme--custom-dark .proton-Waveform__bar-unavailable{background-color:var(--proton-control__primary-dark)}.proton-Waveform__active-region{pointer-events:none;z-index:1;border:1.5px solid #ffffffb3;border-radius:4px;position:absolute;top:0;bottom:0}.proton-ui__theme--light .proton-Waveform__active-region{border-color:#0000004d}@keyframes shimmer{0%{background-position:-300px 0}to{background-position:800px 0}}.tombstone{background-position:-300px 0;background-repeat:no-repeat;background-size:300px 100%;animation:1.5s linear infinite shimmer}.tombstone.light{background-color:#d1d1d1;background-image:linear-gradient(-90deg,#d1d1d1,#b8b8b8,#d1d1d1)}.tombstone.dark{background-color:#3c3c3c;background-image:linear-gradient(-90deg,#363636,#292727,#353535)}.tombstone.custom-dark{background-image:linear-gradient(-90deg,var(--tombstone-custom-primary)0%,var(--tombstone-custom-secondary)50%,var(--tombstone-custom-primary)100%);background-color:var(--tombstone-custom-background)}
1
+ :root{--proton-color__primary:#e26014;--proton-color__primary-light:#fbe5d7;--proton-color__secondary:#f2f2f2;--proton-color__gray-super-dark:#141211;--proton-color__gray-dark:#4d4d4d;--proton-color__gray-medium:#7d7d7d;--proton-color__gray-medium-light:#b1b1b1;--proton-color__gray-light:#ddd;--proton-color__gray-lightest:#f0f1f2;--proton-color__gray-super-light:#f7f8f9;--proton-color__white:#fff;--proton-color__danger-super-dark:#991b1b;--proton-color__danger-dark:#a80724;--proton-color__danger-medium:#e23f5c;--proton-color__danger-light:#f16880;--proton-color__danger-super-light:#ffe1e1;--proton-color__warning-dark:#8b5600;--proton-color__warning-medium:#b37208;--proton-color__warning-light:#ffac23;--proton-color__warning-super-light:#fff0c9;--proton-color__success-dark:#247800;--proton-color__success-medium:#339a07;--proton-color__success-light:#66cf39;--proton-color__success-super-light:#deffd1;--proton-control__text-color:var(--proton-color__white);--proton-control__background-color:var(--proton-color__white);--proton-control__border-color:var(--proton-color__gray-dark);--proton-control__shadow-color:var(--proton-color__gray-dark)}.proton-ScreenOverlay__background{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.proton-ScreenOverlay__z-index{z-index:10000}.proton-ScreenOverlay__overlay{background-color:#000c}.proton-ScreenOverlay__image{object-fit:cover;width:100vw;height:100vh;position:absolute}.proton-ScreenOverlay__blur{-webkit-backdrop-filter:blur(24px)brightness(75%);backdrop-filter:blur(24px)brightness(75%);filter:brightness(50%);position:absolute;top:0;bottom:0;left:0;right:0}@keyframes fadeInBackground{0%{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0000001a}to{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000c}}.proton-ScreenOverlay__fade-in{animation:.2s ease-in-out forwards fadeInBackground}.proton-ScreenOverlay__close-button{fill:var(--proton-color__white);color:var(--proton-color__white);pointer-events:none;text-align:center;margin-right:12px;transition:visibility ease-out,opacity .35s ease-out;position:absolute;top:1rem;right:0}.proton-ScreenOverlay__close-button div{letter-spacing:.1em;margin:.5rem;font-weight:500;display:block}.proton-ActionMenu__wrapper{z-index:10;max-height:100vh;overflow:none;flex:1;width:100%;position:fixed;bottom:0;left:0}@media (min-width:768px){.proton-ActionMenu__wrapper{display:none}}.proton-ActionMenu__background-wrapper{opacity:0;transition:opacity .3s cubic-bezier(.34,1.56,.64,1)}.proton-ActionMenu__wrapper--scrollable{overflow-y:scroll}.proton-ActionMenu__card{background:var(--proton-control__background-color);color:var(--proton-control__text-color);z-index:1;border-radius:14px 14px 0 0;flex-direction:column;height:0;transition:height .3s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative;overflow:hidden;box-shadow:0 0 4px #0000001a,0 0 20px #00000026}.proton-ActionMenu__card>div{flex-direction:column;flex:1;display:flex}@media (min-width:768px){.proton-ActionMenu__card{border-radius:.8rem;min-width:300px}}.proton-ActionMenu__cancel-button{margin:0 12px 16px}.proton-ActionMenu__cancel-button button{justify-content:center;width:100%}.proton-ActionMenu__content{padding:12px 12px 0}.proton-ActionMenu__list{flex-direction:column;margin:10px 0;display:flex}.proton-ActionMenu__list--disabled{opacity:.5;cursor:not-allowed}.proton-ActionMenu__item{color:inherit;cursor:pointer;padding:12px 8px 12px 12px;text-decoration:none;transition:background-color .1s}.proton-ActionMenu__item:hover,.proton-ActionMenu__item:focus{background-color:var(--proton-color__gray-super-light);border:none;outline:none}.proton-ui__theme--dark .proton-ActionMenu__item:hover,.proton-ui__theme--dark .proton-ActionMenu__item:focus,.proton-ui__theme--custom-dark .proton-ActionMenu__item:focus,.proton-ui__theme--custom-dark .proton-ActionMenu__item:hover{background-color:#606060fa}.proton-ActionMenu__item[aria-checked=true]{background-color:var(--proton-color__primary-light);color:var(--proton-color__primary)}.proton-ui__theme--custom-dark .proton-ActionMenu__item[aria-checked=true],.proton-ui__theme--dark .proton-ActionMenu__item[aria-checked=true]{background-color:var(--proton-color__primary);color:var(--proton-control__text-color)}.proton-ActionMenu__item[aria-disabled=true]{opacity:.5;cursor:not-allowed}.proton-ActionMenu__item[aria-disabled=true]:hover{background-color:#0000}.proton-ActionMenu__content:has(.proton-ListBox){padding:0}html .proton-ActionMenu__content>.proton-ListBox{box-shadow:none;background:0 0;border:none;border-radius:0;margin-bottom:12px}.proton-Badge{letter-spacing:.2em;text-align:center;text-transform:uppercase;white-space:nowrap;height:1.6rem;color:var(--proton-control__text-color);border-radius:10rem;padding-bottom:calc(1rem - 1.1em);padding-left:1rem;padding-right:calc(1rem - .2em);font-size:max(11px,min(.6875rem + .1vw,16px));font-weight:500;line-height:1.8rem;display:inline-block}.proton-ui__theme--dark.proton-Badge:not([class*=proton-Badge--]){background-color:var(--proton-control__background-color)}.proton-ui__theme--light.proton-Badge:not([class*=proton-Badge--]),.proton-ui__theme--light.proton-Badge--secondary{background-color:var(--proton-color__secondary);color:#666}.proton-ui__theme--dark.proton-Badge--secondary{background-color:#ffffff26}.proton-ui__theme--custom-dark.proton-Badge:not([class*=proton-Badge--]){background-color:var(--proton-color__primary)}.proton-ui__theme--custom-dark.proton-Badge--secondary{background-color:var(--proton-control__primary-dark)}.proton-Badge--primary{background-color:var(--proton-color__primary);color:var(--proton-color__white)}.proton-Badge--success{background-color:var(--proton-color__success-super-light);color:var(--proton-color__success-dark)}.proton-Badge--warning{background-color:var(--proton-color__warning-super-light);color:var(--proton-color__warning-dark)}.proton-Badge--danger{background-color:var(--proton-color__danger-super-light);color:var(--proton-color__danger-dark)}.proton-Badge--transparent{color:#666;background-color:#0000}.proton-Button{letter-spacing:.05em;border:0;border-radius:4px;justify-content:center;align-items:center;column-gap:.4em;padding:.4em .86em;font-weight:500;text-decoration:none;transition:filter .1s,background-color .1s;display:flex}.proton-Button:hover{filter:brightness(1.08);cursor:pointer;text-decoration:none}.proton-Button--primary,.proton-Button--primary:hover{color:var(--proton-color__white);background-color:var(--proton-color__primary)}.proton-Button--secondary,.proton-Button--secondary:hover{color:var(--proton-color__gray-dark);background-color:var(--proton-color__gray-light)}.proton-Button--danger{color:var(--proton-color__white);background-color:var(--proton-color__danger-medium)}.proton-Button--success{color:var(--proton-color__white);background-color:var(--proton-color__success-medium)}.proton-Button--translucent{color:var(--proton-color__white);background-color:#ffffff1a}.proton-Button--translucent:hover{background-color:#ffffff24}.proton-Button--disabled,.proton-Button--disabled:hover{opacity:.5;filter:none;cursor:not-allowed}.proton-Button:focus{outline:solid var(--proton-color__primary)1px;border:none}.proton-Button:focus-visible{outline:solid var(--proton-color__primary)1px;border:none}:root{--banner-bg:var(--proton-color__gray-lightest);--banner-title:var(--proton-color__gray-dark);--banner-content:var(--proton-color__gray-medium);--banner-icon:var(--proton-color__gray-medium-light);--banner-blur:none}.proton-ui__theme--custom-dark{--banner-bg:#4d4d4d66;--banner-blur:blur(15px);--banner-title:var(--proton-color__gray-super-lightest);--banner-content:var(--proton-color__gray-super-light);--banner-icon:var(--proton-color__gray-super-light)}.proton-Banner--warning{--banner-bg:var(--proton-color__warning-super-light);--banner-title:var(--proton-color__warning-dark);--banner-content:var(--proton-color__warning-medium);--banner-icon:var(--proton-color__warning-light)}.proton-Banner--success{--banner-bg:var(--proton-color__success-super-light);--banner-title:var(--proton-color__success-dark);--banner-content:var(--proton-color__success-medium);--banner-icon:var(--proton-color__success-light)}.proton-Banner--danger{--banner-bg:var(--proton-color__danger-super-light);--banner-title:var(--proton-color__danger-dark);--banner-content:var(--proton-color__danger-medium);--banner-icon:var(--proton-color__danger-light)}.proton-Banner{background-color:var(--banner-bg);-webkit-backdrop-filter:var(--banner-blur);backdrop-filter:var(--banner-blur);--tw-backdrop-blur:var(--banner-blur);margin:0}.proton-Banner--rounded{border-radius:.375rem}.proton-Banner__wrapper{padding:2rem;display:flex}.proton-Banner__wrapper--compact{padding:1rem}.proton-Banner__content-wrapper{flex:1;min-width:0}.proton-Banner__container{flex-direction:column;padding:0 10px;display:flex}.proton-Banner__title{letter-spacing:.01rem;color:var(--banner-title);margin:0;font-size:max(14px,min(1.8rem,20px));font-weight:600}.proton-Banner__content{color:var(--banner-content);margin:.5rem 0 0}.proton-Banner__icon{fill:var(--banner-icon);margin-top:2px}.proton-Banner__actions{gap:.5rem;margin:6px 0 0;display:flex}@media (min-width:768px){.proton-Banner__container{grid-template-columns:1fr auto;align-items:center;display:grid}.proton-Banner__container>.proton-Banner__title,.proton-Banner__container>.proton-Banner__content{grid-column:1}.proton-Banner__container>div:last-child{grid-area:1/2/span 2}.proton-Banner__actions{margin:0 0 0 12px}}.proton-ButtonGroup{border:1px solid var(--proton-color__gray-light);border-radius:4px;font-weight:400;display:flex;overflow:hidden}.proton-ButtonGroup__option{background-color:var(--proton-color__gray-super-light);cursor:pointer;border-left:1px solid var(--proton-color__gray-light);color:var(--proton-color__gray-dark);text-align:center;border-radius:0;flex:1;padding:.5em 1em}.proton-ButtonGroup__option:first-child{border-left:0}.proton-ButtonGroup__option--selected{background-color:var(--proton-color__white);color:var(--proton-color__primary);z-index:2;cursor:default;border-radius:inherit;box-shadow:0 0 6px #00000026}.proton-ButtonGroup__option--selected+.proton-ButtonGroup__option{border-left:1px solid #0000}.proton-Dialog{background-color:var(--proton-color__primary);box-shadow:0 0 2px 0 var(--proton-control__shadow-color),0 0 12px 0 var(--proton-control__shadow-color);color:var(--proton-control__text-color);border-radius:4px;outline:none;padding:.65rem .85rem;font-weight:300}.proton-Dialog__header{margin-top:0;margin-bottom:5px}.proton-Input{box-sizing:border-box;outline:1px solid var(--proton-control__border-color);background-color:var(--proton-control__background-color);width:100%;min-height:40px;color:var(--proton-control__text-color);border:1px solid #0000;border-radius:4px;flex:1;padding-left:12px;font-weight:500;transition:all .2s ease-in-out}.proton-ui__theme--custom-dark .proton-Input{background-color:#fff3}.proton-Input:disabled{opacity:.6;cursor:not-allowed}.proton-Input:not(.proton-Input--error):focus{outline:1px solid var(--proton-color__primary)}.proton-Input:not(.proton-Input--error):focus-visible{outline:1px solid var(--proton-color__primary)}.proton-Input.proton-Input--error{outline:1px solid var(--proton-color__danger-dark)}.proton-Input__container{flex-direction:column;flex:1;width:100%;display:flex}.proton-Input__container-inner{flex:1;align-items:center;display:flex;position:relative}.proton-Input__descriptor{z-index:1;background-position:50%;background-repeat:no-repeat;background-size:50%;justify-content:center;align-items:center;height:100%;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.proton-Input__prefix,.proton-Input__suffix{flex:0 0 32px;justify-content:center;align-items:center;display:flex}.proton-Input__prefix{opacity:.5;cursor:text;margin-left:12px;left:0}.proton-Input__suffix{outline:none;padding-right:12px;right:0}.proton-Input__container-inner:has(.proton-Input__prefix) .proton-Input{padding-left:32px}.proton-Input__container-inner:has(.proton-Input__suffix) .proton-Input{padding-right:44px}.proton-Input__text{color:var(--proton-color__gray-medium);padding:4px 0;font-size:.75rem}.proton-ui__theme--custom-dark .proton-Input__text{color:var(--proton-color__gray-medium-light)}.proton-Input__error{color:var(--proton-color__danger-medium)}.proton-Input__label-top{padding-top:24px;padding-bottom:8px}.proton-Input__label{color:var(--proton-color__gray-medium-light);pointer-events:none;transform-origin:left center 0px;transition:color .2s,font-size .5s,top .5s;position:absolute;top:15px;left:14px}.proton-Input:focus+.proton-Input__label,.proton-Input__label--filled{font-size:.75rem;top:7px}.proton-Input:focus+.proton-Input__label{color:var(--proton-color__primary)}.proton-ui__theme--custom-dark .proton-Input:focus+.proton-Input__label{color:var(--proton-color__primary-light)}.proton-SearchInput__wrapper{width:100%}.proton-SearchInput__wrapper input{border-radius:50px;padding-left:44px!important}.proton-SearchInput__button{color:currentColor;cursor:pointer;opacity:1;background-color:#0000;border:none;transition:opacity .2s ease-in-out}.proton-SearchInput__button--hide{opacity:0}.proton-SearchInput__wrapper input[type=search]::-ms-clear{width:0;height:0;display:none}.proton-SearchInput__wrapper input[type=search]::-ms-reveal{width:0;height:0;display:none}.proton-SearchInput__wrapper input[type=search]::-webkit-search-decoration{display:none}.proton-SearchInput__wrapper input[type=search]::-webkit-search-cancel-button{display:none}.proton-SearchInput__wrapper input[type=search]::-webkit-search-results-button{display:none}.proton-SearchInput__wrapper input[type=search]::-webkit-search-results-decoration{display:none}.proton-Popover{transform-origin:top}.arrow{fill:var(--proton-color__primary);stroke-width:1px;width:12px;height:12px;position:absolute}.arrow[data-placement=top]{top:100%;transform:translate(-50%)}.arrow[data-placement=bottom]{bottom:100%;transform:translate(-50%)rotate(180deg)}.arrow[data-placement=left]{left:100%;transform:translateY(-50%)rotate(-90deg)}.arrow[data-placement=right]{right:100%;transform:translateY(-50%)rotate(90deg)}.proton-Popover[data-placement=top]{--origin:translateY(10px)scaleY(.9)}.proton-Popover[data-placement=bottom]{--origin:translateY(-10px)scaleY(.9)}.proton-Popover[data-placement=left]{--origin:translateX(18px)scaleX(.96)}.proton-Popover[data-placement=right]{--origin:translateX(-18px)scaleX(.96)}.proton-Popover[data-entering]{animation:.2s ease-out forwards popoverSlide}@keyframes popoverSlide{0%{opacity:0;transform:var(--origin)}to{opacity:1;transform:translateY(0)scaleY(1)scaleX(1)}}.proton-ResponsiveMenuTrigger{display:inline-block;position:relative}.proton-ResponsiveMenuTrigger__button{cursor:pointer;color:var(--proton-control__text-color);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}.proton-ResponsiveMenuTrigger__button:disabled{cursor:not-allowed;opacity:.5}.proton-ui__theme--dark .proton-ResponsiveMenuTrigger__button:disabled:hover,.proton-ResponsiveMenuTrigger__button:disabled:hover{background:0 0}.proton-ResponsiveMenuTrigger__button:focus{outline:2px solid var(--proton-control__border-color)}.proton-ResponsiveMenuTrigger__button:hover{background-color:#60606026}.proton-ui__theme--dark .proton-ResponsiveMenuTrigger__button:hover{background-color:#ffffff1a}.proton-ListBox{letter-spacing:.05em;background:var(--proton-control__background-color);border:1px solid var(--proton-control__border-color);min-width:100px;color:var(--proton-control__text-color);box-shadow:0 0 3px var(--proton-control__shadow-color);border-radius:10px;margin:.5rem 0 0;padding:0;list-style:none;overflow:auto}.proton-ui__theme--custom-dark .proton-ListBox{background:var(--proton-color__primary)}.proton-ListBox:focus{outline:none}.proton-ListBox:focus-visible{outline:none}.proton-ListBox__item{cursor:pointer;outline:none;justify-content:space-between;padding:8px 16px;transition:background-color .1s;display:flex}.proton-ListBox__item:hover{background:#0000000a}.proton-ui__theme--dark .proton-ListBox__item:hover,.proton-ui__theme--custom-dark .proton-ListBox__item:hover{color:var(--proton-control__text-color);background:#ffffff1a}.proton-ListBox__item--disabled{opacity:.5;cursor:not-allowed}.proton-ListBox__item--selected{background:var(--proton-color__primary-light);color:var(--proton-color__primary)}.proton-Select{flex-direction:column;width:100%;margin:0;display:flex}.proton-Select__label{color:var(--proton-control__text-color);margin-bottom:2px}.proton-Select__trigger{color:var(--proton-control__text-color);font-size:inherit;border-radius:50px;flex:1;justify-content:space-between;align-items:center;width:100%;padding:.2rem .6rem .2rem 1rem;display:flex}button.proton-Select__trigger{letter-spacing:.05em;cursor:pointer;background:var(--proton-control__background-color);outline:1px solid var(--proton-control__border-color);border:1px solid #0000;font-weight:400;transition:outline .2s;position:relative}.proton-ui__theme--custom-dark button.proton-Select__trigger{background:var(--proton-color__primary)}button.proton-Select__trigger:hover:after{content:"";-webkit-backdrop-filter:brightness(98%);backdrop-filter:brightness(98%);z-index:1;border-radius:50px;width:100%;height:100%;position:absolute;left:0}button.proton-Select__trigger:focus{outline:solid var(--proton-color__primary)1px;border:1px solid #0000}button.proton-Select__trigger:focus-visible{outline:solid var(--proton-color__primary)1px;border:1px solid #0000}.proton-ui__theme--custom-dark button.proton-Select__trigger:focus{outline:solid var(--proton-color__gray-medium-light)1px;border:1px solid #0000}.proton-ui__theme--custom-dark button.proton-Select__trigger:focus-visible{outline:solid var(--proton-color__gray-medium-light)1px;border:1px solid #0000}.proton-Select__popover{padding-left:.25rem}.proton-Select__trigger_icon{color:var(--proton-control__text-color);width:.75em;height:.75em;margin-left:.8em;transition:transform .2s;position:relative}.proton-Select__trigger_icon svg{width:100%;height:100%;position:absolute;top:50%;left:0;transform:translateY(-50%)}.proton-Select__trigger_icon--flipped{transform:rotateX(180deg)}.proton-Select:hover{cursor:pointer}.proton-Select__trigger--disabled,.proton-Select__trigger--disabled:hover{opacity:.5;filter:none;cursor:not-allowed}.proton-Select__value{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.proton-Switch{flex-flow:column;row-gap:5px;display:flex}.proton-Switch__label{text-transform:uppercase;letter-spacing:.1em;color:var(--proton-color__gray-dark);font-size:.7em;font-weight:600}.proton-Switch__description{color:var(--proton-color__gray-medium);align-self:center;font-size:.9em}.proton-Switch__wrapper{column-gap:12px;display:flex}.proton-Switch__toggle{background-color:var(--proton-color__gray-light);cursor:pointer;border-radius:26px;flex-shrink:0;width:50px;height:26px;position:relative}.proton-ui__theme--dark .proton-Switch__toggle,.proton-ui__theme--custom-dark .proton-Switch__toggle{background-color:var(--proton-color__gray-dark)}.proton-Switch__slider{background-color:#fff;border-radius:22px;width:22px;height:22px;transition:left .2s;position:absolute;top:2px;left:2px}.proton-Switch--on .proton-Switch__toggle{background-color:var(--proton-color__primary)}.proton-Switch--on .proton-Switch__slider{left:26px}.proton-Switch--disabled{opacity:.4}.proton-Switch--disabled .proton-Switch__toggle{cursor:not-allowed}.proton-Table{border-collapse:collapse;color:var(--proton-control__text-color);width:100%;font-weight:300}.proton-Table__header{cursor:default;letter-spacing:.1em;text-transform:uppercase;text-align:left;outline:none;padding:7px 10px;font-size:max(10px,min(.75rem,12px));font-weight:500;line-height:1rem}.proton-Table__header--center{text-align:center}.proton-Table__header--right{text-align:right}.proton-Table__headerSortIcon{padding:0 2px}.proton-Table__row{cursor:default;outline:none}.proton-Table__rowGroup--header{border-bottom:1px solid #ccc}.proton-Table__row--showLines{border-top:1px solid #ccc}.proton-Table--clickable{cursor:pointer}.proton-Table__cell{vertical-align:middle;outline:none;padding:7px 10px}.proton-Table__cell--center{text-align:center}.proton-Table__cell--right{text-align:right}.proton-TextEllipsis{vertical-align:middle;color:var(--proton-control__text-color,inherit);font-family:inherit;font-size:inherit;line-height:inherit;width:100%;display:inline-block;position:relative}.proton-TextEllipsis--single-line{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.proton-TextEllipsis--multi-line{text-overflow:ellipsis;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.proton-TextEmphasis{color:var(--proton-color__gray-super-dark);background-image:linear-gradient(0deg,#0000 0,#0000 15%,#ff713480 15%,#ff713480 35%,#0000 35%,#0000);padding:0 .05rem;font-style:normal;font-weight:700}.proton-TextEmphasis a{color:inherit;text-decoration:none;transition:color .15s}.proton-TextEmphasis a:hover{color:var(--proton-color__primary);text-decoration:none}.proton-ui__theme--custom-dark .proton-TextEmphasis,.proton-ui__theme--dark .proton-TextEmphasis{color:var(--proton-control__text-color)}.proton-TextEmphasis--tooltip{background-image:linear-gradient(0deg,#0000 0,#0000 15%,#ff713480 25%,#ff713480 87%,#0000 80%,#0000);background-position:bottom;background-repeat:no-repeat;background-size:100% 35%;font-style:italic;font-weight:400;transition:background-size .3s,border-radius .3s}.proton-TextEmphasis--tooltip:hover{background-size:100% 100%;border-radius:2px}.proton-TextEmphasis--tooltip:not(:hover){transition-delay:.2s}.proton__Tooltip{background-color:var(--proton-control__background-color);color:var(--proton-control__text-color);position:absolute}.proton-ui__theme--custom-dark.proton__Tooltip{background-color:var(--proton-color__primary)}.proton__TooltipTrigger{all:unset}.proton__Tooltip[data-placement=top]{--origin:translateY(4px);margin-bottom:8px}.proton__Tooltip[data-placement=bottom]{--origin:translateY(-4px);margin-top:8px}.proton__Tooltip[data-placement=bottom] .proton__TooltipArrow svg{transform:rotate(180deg)}.proton__Tooltip[data-placement=right]{--origin:translateX(-4px);margin-left:8px}.proton__Tooltip[data-placement=right] .proton__TooltipArrow svg{transform:rotate(90deg)}.proton__Tooltip[data-placement=left]{--origin:translateX(4px);margin-right:8px}.proton__Tooltip[data-placement=left] .proton__TooltipArrow svg{transform:rotate(-90deg)}.proton__Tooltip .proton__TooltipArrow svg{fill:var(--proton-control__background-color);display:block}.proton__Tooltip .proton-ui__theme--custom-dark.proton__TooltipArrow svg{fill:var(--proton-color__primary)}.proton__Tooltip[data-entering]{animation:.2s slide}.proton__Tooltip[data-exiting]{animation:.2s reverse slide}@keyframes slide{0%{opacity:0;transform:var(--origin)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-300px 0}to{background-position:800px 0}}.tombstone{background-position:-300px 0;background-repeat:no-repeat;background-size:300px 100%;animation:1.5s linear infinite shimmer}.tombstone.light{background-color:#d1d1d1;background-image:linear-gradient(-90deg,#d1d1d1,#b8b8b8,#d1d1d1)}.tombstone.dark{background-color:#3c3c3c;background-image:linear-gradient(-90deg,#363636,#292727,#353535)}.tombstone.custom-dark{background-image:linear-gradient(-90deg,var(--tombstone-custom-primary)0%,var(--tombstone-custom-secondary)50%,var(--tombstone-custom-primary)100%);background-color:var(--tombstone-custom-background)}:root{--waveform-bar-color-dark:#ffffffe6;--waveform-bar-color-light:#000000b3;--waveform-disabled-color-dark:#fff3;--waveform-disabled-color-light:#0003;--waveform-animation-curve:cubic-bezier(.34,1.56,.64,1);--waveform-animation-duration:.4s;--waveform-bar-delay-multiplier:.7ms;--waveform-timestamp-padding:.25rem;--waveform-timestamp-font-size:.75rem;--waveform-timestamp-border-radius:.125rem;--waveform-hover-line-width:2px}.proton-Waveform{flex-direction:row;align-items:center;width:100%;height:100%;display:flex;position:relative}.proton-Waveform__container{z-index:0;flex:1;align-items:center;width:100%;height:100%;display:flex;position:relative}.proton-Waveform__container[data-disabled=true]{cursor:not-allowed}.proton-Waveform__timestamp{pointer-events:none;border-radius:var(--waveform-timestamp-border-radius);padding:0 var(--waveform-timestamp-padding);font-size:var(--waveform-timestamp-font-size);z-index:1;background-color:#0009;position:absolute}.proton-ui__theme--light .proton-Waveform__timestamp{color:#000c;background-color:#ffffffe6;box-shadow:0 2px 2px #0000004d}.proton-ui__theme--dark .proton-Waveform__timestamp{background-color:var(--proton-control__background-color)}.proton-ui__theme--custom-dark .proton-Waveform__timestamp{background-color:var(--proton-control__primary-dark)}.proton-Waveform__timestamp--left{left:1px}.proton-Waveform__timestamp--right{right:3px}.proton-Waveform__hover-line{width:var(--waveform-hover-line-width);background-color:#ffffff80;position:absolute;top:0;bottom:0;transform:translate(-50%)}.proton-ui__theme--light .proton-Waveform__hover-line{background-color:#00000080}.proton-Waveform__bar-wrapper{flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex;position:relative}.proton-Waveform__bar{background-color:var(--waveform-bar-color-dark);transform-origin:50%;width:100%;height:0;transition:height var(--waveform-animation-duration)var(--waveform-animation-curve);position:relative}.proton-Waveform__bar.proton-Waveform__bar--visible{height:var(--target-height);transition-delay:calc(var(--index)*var(--waveform-bar-delay-multiplier))}.proton-Waveform__bar.proton-Waveform__bar--upper{transform-origin:bottom}.proton-Waveform__bar.proton-Waveform__bar--lower{transform-origin:top}.proton-ui__theme--light .proton-Waveform__bar{background-color:var(--waveform-bar-color-light)}.proton-Waveform__bar.proton-Waveform__bar--disabled{background-color:var(--waveform-disabled-color-dark)}.proton-ui__theme--light .proton-Waveform__bar.proton-Waveform__bar--disabled{background-color:var(--waveform-disabled-color-light)}.proton-Waveform__bar.proton-Waveform__bar--disabled.proton-Waveform__bar--played{background-color:var(--waveform-disabled-color-dark)}.proton-ui__theme--light .proton-Waveform__bar.proton-Waveform__bar--disabled.proton-Waveform__bar--played{background-color:var(--waveform-disabled-color-light)}.proton-Waveform__bar.proton-Waveform__bar--played{background-color:var(--proton-color__primary)}.proton-Waveform__bar--hover{height:var(--hover-height);z-index:10;background-color:color-mix(in srgb,var(--proton-color__primary)50%,transparent);mix-blend-mode:darken;width:100%;position:absolute;top:50%;transform:translateY(-50%)}.proton-ui__theme--light .proton-Waveform__bar--hover{background-color:color-mix(in srgb,var(--proton-color__primary)50%,white);mix-blend-mode:lighten}.proton-Waveform__bar-unavailable{pointer-events:none;text-align:center;z-index:10;color:#fff;background-color:#000000b3;border-radius:4px;padding:3px 6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.proton-ui__theme--light .proton-Waveform__bar-unavailable{color:#000;background-color:#fff;box-shadow:0 5px 5px #0000004d}.proton-ui__theme--dark .proton-Waveform__bar-unavailable{background-color:var(--proton-control__background-color)}.proton-ui__theme--custom-dark .proton-Waveform__bar-unavailable{background-color:var(--proton-control__primary-dark)}.proton-Waveform__active-region{pointer-events:none;z-index:1;border:1.5px solid #ffffffb3;border-radius:4px;position:absolute;top:0;bottom:0}.proton-ui__theme--light .proton-Waveform__active-region{border-color:#0000004d}
@@ -1,2 +1,2 @@
1
- "use strict";const m=require("./colors-BdogYmJi.js"),A=require("color2k");var w=function(n,o){return n<o?-1:n>o?1:0},F=function(n){return n.reduce(function(o,a){return o+a},0)},j=function(){function n(a){this.colors=a}var o=n.prototype;return o.palette=function(){return this.colors},o.map=function(a){return a},n}(),q=function(){function n(e,t,u){return(e<<10)+(t<<5)+u}function o(e){var t=[],u=!1;function s(){t.sort(e),u=!0}return{push:function(c){t.push(c),u=!1},peek:function(c){return u||s(),c===void 0&&(c=t.length-1),t[c]},pop:function(){return u||s(),t.pop()},size:function(){return t.length},map:function(c){return t.map(c)},debug:function(){return u||s(),t}}}function a(e,t,u,s,c,r,f){var l=this;l.r1=e,l.r2=t,l.g1=u,l.g2=s,l.b1=c,l.b2=r,l.histo=f}function R(){this.vboxes=new o(function(e,t){return w(e.vbox.count()*e.vbox.volume(),t.vbox.count()*t.vbox.volume())})}function h(e,t){if(t.count()){var u=t.r2-t.r1+1,s=t.g2-t.g1+1,c=Math.max.apply(null,[u,s,t.b2-t.b1+1]);if(t.count()==1)return[t.copy()];var r,f,l,v,p=0,E=[],L=[];if(c==u)for(r=t.r1;r<=t.r2;r++){for(v=0,f=t.g1;f<=t.g2;f++)for(l=t.b1;l<=t.b2;l++)v+=e[n(r,f,l)]||0;E[r]=p+=v}else if(c==s)for(r=t.g1;r<=t.g2;r++){for(v=0,f=t.r1;f<=t.r2;f++)for(l=t.b1;l<=t.b2;l++)v+=e[n(f,r,l)]||0;E[r]=p+=v}else for(r=t.b1;r<=t.b2;r++){for(v=0,f=t.r1;f<=t.r2;f++)for(l=t.g1;l<=t.g2;l++)v+=e[n(f,l,r)]||0;E[r]=p+=v}return E.forEach(function(C,g){L[g]=p-C}),function(C){var g,I,_,d,b,D=C+"1",Y=C+"2",G=0;for(r=t[D];r<=t[Y];r++)if(E[r]>p/2){for(_=t.copy(),d=t.copy(),b=(g=r-t[D])<=(I=t[Y]-r)?Math.min(t[Y]-1,~~(r+I/2)):Math.max(t[D],~~(r-1-g/2));!E[b];)b++;for(G=L[b];!G&&E[b-1];)G=L[--b];return _[Y]=b,d[D]=_[Y]+1,[_,d]}}(c==u?"r":c==s?"g":"b")}}return a.prototype={volume:function(e){var t=this;return t._volume&&!e||(t._volume=(t.r2-t.r1+1)*(t.g2-t.g1+1)*(t.b2-t.b1+1)),t._volume},count:function(e){var t=this,u=t.histo;if(!t._count_set||e){var s,c,r,f=0;for(s=t.r1;s<=t.r2;s++)for(c=t.g1;c<=t.g2;c++)for(r=t.b1;r<=t.b2;r++)f+=u[n(s,c,r)]||0;t._count=f,t._count_set=!0}return t._count},copy:function(){var e=this;return new a(e.r1,e.r2,e.g1,e.g2,e.b1,e.b2,e.histo)},avg:function(e){var t=this,u=t.histo;if(!t._avg||e){var s,c,r,f,l=0,v=0,p=0,E=0;if(t.r1===t.r2&&t.g1===t.g2&&t.b1===t.b2)t._avg=[t.r1<<3,t.g1<<3,t.b1<<3];else{for(c=t.r1;c<=t.r2;c++)for(r=t.g1;r<=t.g2;r++)for(f=t.b1;f<=t.b2;f++)l+=s=u[n(c,r,f)]||0,v+=s*(c+.5)*8,p+=s*(r+.5)*8,E+=s*(f+.5)*8;t._avg=l?[~~(v/l),~~(p/l),~~(E/l)]:[~~(8*(t.r1+t.r2+1)/2),~~(8*(t.g1+t.g2+1)/2),~~(8*(t.b1+t.b2+1)/2)]}}return t._avg},contains:function(e){var t=this,u=e[0]>>3;return gval=e[1]>>3,bval=e[2]>>3,u>=t.r1&&u<=t.r2&&gval>=t.g1&&gval<=t.g2&&bval>=t.b1&&bval<=t.b2}},R.prototype={push:function(e){this.vboxes.push({vbox:e,color:e.avg()})},palette:function(){return this.vboxes.map(function(e){return e.color})},size:function(){return this.vboxes.size()},map:function(e){for(var t=this.vboxes,u=0;u<t.size();u++)if(t.peek(u).vbox.contains(e))return t.peek(u).color;return this.nearest(e)},nearest:function(e){for(var t,u,s,c=this.vboxes,r=0;r<c.size();r++)((u=Math.sqrt(Math.pow(e[0]-c.peek(r).color[0],2)+Math.pow(e[1]-c.peek(r).color[1],2)+Math.pow(e[2]-c.peek(r).color[2],2)))<t||t===void 0)&&(t=u,s=c.peek(r).color);return s},forcebw:function(){var e=this.vboxes;e.sort(function(c,r){return w(F(c.color),F(r.color))});var t=e[0].color;t[0]<5&&t[1]<5&&t[2]<5&&(e[0].color=[0,0,0]);var u=e.length-1,s=e[u].color;s[0]>251&&s[1]>251&&s[2]>251&&(e[u].color=[255,255,255])}},{quantize:function(e,t){if(!Number.isInteger(t)||t<1||t>256)throw new Error("Invalid maximum color count. It must be an integer between 1 and 256.");if(!e.length||t<2||t>256||!e.length||t<2||t>256)return!1;for(var u=[],s=new Set,c=0;c<e.length;c++){var r=e[c],f=r.join(",");s.has(f)||(s.add(f),u.push(r))}if(u.length<=t)return new j(u);var l=function(g){var I,_=new Array(32768);return g.forEach(function(d){I=n(d[0]>>3,d[1]>>3,d[2]>>3),_[I]=(_[I]||0)+1}),_}(e);l.forEach(function(){});var v=function(g,I){var _,d,b,D=1e6,Y=0,G=1e6,y=0,U=1e6,H=0;return g.forEach(function(N){(_=N[0]>>3)<D?D=_:_>Y&&(Y=_),(d=N[1]>>3)<G?G=d:d>y&&(y=d),(b=N[2]>>3)<U?U=b:b>H&&(H=b)}),new a(D,Y,G,y,U,H,I)}(e,l),p=new o(function(g,I){return w(g.count(),I.count())});function E(g,I){for(var _,d=g.size(),b=0;b<1e3;){if(d>=I||b++>1e3)return;if((_=g.pop()).count()){var D=h(l,_),Y=D[0],G=D[1];if(!Y)return;g.push(Y),G&&(g.push(G),d++)}else g.push(_),b++}}p.push(v),E(p,.75*t);for(var L=new o(function(g,I){return w(g.count()*g.volume(),I.count()*I.volume())});p.size();)L.push(p.pop());E(L,t);for(var C=new R;L.size();)C.push(L.pop());return C}}}().quantize,z=function(n){this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"),this.width=this.canvas.width=n.naturalWidth,this.height=this.canvas.height=n.naturalHeight,this.context.drawImage(n,0,0,this.width,this.height)};z.prototype.getImageData=function(){return this.context.getImageData(0,0,this.width,this.height)};var T=function(){};T.prototype.getColor=function(n,o){return o===void 0&&(o=10),this.getPalette(n,5,o)[0]},T.prototype.getPalette=function(n,o,a){var R=function(u){var s=u.colorCount,c=u.quality;if(s!==void 0&&Number.isInteger(s)){if(s===1)throw new Error("colorCount should be between 2 and 20. To get one color, call getColor() instead of getPalette()");s=Math.max(s,2),s=Math.min(s,20)}else s=10;return(c===void 0||!Number.isInteger(c)||c<1)&&(c=10),{colorCount:s,quality:c}}({colorCount:o,quality:a}),h=new z(n),e=function(u,s,c){for(var r,f,l,v,p,E=u,L=[],C=0;C<s;C+=c)f=E[0+(r=4*C)],l=E[r+1],v=E[r+2],((p=E[r+3])===void 0||p>=125)&&(f>250&&l>250&&v>250||L.push([f,l,v]));return L}(h.getImageData().data,h.width*h.height,R.quality),t=q(e,R.colorCount);return t?t.palette():null},T.prototype.getColorFromUrl=function(n,o,a){var R=this,h=document.createElement("img");h.addEventListener("load",function(){var e=R.getPalette(h,5,a);o(e[0],n)}),h.src=n},T.prototype.getImageData=function(n,o){var a=new XMLHttpRequest;a.open("GET",n,!0),a.responseType="arraybuffer",a.onload=function(){if(this.status==200){var R=new Uint8Array(this.response);i=R.length;for(var h=new Array(i),e=0;e<R.length;e++)h[e]=String.fromCharCode(R[e]);var t=h.join(""),u=window.btoa(t);o("data:image/png;base64,"+u)}},a.send()},T.prototype.getColorAsync=function(n,o,a){var R=this;this.getImageData(n,function(h){var e=document.createElement("img");e.addEventListener("load",function(){var t=R.getPalette(e,5,a);o(t[0],this)}),e.src=h})};const B="rgba(83, 82, 83, 1)",$={BASE_COLOR:B,BRAND:{PRIMARY:m.BRAND.PRIMARY,PRIMARY_LIGHT:m.BRAND.PRIMARY_LIGHT,SECONDARY:m.BRAND.SECONDARY},PRIMARY:{PRIMARY_SUPER_DARK:m.GRAYSCALE.GRAY_SUPER_DARK,PRIMARY_DARK:m.GRAYSCALE.GRAY_DARK,PRIMARY_MEDIUM:m.GRAYSCALE.GRAY_MEDIUM,PRIMARY_MEDIUM_LIGHT:m.GRAYSCALE.GRAY_MEDIUM_LIGHT,PRIMARY_LIGHT:m.GRAYSCALE.GRAY_LIGHT,PRIMARY_LIGHTEST:m.GRAYSCALE.GRAY_LIGHTEST,PRIMARY_SUPER_LIGHT:m.GRAYSCALE.GRAY_SUPER_LIGHT},SECONDARY:{SECONDARY_SUPER_DARK:m.GRAYSCALE.GRAY_SUPER_DARK,SECONDARY_DARK:m.GRAYSCALE.GRAY_DARK,SECONDARY_MEDIUM:m.GRAYSCALE.GRAY_MEDIUM,SECONDARY_MEDIUM_LIGHT:m.GRAYSCALE.GRAY_MEDIUM_LIGHT,SECONDARY_LIGHT:m.GRAYSCALE.GRAY_LIGHT,SECONDARY_LIGHTEST:m.GRAYSCALE.GRAY_LIGHTEST,SECONDARY_SUPER_LIGHT:m.GRAYSCALE.GRAY_SUPER_LIGHT}},O=(n,o)=>o===void 0?`rgb(${n[0]}, ${n[1]}, ${n[2]})`:`rgba(${n[0]}, ${n[1]}, ${n[2]}, ${o})`,W=(n,o)=>A.toRgba(A.transparentize(n,o)),M=(n,o)=>A.toRgba(A.saturate(n,o)),P=(n,o)=>A.toRgba(A.desaturate(n,o)),X=n=>{try{return new T().getColor(n)}catch{return[255,255,255]}},J=n=>{const o=O(n),a=A.getScale("#FFFFFF",o,"#000000"),R=Array.from({length:12},(r,f)=>{const l=a(f/11);return P(l,.0085)}),h=R.map(r=>M(k(r),.005)),e=A.toRgba(M(A.adjustHue(o,180),1)),t=A.getScale("#FFFFFF",e,"#000000"),u=Array.from({length:12},(r,f)=>{const l=t(f/11);return P(l,.1)}),s=u.map(r=>P(k(r),.22)),c=Q(M(h[5],.115));return{BASE_COLOR:O(n),BRAND:{PRIMARY:c,PRIMARY_LIGHT:S(c,.25,{min:.6,max:.8}),SECONDARY:P(s[4],.02)},PRIMARY:{PRIMARY_SUPER_DARK:S(x(R[9]),-.6,{min:0,max:.02}),PRIMARY_DARK:S(x(R[8]),-.4,{min:.01,max:.02}),PRIMARY_MEDIUM:S(h[7],-.2,{min:0,max:.11}),PRIMARY_MEDIUM_LIGHT:S(P(h[6],.1),.08),PRIMARY_LIGHT:S(M(h[5],.1),.16),PRIMARY_LIGHTEST:S(M(h[3],.2),.12,{min:.5,max:.9}),PRIMARY_SUPER_LIGHT:S(h[1],.02,{min:.86,max:.98})},SECONDARY:{SECONDARY_SUPER_DARK:S(x(u[9]),-.6,{min:0,max:.02}),SECONDARY_DARK:S(x(u[8]),-.4,{min:.01,max:.02}),SECONDARY_MEDIUM:S(s[7],-.2,{min:0,max:.11}),SECONDARY_MEDIUM_LIGHT:S(s[6],.1),SECONDARY_LIGHT:S(M(s[5],.1),.16),SECONDARY_LIGHTEST:S(M(s[3],.2),.12,{min:.5,max:.9}),SECONDARY_SUPER_LIGHT:S(s[0],.02,{min:.86,max:.98})}}},S=(n,o,a={min:.03,max:.97})=>{let R=n,h=A.getLuminance(R);if(a.min<0&&(a.min=0),a.max>1&&(a.max=1),a.min>=a.max)throw new Error("Invalid range: min must be less than max");if(o>0){const t=a.max-h;if(t<=0)return A.toRgba(R);const u=o*(t/(1-h));R=A.lighten(R,u)}else if(o<0){const t=h-a.min;if(t<=0)return A.toRgba(R);const u=o*(t/h);R=A.darken(R,Math.abs(u))}const e=A.getLuminance(R);return(e>a.max||e<a.min)&&(R=K(R,a)),A.toRgba(R)},K=(n,o)=>{let a=n,R=A.getLuminance(a);for(;R>o.max;)a=A.darken(a,.05),R=A.getLuminance(a);for(;R<o.min;)a=A.lighten(a,.05),R=A.getLuminance(a);return A.toRgba(a)},x=n=>{for(;A.hasBadContrast(n,"readable",m.GRAYSCALE.GRAY_DARK);)n=A.lighten(n,.01);return A.toRgba(n)},Q=n=>{for(;A.hasBadContrast(m.GRAYSCALE.GRAY_SUPER_LIGHT,"readable",n);)n=A.darken(n,.01);return A.toRgba(n)},k=n=>{let o=n,a=A.getLuminance(A.toRgba(o)),R=0;const h=6;for(;a<.16&&R<h;)R++,o=A.lighten(o,.1),a=A.getLuminance(A.toRgba(o));for(;a>.6&&R<h;)R++,o=A.darken(o,.1),a=A.getLuminance(A.toRgba(o));return A.toRgba(o)},V=n=>typeof n=="string"||n instanceof String;function Z(...n){return n.filter(V).join(" ")}const tt=n=>n.startsWith("http"),nt=(n,o)=>{if(n.metaKey||n.altKey||n.ctrlKey||n.shiftKey||n.button&&n.button!==0)return;n.preventDefault();const a=o.startsWith("/")?o:`/${o}`;window.history.pushState({},"",a),window.dispatchEvent(new PopStateEvent("popstate"))};exports.DEFAULT_BACKGROUND=B;exports.DEFAULT_PALETTE=$;exports.arrayToRgbString=O;exports.csx=Z;exports.desaturate=P;exports.generatePalette=J;exports.getDominantColor=X;exports.handleInternalNavigation=nt;exports.isUrlExternal=tt;exports.saturate=M;exports.transparentize=W;
2
- //# sourceMappingURL=utils-CUykmxAN.js.map
1
+ "use strict";const m=require("./colors-CxxmewYB.js"),A=require("color2k");var w=function(n,o){return n<o?-1:n>o?1:0},F=function(n){return n.reduce(function(o,a){return o+a},0)},j=function(){function n(a){this.colors=a}var o=n.prototype;return o.palette=function(){return this.colors},o.map=function(a){return a},n}(),q=function(){function n(e,t,u){return(e<<10)+(t<<5)+u}function o(e){var t=[],u=!1;function s(){t.sort(e),u=!0}return{push:function(c){t.push(c),u=!1},peek:function(c){return u||s(),c===void 0&&(c=t.length-1),t[c]},pop:function(){return u||s(),t.pop()},size:function(){return t.length},map:function(c){return t.map(c)},debug:function(){return u||s(),t}}}function a(e,t,u,s,c,r,f){var l=this;l.r1=e,l.r2=t,l.g1=u,l.g2=s,l.b1=c,l.b2=r,l.histo=f}function R(){this.vboxes=new o(function(e,t){return w(e.vbox.count()*e.vbox.volume(),t.vbox.count()*t.vbox.volume())})}function h(e,t){if(t.count()){var u=t.r2-t.r1+1,s=t.g2-t.g1+1,c=Math.max.apply(null,[u,s,t.b2-t.b1+1]);if(t.count()==1)return[t.copy()];var r,f,l,v,p=0,E=[],L=[];if(c==u)for(r=t.r1;r<=t.r2;r++){for(v=0,f=t.g1;f<=t.g2;f++)for(l=t.b1;l<=t.b2;l++)v+=e[n(r,f,l)]||0;E[r]=p+=v}else if(c==s)for(r=t.g1;r<=t.g2;r++){for(v=0,f=t.r1;f<=t.r2;f++)for(l=t.b1;l<=t.b2;l++)v+=e[n(f,r,l)]||0;E[r]=p+=v}else for(r=t.b1;r<=t.b2;r++){for(v=0,f=t.r1;f<=t.r2;f++)for(l=t.g1;l<=t.g2;l++)v+=e[n(f,l,r)]||0;E[r]=p+=v}return E.forEach(function(C,g){L[g]=p-C}),function(C){var g,I,_,d,b,D=C+"1",Y=C+"2",G=0;for(r=t[D];r<=t[Y];r++)if(E[r]>p/2){for(_=t.copy(),d=t.copy(),b=(g=r-t[D])<=(I=t[Y]-r)?Math.min(t[Y]-1,~~(r+I/2)):Math.max(t[D],~~(r-1-g/2));!E[b];)b++;for(G=L[b];!G&&E[b-1];)G=L[--b];return _[Y]=b,d[D]=_[Y]+1,[_,d]}}(c==u?"r":c==s?"g":"b")}}return a.prototype={volume:function(e){var t=this;return t._volume&&!e||(t._volume=(t.r2-t.r1+1)*(t.g2-t.g1+1)*(t.b2-t.b1+1)),t._volume},count:function(e){var t=this,u=t.histo;if(!t._count_set||e){var s,c,r,f=0;for(s=t.r1;s<=t.r2;s++)for(c=t.g1;c<=t.g2;c++)for(r=t.b1;r<=t.b2;r++)f+=u[n(s,c,r)]||0;t._count=f,t._count_set=!0}return t._count},copy:function(){var e=this;return new a(e.r1,e.r2,e.g1,e.g2,e.b1,e.b2,e.histo)},avg:function(e){var t=this,u=t.histo;if(!t._avg||e){var s,c,r,f,l=0,v=0,p=0,E=0;if(t.r1===t.r2&&t.g1===t.g2&&t.b1===t.b2)t._avg=[t.r1<<3,t.g1<<3,t.b1<<3];else{for(c=t.r1;c<=t.r2;c++)for(r=t.g1;r<=t.g2;r++)for(f=t.b1;f<=t.b2;f++)l+=s=u[n(c,r,f)]||0,v+=s*(c+.5)*8,p+=s*(r+.5)*8,E+=s*(f+.5)*8;t._avg=l?[~~(v/l),~~(p/l),~~(E/l)]:[~~(8*(t.r1+t.r2+1)/2),~~(8*(t.g1+t.g2+1)/2),~~(8*(t.b1+t.b2+1)/2)]}}return t._avg},contains:function(e){var t=this,u=e[0]>>3;return gval=e[1]>>3,bval=e[2]>>3,u>=t.r1&&u<=t.r2&&gval>=t.g1&&gval<=t.g2&&bval>=t.b1&&bval<=t.b2}},R.prototype={push:function(e){this.vboxes.push({vbox:e,color:e.avg()})},palette:function(){return this.vboxes.map(function(e){return e.color})},size:function(){return this.vboxes.size()},map:function(e){for(var t=this.vboxes,u=0;u<t.size();u++)if(t.peek(u).vbox.contains(e))return t.peek(u).color;return this.nearest(e)},nearest:function(e){for(var t,u,s,c=this.vboxes,r=0;r<c.size();r++)((u=Math.sqrt(Math.pow(e[0]-c.peek(r).color[0],2)+Math.pow(e[1]-c.peek(r).color[1],2)+Math.pow(e[2]-c.peek(r).color[2],2)))<t||t===void 0)&&(t=u,s=c.peek(r).color);return s},forcebw:function(){var e=this.vboxes;e.sort(function(c,r){return w(F(c.color),F(r.color))});var t=e[0].color;t[0]<5&&t[1]<5&&t[2]<5&&(e[0].color=[0,0,0]);var u=e.length-1,s=e[u].color;s[0]>251&&s[1]>251&&s[2]>251&&(e[u].color=[255,255,255])}},{quantize:function(e,t){if(!Number.isInteger(t)||t<1||t>256)throw new Error("Invalid maximum color count. It must be an integer between 1 and 256.");if(!e.length||t<2||t>256||!e.length||t<2||t>256)return!1;for(var u=[],s=new Set,c=0;c<e.length;c++){var r=e[c],f=r.join(",");s.has(f)||(s.add(f),u.push(r))}if(u.length<=t)return new j(u);var l=function(g){var I,_=new Array(32768);return g.forEach(function(d){I=n(d[0]>>3,d[1]>>3,d[2]>>3),_[I]=(_[I]||0)+1}),_}(e);l.forEach(function(){});var v=function(g,I){var _,d,b,D=1e6,Y=0,G=1e6,y=0,U=1e6,H=0;return g.forEach(function(N){(_=N[0]>>3)<D?D=_:_>Y&&(Y=_),(d=N[1]>>3)<G?G=d:d>y&&(y=d),(b=N[2]>>3)<U?U=b:b>H&&(H=b)}),new a(D,Y,G,y,U,H,I)}(e,l),p=new o(function(g,I){return w(g.count(),I.count())});function E(g,I){for(var _,d=g.size(),b=0;b<1e3;){if(d>=I||b++>1e3)return;if((_=g.pop()).count()){var D=h(l,_),Y=D[0],G=D[1];if(!Y)return;g.push(Y),G&&(g.push(G),d++)}else g.push(_),b++}}p.push(v),E(p,.75*t);for(var L=new o(function(g,I){return w(g.count()*g.volume(),I.count()*I.volume())});p.size();)L.push(p.pop());E(L,t);for(var C=new R;L.size();)C.push(L.pop());return C}}}().quantize,z=function(n){this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"),this.width=this.canvas.width=n.naturalWidth,this.height=this.canvas.height=n.naturalHeight,this.context.drawImage(n,0,0,this.width,this.height)};z.prototype.getImageData=function(){return this.context.getImageData(0,0,this.width,this.height)};var T=function(){};T.prototype.getColor=function(n,o){return o===void 0&&(o=10),this.getPalette(n,5,o)[0]},T.prototype.getPalette=function(n,o,a){var R=function(u){var s=u.colorCount,c=u.quality;if(s!==void 0&&Number.isInteger(s)){if(s===1)throw new Error("colorCount should be between 2 and 20. To get one color, call getColor() instead of getPalette()");s=Math.max(s,2),s=Math.min(s,20)}else s=10;return(c===void 0||!Number.isInteger(c)||c<1)&&(c=10),{colorCount:s,quality:c}}({colorCount:o,quality:a}),h=new z(n),e=function(u,s,c){for(var r,f,l,v,p,E=u,L=[],C=0;C<s;C+=c)f=E[0+(r=4*C)],l=E[r+1],v=E[r+2],((p=E[r+3])===void 0||p>=125)&&(f>250&&l>250&&v>250||L.push([f,l,v]));return L}(h.getImageData().data,h.width*h.height,R.quality),t=q(e,R.colorCount);return t?t.palette():null},T.prototype.getColorFromUrl=function(n,o,a){var R=this,h=document.createElement("img");h.addEventListener("load",function(){var e=R.getPalette(h,5,a);o(e[0],n)}),h.src=n},T.prototype.getImageData=function(n,o){var a=new XMLHttpRequest;a.open("GET",n,!0),a.responseType="arraybuffer",a.onload=function(){if(this.status==200){var R=new Uint8Array(this.response);i=R.length;for(var h=new Array(i),e=0;e<R.length;e++)h[e]=String.fromCharCode(R[e]);var t=h.join(""),u=window.btoa(t);o("data:image/png;base64,"+u)}},a.send()},T.prototype.getColorAsync=function(n,o,a){var R=this;this.getImageData(n,function(h){var e=document.createElement("img");e.addEventListener("load",function(){var t=R.getPalette(e,5,a);o(t[0],this)}),e.src=h})};const B="rgba(83, 82, 83, 1)",$={BASE_COLOR:B,BRAND:{PRIMARY:m.BRAND.PRIMARY,PRIMARY_LIGHT:m.BRAND.PRIMARY_LIGHT,SECONDARY:m.BRAND.SECONDARY},PRIMARY:{PRIMARY_SUPER_DARK:m.GRAYSCALE.GRAY_SUPER_DARK,PRIMARY_DARK:m.GRAYSCALE.GRAY_DARK,PRIMARY_MEDIUM:m.GRAYSCALE.GRAY_MEDIUM,PRIMARY_MEDIUM_LIGHT:m.GRAYSCALE.GRAY_MEDIUM_LIGHT,PRIMARY_LIGHT:m.GRAYSCALE.GRAY_LIGHT,PRIMARY_LIGHTEST:m.GRAYSCALE.GRAY_LIGHTEST,PRIMARY_SUPER_LIGHT:m.GRAYSCALE.GRAY_SUPER_LIGHT},SECONDARY:{SECONDARY_SUPER_DARK:m.GRAYSCALE.GRAY_SUPER_DARK,SECONDARY_DARK:m.GRAYSCALE.GRAY_DARK,SECONDARY_MEDIUM:m.GRAYSCALE.GRAY_MEDIUM,SECONDARY_MEDIUM_LIGHT:m.GRAYSCALE.GRAY_MEDIUM_LIGHT,SECONDARY_LIGHT:m.GRAYSCALE.GRAY_LIGHT,SECONDARY_LIGHTEST:m.GRAYSCALE.GRAY_LIGHTEST,SECONDARY_SUPER_LIGHT:m.GRAYSCALE.GRAY_SUPER_LIGHT}},O=(n,o)=>o===void 0?`rgb(${n[0]}, ${n[1]}, ${n[2]})`:`rgba(${n[0]}, ${n[1]}, ${n[2]}, ${o})`,W=(n,o)=>A.toRgba(A.transparentize(n,o)),M=(n,o)=>A.toRgba(A.saturate(n,o)),P=(n,o)=>A.toRgba(A.desaturate(n,o)),X=n=>{try{return new T().getColor(n)}catch{return[255,255,255]}},J=n=>{const o=O(n),a=A.getScale("#FFFFFF",o,"#000000"),R=Array.from({length:12},(r,f)=>{const l=a(f/11);return P(l,.0085)}),h=R.map(r=>M(k(r),.005)),e=A.toRgba(M(A.adjustHue(o,180),1)),t=A.getScale("#FFFFFF",e,"#000000"),u=Array.from({length:12},(r,f)=>{const l=t(f/11);return P(l,.1)}),s=u.map(r=>P(k(r),.22)),c=Q(M(h[5],.115));return{BASE_COLOR:O(n),BRAND:{PRIMARY:c,PRIMARY_LIGHT:S(c,.25,{min:.6,max:.8}),SECONDARY:P(s[4],.02)},PRIMARY:{PRIMARY_SUPER_DARK:S(x(R[9]),-.6,{min:0,max:.02}),PRIMARY_DARK:S(x(R[8]),-.4,{min:.01,max:.02}),PRIMARY_MEDIUM:S(h[7],-.2,{min:0,max:.11}),PRIMARY_MEDIUM_LIGHT:S(P(h[6],.1),.08),PRIMARY_LIGHT:S(M(h[5],.1),.16),PRIMARY_LIGHTEST:S(M(h[3],.2),.12,{min:.5,max:.9}),PRIMARY_SUPER_LIGHT:S(h[1],.02,{min:.86,max:.98})},SECONDARY:{SECONDARY_SUPER_DARK:S(x(u[9]),-.6,{min:0,max:.02}),SECONDARY_DARK:S(x(u[8]),-.4,{min:.01,max:.02}),SECONDARY_MEDIUM:S(s[7],-.2,{min:0,max:.11}),SECONDARY_MEDIUM_LIGHT:S(s[6],.1),SECONDARY_LIGHT:S(M(s[5],.1),.16),SECONDARY_LIGHTEST:S(M(s[3],.2),.12,{min:.5,max:.9}),SECONDARY_SUPER_LIGHT:S(s[0],.02,{min:.86,max:.98})}}},S=(n,o,a={min:.03,max:.97})=>{let R=n,h=A.getLuminance(R);if(a.min<0&&(a.min=0),a.max>1&&(a.max=1),a.min>=a.max)throw new Error("Invalid range: min must be less than max");if(o>0){const t=a.max-h;if(t<=0)return A.toRgba(R);const u=o*(t/(1-h));R=A.lighten(R,u)}else if(o<0){const t=h-a.min;if(t<=0)return A.toRgba(R);const u=o*(t/h);R=A.darken(R,Math.abs(u))}const e=A.getLuminance(R);return(e>a.max||e<a.min)&&(R=K(R,a)),A.toRgba(R)},K=(n,o)=>{let a=n,R=A.getLuminance(a);for(;R>o.max;)a=A.darken(a,.05),R=A.getLuminance(a);for(;R<o.min;)a=A.lighten(a,.05),R=A.getLuminance(a);return A.toRgba(a)},x=n=>{for(;A.hasBadContrast(n,"readable",m.GRAYSCALE.GRAY_DARK);)n=A.lighten(n,.01);return A.toRgba(n)},Q=n=>{for(;A.hasBadContrast(m.GRAYSCALE.GRAY_SUPER_LIGHT,"readable",n);)n=A.darken(n,.01);return A.toRgba(n)},k=n=>{let o=n,a=A.getLuminance(A.toRgba(o)),R=0;const h=6;for(;a<.16&&R<h;)R++,o=A.lighten(o,.1),a=A.getLuminance(A.toRgba(o));for(;a>.6&&R<h;)R++,o=A.darken(o,.1),a=A.getLuminance(A.toRgba(o));return A.toRgba(o)},V=n=>typeof n=="string"||n instanceof String;function Z(...n){return n.filter(V).join(" ")}const tt=n=>n.startsWith("http"),nt=(n,o)=>{if(n.metaKey||n.altKey||n.ctrlKey||n.shiftKey||n.button&&n.button!==0)return;n.preventDefault();const a=o.startsWith("/")?o:`/${o}`;window.history.pushState({},"",a),window.dispatchEvent(new PopStateEvent("popstate"))};exports.DEFAULT_BACKGROUND=B;exports.DEFAULT_PALETTE=$;exports.arrayToRgbString=O;exports.csx=Z;exports.desaturate=P;exports.generatePalette=J;exports.getDominantColor=X;exports.handleInternalNavigation=nt;exports.isUrlExternal=tt;exports.saturate=M;exports.transparentize=W;
2
+ //# sourceMappingURL=utils-BK7HmyM8.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils-CUykmxAN.js","sources":["../node_modules/colorthief/dist/color-thief.mjs","../src/utils/color.ts","../src/utils/utils.ts"],"sourcesContent":["var t=function(t,r){return t<r?-1:t>r?1:0},r=function(t){return t.reduce(function(t,r){return t+r},0)},n=/*#__PURE__*/function(){function t(t){this.colors=t}var r=t.prototype;return r.palette=function(){return this.colors},r.map=function(t){return t},t}(),o=function(){function o(t,r,n){return(t<<10)+(r<<5)+n}function e(t){var r=[],n=!1;function o(){r.sort(t),n=!0}return{push:function(t){r.push(t),n=!1},peek:function(t){return n||o(),void 0===t&&(t=r.length-1),r[t]},pop:function(){return n||o(),r.pop()},size:function(){return r.length},map:function(t){return r.map(t)},debug:function(){return n||o(),r}}}function i(t,r,n,o,e,i,u){var a=this;a.r1=t,a.r2=r,a.g1=n,a.g2=o,a.b1=e,a.b2=i,a.histo=u}function u(){this.vboxes=new e(function(r,n){return t(r.vbox.count()*r.vbox.volume(),n.vbox.count()*n.vbox.volume())})}function a(t,r){if(r.count()){var n=r.r2-r.r1+1,e=r.g2-r.g1+1,i=Math.max.apply(null,[n,e,r.b2-r.b1+1]);if(1==r.count())return[r.copy()];var u,a,c,f,s=0,h=[],v=[];if(i==n)for(u=r.r1;u<=r.r2;u++){for(f=0,a=r.g1;a<=r.g2;a++)for(c=r.b1;c<=r.b2;c++)f+=t[o(u,a,c)]||0;h[u]=s+=f}else if(i==e)for(u=r.g1;u<=r.g2;u++){for(f=0,a=r.r1;a<=r.r2;a++)for(c=r.b1;c<=r.b2;c++)f+=t[o(a,u,c)]||0;h[u]=s+=f}else for(u=r.b1;u<=r.b2;u++){for(f=0,a=r.r1;a<=r.r2;a++)for(c=r.g1;c<=r.g2;c++)f+=t[o(a,c,u)]||0;h[u]=s+=f}return h.forEach(function(t,r){v[r]=s-t}),function(t){var n,o,e,i,a,c=t+\"1\",f=t+\"2\",l=0;for(u=r[c];u<=r[f];u++)if(h[u]>s/2){for(e=r.copy(),i=r.copy(),a=(n=u-r[c])<=(o=r[f]-u)?Math.min(r[f]-1,~~(u+o/2)):Math.max(r[c],~~(u-1-n/2));!h[a];)a++;for(l=v[a];!l&&h[a-1];)l=v[--a];return e[f]=a,i[c]=e[f]+1,[e,i]}}(i==n?\"r\":i==e?\"g\":\"b\")}}return i.prototype={volume:function(t){var r=this;return r._volume&&!t||(r._volume=(r.r2-r.r1+1)*(r.g2-r.g1+1)*(r.b2-r.b1+1)),r._volume},count:function(t){var r=this,n=r.histo;if(!r._count_set||t){var e,i,u,a=0;for(e=r.r1;e<=r.r2;e++)for(i=r.g1;i<=r.g2;i++)for(u=r.b1;u<=r.b2;u++)a+=n[o(e,i,u)]||0;r._count=a,r._count_set=!0}return r._count},copy:function(){var t=this;return new i(t.r1,t.r2,t.g1,t.g2,t.b1,t.b2,t.histo)},avg:function(t){var r=this,n=r.histo;if(!r._avg||t){var e,i,u,a,c=0,f=0,s=0,h=0;if(r.r1===r.r2&&r.g1===r.g2&&r.b1===r.b2)r._avg=[r.r1<<3,r.g1<<3,r.b1<<3];else{for(i=r.r1;i<=r.r2;i++)for(u=r.g1;u<=r.g2;u++)for(a=r.b1;a<=r.b2;a++)c+=e=n[o(i,u,a)]||0,f+=e*(i+.5)*8,s+=e*(u+.5)*8,h+=e*(a+.5)*8;r._avg=c?[~~(f/c),~~(s/c),~~(h/c)]:[~~(8*(r.r1+r.r2+1)/2),~~(8*(r.g1+r.g2+1)/2),~~(8*(r.b1+r.b2+1)/2)]}}return r._avg},contains:function(t){var r=this,n=t[0]>>3;return gval=t[1]>>3,bval=t[2]>>3,n>=r.r1&&n<=r.r2&&gval>=r.g1&&gval<=r.g2&&bval>=r.b1&&bval<=r.b2}},u.prototype={push:function(t){this.vboxes.push({vbox:t,color:t.avg()})},palette:function(){return this.vboxes.map(function(t){return t.color})},size:function(){return this.vboxes.size()},map:function(t){for(var r=this.vboxes,n=0;n<r.size();n++)if(r.peek(n).vbox.contains(t))return r.peek(n).color;return this.nearest(t)},nearest:function(t){for(var r,n,o,e=this.vboxes,i=0;i<e.size();i++)((n=Math.sqrt(Math.pow(t[0]-e.peek(i).color[0],2)+Math.pow(t[1]-e.peek(i).color[1],2)+Math.pow(t[2]-e.peek(i).color[2],2)))<r||void 0===r)&&(r=n,o=e.peek(i).color);return o},forcebw:function(){var n=this.vboxes;n.sort(function(n,o){return t(r(n.color),r(o.color))});var o=n[0].color;o[0]<5&&o[1]<5&&o[2]<5&&(n[0].color=[0,0,0]);var e=n.length-1,i=n[e].color;i[0]>251&&i[1]>251&&i[2]>251&&(n[e].color=[255,255,255])}},{quantize:function(r,c){if(!Number.isInteger(c)||c<1||c>256)throw new Error(\"Invalid maximum color count. It must be an integer between 1 and 256.\");if(!r.length||c<2||c>256)return!1;if(!r.length||c<2||c>256)return!1;for(var f=[],s=new Set,h=0;h<r.length;h++){var v=r[h],l=v.join(\",\");s.has(l)||(s.add(l),f.push(v))}if(f.length<=c)return new n(f);var g=function(t){var r,n=new Array(32768);return t.forEach(function(t){r=o(t[0]>>3,t[1]>>3,t[2]>>3),n[r]=(n[r]||0)+1}),n}(r);g.forEach(function(){});var p=function(t,r){var n,o,e,u=1e6,a=0,c=1e6,f=0,s=1e6,h=0;return t.forEach(function(t){(n=t[0]>>3)<u?u=n:n>a&&(a=n),(o=t[1]>>3)<c?c=o:o>f&&(f=o),(e=t[2]>>3)<s?s=e:e>h&&(h=e)}),new i(u,a,c,f,s,h,r)}(r,g),b=new e(function(r,n){return t(r.count(),n.count())});function m(t,r){for(var n,o=t.size(),e=0;e<1e3;){if(o>=r)return;if(e++>1e3)return;if((n=t.pop()).count()){var i=a(g,n),u=i[0],c=i[1];if(!u)return;t.push(u),c&&(t.push(c),o++)}else t.push(n),e++}}b.push(p),m(b,.75*c);for(var d=new e(function(r,n){return t(r.count()*r.volume(),n.count()*n.volume())});b.size();)d.push(b.pop());m(d,c);for(var w=new u;d.size();)w.push(d.pop());return w}}}().quantize,e=function(t){this.canvas=document.createElement(\"canvas\"),this.context=this.canvas.getContext(\"2d\"),this.width=this.canvas.width=t.naturalWidth,this.height=this.canvas.height=t.naturalHeight,this.context.drawImage(t,0,0,this.width,this.height)};e.prototype.getImageData=function(){return this.context.getImageData(0,0,this.width,this.height)};var u=function(){};u.prototype.getColor=function(t,r){return void 0===r&&(r=10),this.getPalette(t,5,r)[0]},u.prototype.getPalette=function(t,r,n){var i=function(t){var r=t.colorCount,n=t.quality;if(void 0!==r&&Number.isInteger(r)){if(1===r)throw new Error(\"colorCount should be between 2 and 20. To get one color, call getColor() instead of getPalette()\");r=Math.max(r,2),r=Math.min(r,20)}else r=10;return(void 0===n||!Number.isInteger(n)||n<1)&&(n=10),{colorCount:r,quality:n}}({colorCount:r,quality:n}),u=new e(t),a=function(t,r,n){for(var o,e,i,u,a,c=t,f=[],s=0;s<r;s+=n)e=c[0+(o=4*s)],i=c[o+1],u=c[o+2],(void 0===(a=c[o+3])||a>=125)&&(e>250&&i>250&&u>250||f.push([e,i,u]));return f}(u.getImageData().data,u.width*u.height,i.quality),c=o(a,i.colorCount);return c?c.palette():null},u.prototype.getColorFromUrl=function(t,r,n){var o=this,e=document.createElement(\"img\");e.addEventListener(\"load\",function(){var i=o.getPalette(e,5,n);r(i[0],t)}),e.src=t},u.prototype.getImageData=function(t,r){var n=new XMLHttpRequest;n.open(\"GET\",t,!0),n.responseType=\"arraybuffer\",n.onload=function(){if(200==this.status){var t=new Uint8Array(this.response);i=t.length;for(var n=new Array(i),o=0;o<t.length;o++)n[o]=String.fromCharCode(t[o]);var e=n.join(\"\"),u=window.btoa(e);r(\"data:image/png;base64,\"+u)}},n.send()},u.prototype.getColorAsync=function(t,r,n){var o=this;this.getImageData(t,function(t){var e=document.createElement(\"img\");e.addEventListener(\"load\",function(){var t=o.getPalette(e,5,n);r(t[0],this)}),e.src=t})};export{u as default};\n","import { COLORS } from \"../constants\";\nimport {\n adjustHue,\n getScale,\n saturate as _saturate,\n transparentize as _transparentize,\n desaturate as _desaturate,\n hasBadContrast,\n getLuminance,\n lighten,\n darken,\n toRgba,\n} from \"color2k\";\nimport ColorThief from \"colorthief\";\n\nexport type RGBArray = [number, number, number];\n\nexport type Palette = {\n BASE_COLOR: string;\n BRAND: {\n PRIMARY: string;\n PRIMARY_LIGHT: string;\n SECONDARY: string;\n };\n PRIMARY: {\n //backgrounds\n PRIMARY_SUPER_DARK: string;\n PRIMARY_DARK: string;\n //interactive components\n PRIMARY_MEDIUM: string;\n //borders and seperators\n PRIMARY_MEDIUM_LIGHT: string;\n //solid colors\n PRIMARY_LIGHT: string;\n //accessible text\n PRIMARY_LIGHTEST: string;\n PRIMARY_SUPER_LIGHT: string;\n };\n SECONDARY: {\n //backgrounds\n SECONDARY_SUPER_DARK: string;\n SECONDARY_DARK: string;\n //interactive components\n SECONDARY_MEDIUM: string;\n //borders and seperators\n SECONDARY_MEDIUM_LIGHT: string;\n //solid colors\n SECONDARY_LIGHT: string;\n //accessible text\n SECONDARY_LIGHTEST: string;\n SECONDARY_SUPER_LIGHT: string;\n };\n};\n\nexport const DEFAULT_BACKGROUND = \"rgba(83, 82, 83, 1)\";\n\nexport const DEFAULT_PALETTE: Palette = {\n BASE_COLOR: DEFAULT_BACKGROUND,\n BRAND: {\n PRIMARY: COLORS.BRAND.PRIMARY,\n PRIMARY_LIGHT: COLORS.BRAND.PRIMARY_LIGHT,\n SECONDARY: COLORS.BRAND.SECONDARY,\n },\n PRIMARY: {\n PRIMARY_SUPER_DARK: COLORS.GRAYSCALE.GRAY_SUPER_DARK,\n PRIMARY_DARK: COLORS.GRAYSCALE.GRAY_DARK,\n PRIMARY_MEDIUM: COLORS.GRAYSCALE.GRAY_MEDIUM,\n PRIMARY_MEDIUM_LIGHT: COLORS.GRAYSCALE.GRAY_MEDIUM_LIGHT,\n PRIMARY_LIGHT: COLORS.GRAYSCALE.GRAY_LIGHT,\n PRIMARY_LIGHTEST: COLORS.GRAYSCALE.GRAY_LIGHTEST,\n PRIMARY_SUPER_LIGHT: COLORS.GRAYSCALE.GRAY_SUPER_LIGHT,\n },\n SECONDARY: {\n SECONDARY_SUPER_DARK: COLORS.GRAYSCALE.GRAY_SUPER_DARK,\n SECONDARY_DARK: COLORS.GRAYSCALE.GRAY_DARK,\n SECONDARY_MEDIUM: COLORS.GRAYSCALE.GRAY_MEDIUM,\n SECONDARY_MEDIUM_LIGHT: COLORS.GRAYSCALE.GRAY_MEDIUM_LIGHT,\n SECONDARY_LIGHT: COLORS.GRAYSCALE.GRAY_LIGHT,\n SECONDARY_LIGHTEST: COLORS.GRAYSCALE.GRAY_LIGHTEST,\n SECONDARY_SUPER_LIGHT: COLORS.GRAYSCALE.GRAY_SUPER_LIGHT,\n },\n // Success, Warning & Danger palettes go here...\n};\n\n/**\n * Converts an RGB array to a CSS string representation.\n * @param rgb - The RGB array to convert.\n * @param opacity - Optional opacity value.\n * @returns A CSS string representation of the RGB array, using `rgb()`, or `rgba()` if an opacity value is provided.\n */\nexport const arrayToRgbString = (rgb: RGBArray, opacity?: number): string => {\n return opacity === undefined\n ? `rgb(${rgb[0]}, ${rgb[1]}, ${rgb[2]})`\n : `rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, ${opacity})`;\n};\n\n/**\n * Transparentizes an input color.\n *\n * @param color - The color string to transparentize.\n * @param amount - The amount to increase the opacity of the color by, given as a decimal between 0 and 1.\n * @returns An RGBA color string.\n */\nexport const transparentize = (color: string, amount: number): string => {\n return toRgba(_transparentize(color, amount));\n};\n\n/**\n * Saturates a color.\n *\n * @param color - Input color\n * @param amount - The amount to saturate, given as a decimal between 0 and 1\n * @returns An RGBA color string.\n */\nexport const saturate = (color: string, amount: number): string => {\n return toRgba(_saturate(color, amount));\n};\n\n/**\n * Desaturates a color.\n *\n * @param color - Input color\n * @param amount - The amount to desaturate, given as a decimal between 0 and 1\n * @returns An RGBA color string.\n */\nexport const desaturate = (color: string, amount: number): string => {\n return toRgba(_desaturate(color, amount));\n};\n\n/**\n * Gets the dominant color of an image. Avoids issues with low contrast colors.\n * @reference https://github.com/lokesh/color-thief/issues/40\n * @param image - The image to get the dominant color from.\n * @returns An RGB array.\n */\nexport const getDominantColor = (image: HTMLImageElement): RGBArray => {\n try {\n const colorThief = new ColorThief();\n const baseColor = colorThief.getColor(image);\n return baseColor;\n } catch {\n return [255, 255, 255];\n }\n};\n\n/**\n * Generates a complete color palette based on a primary color input.\n * The palette includes primary and secondary color scales with varying shades.\n *\n * @param primaryColor - The base RGB color array to generate the palette from\n * @returns A Palette object containing:\n * - BRAND colors (primary, light primary, and secondary)\n * - PRIMARY scale (7 shades from super dark to super light)\n * - SECONDARY scale (7 shades from super dark to super light)\n *\n * The function:\n * 1. Creates a 12-color scale from white to the primary color to black\n * 2. Generates a complementary secondary color by shifting the hue 180 degrees\n * 3. Creates another 12-color scale for the secondary color\n * 4. Maps specific positions from these scales to create the final palette structure\n */\nexport const generatePalette = (baseColor: RGBArray): Palette => {\n const primaryRgba = arrayToRgbString(baseColor);\n\n const primaryScaleFunc = getScale(\"#FFFFFF\", primaryRgba, \"#000000\");\n const primaryScale = Array.from({ length: 12 }, (_, i) => {\n const color = primaryScaleFunc(i / 11);\n return desaturate(color, 0.0085);\n });\n\n const adjustedPrimaryScale = primaryScale.map((color) =>\n saturate(adjustBrightnessForLuminance(color), 0.005)\n );\n\n const secondaryColor = toRgba(saturate(adjustHue(primaryRgba, 180), 1));\n\n const secondaryScaleFunc = getScale(\"#FFFFFF\", secondaryColor, \"#000000\");\n const secondaryScale = Array.from({ length: 12 }, (_, i) => {\n const color = secondaryScaleFunc(i / 11);\n return desaturate(color, 0.1);\n });\n\n const adjustedSecondaryScale = secondaryScale.map((color) =>\n desaturate(adjustBrightnessForLuminance(color), 0.22)\n );\n\n const brandPrimary = darkenForContrast(\n saturate(adjustedPrimaryScale[5], 0.115)\n );\n\n return {\n BASE_COLOR: arrayToRgbString(baseColor),\n BRAND: {\n PRIMARY: brandPrimary,\n PRIMARY_LIGHT: lightenWithinRange(brandPrimary, 0.25, {\n min: 0.6,\n max: 0.8,\n }),\n SECONDARY: desaturate(adjustedSecondaryScale[4], 0.02),\n },\n PRIMARY: {\n //backgrounds\n PRIMARY_SUPER_DARK: lightenWithinRange(\n lightenForContrast(primaryScale[9]),\n -0.6,\n {\n min: 0.0,\n max: 0.02,\n }\n ),\n PRIMARY_DARK: lightenWithinRange(\n lightenForContrast(primaryScale[8]),\n -0.4,\n {\n min: 0.01,\n max: 0.02,\n }\n ),\n //interactive components\n PRIMARY_MEDIUM: lightenWithinRange(adjustedPrimaryScale[7], -0.2, {\n min: 0.0,\n max: 0.11,\n }),\n //borders and seperators\n PRIMARY_MEDIUM_LIGHT: lightenWithinRange(\n desaturate(adjustedPrimaryScale[6], 0.1),\n 0.08\n ),\n //solid colors\n PRIMARY_LIGHT: lightenWithinRange(\n saturate(adjustedPrimaryScale[5], 0.1),\n 0.16\n ),\n //accessible text\n PRIMARY_LIGHTEST: lightenWithinRange(\n saturate(adjustedPrimaryScale[3], 0.2),\n 0.12,\n {\n min: 0.5,\n max: 0.9,\n }\n ),\n PRIMARY_SUPER_LIGHT: lightenWithinRange(adjustedPrimaryScale[1], 0.02, {\n min: 0.86,\n max: 0.98,\n }),\n },\n SECONDARY: {\n //backgrounds\n SECONDARY_SUPER_DARK: lightenWithinRange(\n lightenForContrast(secondaryScale[9]),\n -0.6,\n {\n min: 0.0,\n max: 0.02,\n }\n ),\n SECONDARY_DARK: lightenWithinRange(\n lightenForContrast(secondaryScale[8]),\n -0.4,\n {\n min: 0.01,\n max: 0.02,\n }\n ),\n // interactive components\n SECONDARY_MEDIUM: lightenWithinRange(adjustedSecondaryScale[7], -0.2, {\n min: 0.0,\n max: 0.11,\n }),\n //borders and seperators\n SECONDARY_MEDIUM_LIGHT: lightenWithinRange(\n adjustedSecondaryScale[6],\n 0.1\n ),\n //solid colors\n SECONDARY_LIGHT: lightenWithinRange(\n saturate(adjustedSecondaryScale[5], 0.1),\n 0.16\n ),\n //accessible text\n SECONDARY_LIGHTEST: lightenWithinRange(\n saturate(adjustedSecondaryScale[3], 0.2),\n 0.12,\n {\n min: 0.5,\n max: 0.9,\n }\n ),\n SECONDARY_SUPER_LIGHT: lightenWithinRange(\n adjustedSecondaryScale[0],\n 0.02,\n {\n min: 0.86,\n max: 0.98,\n }\n ),\n },\n };\n};\n\nconst lightenWithinRange = (\n color: string,\n amount: number,\n range: { min: number; max: number } = { min: 0.03, max: 0.97 }\n): string => {\n let adjustedColor = color;\n let currentLuminance = getLuminance(adjustedColor);\n\n // Validate range bounds\n if (range.min < 0) range.min = 0;\n if (range.max > 1) range.max = 1;\n if (range.min >= range.max) {\n throw new Error(\"Invalid range: min must be less than max\");\n }\n\n // For lightening (positive amount)\n if (amount > 0) {\n // Calculate how much we can lighten before hitting max\n const remainingLuminance = range.max - currentLuminance;\n if (remainingLuminance <= 0) return toRgba(adjustedColor);\n\n // Scale the amount based on remaining room to lighten\n const scaledAmount = amount * (remainingLuminance / (1 - currentLuminance));\n adjustedColor = lighten(adjustedColor, scaledAmount);\n }\n // For darkening (negative amount)\n else if (amount < 0) {\n // Calculate how much we can darken before hitting min\n const remainingLuminance = currentLuminance - range.min;\n if (remainingLuminance <= 0) return toRgba(adjustedColor);\n\n // Scale the amount based on remaining room to darken\n const scaledAmount = amount * (remainingLuminance / currentLuminance);\n adjustedColor = darken(adjustedColor, Math.abs(scaledAmount));\n }\n\n // Verify final luminance is within bounds\n const finalLuminance = getLuminance(adjustedColor);\n if (finalLuminance > range.max) {\n adjustedColor = adjustBrightnessWithinRange(adjustedColor, range);\n } else if (finalLuminance < range.min) {\n adjustedColor = adjustBrightnessWithinRange(adjustedColor, range);\n }\n\n return toRgba(adjustedColor);\n};\n\nconst adjustBrightnessWithinRange = (\n color: string,\n range: { min: number; max: number }\n): string => {\n let adjustedColor = color;\n let luminance = getLuminance(adjustedColor);\n\n // Darken if too bright\n while (luminance > range.max) {\n adjustedColor = darken(adjustedColor, 0.05);\n luminance = getLuminance(adjustedColor);\n }\n\n // Lighten if too dark\n while (luminance < range.min) {\n adjustedColor = lighten(adjustedColor, 0.05);\n luminance = getLuminance(adjustedColor);\n }\n\n return toRgba(adjustedColor);\n};\n\nconst lightenForContrast = (color: string): string => {\n while (hasBadContrast(color, \"readable\", COLORS.GRAYSCALE.GRAY_DARK)) {\n color = lighten(color, 0.01);\n }\n return toRgba(color);\n};\n\nconst darkenForContrast = (color: string): string => {\n while (hasBadContrast(COLORS.GRAYSCALE.GRAY_SUPER_LIGHT, \"readable\", color)) {\n color = darken(color, 0.01);\n }\n return toRgba(color);\n};\n\nconst adjustBrightnessForLuminance = (color: string): string => {\n let currentColor = color;\n let currentLuminance = getLuminance(toRgba(currentColor));\n let adjustmentAttempts = 0;\n const MAX_ATTEMPTS = 6;\n\n while (currentLuminance < 0.16 && adjustmentAttempts < MAX_ATTEMPTS) {\n adjustmentAttempts++;\n currentColor = lighten(currentColor, 0.1);\n currentLuminance = getLuminance(toRgba(currentColor));\n }\n\n while (currentLuminance > 0.6 && adjustmentAttempts < MAX_ATTEMPTS) {\n adjustmentAttempts++;\n currentColor = darken(currentColor, 0.1);\n currentLuminance = getLuminance(toRgba(currentColor));\n }\n\n return toRgba(currentColor);\n};\n","const isString = (x: unknown): boolean =>\n typeof x === \"string\" || x instanceof String;\n\nexport function csx(...classnames: unknown[]): string {\n return classnames.filter(isString).join(\" \");\n}\n\n/**\n * [isUrlExternal] - determine if passed absolute url is external to the current domain.\n */\nexport const isUrlExternal = (url: string) => {\n return url.startsWith(\"http\");\n};\n\n/**\n * Handles internal navigation clicks by preventing default browser behavior and\n * programmatically updating the URL and history state.\n *\n * @param e - The click event from the anchor element\n * @param to - The destination path to navigate to\n *\n * @remarks\n * - Converts relative paths to absolute by prepending \"/\" if needed\n * - Updates browser history using pushState and dispatches a popstate event\n */\nexport const handleInternalNavigation = (\n e: React.MouseEvent<HTMLAnchorElement>,\n to: string\n) => {\n // Don't handle navigation if modifier keys are pressed\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) {\n return;\n }\n\n // Don't handle middle clicks or right clicks\n if (e.button && e.button !== 0) {\n return;\n }\n\n e.preventDefault();\n\n // Handle relative paths\n const resolvedPath = to.startsWith(\"/\") ? to : `/${to}`;\n window.history.pushState({}, \"\", resolvedPath);\n window.dispatchEvent(new PopStateEvent(\"popstate\"));\n};\n"],"names":["t","r","n","o","e","i","u","a","c","f","s","h","v","l","g","p","b","m","d","w","DEFAULT_BACKGROUND","DEFAULT_PALETTE","COLORS.BRAND","COLORS.GRAYSCALE","arrayToRgbString","rgb","opacity","transparentize","color","amount","toRgba","_transparentize","saturate","_saturate","desaturate","_desaturate","getDominantColor","image","ColorThief","generatePalette","baseColor","primaryRgba","primaryScaleFunc","getScale","primaryScale","_","adjustedPrimaryScale","adjustBrightnessForLuminance","secondaryColor","adjustHue","secondaryScaleFunc","secondaryScale","adjustedSecondaryScale","brandPrimary","darkenForContrast","lightenWithinRange","lightenForContrast","range","adjustedColor","currentLuminance","getLuminance","remainingLuminance","scaledAmount","lighten","darken","finalLuminance","adjustBrightnessWithinRange","luminance","hasBadContrast","currentColor","adjustmentAttempts","MAX_ATTEMPTS","isString","x","csx","classnames","isUrlExternal","url","handleInternalNavigation","to","resolvedPath"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"utils-BK7HmyM8.js","sources":["../node_modules/colorthief/dist/color-thief.mjs","../src/utils/color.ts","../src/utils/utils.ts"],"sourcesContent":["var t=function(t,r){return t<r?-1:t>r?1:0},r=function(t){return t.reduce(function(t,r){return t+r},0)},n=/*#__PURE__*/function(){function t(t){this.colors=t}var r=t.prototype;return r.palette=function(){return this.colors},r.map=function(t){return t},t}(),o=function(){function o(t,r,n){return(t<<10)+(r<<5)+n}function e(t){var r=[],n=!1;function o(){r.sort(t),n=!0}return{push:function(t){r.push(t),n=!1},peek:function(t){return n||o(),void 0===t&&(t=r.length-1),r[t]},pop:function(){return n||o(),r.pop()},size:function(){return r.length},map:function(t){return r.map(t)},debug:function(){return n||o(),r}}}function i(t,r,n,o,e,i,u){var a=this;a.r1=t,a.r2=r,a.g1=n,a.g2=o,a.b1=e,a.b2=i,a.histo=u}function u(){this.vboxes=new e(function(r,n){return t(r.vbox.count()*r.vbox.volume(),n.vbox.count()*n.vbox.volume())})}function a(t,r){if(r.count()){var n=r.r2-r.r1+1,e=r.g2-r.g1+1,i=Math.max.apply(null,[n,e,r.b2-r.b1+1]);if(1==r.count())return[r.copy()];var u,a,c,f,s=0,h=[],v=[];if(i==n)for(u=r.r1;u<=r.r2;u++){for(f=0,a=r.g1;a<=r.g2;a++)for(c=r.b1;c<=r.b2;c++)f+=t[o(u,a,c)]||0;h[u]=s+=f}else if(i==e)for(u=r.g1;u<=r.g2;u++){for(f=0,a=r.r1;a<=r.r2;a++)for(c=r.b1;c<=r.b2;c++)f+=t[o(a,u,c)]||0;h[u]=s+=f}else for(u=r.b1;u<=r.b2;u++){for(f=0,a=r.r1;a<=r.r2;a++)for(c=r.g1;c<=r.g2;c++)f+=t[o(a,c,u)]||0;h[u]=s+=f}return h.forEach(function(t,r){v[r]=s-t}),function(t){var n,o,e,i,a,c=t+\"1\",f=t+\"2\",l=0;for(u=r[c];u<=r[f];u++)if(h[u]>s/2){for(e=r.copy(),i=r.copy(),a=(n=u-r[c])<=(o=r[f]-u)?Math.min(r[f]-1,~~(u+o/2)):Math.max(r[c],~~(u-1-n/2));!h[a];)a++;for(l=v[a];!l&&h[a-1];)l=v[--a];return e[f]=a,i[c]=e[f]+1,[e,i]}}(i==n?\"r\":i==e?\"g\":\"b\")}}return i.prototype={volume:function(t){var r=this;return r._volume&&!t||(r._volume=(r.r2-r.r1+1)*(r.g2-r.g1+1)*(r.b2-r.b1+1)),r._volume},count:function(t){var r=this,n=r.histo;if(!r._count_set||t){var e,i,u,a=0;for(e=r.r1;e<=r.r2;e++)for(i=r.g1;i<=r.g2;i++)for(u=r.b1;u<=r.b2;u++)a+=n[o(e,i,u)]||0;r._count=a,r._count_set=!0}return r._count},copy:function(){var t=this;return new i(t.r1,t.r2,t.g1,t.g2,t.b1,t.b2,t.histo)},avg:function(t){var r=this,n=r.histo;if(!r._avg||t){var e,i,u,a,c=0,f=0,s=0,h=0;if(r.r1===r.r2&&r.g1===r.g2&&r.b1===r.b2)r._avg=[r.r1<<3,r.g1<<3,r.b1<<3];else{for(i=r.r1;i<=r.r2;i++)for(u=r.g1;u<=r.g2;u++)for(a=r.b1;a<=r.b2;a++)c+=e=n[o(i,u,a)]||0,f+=e*(i+.5)*8,s+=e*(u+.5)*8,h+=e*(a+.5)*8;r._avg=c?[~~(f/c),~~(s/c),~~(h/c)]:[~~(8*(r.r1+r.r2+1)/2),~~(8*(r.g1+r.g2+1)/2),~~(8*(r.b1+r.b2+1)/2)]}}return r._avg},contains:function(t){var r=this,n=t[0]>>3;return gval=t[1]>>3,bval=t[2]>>3,n>=r.r1&&n<=r.r2&&gval>=r.g1&&gval<=r.g2&&bval>=r.b1&&bval<=r.b2}},u.prototype={push:function(t){this.vboxes.push({vbox:t,color:t.avg()})},palette:function(){return this.vboxes.map(function(t){return t.color})},size:function(){return this.vboxes.size()},map:function(t){for(var r=this.vboxes,n=0;n<r.size();n++)if(r.peek(n).vbox.contains(t))return r.peek(n).color;return this.nearest(t)},nearest:function(t){for(var r,n,o,e=this.vboxes,i=0;i<e.size();i++)((n=Math.sqrt(Math.pow(t[0]-e.peek(i).color[0],2)+Math.pow(t[1]-e.peek(i).color[1],2)+Math.pow(t[2]-e.peek(i).color[2],2)))<r||void 0===r)&&(r=n,o=e.peek(i).color);return o},forcebw:function(){var n=this.vboxes;n.sort(function(n,o){return t(r(n.color),r(o.color))});var o=n[0].color;o[0]<5&&o[1]<5&&o[2]<5&&(n[0].color=[0,0,0]);var e=n.length-1,i=n[e].color;i[0]>251&&i[1]>251&&i[2]>251&&(n[e].color=[255,255,255])}},{quantize:function(r,c){if(!Number.isInteger(c)||c<1||c>256)throw new Error(\"Invalid maximum color count. It must be an integer between 1 and 256.\");if(!r.length||c<2||c>256)return!1;if(!r.length||c<2||c>256)return!1;for(var f=[],s=new Set,h=0;h<r.length;h++){var v=r[h],l=v.join(\",\");s.has(l)||(s.add(l),f.push(v))}if(f.length<=c)return new n(f);var g=function(t){var r,n=new Array(32768);return t.forEach(function(t){r=o(t[0]>>3,t[1]>>3,t[2]>>3),n[r]=(n[r]||0)+1}),n}(r);g.forEach(function(){});var p=function(t,r){var n,o,e,u=1e6,a=0,c=1e6,f=0,s=1e6,h=0;return t.forEach(function(t){(n=t[0]>>3)<u?u=n:n>a&&(a=n),(o=t[1]>>3)<c?c=o:o>f&&(f=o),(e=t[2]>>3)<s?s=e:e>h&&(h=e)}),new i(u,a,c,f,s,h,r)}(r,g),b=new e(function(r,n){return t(r.count(),n.count())});function m(t,r){for(var n,o=t.size(),e=0;e<1e3;){if(o>=r)return;if(e++>1e3)return;if((n=t.pop()).count()){var i=a(g,n),u=i[0],c=i[1];if(!u)return;t.push(u),c&&(t.push(c),o++)}else t.push(n),e++}}b.push(p),m(b,.75*c);for(var d=new e(function(r,n){return t(r.count()*r.volume(),n.count()*n.volume())});b.size();)d.push(b.pop());m(d,c);for(var w=new u;d.size();)w.push(d.pop());return w}}}().quantize,e=function(t){this.canvas=document.createElement(\"canvas\"),this.context=this.canvas.getContext(\"2d\"),this.width=this.canvas.width=t.naturalWidth,this.height=this.canvas.height=t.naturalHeight,this.context.drawImage(t,0,0,this.width,this.height)};e.prototype.getImageData=function(){return this.context.getImageData(0,0,this.width,this.height)};var u=function(){};u.prototype.getColor=function(t,r){return void 0===r&&(r=10),this.getPalette(t,5,r)[0]},u.prototype.getPalette=function(t,r,n){var i=function(t){var r=t.colorCount,n=t.quality;if(void 0!==r&&Number.isInteger(r)){if(1===r)throw new Error(\"colorCount should be between 2 and 20. To get one color, call getColor() instead of getPalette()\");r=Math.max(r,2),r=Math.min(r,20)}else r=10;return(void 0===n||!Number.isInteger(n)||n<1)&&(n=10),{colorCount:r,quality:n}}({colorCount:r,quality:n}),u=new e(t),a=function(t,r,n){for(var o,e,i,u,a,c=t,f=[],s=0;s<r;s+=n)e=c[0+(o=4*s)],i=c[o+1],u=c[o+2],(void 0===(a=c[o+3])||a>=125)&&(e>250&&i>250&&u>250||f.push([e,i,u]));return f}(u.getImageData().data,u.width*u.height,i.quality),c=o(a,i.colorCount);return c?c.palette():null},u.prototype.getColorFromUrl=function(t,r,n){var o=this,e=document.createElement(\"img\");e.addEventListener(\"load\",function(){var i=o.getPalette(e,5,n);r(i[0],t)}),e.src=t},u.prototype.getImageData=function(t,r){var n=new XMLHttpRequest;n.open(\"GET\",t,!0),n.responseType=\"arraybuffer\",n.onload=function(){if(200==this.status){var t=new Uint8Array(this.response);i=t.length;for(var n=new Array(i),o=0;o<t.length;o++)n[o]=String.fromCharCode(t[o]);var e=n.join(\"\"),u=window.btoa(e);r(\"data:image/png;base64,\"+u)}},n.send()},u.prototype.getColorAsync=function(t,r,n){var o=this;this.getImageData(t,function(t){var e=document.createElement(\"img\");e.addEventListener(\"load\",function(){var t=o.getPalette(e,5,n);r(t[0],this)}),e.src=t})};export{u as default};\n","import { COLORS } from \"../constants\";\nimport {\n adjustHue,\n getScale,\n saturate as _saturate,\n transparentize as _transparentize,\n desaturate as _desaturate,\n hasBadContrast,\n getLuminance,\n lighten,\n darken,\n toRgba,\n} from \"color2k\";\nimport ColorThief from \"colorthief\";\n\nexport type RGBArray = [number, number, number];\n\nexport type Palette = {\n BASE_COLOR: string;\n BRAND: {\n PRIMARY: string;\n PRIMARY_LIGHT: string;\n SECONDARY: string;\n };\n PRIMARY: {\n //backgrounds\n PRIMARY_SUPER_DARK: string;\n PRIMARY_DARK: string;\n //interactive components\n PRIMARY_MEDIUM: string;\n //borders and seperators\n PRIMARY_MEDIUM_LIGHT: string;\n //solid colors\n PRIMARY_LIGHT: string;\n //accessible text\n PRIMARY_LIGHTEST: string;\n PRIMARY_SUPER_LIGHT: string;\n };\n SECONDARY: {\n //backgrounds\n SECONDARY_SUPER_DARK: string;\n SECONDARY_DARK: string;\n //interactive components\n SECONDARY_MEDIUM: string;\n //borders and seperators\n SECONDARY_MEDIUM_LIGHT: string;\n //solid colors\n SECONDARY_LIGHT: string;\n //accessible text\n SECONDARY_LIGHTEST: string;\n SECONDARY_SUPER_LIGHT: string;\n };\n};\n\nexport const DEFAULT_BACKGROUND = \"rgba(83, 82, 83, 1)\";\n\nexport const DEFAULT_PALETTE: Palette = {\n BASE_COLOR: DEFAULT_BACKGROUND,\n BRAND: {\n PRIMARY: COLORS.BRAND.PRIMARY,\n PRIMARY_LIGHT: COLORS.BRAND.PRIMARY_LIGHT,\n SECONDARY: COLORS.BRAND.SECONDARY,\n },\n PRIMARY: {\n PRIMARY_SUPER_DARK: COLORS.GRAYSCALE.GRAY_SUPER_DARK,\n PRIMARY_DARK: COLORS.GRAYSCALE.GRAY_DARK,\n PRIMARY_MEDIUM: COLORS.GRAYSCALE.GRAY_MEDIUM,\n PRIMARY_MEDIUM_LIGHT: COLORS.GRAYSCALE.GRAY_MEDIUM_LIGHT,\n PRIMARY_LIGHT: COLORS.GRAYSCALE.GRAY_LIGHT,\n PRIMARY_LIGHTEST: COLORS.GRAYSCALE.GRAY_LIGHTEST,\n PRIMARY_SUPER_LIGHT: COLORS.GRAYSCALE.GRAY_SUPER_LIGHT,\n },\n SECONDARY: {\n SECONDARY_SUPER_DARK: COLORS.GRAYSCALE.GRAY_SUPER_DARK,\n SECONDARY_DARK: COLORS.GRAYSCALE.GRAY_DARK,\n SECONDARY_MEDIUM: COLORS.GRAYSCALE.GRAY_MEDIUM,\n SECONDARY_MEDIUM_LIGHT: COLORS.GRAYSCALE.GRAY_MEDIUM_LIGHT,\n SECONDARY_LIGHT: COLORS.GRAYSCALE.GRAY_LIGHT,\n SECONDARY_LIGHTEST: COLORS.GRAYSCALE.GRAY_LIGHTEST,\n SECONDARY_SUPER_LIGHT: COLORS.GRAYSCALE.GRAY_SUPER_LIGHT,\n },\n // Success, Warning & Danger palettes go here...\n};\n\n/**\n * Converts an RGB array to a CSS string representation.\n * @param rgb - The RGB array to convert.\n * @param opacity - Optional opacity value.\n * @returns A CSS string representation of the RGB array, using `rgb()`, or `rgba()` if an opacity value is provided.\n */\nexport const arrayToRgbString = (rgb: RGBArray, opacity?: number): string => {\n return opacity === undefined\n ? `rgb(${rgb[0]}, ${rgb[1]}, ${rgb[2]})`\n : `rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, ${opacity})`;\n};\n\n/**\n * Transparentizes an input color.\n *\n * @param color - The color string to transparentize.\n * @param amount - The amount to increase the opacity of the color by, given as a decimal between 0 and 1.\n * @returns An RGBA color string.\n */\nexport const transparentize = (color: string, amount: number): string => {\n return toRgba(_transparentize(color, amount));\n};\n\n/**\n * Saturates a color.\n *\n * @param color - Input color\n * @param amount - The amount to saturate, given as a decimal between 0 and 1\n * @returns An RGBA color string.\n */\nexport const saturate = (color: string, amount: number): string => {\n return toRgba(_saturate(color, amount));\n};\n\n/**\n * Desaturates a color.\n *\n * @param color - Input color\n * @param amount - The amount to desaturate, given as a decimal between 0 and 1\n * @returns An RGBA color string.\n */\nexport const desaturate = (color: string, amount: number): string => {\n return toRgba(_desaturate(color, amount));\n};\n\n/**\n * Gets the dominant color of an image. Avoids issues with low contrast colors.\n * @reference https://github.com/lokesh/color-thief/issues/40\n * @param image - The image to get the dominant color from.\n * @returns An RGB array.\n */\nexport const getDominantColor = (image: HTMLImageElement): RGBArray => {\n try {\n const colorThief = new ColorThief();\n const baseColor = colorThief.getColor(image);\n return baseColor;\n } catch {\n return [255, 255, 255];\n }\n};\n\n/**\n * Generates a complete color palette based on a primary color input.\n * The palette includes primary and secondary color scales with varying shades.\n *\n * @param primaryColor - The base RGB color array to generate the palette from\n * @returns A Palette object containing:\n * - BRAND colors (primary, light primary, and secondary)\n * - PRIMARY scale (7 shades from super dark to super light)\n * - SECONDARY scale (7 shades from super dark to super light)\n *\n * The function:\n * 1. Creates a 12-color scale from white to the primary color to black\n * 2. Generates a complementary secondary color by shifting the hue 180 degrees\n * 3. Creates another 12-color scale for the secondary color\n * 4. Maps specific positions from these scales to create the final palette structure\n */\nexport const generatePalette = (baseColor: RGBArray): Palette => {\n const primaryRgba = arrayToRgbString(baseColor);\n\n const primaryScaleFunc = getScale(\"#FFFFFF\", primaryRgba, \"#000000\");\n const primaryScale = Array.from({ length: 12 }, (_, i) => {\n const color = primaryScaleFunc(i / 11);\n return desaturate(color, 0.0085);\n });\n\n const adjustedPrimaryScale = primaryScale.map((color) =>\n saturate(adjustBrightnessForLuminance(color), 0.005)\n );\n\n const secondaryColor = toRgba(saturate(adjustHue(primaryRgba, 180), 1));\n\n const secondaryScaleFunc = getScale(\"#FFFFFF\", secondaryColor, \"#000000\");\n const secondaryScale = Array.from({ length: 12 }, (_, i) => {\n const color = secondaryScaleFunc(i / 11);\n return desaturate(color, 0.1);\n });\n\n const adjustedSecondaryScale = secondaryScale.map((color) =>\n desaturate(adjustBrightnessForLuminance(color), 0.22)\n );\n\n const brandPrimary = darkenForContrast(\n saturate(adjustedPrimaryScale[5], 0.115)\n );\n\n return {\n BASE_COLOR: arrayToRgbString(baseColor),\n BRAND: {\n PRIMARY: brandPrimary,\n PRIMARY_LIGHT: lightenWithinRange(brandPrimary, 0.25, {\n min: 0.6,\n max: 0.8,\n }),\n SECONDARY: desaturate(adjustedSecondaryScale[4], 0.02),\n },\n PRIMARY: {\n //backgrounds\n PRIMARY_SUPER_DARK: lightenWithinRange(\n lightenForContrast(primaryScale[9]),\n -0.6,\n {\n min: 0.0,\n max: 0.02,\n }\n ),\n PRIMARY_DARK: lightenWithinRange(\n lightenForContrast(primaryScale[8]),\n -0.4,\n {\n min: 0.01,\n max: 0.02,\n }\n ),\n //interactive components\n PRIMARY_MEDIUM: lightenWithinRange(adjustedPrimaryScale[7], -0.2, {\n min: 0.0,\n max: 0.11,\n }),\n //borders and seperators\n PRIMARY_MEDIUM_LIGHT: lightenWithinRange(\n desaturate(adjustedPrimaryScale[6], 0.1),\n 0.08\n ),\n //solid colors\n PRIMARY_LIGHT: lightenWithinRange(\n saturate(adjustedPrimaryScale[5], 0.1),\n 0.16\n ),\n //accessible text\n PRIMARY_LIGHTEST: lightenWithinRange(\n saturate(adjustedPrimaryScale[3], 0.2),\n 0.12,\n {\n min: 0.5,\n max: 0.9,\n }\n ),\n PRIMARY_SUPER_LIGHT: lightenWithinRange(adjustedPrimaryScale[1], 0.02, {\n min: 0.86,\n max: 0.98,\n }),\n },\n SECONDARY: {\n //backgrounds\n SECONDARY_SUPER_DARK: lightenWithinRange(\n lightenForContrast(secondaryScale[9]),\n -0.6,\n {\n min: 0.0,\n max: 0.02,\n }\n ),\n SECONDARY_DARK: lightenWithinRange(\n lightenForContrast(secondaryScale[8]),\n -0.4,\n {\n min: 0.01,\n max: 0.02,\n }\n ),\n // interactive components\n SECONDARY_MEDIUM: lightenWithinRange(adjustedSecondaryScale[7], -0.2, {\n min: 0.0,\n max: 0.11,\n }),\n //borders and seperators\n SECONDARY_MEDIUM_LIGHT: lightenWithinRange(\n adjustedSecondaryScale[6],\n 0.1\n ),\n //solid colors\n SECONDARY_LIGHT: lightenWithinRange(\n saturate(adjustedSecondaryScale[5], 0.1),\n 0.16\n ),\n //accessible text\n SECONDARY_LIGHTEST: lightenWithinRange(\n saturate(adjustedSecondaryScale[3], 0.2),\n 0.12,\n {\n min: 0.5,\n max: 0.9,\n }\n ),\n SECONDARY_SUPER_LIGHT: lightenWithinRange(\n adjustedSecondaryScale[0],\n 0.02,\n {\n min: 0.86,\n max: 0.98,\n }\n ),\n },\n };\n};\n\nconst lightenWithinRange = (\n color: string,\n amount: number,\n range: { min: number; max: number } = { min: 0.03, max: 0.97 }\n): string => {\n let adjustedColor = color;\n let currentLuminance = getLuminance(adjustedColor);\n\n // Validate range bounds\n if (range.min < 0) range.min = 0;\n if (range.max > 1) range.max = 1;\n if (range.min >= range.max) {\n throw new Error(\"Invalid range: min must be less than max\");\n }\n\n // For lightening (positive amount)\n if (amount > 0) {\n // Calculate how much we can lighten before hitting max\n const remainingLuminance = range.max - currentLuminance;\n if (remainingLuminance <= 0) return toRgba(adjustedColor);\n\n // Scale the amount based on remaining room to lighten\n const scaledAmount = amount * (remainingLuminance / (1 - currentLuminance));\n adjustedColor = lighten(adjustedColor, scaledAmount);\n }\n // For darkening (negative amount)\n else if (amount < 0) {\n // Calculate how much we can darken before hitting min\n const remainingLuminance = currentLuminance - range.min;\n if (remainingLuminance <= 0) return toRgba(adjustedColor);\n\n // Scale the amount based on remaining room to darken\n const scaledAmount = amount * (remainingLuminance / currentLuminance);\n adjustedColor = darken(adjustedColor, Math.abs(scaledAmount));\n }\n\n // Verify final luminance is within bounds\n const finalLuminance = getLuminance(adjustedColor);\n if (finalLuminance > range.max) {\n adjustedColor = adjustBrightnessWithinRange(adjustedColor, range);\n } else if (finalLuminance < range.min) {\n adjustedColor = adjustBrightnessWithinRange(adjustedColor, range);\n }\n\n return toRgba(adjustedColor);\n};\n\nconst adjustBrightnessWithinRange = (\n color: string,\n range: { min: number; max: number }\n): string => {\n let adjustedColor = color;\n let luminance = getLuminance(adjustedColor);\n\n // Darken if too bright\n while (luminance > range.max) {\n adjustedColor = darken(adjustedColor, 0.05);\n luminance = getLuminance(adjustedColor);\n }\n\n // Lighten if too dark\n while (luminance < range.min) {\n adjustedColor = lighten(adjustedColor, 0.05);\n luminance = getLuminance(adjustedColor);\n }\n\n return toRgba(adjustedColor);\n};\n\nconst lightenForContrast = (color: string): string => {\n while (hasBadContrast(color, \"readable\", COLORS.GRAYSCALE.GRAY_DARK)) {\n color = lighten(color, 0.01);\n }\n return toRgba(color);\n};\n\nconst darkenForContrast = (color: string): string => {\n while (hasBadContrast(COLORS.GRAYSCALE.GRAY_SUPER_LIGHT, \"readable\", color)) {\n color = darken(color, 0.01);\n }\n return toRgba(color);\n};\n\nconst adjustBrightnessForLuminance = (color: string): string => {\n let currentColor = color;\n let currentLuminance = getLuminance(toRgba(currentColor));\n let adjustmentAttempts = 0;\n const MAX_ATTEMPTS = 6;\n\n while (currentLuminance < 0.16 && adjustmentAttempts < MAX_ATTEMPTS) {\n adjustmentAttempts++;\n currentColor = lighten(currentColor, 0.1);\n currentLuminance = getLuminance(toRgba(currentColor));\n }\n\n while (currentLuminance > 0.6 && adjustmentAttempts < MAX_ATTEMPTS) {\n adjustmentAttempts++;\n currentColor = darken(currentColor, 0.1);\n currentLuminance = getLuminance(toRgba(currentColor));\n }\n\n return toRgba(currentColor);\n};\n","const isString = (x: unknown): boolean =>\n typeof x === \"string\" || x instanceof String;\n\nexport function csx(...classnames: unknown[]): string {\n return classnames.filter(isString).join(\" \");\n}\n\n/**\n * [isUrlExternal] - determine if passed absolute url is external to the current domain.\n */\nexport const isUrlExternal = (url: string) => {\n return url.startsWith(\"http\");\n};\n\n/**\n * Handles internal navigation clicks by preventing default browser behavior and\n * programmatically updating the URL and history state.\n *\n * @param e - The click event from the anchor element\n * @param to - The destination path to navigate to\n *\n * @remarks\n * - Converts relative paths to absolute by prepending \"/\" if needed\n * - Updates browser history using pushState and dispatches a popstate event\n */\nexport const handleInternalNavigation = (\n e: React.MouseEvent<HTMLAnchorElement>,\n to: string\n) => {\n // Don't handle navigation if modifier keys are pressed\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) {\n return;\n }\n\n // Don't handle middle clicks or right clicks\n if (e.button && e.button !== 0) {\n return;\n }\n\n e.preventDefault();\n\n // Handle relative paths\n const resolvedPath = to.startsWith(\"/\") ? to : `/${to}`;\n window.history.pushState({}, \"\", resolvedPath);\n window.dispatchEvent(new PopStateEvent(\"popstate\"));\n};\n"],"names":["t","r","n","o","e","i","u","a","c","f","s","h","v","l","g","p","b","m","d","w","DEFAULT_BACKGROUND","DEFAULT_PALETTE","COLORS.BRAND","COLORS.GRAYSCALE","arrayToRgbString","rgb","opacity","transparentize","color","amount","toRgba","_transparentize","saturate","_saturate","desaturate","_desaturate","getDominantColor","image","ColorThief","generatePalette","baseColor","primaryRgba","primaryScaleFunc","getScale","primaryScale","_","adjustedPrimaryScale","adjustBrightnessForLuminance","secondaryColor","adjustHue","secondaryScaleFunc","secondaryScale","adjustedSecondaryScale","brandPrimary","darkenForContrast","lightenWithinRange","lightenForContrast","range","adjustedColor","currentLuminance","getLuminance","remainingLuminance","scaledAmount","lighten","darken","finalLuminance","adjustBrightnessWithinRange","luminance","hasBadContrast","currentColor","adjustmentAttempts","MAX_ATTEMPTS","isString","x","csx","classnames","isUrlExternal","url","handleInternalNavigation","to","resolvedPath"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,4 +1,4 @@
1
- import { B as z, G as I } from "./colors-Dwh4VIMR.mjs";
1
+ import { B as z, G as I } from "./colors-Bz89s5kE.mjs";
2
2
  import { toRgba as M, transparentize as J, saturate as Q, desaturate as V, getScale as j, adjustHue as Z, getLuminance as T, lighten as H, darken as U, hasBadContrast as W } from "color2k";
3
3
  var x = function(n, o) {
4
4
  return n < o ? -1 : n > o ? 1 : 0;
@@ -439,4 +439,4 @@ export {
439
439
  C as s,
440
440
  ut as t
441
441
  };
442
- //# sourceMappingURL=utils-CJd9wFM9.mjs.map
442
+ //# sourceMappingURL=utils-pGAnEEqC.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils-CJd9wFM9.mjs","sources":["../node_modules/colorthief/dist/color-thief.mjs","../src/utils/color.ts","../src/utils/utils.ts"],"sourcesContent":["var t=function(t,r){return t<r?-1:t>r?1:0},r=function(t){return t.reduce(function(t,r){return t+r},0)},n=/*#__PURE__*/function(){function t(t){this.colors=t}var r=t.prototype;return r.palette=function(){return this.colors},r.map=function(t){return t},t}(),o=function(){function o(t,r,n){return(t<<10)+(r<<5)+n}function e(t){var r=[],n=!1;function o(){r.sort(t),n=!0}return{push:function(t){r.push(t),n=!1},peek:function(t){return n||o(),void 0===t&&(t=r.length-1),r[t]},pop:function(){return n||o(),r.pop()},size:function(){return r.length},map:function(t){return r.map(t)},debug:function(){return n||o(),r}}}function i(t,r,n,o,e,i,u){var a=this;a.r1=t,a.r2=r,a.g1=n,a.g2=o,a.b1=e,a.b2=i,a.histo=u}function u(){this.vboxes=new e(function(r,n){return t(r.vbox.count()*r.vbox.volume(),n.vbox.count()*n.vbox.volume())})}function a(t,r){if(r.count()){var n=r.r2-r.r1+1,e=r.g2-r.g1+1,i=Math.max.apply(null,[n,e,r.b2-r.b1+1]);if(1==r.count())return[r.copy()];var u,a,c,f,s=0,h=[],v=[];if(i==n)for(u=r.r1;u<=r.r2;u++){for(f=0,a=r.g1;a<=r.g2;a++)for(c=r.b1;c<=r.b2;c++)f+=t[o(u,a,c)]||0;h[u]=s+=f}else if(i==e)for(u=r.g1;u<=r.g2;u++){for(f=0,a=r.r1;a<=r.r2;a++)for(c=r.b1;c<=r.b2;c++)f+=t[o(a,u,c)]||0;h[u]=s+=f}else for(u=r.b1;u<=r.b2;u++){for(f=0,a=r.r1;a<=r.r2;a++)for(c=r.g1;c<=r.g2;c++)f+=t[o(a,c,u)]||0;h[u]=s+=f}return h.forEach(function(t,r){v[r]=s-t}),function(t){var n,o,e,i,a,c=t+\"1\",f=t+\"2\",l=0;for(u=r[c];u<=r[f];u++)if(h[u]>s/2){for(e=r.copy(),i=r.copy(),a=(n=u-r[c])<=(o=r[f]-u)?Math.min(r[f]-1,~~(u+o/2)):Math.max(r[c],~~(u-1-n/2));!h[a];)a++;for(l=v[a];!l&&h[a-1];)l=v[--a];return e[f]=a,i[c]=e[f]+1,[e,i]}}(i==n?\"r\":i==e?\"g\":\"b\")}}return i.prototype={volume:function(t){var r=this;return r._volume&&!t||(r._volume=(r.r2-r.r1+1)*(r.g2-r.g1+1)*(r.b2-r.b1+1)),r._volume},count:function(t){var r=this,n=r.histo;if(!r._count_set||t){var e,i,u,a=0;for(e=r.r1;e<=r.r2;e++)for(i=r.g1;i<=r.g2;i++)for(u=r.b1;u<=r.b2;u++)a+=n[o(e,i,u)]||0;r._count=a,r._count_set=!0}return r._count},copy:function(){var t=this;return new i(t.r1,t.r2,t.g1,t.g2,t.b1,t.b2,t.histo)},avg:function(t){var r=this,n=r.histo;if(!r._avg||t){var e,i,u,a,c=0,f=0,s=0,h=0;if(r.r1===r.r2&&r.g1===r.g2&&r.b1===r.b2)r._avg=[r.r1<<3,r.g1<<3,r.b1<<3];else{for(i=r.r1;i<=r.r2;i++)for(u=r.g1;u<=r.g2;u++)for(a=r.b1;a<=r.b2;a++)c+=e=n[o(i,u,a)]||0,f+=e*(i+.5)*8,s+=e*(u+.5)*8,h+=e*(a+.5)*8;r._avg=c?[~~(f/c),~~(s/c),~~(h/c)]:[~~(8*(r.r1+r.r2+1)/2),~~(8*(r.g1+r.g2+1)/2),~~(8*(r.b1+r.b2+1)/2)]}}return r._avg},contains:function(t){var r=this,n=t[0]>>3;return gval=t[1]>>3,bval=t[2]>>3,n>=r.r1&&n<=r.r2&&gval>=r.g1&&gval<=r.g2&&bval>=r.b1&&bval<=r.b2}},u.prototype={push:function(t){this.vboxes.push({vbox:t,color:t.avg()})},palette:function(){return this.vboxes.map(function(t){return t.color})},size:function(){return this.vboxes.size()},map:function(t){for(var r=this.vboxes,n=0;n<r.size();n++)if(r.peek(n).vbox.contains(t))return r.peek(n).color;return this.nearest(t)},nearest:function(t){for(var r,n,o,e=this.vboxes,i=0;i<e.size();i++)((n=Math.sqrt(Math.pow(t[0]-e.peek(i).color[0],2)+Math.pow(t[1]-e.peek(i).color[1],2)+Math.pow(t[2]-e.peek(i).color[2],2)))<r||void 0===r)&&(r=n,o=e.peek(i).color);return o},forcebw:function(){var n=this.vboxes;n.sort(function(n,o){return t(r(n.color),r(o.color))});var o=n[0].color;o[0]<5&&o[1]<5&&o[2]<5&&(n[0].color=[0,0,0]);var e=n.length-1,i=n[e].color;i[0]>251&&i[1]>251&&i[2]>251&&(n[e].color=[255,255,255])}},{quantize:function(r,c){if(!Number.isInteger(c)||c<1||c>256)throw new Error(\"Invalid maximum color count. It must be an integer between 1 and 256.\");if(!r.length||c<2||c>256)return!1;if(!r.length||c<2||c>256)return!1;for(var f=[],s=new Set,h=0;h<r.length;h++){var v=r[h],l=v.join(\",\");s.has(l)||(s.add(l),f.push(v))}if(f.length<=c)return new n(f);var g=function(t){var r,n=new Array(32768);return t.forEach(function(t){r=o(t[0]>>3,t[1]>>3,t[2]>>3),n[r]=(n[r]||0)+1}),n}(r);g.forEach(function(){});var p=function(t,r){var n,o,e,u=1e6,a=0,c=1e6,f=0,s=1e6,h=0;return t.forEach(function(t){(n=t[0]>>3)<u?u=n:n>a&&(a=n),(o=t[1]>>3)<c?c=o:o>f&&(f=o),(e=t[2]>>3)<s?s=e:e>h&&(h=e)}),new i(u,a,c,f,s,h,r)}(r,g),b=new e(function(r,n){return t(r.count(),n.count())});function m(t,r){for(var n,o=t.size(),e=0;e<1e3;){if(o>=r)return;if(e++>1e3)return;if((n=t.pop()).count()){var i=a(g,n),u=i[0],c=i[1];if(!u)return;t.push(u),c&&(t.push(c),o++)}else t.push(n),e++}}b.push(p),m(b,.75*c);for(var d=new e(function(r,n){return t(r.count()*r.volume(),n.count()*n.volume())});b.size();)d.push(b.pop());m(d,c);for(var w=new u;d.size();)w.push(d.pop());return w}}}().quantize,e=function(t){this.canvas=document.createElement(\"canvas\"),this.context=this.canvas.getContext(\"2d\"),this.width=this.canvas.width=t.naturalWidth,this.height=this.canvas.height=t.naturalHeight,this.context.drawImage(t,0,0,this.width,this.height)};e.prototype.getImageData=function(){return this.context.getImageData(0,0,this.width,this.height)};var u=function(){};u.prototype.getColor=function(t,r){return void 0===r&&(r=10),this.getPalette(t,5,r)[0]},u.prototype.getPalette=function(t,r,n){var i=function(t){var r=t.colorCount,n=t.quality;if(void 0!==r&&Number.isInteger(r)){if(1===r)throw new Error(\"colorCount should be between 2 and 20. To get one color, call getColor() instead of getPalette()\");r=Math.max(r,2),r=Math.min(r,20)}else r=10;return(void 0===n||!Number.isInteger(n)||n<1)&&(n=10),{colorCount:r,quality:n}}({colorCount:r,quality:n}),u=new e(t),a=function(t,r,n){for(var o,e,i,u,a,c=t,f=[],s=0;s<r;s+=n)e=c[0+(o=4*s)],i=c[o+1],u=c[o+2],(void 0===(a=c[o+3])||a>=125)&&(e>250&&i>250&&u>250||f.push([e,i,u]));return f}(u.getImageData().data,u.width*u.height,i.quality),c=o(a,i.colorCount);return c?c.palette():null},u.prototype.getColorFromUrl=function(t,r,n){var o=this,e=document.createElement(\"img\");e.addEventListener(\"load\",function(){var i=o.getPalette(e,5,n);r(i[0],t)}),e.src=t},u.prototype.getImageData=function(t,r){var n=new XMLHttpRequest;n.open(\"GET\",t,!0),n.responseType=\"arraybuffer\",n.onload=function(){if(200==this.status){var t=new Uint8Array(this.response);i=t.length;for(var n=new Array(i),o=0;o<t.length;o++)n[o]=String.fromCharCode(t[o]);var e=n.join(\"\"),u=window.btoa(e);r(\"data:image/png;base64,\"+u)}},n.send()},u.prototype.getColorAsync=function(t,r,n){var o=this;this.getImageData(t,function(t){var e=document.createElement(\"img\");e.addEventListener(\"load\",function(){var t=o.getPalette(e,5,n);r(t[0],this)}),e.src=t})};export{u as default};\n","import { COLORS } from \"../constants\";\nimport {\n adjustHue,\n getScale,\n saturate as _saturate,\n transparentize as _transparentize,\n desaturate as _desaturate,\n hasBadContrast,\n getLuminance,\n lighten,\n darken,\n toRgba,\n} from \"color2k\";\nimport ColorThief from \"colorthief\";\n\nexport type RGBArray = [number, number, number];\n\nexport type Palette = {\n BASE_COLOR: string;\n BRAND: {\n PRIMARY: string;\n PRIMARY_LIGHT: string;\n SECONDARY: string;\n };\n PRIMARY: {\n //backgrounds\n PRIMARY_SUPER_DARK: string;\n PRIMARY_DARK: string;\n //interactive components\n PRIMARY_MEDIUM: string;\n //borders and seperators\n PRIMARY_MEDIUM_LIGHT: string;\n //solid colors\n PRIMARY_LIGHT: string;\n //accessible text\n PRIMARY_LIGHTEST: string;\n PRIMARY_SUPER_LIGHT: string;\n };\n SECONDARY: {\n //backgrounds\n SECONDARY_SUPER_DARK: string;\n SECONDARY_DARK: string;\n //interactive components\n SECONDARY_MEDIUM: string;\n //borders and seperators\n SECONDARY_MEDIUM_LIGHT: string;\n //solid colors\n SECONDARY_LIGHT: string;\n //accessible text\n SECONDARY_LIGHTEST: string;\n SECONDARY_SUPER_LIGHT: string;\n };\n};\n\nexport const DEFAULT_BACKGROUND = \"rgba(83, 82, 83, 1)\";\n\nexport const DEFAULT_PALETTE: Palette = {\n BASE_COLOR: DEFAULT_BACKGROUND,\n BRAND: {\n PRIMARY: COLORS.BRAND.PRIMARY,\n PRIMARY_LIGHT: COLORS.BRAND.PRIMARY_LIGHT,\n SECONDARY: COLORS.BRAND.SECONDARY,\n },\n PRIMARY: {\n PRIMARY_SUPER_DARK: COLORS.GRAYSCALE.GRAY_SUPER_DARK,\n PRIMARY_DARK: COLORS.GRAYSCALE.GRAY_DARK,\n PRIMARY_MEDIUM: COLORS.GRAYSCALE.GRAY_MEDIUM,\n PRIMARY_MEDIUM_LIGHT: COLORS.GRAYSCALE.GRAY_MEDIUM_LIGHT,\n PRIMARY_LIGHT: COLORS.GRAYSCALE.GRAY_LIGHT,\n PRIMARY_LIGHTEST: COLORS.GRAYSCALE.GRAY_LIGHTEST,\n PRIMARY_SUPER_LIGHT: COLORS.GRAYSCALE.GRAY_SUPER_LIGHT,\n },\n SECONDARY: {\n SECONDARY_SUPER_DARK: COLORS.GRAYSCALE.GRAY_SUPER_DARK,\n SECONDARY_DARK: COLORS.GRAYSCALE.GRAY_DARK,\n SECONDARY_MEDIUM: COLORS.GRAYSCALE.GRAY_MEDIUM,\n SECONDARY_MEDIUM_LIGHT: COLORS.GRAYSCALE.GRAY_MEDIUM_LIGHT,\n SECONDARY_LIGHT: COLORS.GRAYSCALE.GRAY_LIGHT,\n SECONDARY_LIGHTEST: COLORS.GRAYSCALE.GRAY_LIGHTEST,\n SECONDARY_SUPER_LIGHT: COLORS.GRAYSCALE.GRAY_SUPER_LIGHT,\n },\n // Success, Warning & Danger palettes go here...\n};\n\n/**\n * Converts an RGB array to a CSS string representation.\n * @param rgb - The RGB array to convert.\n * @param opacity - Optional opacity value.\n * @returns A CSS string representation of the RGB array, using `rgb()`, or `rgba()` if an opacity value is provided.\n */\nexport const arrayToRgbString = (rgb: RGBArray, opacity?: number): string => {\n return opacity === undefined\n ? `rgb(${rgb[0]}, ${rgb[1]}, ${rgb[2]})`\n : `rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, ${opacity})`;\n};\n\n/**\n * Transparentizes an input color.\n *\n * @param color - The color string to transparentize.\n * @param amount - The amount to increase the opacity of the color by, given as a decimal between 0 and 1.\n * @returns An RGBA color string.\n */\nexport const transparentize = (color: string, amount: number): string => {\n return toRgba(_transparentize(color, amount));\n};\n\n/**\n * Saturates a color.\n *\n * @param color - Input color\n * @param amount - The amount to saturate, given as a decimal between 0 and 1\n * @returns An RGBA color string.\n */\nexport const saturate = (color: string, amount: number): string => {\n return toRgba(_saturate(color, amount));\n};\n\n/**\n * Desaturates a color.\n *\n * @param color - Input color\n * @param amount - The amount to desaturate, given as a decimal between 0 and 1\n * @returns An RGBA color string.\n */\nexport const desaturate = (color: string, amount: number): string => {\n return toRgba(_desaturate(color, amount));\n};\n\n/**\n * Gets the dominant color of an image. Avoids issues with low contrast colors.\n * @reference https://github.com/lokesh/color-thief/issues/40\n * @param image - The image to get the dominant color from.\n * @returns An RGB array.\n */\nexport const getDominantColor = (image: HTMLImageElement): RGBArray => {\n try {\n const colorThief = new ColorThief();\n const baseColor = colorThief.getColor(image);\n return baseColor;\n } catch {\n return [255, 255, 255];\n }\n};\n\n/**\n * Generates a complete color palette based on a primary color input.\n * The palette includes primary and secondary color scales with varying shades.\n *\n * @param primaryColor - The base RGB color array to generate the palette from\n * @returns A Palette object containing:\n * - BRAND colors (primary, light primary, and secondary)\n * - PRIMARY scale (7 shades from super dark to super light)\n * - SECONDARY scale (7 shades from super dark to super light)\n *\n * The function:\n * 1. Creates a 12-color scale from white to the primary color to black\n * 2. Generates a complementary secondary color by shifting the hue 180 degrees\n * 3. Creates another 12-color scale for the secondary color\n * 4. Maps specific positions from these scales to create the final palette structure\n */\nexport const generatePalette = (baseColor: RGBArray): Palette => {\n const primaryRgba = arrayToRgbString(baseColor);\n\n const primaryScaleFunc = getScale(\"#FFFFFF\", primaryRgba, \"#000000\");\n const primaryScale = Array.from({ length: 12 }, (_, i) => {\n const color = primaryScaleFunc(i / 11);\n return desaturate(color, 0.0085);\n });\n\n const adjustedPrimaryScale = primaryScale.map((color) =>\n saturate(adjustBrightnessForLuminance(color), 0.005)\n );\n\n const secondaryColor = toRgba(saturate(adjustHue(primaryRgba, 180), 1));\n\n const secondaryScaleFunc = getScale(\"#FFFFFF\", secondaryColor, \"#000000\");\n const secondaryScale = Array.from({ length: 12 }, (_, i) => {\n const color = secondaryScaleFunc(i / 11);\n return desaturate(color, 0.1);\n });\n\n const adjustedSecondaryScale = secondaryScale.map((color) =>\n desaturate(adjustBrightnessForLuminance(color), 0.22)\n );\n\n const brandPrimary = darkenForContrast(\n saturate(adjustedPrimaryScale[5], 0.115)\n );\n\n return {\n BASE_COLOR: arrayToRgbString(baseColor),\n BRAND: {\n PRIMARY: brandPrimary,\n PRIMARY_LIGHT: lightenWithinRange(brandPrimary, 0.25, {\n min: 0.6,\n max: 0.8,\n }),\n SECONDARY: desaturate(adjustedSecondaryScale[4], 0.02),\n },\n PRIMARY: {\n //backgrounds\n PRIMARY_SUPER_DARK: lightenWithinRange(\n lightenForContrast(primaryScale[9]),\n -0.6,\n {\n min: 0.0,\n max: 0.02,\n }\n ),\n PRIMARY_DARK: lightenWithinRange(\n lightenForContrast(primaryScale[8]),\n -0.4,\n {\n min: 0.01,\n max: 0.02,\n }\n ),\n //interactive components\n PRIMARY_MEDIUM: lightenWithinRange(adjustedPrimaryScale[7], -0.2, {\n min: 0.0,\n max: 0.11,\n }),\n //borders and seperators\n PRIMARY_MEDIUM_LIGHT: lightenWithinRange(\n desaturate(adjustedPrimaryScale[6], 0.1),\n 0.08\n ),\n //solid colors\n PRIMARY_LIGHT: lightenWithinRange(\n saturate(adjustedPrimaryScale[5], 0.1),\n 0.16\n ),\n //accessible text\n PRIMARY_LIGHTEST: lightenWithinRange(\n saturate(adjustedPrimaryScale[3], 0.2),\n 0.12,\n {\n min: 0.5,\n max: 0.9,\n }\n ),\n PRIMARY_SUPER_LIGHT: lightenWithinRange(adjustedPrimaryScale[1], 0.02, {\n min: 0.86,\n max: 0.98,\n }),\n },\n SECONDARY: {\n //backgrounds\n SECONDARY_SUPER_DARK: lightenWithinRange(\n lightenForContrast(secondaryScale[9]),\n -0.6,\n {\n min: 0.0,\n max: 0.02,\n }\n ),\n SECONDARY_DARK: lightenWithinRange(\n lightenForContrast(secondaryScale[8]),\n -0.4,\n {\n min: 0.01,\n max: 0.02,\n }\n ),\n // interactive components\n SECONDARY_MEDIUM: lightenWithinRange(adjustedSecondaryScale[7], -0.2, {\n min: 0.0,\n max: 0.11,\n }),\n //borders and seperators\n SECONDARY_MEDIUM_LIGHT: lightenWithinRange(\n adjustedSecondaryScale[6],\n 0.1\n ),\n //solid colors\n SECONDARY_LIGHT: lightenWithinRange(\n saturate(adjustedSecondaryScale[5], 0.1),\n 0.16\n ),\n //accessible text\n SECONDARY_LIGHTEST: lightenWithinRange(\n saturate(adjustedSecondaryScale[3], 0.2),\n 0.12,\n {\n min: 0.5,\n max: 0.9,\n }\n ),\n SECONDARY_SUPER_LIGHT: lightenWithinRange(\n adjustedSecondaryScale[0],\n 0.02,\n {\n min: 0.86,\n max: 0.98,\n }\n ),\n },\n };\n};\n\nconst lightenWithinRange = (\n color: string,\n amount: number,\n range: { min: number; max: number } = { min: 0.03, max: 0.97 }\n): string => {\n let adjustedColor = color;\n let currentLuminance = getLuminance(adjustedColor);\n\n // Validate range bounds\n if (range.min < 0) range.min = 0;\n if (range.max > 1) range.max = 1;\n if (range.min >= range.max) {\n throw new Error(\"Invalid range: min must be less than max\");\n }\n\n // For lightening (positive amount)\n if (amount > 0) {\n // Calculate how much we can lighten before hitting max\n const remainingLuminance = range.max - currentLuminance;\n if (remainingLuminance <= 0) return toRgba(adjustedColor);\n\n // Scale the amount based on remaining room to lighten\n const scaledAmount = amount * (remainingLuminance / (1 - currentLuminance));\n adjustedColor = lighten(adjustedColor, scaledAmount);\n }\n // For darkening (negative amount)\n else if (amount < 0) {\n // Calculate how much we can darken before hitting min\n const remainingLuminance = currentLuminance - range.min;\n if (remainingLuminance <= 0) return toRgba(adjustedColor);\n\n // Scale the amount based on remaining room to darken\n const scaledAmount = amount * (remainingLuminance / currentLuminance);\n adjustedColor = darken(adjustedColor, Math.abs(scaledAmount));\n }\n\n // Verify final luminance is within bounds\n const finalLuminance = getLuminance(adjustedColor);\n if (finalLuminance > range.max) {\n adjustedColor = adjustBrightnessWithinRange(adjustedColor, range);\n } else if (finalLuminance < range.min) {\n adjustedColor = adjustBrightnessWithinRange(adjustedColor, range);\n }\n\n return toRgba(adjustedColor);\n};\n\nconst adjustBrightnessWithinRange = (\n color: string,\n range: { min: number; max: number }\n): string => {\n let adjustedColor = color;\n let luminance = getLuminance(adjustedColor);\n\n // Darken if too bright\n while (luminance > range.max) {\n adjustedColor = darken(adjustedColor, 0.05);\n luminance = getLuminance(adjustedColor);\n }\n\n // Lighten if too dark\n while (luminance < range.min) {\n adjustedColor = lighten(adjustedColor, 0.05);\n luminance = getLuminance(adjustedColor);\n }\n\n return toRgba(adjustedColor);\n};\n\nconst lightenForContrast = (color: string): string => {\n while (hasBadContrast(color, \"readable\", COLORS.GRAYSCALE.GRAY_DARK)) {\n color = lighten(color, 0.01);\n }\n return toRgba(color);\n};\n\nconst darkenForContrast = (color: string): string => {\n while (hasBadContrast(COLORS.GRAYSCALE.GRAY_SUPER_LIGHT, \"readable\", color)) {\n color = darken(color, 0.01);\n }\n return toRgba(color);\n};\n\nconst adjustBrightnessForLuminance = (color: string): string => {\n let currentColor = color;\n let currentLuminance = getLuminance(toRgba(currentColor));\n let adjustmentAttempts = 0;\n const MAX_ATTEMPTS = 6;\n\n while (currentLuminance < 0.16 && adjustmentAttempts < MAX_ATTEMPTS) {\n adjustmentAttempts++;\n currentColor = lighten(currentColor, 0.1);\n currentLuminance = getLuminance(toRgba(currentColor));\n }\n\n while (currentLuminance > 0.6 && adjustmentAttempts < MAX_ATTEMPTS) {\n adjustmentAttempts++;\n currentColor = darken(currentColor, 0.1);\n currentLuminance = getLuminance(toRgba(currentColor));\n }\n\n return toRgba(currentColor);\n};\n","const isString = (x: unknown): boolean =>\n typeof x === \"string\" || x instanceof String;\n\nexport function csx(...classnames: unknown[]): string {\n return classnames.filter(isString).join(\" \");\n}\n\n/**\n * [isUrlExternal] - determine if passed absolute url is external to the current domain.\n */\nexport const isUrlExternal = (url: string) => {\n return url.startsWith(\"http\");\n};\n\n/**\n * Handles internal navigation clicks by preventing default browser behavior and\n * programmatically updating the URL and history state.\n *\n * @param e - The click event from the anchor element\n * @param to - The destination path to navigate to\n *\n * @remarks\n * - Converts relative paths to absolute by prepending \"/\" if needed\n * - Updates browser history using pushState and dispatches a popstate event\n */\nexport const handleInternalNavigation = (\n e: React.MouseEvent<HTMLAnchorElement>,\n to: string\n) => {\n // Don't handle navigation if modifier keys are pressed\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) {\n return;\n }\n\n // Don't handle middle clicks or right clicks\n if (e.button && e.button !== 0) {\n return;\n }\n\n e.preventDefault();\n\n // Handle relative paths\n const resolvedPath = to.startsWith(\"/\") ? to : `/${to}`;\n window.history.pushState({}, \"\", resolvedPath);\n window.dispatchEvent(new PopStateEvent(\"popstate\"));\n};\n"],"names":["t","r","n","o","e","i","u","a","c","f","s","h","v","l","g","p","b","m","d","w","DEFAULT_BACKGROUND","DEFAULT_PALETTE","COLORS.BRAND","COLORS.GRAYSCALE","arrayToRgbString","rgb","opacity","transparentize","color","amount","toRgba","_transparentize","saturate","_saturate","desaturate","_desaturate","getDominantColor","image","ColorThief","generatePalette","baseColor","primaryRgba","primaryScaleFunc","getScale","primaryScale","_","adjustedPrimaryScale","adjustBrightnessForLuminance","secondaryColor","adjustHue","secondaryScaleFunc","secondaryScale","adjustedSecondaryScale","brandPrimary","darkenForContrast","lightenWithinRange","lightenForContrast","range","adjustedColor","currentLuminance","getLuminance","remainingLuminance","scaledAmount","lighten","darken","finalLuminance","adjustBrightnessWithinRange","luminance","hasBadContrast","currentColor","adjustmentAttempts","MAX_ATTEMPTS","isString","x","csx","classnames","isUrlExternal","url","handleInternalNavigation","to","resolvedPath"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"utils-pGAnEEqC.mjs","sources":["../node_modules/colorthief/dist/color-thief.mjs","../src/utils/color.ts","../src/utils/utils.ts"],"sourcesContent":["var t=function(t,r){return t<r?-1:t>r?1:0},r=function(t){return t.reduce(function(t,r){return t+r},0)},n=/*#__PURE__*/function(){function t(t){this.colors=t}var r=t.prototype;return r.palette=function(){return this.colors},r.map=function(t){return t},t}(),o=function(){function o(t,r,n){return(t<<10)+(r<<5)+n}function e(t){var r=[],n=!1;function o(){r.sort(t),n=!0}return{push:function(t){r.push(t),n=!1},peek:function(t){return n||o(),void 0===t&&(t=r.length-1),r[t]},pop:function(){return n||o(),r.pop()},size:function(){return r.length},map:function(t){return r.map(t)},debug:function(){return n||o(),r}}}function i(t,r,n,o,e,i,u){var a=this;a.r1=t,a.r2=r,a.g1=n,a.g2=o,a.b1=e,a.b2=i,a.histo=u}function u(){this.vboxes=new e(function(r,n){return t(r.vbox.count()*r.vbox.volume(),n.vbox.count()*n.vbox.volume())})}function a(t,r){if(r.count()){var n=r.r2-r.r1+1,e=r.g2-r.g1+1,i=Math.max.apply(null,[n,e,r.b2-r.b1+1]);if(1==r.count())return[r.copy()];var u,a,c,f,s=0,h=[],v=[];if(i==n)for(u=r.r1;u<=r.r2;u++){for(f=0,a=r.g1;a<=r.g2;a++)for(c=r.b1;c<=r.b2;c++)f+=t[o(u,a,c)]||0;h[u]=s+=f}else if(i==e)for(u=r.g1;u<=r.g2;u++){for(f=0,a=r.r1;a<=r.r2;a++)for(c=r.b1;c<=r.b2;c++)f+=t[o(a,u,c)]||0;h[u]=s+=f}else for(u=r.b1;u<=r.b2;u++){for(f=0,a=r.r1;a<=r.r2;a++)for(c=r.g1;c<=r.g2;c++)f+=t[o(a,c,u)]||0;h[u]=s+=f}return h.forEach(function(t,r){v[r]=s-t}),function(t){var n,o,e,i,a,c=t+\"1\",f=t+\"2\",l=0;for(u=r[c];u<=r[f];u++)if(h[u]>s/2){for(e=r.copy(),i=r.copy(),a=(n=u-r[c])<=(o=r[f]-u)?Math.min(r[f]-1,~~(u+o/2)):Math.max(r[c],~~(u-1-n/2));!h[a];)a++;for(l=v[a];!l&&h[a-1];)l=v[--a];return e[f]=a,i[c]=e[f]+1,[e,i]}}(i==n?\"r\":i==e?\"g\":\"b\")}}return i.prototype={volume:function(t){var r=this;return r._volume&&!t||(r._volume=(r.r2-r.r1+1)*(r.g2-r.g1+1)*(r.b2-r.b1+1)),r._volume},count:function(t){var r=this,n=r.histo;if(!r._count_set||t){var e,i,u,a=0;for(e=r.r1;e<=r.r2;e++)for(i=r.g1;i<=r.g2;i++)for(u=r.b1;u<=r.b2;u++)a+=n[o(e,i,u)]||0;r._count=a,r._count_set=!0}return r._count},copy:function(){var t=this;return new i(t.r1,t.r2,t.g1,t.g2,t.b1,t.b2,t.histo)},avg:function(t){var r=this,n=r.histo;if(!r._avg||t){var e,i,u,a,c=0,f=0,s=0,h=0;if(r.r1===r.r2&&r.g1===r.g2&&r.b1===r.b2)r._avg=[r.r1<<3,r.g1<<3,r.b1<<3];else{for(i=r.r1;i<=r.r2;i++)for(u=r.g1;u<=r.g2;u++)for(a=r.b1;a<=r.b2;a++)c+=e=n[o(i,u,a)]||0,f+=e*(i+.5)*8,s+=e*(u+.5)*8,h+=e*(a+.5)*8;r._avg=c?[~~(f/c),~~(s/c),~~(h/c)]:[~~(8*(r.r1+r.r2+1)/2),~~(8*(r.g1+r.g2+1)/2),~~(8*(r.b1+r.b2+1)/2)]}}return r._avg},contains:function(t){var r=this,n=t[0]>>3;return gval=t[1]>>3,bval=t[2]>>3,n>=r.r1&&n<=r.r2&&gval>=r.g1&&gval<=r.g2&&bval>=r.b1&&bval<=r.b2}},u.prototype={push:function(t){this.vboxes.push({vbox:t,color:t.avg()})},palette:function(){return this.vboxes.map(function(t){return t.color})},size:function(){return this.vboxes.size()},map:function(t){for(var r=this.vboxes,n=0;n<r.size();n++)if(r.peek(n).vbox.contains(t))return r.peek(n).color;return this.nearest(t)},nearest:function(t){for(var r,n,o,e=this.vboxes,i=0;i<e.size();i++)((n=Math.sqrt(Math.pow(t[0]-e.peek(i).color[0],2)+Math.pow(t[1]-e.peek(i).color[1],2)+Math.pow(t[2]-e.peek(i).color[2],2)))<r||void 0===r)&&(r=n,o=e.peek(i).color);return o},forcebw:function(){var n=this.vboxes;n.sort(function(n,o){return t(r(n.color),r(o.color))});var o=n[0].color;o[0]<5&&o[1]<5&&o[2]<5&&(n[0].color=[0,0,0]);var e=n.length-1,i=n[e].color;i[0]>251&&i[1]>251&&i[2]>251&&(n[e].color=[255,255,255])}},{quantize:function(r,c){if(!Number.isInteger(c)||c<1||c>256)throw new Error(\"Invalid maximum color count. It must be an integer between 1 and 256.\");if(!r.length||c<2||c>256)return!1;if(!r.length||c<2||c>256)return!1;for(var f=[],s=new Set,h=0;h<r.length;h++){var v=r[h],l=v.join(\",\");s.has(l)||(s.add(l),f.push(v))}if(f.length<=c)return new n(f);var g=function(t){var r,n=new Array(32768);return t.forEach(function(t){r=o(t[0]>>3,t[1]>>3,t[2]>>3),n[r]=(n[r]||0)+1}),n}(r);g.forEach(function(){});var p=function(t,r){var n,o,e,u=1e6,a=0,c=1e6,f=0,s=1e6,h=0;return t.forEach(function(t){(n=t[0]>>3)<u?u=n:n>a&&(a=n),(o=t[1]>>3)<c?c=o:o>f&&(f=o),(e=t[2]>>3)<s?s=e:e>h&&(h=e)}),new i(u,a,c,f,s,h,r)}(r,g),b=new e(function(r,n){return t(r.count(),n.count())});function m(t,r){for(var n,o=t.size(),e=0;e<1e3;){if(o>=r)return;if(e++>1e3)return;if((n=t.pop()).count()){var i=a(g,n),u=i[0],c=i[1];if(!u)return;t.push(u),c&&(t.push(c),o++)}else t.push(n),e++}}b.push(p),m(b,.75*c);for(var d=new e(function(r,n){return t(r.count()*r.volume(),n.count()*n.volume())});b.size();)d.push(b.pop());m(d,c);for(var w=new u;d.size();)w.push(d.pop());return w}}}().quantize,e=function(t){this.canvas=document.createElement(\"canvas\"),this.context=this.canvas.getContext(\"2d\"),this.width=this.canvas.width=t.naturalWidth,this.height=this.canvas.height=t.naturalHeight,this.context.drawImage(t,0,0,this.width,this.height)};e.prototype.getImageData=function(){return this.context.getImageData(0,0,this.width,this.height)};var u=function(){};u.prototype.getColor=function(t,r){return void 0===r&&(r=10),this.getPalette(t,5,r)[0]},u.prototype.getPalette=function(t,r,n){var i=function(t){var r=t.colorCount,n=t.quality;if(void 0!==r&&Number.isInteger(r)){if(1===r)throw new Error(\"colorCount should be between 2 and 20. To get one color, call getColor() instead of getPalette()\");r=Math.max(r,2),r=Math.min(r,20)}else r=10;return(void 0===n||!Number.isInteger(n)||n<1)&&(n=10),{colorCount:r,quality:n}}({colorCount:r,quality:n}),u=new e(t),a=function(t,r,n){for(var o,e,i,u,a,c=t,f=[],s=0;s<r;s+=n)e=c[0+(o=4*s)],i=c[o+1],u=c[o+2],(void 0===(a=c[o+3])||a>=125)&&(e>250&&i>250&&u>250||f.push([e,i,u]));return f}(u.getImageData().data,u.width*u.height,i.quality),c=o(a,i.colorCount);return c?c.palette():null},u.prototype.getColorFromUrl=function(t,r,n){var o=this,e=document.createElement(\"img\");e.addEventListener(\"load\",function(){var i=o.getPalette(e,5,n);r(i[0],t)}),e.src=t},u.prototype.getImageData=function(t,r){var n=new XMLHttpRequest;n.open(\"GET\",t,!0),n.responseType=\"arraybuffer\",n.onload=function(){if(200==this.status){var t=new Uint8Array(this.response);i=t.length;for(var n=new Array(i),o=0;o<t.length;o++)n[o]=String.fromCharCode(t[o]);var e=n.join(\"\"),u=window.btoa(e);r(\"data:image/png;base64,\"+u)}},n.send()},u.prototype.getColorAsync=function(t,r,n){var o=this;this.getImageData(t,function(t){var e=document.createElement(\"img\");e.addEventListener(\"load\",function(){var t=o.getPalette(e,5,n);r(t[0],this)}),e.src=t})};export{u as default};\n","import { COLORS } from \"../constants\";\nimport {\n adjustHue,\n getScale,\n saturate as _saturate,\n transparentize as _transparentize,\n desaturate as _desaturate,\n hasBadContrast,\n getLuminance,\n lighten,\n darken,\n toRgba,\n} from \"color2k\";\nimport ColorThief from \"colorthief\";\n\nexport type RGBArray = [number, number, number];\n\nexport type Palette = {\n BASE_COLOR: string;\n BRAND: {\n PRIMARY: string;\n PRIMARY_LIGHT: string;\n SECONDARY: string;\n };\n PRIMARY: {\n //backgrounds\n PRIMARY_SUPER_DARK: string;\n PRIMARY_DARK: string;\n //interactive components\n PRIMARY_MEDIUM: string;\n //borders and seperators\n PRIMARY_MEDIUM_LIGHT: string;\n //solid colors\n PRIMARY_LIGHT: string;\n //accessible text\n PRIMARY_LIGHTEST: string;\n PRIMARY_SUPER_LIGHT: string;\n };\n SECONDARY: {\n //backgrounds\n SECONDARY_SUPER_DARK: string;\n SECONDARY_DARK: string;\n //interactive components\n SECONDARY_MEDIUM: string;\n //borders and seperators\n SECONDARY_MEDIUM_LIGHT: string;\n //solid colors\n SECONDARY_LIGHT: string;\n //accessible text\n SECONDARY_LIGHTEST: string;\n SECONDARY_SUPER_LIGHT: string;\n };\n};\n\nexport const DEFAULT_BACKGROUND = \"rgba(83, 82, 83, 1)\";\n\nexport const DEFAULT_PALETTE: Palette = {\n BASE_COLOR: DEFAULT_BACKGROUND,\n BRAND: {\n PRIMARY: COLORS.BRAND.PRIMARY,\n PRIMARY_LIGHT: COLORS.BRAND.PRIMARY_LIGHT,\n SECONDARY: COLORS.BRAND.SECONDARY,\n },\n PRIMARY: {\n PRIMARY_SUPER_DARK: COLORS.GRAYSCALE.GRAY_SUPER_DARK,\n PRIMARY_DARK: COLORS.GRAYSCALE.GRAY_DARK,\n PRIMARY_MEDIUM: COLORS.GRAYSCALE.GRAY_MEDIUM,\n PRIMARY_MEDIUM_LIGHT: COLORS.GRAYSCALE.GRAY_MEDIUM_LIGHT,\n PRIMARY_LIGHT: COLORS.GRAYSCALE.GRAY_LIGHT,\n PRIMARY_LIGHTEST: COLORS.GRAYSCALE.GRAY_LIGHTEST,\n PRIMARY_SUPER_LIGHT: COLORS.GRAYSCALE.GRAY_SUPER_LIGHT,\n },\n SECONDARY: {\n SECONDARY_SUPER_DARK: COLORS.GRAYSCALE.GRAY_SUPER_DARK,\n SECONDARY_DARK: COLORS.GRAYSCALE.GRAY_DARK,\n SECONDARY_MEDIUM: COLORS.GRAYSCALE.GRAY_MEDIUM,\n SECONDARY_MEDIUM_LIGHT: COLORS.GRAYSCALE.GRAY_MEDIUM_LIGHT,\n SECONDARY_LIGHT: COLORS.GRAYSCALE.GRAY_LIGHT,\n SECONDARY_LIGHTEST: COLORS.GRAYSCALE.GRAY_LIGHTEST,\n SECONDARY_SUPER_LIGHT: COLORS.GRAYSCALE.GRAY_SUPER_LIGHT,\n },\n // Success, Warning & Danger palettes go here...\n};\n\n/**\n * Converts an RGB array to a CSS string representation.\n * @param rgb - The RGB array to convert.\n * @param opacity - Optional opacity value.\n * @returns A CSS string representation of the RGB array, using `rgb()`, or `rgba()` if an opacity value is provided.\n */\nexport const arrayToRgbString = (rgb: RGBArray, opacity?: number): string => {\n return opacity === undefined\n ? `rgb(${rgb[0]}, ${rgb[1]}, ${rgb[2]})`\n : `rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, ${opacity})`;\n};\n\n/**\n * Transparentizes an input color.\n *\n * @param color - The color string to transparentize.\n * @param amount - The amount to increase the opacity of the color by, given as a decimal between 0 and 1.\n * @returns An RGBA color string.\n */\nexport const transparentize = (color: string, amount: number): string => {\n return toRgba(_transparentize(color, amount));\n};\n\n/**\n * Saturates a color.\n *\n * @param color - Input color\n * @param amount - The amount to saturate, given as a decimal between 0 and 1\n * @returns An RGBA color string.\n */\nexport const saturate = (color: string, amount: number): string => {\n return toRgba(_saturate(color, amount));\n};\n\n/**\n * Desaturates a color.\n *\n * @param color - Input color\n * @param amount - The amount to desaturate, given as a decimal between 0 and 1\n * @returns An RGBA color string.\n */\nexport const desaturate = (color: string, amount: number): string => {\n return toRgba(_desaturate(color, amount));\n};\n\n/**\n * Gets the dominant color of an image. Avoids issues with low contrast colors.\n * @reference https://github.com/lokesh/color-thief/issues/40\n * @param image - The image to get the dominant color from.\n * @returns An RGB array.\n */\nexport const getDominantColor = (image: HTMLImageElement): RGBArray => {\n try {\n const colorThief = new ColorThief();\n const baseColor = colorThief.getColor(image);\n return baseColor;\n } catch {\n return [255, 255, 255];\n }\n};\n\n/**\n * Generates a complete color palette based on a primary color input.\n * The palette includes primary and secondary color scales with varying shades.\n *\n * @param primaryColor - The base RGB color array to generate the palette from\n * @returns A Palette object containing:\n * - BRAND colors (primary, light primary, and secondary)\n * - PRIMARY scale (7 shades from super dark to super light)\n * - SECONDARY scale (7 shades from super dark to super light)\n *\n * The function:\n * 1. Creates a 12-color scale from white to the primary color to black\n * 2. Generates a complementary secondary color by shifting the hue 180 degrees\n * 3. Creates another 12-color scale for the secondary color\n * 4. Maps specific positions from these scales to create the final palette structure\n */\nexport const generatePalette = (baseColor: RGBArray): Palette => {\n const primaryRgba = arrayToRgbString(baseColor);\n\n const primaryScaleFunc = getScale(\"#FFFFFF\", primaryRgba, \"#000000\");\n const primaryScale = Array.from({ length: 12 }, (_, i) => {\n const color = primaryScaleFunc(i / 11);\n return desaturate(color, 0.0085);\n });\n\n const adjustedPrimaryScale = primaryScale.map((color) =>\n saturate(adjustBrightnessForLuminance(color), 0.005)\n );\n\n const secondaryColor = toRgba(saturate(adjustHue(primaryRgba, 180), 1));\n\n const secondaryScaleFunc = getScale(\"#FFFFFF\", secondaryColor, \"#000000\");\n const secondaryScale = Array.from({ length: 12 }, (_, i) => {\n const color = secondaryScaleFunc(i / 11);\n return desaturate(color, 0.1);\n });\n\n const adjustedSecondaryScale = secondaryScale.map((color) =>\n desaturate(adjustBrightnessForLuminance(color), 0.22)\n );\n\n const brandPrimary = darkenForContrast(\n saturate(adjustedPrimaryScale[5], 0.115)\n );\n\n return {\n BASE_COLOR: arrayToRgbString(baseColor),\n BRAND: {\n PRIMARY: brandPrimary,\n PRIMARY_LIGHT: lightenWithinRange(brandPrimary, 0.25, {\n min: 0.6,\n max: 0.8,\n }),\n SECONDARY: desaturate(adjustedSecondaryScale[4], 0.02),\n },\n PRIMARY: {\n //backgrounds\n PRIMARY_SUPER_DARK: lightenWithinRange(\n lightenForContrast(primaryScale[9]),\n -0.6,\n {\n min: 0.0,\n max: 0.02,\n }\n ),\n PRIMARY_DARK: lightenWithinRange(\n lightenForContrast(primaryScale[8]),\n -0.4,\n {\n min: 0.01,\n max: 0.02,\n }\n ),\n //interactive components\n PRIMARY_MEDIUM: lightenWithinRange(adjustedPrimaryScale[7], -0.2, {\n min: 0.0,\n max: 0.11,\n }),\n //borders and seperators\n PRIMARY_MEDIUM_LIGHT: lightenWithinRange(\n desaturate(adjustedPrimaryScale[6], 0.1),\n 0.08\n ),\n //solid colors\n PRIMARY_LIGHT: lightenWithinRange(\n saturate(adjustedPrimaryScale[5], 0.1),\n 0.16\n ),\n //accessible text\n PRIMARY_LIGHTEST: lightenWithinRange(\n saturate(adjustedPrimaryScale[3], 0.2),\n 0.12,\n {\n min: 0.5,\n max: 0.9,\n }\n ),\n PRIMARY_SUPER_LIGHT: lightenWithinRange(adjustedPrimaryScale[1], 0.02, {\n min: 0.86,\n max: 0.98,\n }),\n },\n SECONDARY: {\n //backgrounds\n SECONDARY_SUPER_DARK: lightenWithinRange(\n lightenForContrast(secondaryScale[9]),\n -0.6,\n {\n min: 0.0,\n max: 0.02,\n }\n ),\n SECONDARY_DARK: lightenWithinRange(\n lightenForContrast(secondaryScale[8]),\n -0.4,\n {\n min: 0.01,\n max: 0.02,\n }\n ),\n // interactive components\n SECONDARY_MEDIUM: lightenWithinRange(adjustedSecondaryScale[7], -0.2, {\n min: 0.0,\n max: 0.11,\n }),\n //borders and seperators\n SECONDARY_MEDIUM_LIGHT: lightenWithinRange(\n adjustedSecondaryScale[6],\n 0.1\n ),\n //solid colors\n SECONDARY_LIGHT: lightenWithinRange(\n saturate(adjustedSecondaryScale[5], 0.1),\n 0.16\n ),\n //accessible text\n SECONDARY_LIGHTEST: lightenWithinRange(\n saturate(adjustedSecondaryScale[3], 0.2),\n 0.12,\n {\n min: 0.5,\n max: 0.9,\n }\n ),\n SECONDARY_SUPER_LIGHT: lightenWithinRange(\n adjustedSecondaryScale[0],\n 0.02,\n {\n min: 0.86,\n max: 0.98,\n }\n ),\n },\n };\n};\n\nconst lightenWithinRange = (\n color: string,\n amount: number,\n range: { min: number; max: number } = { min: 0.03, max: 0.97 }\n): string => {\n let adjustedColor = color;\n let currentLuminance = getLuminance(adjustedColor);\n\n // Validate range bounds\n if (range.min < 0) range.min = 0;\n if (range.max > 1) range.max = 1;\n if (range.min >= range.max) {\n throw new Error(\"Invalid range: min must be less than max\");\n }\n\n // For lightening (positive amount)\n if (amount > 0) {\n // Calculate how much we can lighten before hitting max\n const remainingLuminance = range.max - currentLuminance;\n if (remainingLuminance <= 0) return toRgba(adjustedColor);\n\n // Scale the amount based on remaining room to lighten\n const scaledAmount = amount * (remainingLuminance / (1 - currentLuminance));\n adjustedColor = lighten(adjustedColor, scaledAmount);\n }\n // For darkening (negative amount)\n else if (amount < 0) {\n // Calculate how much we can darken before hitting min\n const remainingLuminance = currentLuminance - range.min;\n if (remainingLuminance <= 0) return toRgba(adjustedColor);\n\n // Scale the amount based on remaining room to darken\n const scaledAmount = amount * (remainingLuminance / currentLuminance);\n adjustedColor = darken(adjustedColor, Math.abs(scaledAmount));\n }\n\n // Verify final luminance is within bounds\n const finalLuminance = getLuminance(adjustedColor);\n if (finalLuminance > range.max) {\n adjustedColor = adjustBrightnessWithinRange(adjustedColor, range);\n } else if (finalLuminance < range.min) {\n adjustedColor = adjustBrightnessWithinRange(adjustedColor, range);\n }\n\n return toRgba(adjustedColor);\n};\n\nconst adjustBrightnessWithinRange = (\n color: string,\n range: { min: number; max: number }\n): string => {\n let adjustedColor = color;\n let luminance = getLuminance(adjustedColor);\n\n // Darken if too bright\n while (luminance > range.max) {\n adjustedColor = darken(adjustedColor, 0.05);\n luminance = getLuminance(adjustedColor);\n }\n\n // Lighten if too dark\n while (luminance < range.min) {\n adjustedColor = lighten(adjustedColor, 0.05);\n luminance = getLuminance(adjustedColor);\n }\n\n return toRgba(adjustedColor);\n};\n\nconst lightenForContrast = (color: string): string => {\n while (hasBadContrast(color, \"readable\", COLORS.GRAYSCALE.GRAY_DARK)) {\n color = lighten(color, 0.01);\n }\n return toRgba(color);\n};\n\nconst darkenForContrast = (color: string): string => {\n while (hasBadContrast(COLORS.GRAYSCALE.GRAY_SUPER_LIGHT, \"readable\", color)) {\n color = darken(color, 0.01);\n }\n return toRgba(color);\n};\n\nconst adjustBrightnessForLuminance = (color: string): string => {\n let currentColor = color;\n let currentLuminance = getLuminance(toRgba(currentColor));\n let adjustmentAttempts = 0;\n const MAX_ATTEMPTS = 6;\n\n while (currentLuminance < 0.16 && adjustmentAttempts < MAX_ATTEMPTS) {\n adjustmentAttempts++;\n currentColor = lighten(currentColor, 0.1);\n currentLuminance = getLuminance(toRgba(currentColor));\n }\n\n while (currentLuminance > 0.6 && adjustmentAttempts < MAX_ATTEMPTS) {\n adjustmentAttempts++;\n currentColor = darken(currentColor, 0.1);\n currentLuminance = getLuminance(toRgba(currentColor));\n }\n\n return toRgba(currentColor);\n};\n","const isString = (x: unknown): boolean =>\n typeof x === \"string\" || x instanceof String;\n\nexport function csx(...classnames: unknown[]): string {\n return classnames.filter(isString).join(\" \");\n}\n\n/**\n * [isUrlExternal] - determine if passed absolute url is external to the current domain.\n */\nexport const isUrlExternal = (url: string) => {\n return url.startsWith(\"http\");\n};\n\n/**\n * Handles internal navigation clicks by preventing default browser behavior and\n * programmatically updating the URL and history state.\n *\n * @param e - The click event from the anchor element\n * @param to - The destination path to navigate to\n *\n * @remarks\n * - Converts relative paths to absolute by prepending \"/\" if needed\n * - Updates browser history using pushState and dispatches a popstate event\n */\nexport const handleInternalNavigation = (\n e: React.MouseEvent<HTMLAnchorElement>,\n to: string\n) => {\n // Don't handle navigation if modifier keys are pressed\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) {\n return;\n }\n\n // Don't handle middle clicks or right clicks\n if (e.button && e.button !== 0) {\n return;\n }\n\n e.preventDefault();\n\n // Handle relative paths\n const resolvedPath = to.startsWith(\"/\") ? to : `/${to}`;\n window.history.pushState({}, \"\", resolvedPath);\n window.dispatchEvent(new PopStateEvent(\"popstate\"));\n};\n"],"names":["t","r","n","o","e","i","u","a","c","f","s","h","v","l","g","p","b","m","d","w","DEFAULT_BACKGROUND","DEFAULT_PALETTE","COLORS.BRAND","COLORS.GRAYSCALE","arrayToRgbString","rgb","opacity","transparentize","color","amount","toRgba","_transparentize","saturate","_saturate","desaturate","_desaturate","getDominantColor","image","ColorThief","generatePalette","baseColor","primaryRgba","primaryScaleFunc","getScale","primaryScale","_","adjustedPrimaryScale","adjustBrightnessForLuminance","secondaryColor","adjustHue","secondaryScaleFunc","secondaryScale","adjustedSecondaryScale","brandPrimary","darkenForContrast","lightenWithinRange","lightenForContrast","range","adjustedColor","currentLuminance","getLuminance","remainingLuminance","scaledAmount","lighten","darken","finalLuminance","adjustBrightnessWithinRange","luminance","hasBadContrast","currentColor","adjustmentAttempts","MAX_ATTEMPTS","isString","x","csx","classnames","isUrlExternal","url","handleInternalNavigation","to","resolvedPath"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/utils.cjs.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./utils-CUykmxAN.js");exports.DEFAULT_BACKGROUND=t.DEFAULT_BACKGROUND;exports.DEFAULT_PALETTE=t.DEFAULT_PALETTE;exports.arrayToRgbString=t.arrayToRgbString;exports.csx=t.csx;exports.desaturate=t.desaturate;exports.generatePalette=t.generatePalette;exports.getDominantColor=t.getDominantColor;exports.handleInternalNavigation=t.handleInternalNavigation;exports.isUrlExternal=t.isUrlExternal;exports.saturate=t.saturate;exports.transparentize=t.transparentize;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./utils-BK7HmyM8.js");exports.DEFAULT_BACKGROUND=t.DEFAULT_BACKGROUND;exports.DEFAULT_PALETTE=t.DEFAULT_PALETTE;exports.arrayToRgbString=t.arrayToRgbString;exports.csx=t.csx;exports.desaturate=t.desaturate;exports.generatePalette=t.generatePalette;exports.getDominantColor=t.getDominantColor;exports.handleInternalNavigation=t.handleInternalNavigation;exports.isUrlExternal=t.isUrlExternal;exports.saturate=t.saturate;exports.transparentize=t.transparentize;
2
2
  //# sourceMappingURL=utils.cjs.js.map
package/dist/utils.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import { D as t, a as e, b as r, e as n, d as i, c as o, g, h as l, i as D, s as E, t as T } from "./utils-CJd9wFM9.mjs";
1
+ import { D as t, a as e, b as r, e as n, d as i, c as o, g, h as l, i as D, s as E, t as T } from "./utils-pGAnEEqC.mjs";
2
2
  export {
3
3
  t as DEFAULT_BACKGROUND,
4
4
  e as DEFAULT_PALETTE,