@vervstack/chures 0.0.31 → 0.0.33
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/chures.js +1030 -691
- package/dist/chures.umd.cjs +2 -2
- package/dist/components/FlyoutMenu/FlyoutMenu.d.ts +14 -0
- package/dist/components/FlyoutMenu/FlyoutPanel.d.ts +11 -0
- package/dist/components/FlyoutMenu/MenuList.d.ts +10 -0
- package/dist/components/FlyoutMenu/MenuRow.d.ts +9 -0
- package/dist/components/FlyoutMenu/MenuSearchField.d.ts +8 -0
- package/dist/components/FlyoutMenu/MenuSkeleton.d.ts +6 -0
- package/dist/components/FlyoutMenu/index.d.ts +12 -0
- package/dist/components/FlyoutMenu/menuMeasuredContext.d.ts +2 -0
- package/dist/components/FlyoutMenu/menuModel.d.ts +18 -0
- package/dist/components/FlyoutMenu/partitionBySubstring.d.ts +5 -0
- package/dist/components/FlyoutMenu/partitionBySubstring.test.d.ts +1 -0
- package/dist/components/FlyoutMenu/positionMenu.d.ts +15 -0
- package/dist/components/FlyoutMenu/positionMenu.test.d.ts +1 -0
- package/dist/components/FlyoutMenu/positionSubmenu.d.ts +10 -0
- package/dist/components/FlyoutMenu/positionSubmenu.test.d.ts +1 -0
- package/dist/components/FlyoutMenu/useFloatingMenu.d.ts +34 -0
- package/dist/components/FlyoutMenu/useTrackedPlacement.d.ts +1 -0
- package/dist/components/FlyoutMenu/useTypeToSearch.d.ts +4 -0
- package/dist/index.d.ts +8 -0
- package/package.json +1 -1
package/dist/chures.umd.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(){"use strict";try{if(typeof document<"u"){var r=document.createElement("style");r.appendChild(document.createTextNode("@layer chures-defaults{:root{--chures-accent: #229ED9;--chures-accent-muted: rgb(34 158 217 / 50%);--chures-btn-from: #2AABEE;--chures-btn-to: #229ED9;--chures-button-bg: var(--chures-accent);--chures-error: #ef4444;--chures-warn: #f59e0b;--chures-bg: #000000;--chures-fg: #ffffff;--chures-fg-muted: #9ca3af;--chures-surface: #000000;--chures-font-sm: .875rem;--chures-font-xs: .75rem;--chures-input-bg: #111111;--chures-input-height: 3rem;--chures-input-radius: .75rem;--chures-skeleton-shine: #1e1e1e;--chures-toggle-width: 2.75rem;--chures-toggle-height: 1.5rem;--chures-toggle-thumb: 1.125rem;--chures-toggle-bg-off: rgb(255 255 255 / 13%);--chures-toggle-bg-on: var(--chures-accent);--chures-toggle-thumb-color: #ffffff;--chures-toggle-label-skeleton-w: 5rem;--chures-dropdown-bg: var(--chures-bg);--chures-dropdown-radius: .75rem;--chures-dropdown-row-radius: .375rem;--chures-dropdown-border: var(--chures-accent);--chures-dropdown-border-subtle: var(--chures-accent-muted);--chures-dropdown-hover: rgb(255 255 255 / 8%);--chures-dropdown-create-bg: rgb(34 158 217 / 12%);--chures-dropdown-create-bg-hover: rgb(34 158 217 / 20%);--chures-dropdown-trigger-border: rgb(255 255 255 / 22%);--chures-dropdown-trigger-border-hover: rgb(255 255 255 / 38%);--chures-dropdown-trigger-focus-ring: rgb(34 158 217 / 15%);--chures-dropdown-chip-border: rgb(34 158 217 / 30%);--chures-dropdown-panel-gap: .375rem;--chures-dropdown-glass-bg: rgb(255 255 255 / 6%);--chures-dropdown-glass-blur: 1.25rem;--chures-dialog-glass-bg: rgb(255 255 255 / 6%);--chures-dialog-glass-blur: 1.25rem;--chures-overlay: rgb(0 0 0 / 58%);--chures-side-drawer-size: 22rem}}@keyframes _spin_wa8op_1{to{transform:rotate(360deg)}}@keyframes _ripple_wa8op_1{0%{transform:scale(.08);opacity:.9}to{transform:scale(1);opacity:0}}@keyframes _dotPulse_wa8op_1{0%,to{transform:translate(-50%,-50%) scale(.55);opacity:.3}50%{transform:translate(-50%,calc(-50% - var(--sz) * .1)) scale(1);opacity:1}}@keyframes _waveBounce_wa8op_1{0%,55%,to{transform:translate(-50%,-50%) scale(.8);opacity:.4}27%{transform:translate(-50%,calc(-50% - var(--sz) * .28)) scale(1);opacity:1}}._LoaderContainer_wa8op_24{position:relative;flex-shrink:0}._sm_wa8op_31{width:1.5rem;height:1.5rem;--sz: 1.5rem;--arc-gap: .2rem;--arc-bw: .125rem}._md_wa8op_32{width:2.5rem;height:2.5rem;--sz: 2.5rem;--arc-gap: .35rem;--arc-bw: .1875rem}._lg_wa8op_33{width:4rem;height:4rem;--sz: 4rem;--arc-gap: .55rem;--arc-bw: .25rem}._Arc1_wa8op_37,._Arc2_wa8op_38,._Arc3_wa8op_39{position:absolute;border-radius:50%;border:var(--arc-bw) solid transparent}._Arc1_wa8op_37{inset:0;border-top-color:var(--chures-accent, #229ED9);border-left-color:var(--chures-accent, #229ED9);animation:_spin_wa8op_1 1.2s linear infinite;filter:drop-shadow(0 0 .25rem var(--chures-accent, #229ED9))}._Arc2_wa8op_38{inset:var(--arc-gap);border-bottom-color:var(--chures-accent, #229ED9);border-right-color:var(--chures-accent, #229ED9);animation:_spin_wa8op_1 1.8s linear infinite reverse;opacity:.8}._Arc3_wa8op_39{inset:calc(var(--arc-gap) * 2);border-top-color:var(--chures-accent, #229ED9);border-right-color:var(--chures-accent, #229ED9);animation:_spin_wa8op_1 2.4s linear infinite;opacity:.6}._Ring1_wa8op_71,._Ring2_wa8op_72,._Ring3_wa8op_73{position:absolute;inset:0;border-radius:50%;border:var(--arc-bw) solid var(--chures-accent, #229ED9);animation:_ripple_wa8op_1 1.8s ease-out infinite both}._Ring2_wa8op_72{animation-delay:.6s}._Ring3_wa8op_73{animation-delay:1.2s}._Dot1_wa8op_86,._Dot2_wa8op_87,._Dot3_wa8op_88{position:absolute;top:50%;border-radius:50%;width:calc(var(--sz) * .2);height:calc(var(--sz) * .2);background:var(--chures-accent, #229ED9);box-shadow:0 0 calc(var(--sz) * .14) var(--chures-accent, #229ED9);animation:_dotPulse_wa8op_1 1.1s ease-in-out infinite both}._Dot1_wa8op_86{left:22%}._Dot2_wa8op_87{left:50%;animation-delay:.18s}._Dot3_wa8op_88{left:78%;animation-delay:.36s}._Wave1_wa8op_105,._Wave2_wa8op_106,._Wave3_wa8op_107,._Wave4_wa8op_108,._Wave5_wa8op_109{position:absolute;top:50%;border-radius:50%;width:calc(var(--sz) * .16);height:calc(var(--sz) * .16);background:var(--chures-accent, #229ED9);box-shadow:0 0 calc(var(--sz) * .1) var(--chures-accent, #229ED9);animation:_waveBounce_wa8op_1 1s ease-in-out infinite both}._Wave1_wa8op_105{left:10%}._Wave2_wa8op_106{left:28%;animation-delay:.12s}._Wave3_wa8op_107{left:46%;animation-delay:.24s}._Wave4_wa8op_108{left:64%;animation-delay:.36s}._Wave5_wa8op_109{left:82%;animation-delay:.48s}._LoadingWrapperContainer_1q0w7_1{display:flex;align-items:center;justify-content:center;width:100%;min-height:4rem}._SkeletonWrapper_1q0w7_9{width:100%}._TelegramSignInButtonContainer_10wun_1{display:inline-flex;align-items:center;justify-content:center;gap:.625rem;width:100%;padding:1rem 1.375rem;background:linear-gradient(180deg,var(--chures-btn-from, #2AABEE) 0%,var(--chures-btn-to, #229ED9) 100%);border:0;border-radius:.875rem;color:#fff;font-family:Comfortaa,sans-serif;font-weight:600;font-size:1rem;letter-spacing:-.005em;cursor:pointer;box-shadow:inset 0 .0625rem #ffffff26,0 .75rem 2rem -.75rem #2aabee8c;transition:transform .14s ease,box-shadow .2s ease,filter .16s ease}._TelegramSignInButtonContainer_10wun_1:hover{transform:translateY(-.0625rem);box-shadow:inset 0 .0625rem #ffffff2e,0 1.125rem 2.375rem -.75rem #2aabeea6;filter:brightness(1.05)}._TelegramSignInButtonContainer_10wun_1:active{transform:translateY(0);filter:brightness(.97)}._TelegramSignInButtonContainer_10wun_1:focus-visible{outline:.125rem solid rgba(255,255,255,.8);outline-offset:.125rem}._TelegramSignInButtonContainer_10wun_1:disabled{opacity:.6;cursor:not-allowed}._FullSize_10wun_46{height:100%}._Icon_10wun_50{flex-shrink:0}._ToastContainer_1tme2_1{position:fixed;right:1.5rem;top:1.5rem;width:clamp(25vw,24.5rem,95vw);display:flex;flex-direction:column;gap:1rem;z-index:9999}._Toast_1tme2_1{min-height:4rem;border:var(--chures-accent, #229ED9) 1px solid;border-radius:1rem;padding:1rem;box-sizing:border-box;position:relative;background:var(--chures-surface, #000000);display:flex;flex-direction:column}._Toast_1tme2_1>div:first-child{font-weight:700;font-size:var(--chures-font-sm, .875rem);color:var(--chures-fg, #ffffff)}._Toast_1tme2_1._error_1tme2_33{border-color:var(--chures-error, #ef4444)}._Toast_1tme2_1._error_1tme2_33>div:first-child{color:var(--chures-error, #ef4444)}._Toast_1tme2_1._warn_1tme2_41{border-color:var(--chures-warn, #f59e0b)}._Toast_1tme2_1._warn_1tme2_41>div:first-child{color:var(--chures-warn, #f59e0b)}._Toast_1tme2_1._info_1tme2_49{border-color:var(--chures-accent, #229ED9)}._Toast_1tme2_1 ._Description_1tme2_53{color:var(--chures-fg-muted, #9ca3af);font-size:var(--chures-font-xs, .75rem);margin-top:.125rem}._Toast_1tme2_1 ._DismissButton_1tme2_59{position:absolute;width:1rem;height:1rem;display:flex;justify-content:center;align-items:center;top:0;right:1%;cursor:pointer;font-size:1.5rem;color:var(--chures-fg-muted, #9ca3af)}._slideIn_1tme2_79{animation:_slideIn_1tme2_79 .2s ease forwards}._slideOut_1tme2_83{animation:_slideOut_1tme2_83 .2s ease forwards}@keyframes _slideIn_1tme2_79{0%{opacity:0;transform:translate(2rem)}to{opacity:1;transform:translate(0)}}@keyframes _slideOut_1tme2_83{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(2rem)}}@keyframes _shimmer_1uu20_1{0%{background-position:-200% 0}to{background-position:200% 0}}:where(._InputContainer_1uu20_15){position:relative;width:100%;height:var(--chures-input-height, 3rem)}:where(._InputField_1uu20_21){width:100%;height:100%;background:var(--chures-input-bg, #111111);border:.0625rem solid rgb(255 255 255 / 13%);border-radius:var(--chures-input-radius, .75rem);color:var(--chures-fg, #ffffff);font-size:var(--chures-font-sm, .875rem);padding:0 .875rem;outline:none;transition:border-color .18s ease;box-sizing:border-box}:where(._InputField_1uu20_21._hasStartIcon_1uu20_35){padding-left:2.25rem}:where(._InputField_1uu20_21._hasEndIcon_1uu20_39){padding-right:2.25rem}:where(._StartIcon_1uu20_43){position:absolute;left:.875rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;color:var(--chures-fg-muted, #9ca3af);pointer-events:none}:where(._EndIcon_1uu20_54){position:absolute;right:.875rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;color:var(--chures-fg-muted, #9ca3af);pointer-events:none}:where(._InputField_1uu20_21):focus{border-color:#ffffff59}:where(._hasError_1uu20_69 ._InputField_1uu20_21),:where(._hasError_1uu20_69 ._InputField_1uu20_21):focus{border-color:var(--chures-error, #ef4444)}:where(._disabled_1uu20_74 ._InputField_1uu20_21){opacity:.45;cursor:not-allowed}:where(._Label_1uu20_79){position:absolute;left:.875rem;top:50%;transform:translateY(-50%);transform-origin:left center;color:var(--chures-fg-muted, #9ca3af);font-size:var(--chures-font-sm, .875rem);pointer-events:none;transition:all .18s ease;padding:0 .25rem;border-radius:.1875rem}:where(._Label_1uu20_79._lifted_1uu20_93){top:0;transform:translateY(-50%) scale(.82);background:var(--chures-input-bg, #111111);color:var(--chures-fg-muted, #9ca3af)}:where(._hasError_1uu20_69 ._Label_1uu20_79._lifted_1uu20_93){color:var(--chures-error, #ef4444)}:where(._ErrorText_1uu20_104){display:block;margin-top:.25rem;padding-left:.875rem;font-size:var(--chures-font-xs, .75rem);color:var(--chures-error, #ef4444)}:where(._Skeleton_1uu20_112){width:100%;height:var(--chures-input-height, 3rem);border-radius:var(--chures-input-radius, .75rem);background:linear-gradient(90deg,var(--chures-input-bg, #111111) 25%,var(--chures-skeleton-shine, #1e1e1e) 50%,var(--chures-input-bg, #111111) 75%);background-size:200% 100%;animation:_shimmer_1uu20_1 1.5s ease-in-out infinite}@keyframes _shimmer_1jetc_1{0%{background-position:-200% 0}to{background-position:200% 0}}._ToggleContainer_1jetc_6{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer}._disabled_1jetc_13{opacity:.45;cursor:not-allowed}._Track_1jetc_18{position:relative;width:var(--chures-toggle-width, 2.75rem);height:var(--chures-toggle-height, 1.5rem);border-radius:624.9375rem;background:var(--chures-toggle-bg-off, rgb(255 255 255 / 13%));border:none;padding:0;cursor:pointer;transition:background .2s ease;flex-shrink:0}._Track_1jetc_18._on_1jetc_31{background:var(--chures-toggle-bg-on, var(--chures-accent, #229ED9))}._disabled_1jetc_13 ._Track_1jetc_18{cursor:not-allowed}._Thumb_1jetc_39{position:absolute;top:0;bottom:0;margin:auto 0;left:.1875rem;width:var(--chures-toggle-thumb, 1.125rem);height:var(--chures-toggle-thumb, 1.125rem);border-radius:50%;background:var(--chures-toggle-thumb-color, #ffffff);transition:left .2s ease;pointer-events:none}._Track_1jetc_18._on_1jetc_31 ._Thumb_1jetc_39{left:calc(var(--chures-toggle-width, 2.75rem) - var(--chures-toggle-thumb, 1.125rem) - .1875rem)}._Label_1jetc_57{font-size:var(--chures-font-sm, .875rem);color:var(--chures-fg, #ffffff);-webkit-user-select:none;user-select:none}._LabelSkeleton_1jetc_63{display:inline-block;width:var(--chures-toggle-label-skeleton-w, 5rem);height:var(--chures-font-sm, .875rem);border-radius:624.9375rem;background:linear-gradient(90deg,var(--chures-input-bg, #111111) 25%,var(--chures-skeleton-shine, #1e1e1e) 50%,var(--chures-input-bg, #111111) 75%);background-size:200% 100%;animation:_shimmer_1jetc_1 1.5s ease-in-out infinite}._Skeleton_1jetc_78{width:var(--chures-toggle-width, 2.75rem);height:var(--chures-toggle-height, 1.5rem);border-radius:624.9375rem;background:linear-gradient(90deg,var(--chures-input-bg, #111111) 25%,var(--chures-skeleton-shine, #1e1e1e) 50%,var(--chures-input-bg, #111111) 75%);background-size:200% 100%;animation:_shimmer_1jetc_1 1.5s ease-in-out infinite}@layer chures-defaults{:root{--chures-accent: #229ED9;--chures-accent-muted: rgb(34 158 217 / 50%);--chures-btn-from: #2AABEE;--chures-btn-to: #229ED9;--chures-button-bg: var(--chures-accent);--chures-error: #ef4444;--chures-warn: #f59e0b;--chures-bg: #000000;--chures-fg: #ffffff;--chures-fg-muted: #9ca3af;--chures-surface: #000000;--chures-font-sm: .875rem;--chures-font-xs: .75rem;--chures-input-bg: #111111;--chures-input-height: 3rem;--chures-input-radius: .75rem;--chures-skeleton-shine: #1e1e1e;--chures-toggle-width: 2.75rem;--chures-toggle-height: 1.5rem;--chures-toggle-thumb: 1.125rem;--chures-toggle-bg-off: rgb(255 255 255 / 13%);--chures-toggle-bg-on: var(--chures-accent);--chures-toggle-thumb-color: #ffffff;--chures-toggle-label-skeleton-w: 5rem;--chures-dropdown-bg: var(--chures-bg);--chures-dropdown-radius: .75rem;--chures-dropdown-row-radius: .375rem;--chures-dropdown-border: var(--chures-accent);--chures-dropdown-border-subtle: var(--chures-accent-muted);--chures-dropdown-hover: rgb(255 255 255 / 8%);--chures-dropdown-create-bg: rgb(34 158 217 / 12%);--chures-dropdown-create-bg-hover: rgb(34 158 217 / 20%);--chures-dropdown-trigger-border: rgb(255 255 255 / 22%);--chures-dropdown-trigger-border-hover: rgb(255 255 255 / 38%);--chures-dropdown-trigger-focus-ring: rgb(34 158 217 / 15%);--chures-dropdown-chip-border: rgb(34 158 217 / 30%);--chures-dropdown-panel-gap: .375rem;--chures-dropdown-glass-bg: rgb(255 255 255 / 6%);--chures-dropdown-glass-blur: 1.25rem;--chures-dialog-glass-bg: rgb(255 255 255 / 6%);--chures-dialog-glass-blur: 1.25rem;--chures-overlay: rgb(0 0 0 / 58%);--chures-side-drawer-size: 22rem}}@keyframes _panelIn_1jz2j_1{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:none}}@keyframes _shimmer_1jz2j_1{0%{background-position:-200% center}to{background-position:200% center}}._DropdownContainer_1jz2j_13{position:relative;width:100%}._PanelWrapper_1jz2j_20{position:absolute;top:calc(100% + var(--chures-dropdown-panel-gap));left:0;width:100%;animation:_panelIn_1jz2j_1 .14s ease}._PanelWrapper_1jz2j_20._Portal_1jz2j_34{position:fixed;width:auto;margin-top:var(--chures-dropdown-panel-gap)}._PanelContainer_1jz2j_18{background:var(--chures-dropdown-bg);border:1px solid var(--chures-dropdown-border);border-radius:var(--chures-dropdown-radius);overflow:hidden;box-shadow:0 1rem 3rem #000c}._PanelContainer_1jz2j_18._Glass_1jz2j_48{background:var(--chures-dropdown-glass-bg, rgb(255 255 255 / 6%));backdrop-filter:blur(var(--chures-dropdown-glass-blur, 1.25rem));-webkit-backdrop-filter:blur(var(--chures-dropdown-glass-blur, 1.25rem))}._Label_1jz2j_54{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);transform-origin:left center;color:var(--chures-fg-muted);font-size:var(--chures-font-sm);pointer-events:none;transition:all .18s ease;padding:0 .25rem;border-radius:.1875rem}._Label_1jz2j_54._lifted_1jz2j_68{top:0;transform:translateY(-50%) scale(.82);background:var(--chures-input-bg);color:var(--chures-fg-muted)}._TriggerContainer_1jz2j_75{width:100%;height:var(--chures-input-height);background:var(--chures-input-bg);border:1px solid var(--chures-dropdown-trigger-border);border-radius:var(--chures-input-radius);color:var(--chures-fg);font-size:var(--chures-font-sm);font-family:inherit;padding:0 .875rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.5rem;text-align:left;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}._TriggerContainer_1jz2j_75:hover{border-color:var(--chures-dropdown-trigger-border-hover)}._TriggerContainer_1jz2j_75._Open_1jz2j_99{border-color:var(--chures-accent);box-shadow:0 0 0 .1875rem var(--chures-dropdown-trigger-focus-ring)}._TriggerPlaceholder_1jz2j_104{color:var(--chures-fg-muted);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._TriggerValue_1jz2j_112{color:var(--chures-fg);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._TriggerIcon_1jz2j_120{color:var(--chures-fg-muted);flex-shrink:0;display:flex;align-items:center}._ChipsWrapper_1jz2j_127{display:flex;flex-wrap:nowrap;gap:.25rem;flex:1;overflow-x:auto;overflow-y:hidden;min-width:0;align-items:center;margin:.375rem 0;scrollbar-width:none;-ms-overflow-style:none}._ChipsWrapper_1jz2j_127::-webkit-scrollbar{display:none}._ChipsWrapper_1jz2j_127._Expand_1jz2j_145{flex-wrap:wrap;overflow:visible;row-gap:.25rem}._TriggerContainer_1jz2j_75._MultiSelect_1jz2j_151 ._TriggerIcon_1jz2j_120{align-self:flex-start;height:var(--chures-input-height)}._TriggerContainer_1jz2j_75._ExpandHeight_1jz2j_156{height:auto;min-height:var(--chures-input-height)}._Chip_1jz2j_127{display:inline-flex;align-items:center;flex-shrink:0;background:var(--chures-dropdown-create-bg);border:1px solid var(--chures-dropdown-chip-border);border-radius:624.9375rem;padding:.15rem .5rem;font-size:var(--chures-font-xs);color:var(--chures-fg);white-space:nowrap;line-height:1.4}._SearchRow_1jz2j_175{padding:.5rem;border-bottom:1px solid var(--chures-dropdown-border-subtle)}._SearchBox_1jz2j_180{display:flex;align-items:center;gap:.5rem;background:var(--chures-input-bg);border:1px solid var(--chures-dropdown-border-subtle);border-radius:var(--chures-dropdown-row-radius);padding:.4rem .625rem}._SearchIcon_1jz2j_190{display:flex;align-items:center;color:var(--chures-fg-muted);flex-shrink:0}._SearchInput_1jz2j_197{flex:1;background:transparent;border:none;outline:none;font-size:var(--chures-font-sm);color:var(--chures-fg);font-family:inherit}._SearchInput_1jz2j_197::placeholder{color:var(--chures-fg-muted)}._ResultsList_1jz2j_211{max-height:13rem;overflow-y:auto}._OptionRow_1jz2j_216{padding:.5625rem .875rem;font-size:var(--chures-font-sm);color:var(--chures-fg-muted);cursor:pointer;transition:background .1s ease,color .1s ease;display:flex;align-items:center;gap:.5rem}._OptionRow_1jz2j_216:hover{background:var(--chures-dropdown-hover);color:var(--chures-fg)}._OptionRow_1jz2j_216._Selected_1jz2j_231{color:var(--chures-fg)}._OptionRow_1jz2j_216._Indented_1jz2j_235{padding-left:1.875rem}._GroupHeader_1jz2j_240{padding:.5625rem .875rem .25rem;font-size:var(--chures-font-xs);color:var(--chures-fg-muted);text-transform:uppercase;letter-spacing:.03em}._GroupHeader_1jz2j_240:not(:first-child){margin-top:.25rem;border-top:1px solid var(--chures-dropdown-border-subtle)}._Checkmark_1jz2j_253{color:var(--chures-accent);font-size:var(--chures-font-xs);flex-shrink:0}._CreateRow_1jz2j_259{display:flex;align-items:center;gap:.625rem;padding:.5625rem .875rem;cursor:pointer;background:var(--chures-dropdown-create-bg);transition:background .1s ease}._CreateRow_1jz2j_259:hover{background:var(--chures-dropdown-create-bg-hover)}._CreateRow_1jz2j_259._WithBorder_1jz2j_272{border-top:1px solid var(--chures-dropdown-border-subtle)}._CreateIcon_1jz2j_277{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;background:var(--chures-accent);color:#fff;flex-shrink:0}._CreateLabel_1jz2j_289{font-size:var(--chures-font-sm);font-weight:600;color:var(--chures-fg)}._EmptyHint_1jz2j_295{padding:.75rem .875rem;font-size:var(--chures-font-sm);color:var(--chures-fg-muted);font-style:italic}._SkeletonRow_1jz2j_302{height:2rem;margin:.375rem .875rem;border-radius:var(--chures-dropdown-row-radius);background:linear-gradient(90deg,var(--chures-dropdown-bg) 25%,var(--chures-skeleton-shine) 50%,var(--chures-dropdown-bg) 75%);background-size:200% 100%;animation:_shimmer_1jz2j_1 1.4s infinite linear}:where(._Btn_1tozl_10){display:inline-flex;align-items:center;justify-content:center;gap:.375rem;border-radius:.625rem;border:1px solid transparent;font-family:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;padding:.625rem 1rem;transition:all .16s ease;white-space:nowrap;color:var(--chures-fg, #ffffff);background:var(--chures-button-bg)}:where(._Btn_1tozl_10):disabled{opacity:.4;cursor:not-allowed}:where(._Primary_1tozl_35){background:var(--chures-accent, #229ED9);border-color:var(--chures-accent, #229ED9);color:#fff;font-weight:600;padding:.625rem 1.125rem;box-shadow:0 10px 28px -12px var(--chures-accent-muted, rgb(34 158 217 / 50%));transition:filter .16s ease,opacity .16s ease}:where(._Primary_1tozl_35):hover:not(:disabled){filter:brightness(1.06)}:where(._Secondary_1tozl_50){background:transparent;border-color:#ffffff24;color:var(--chures-fg-muted, #9ca3af)}:where(._Secondary_1tozl_50):hover:not(:disabled){color:var(--chures-fg, #ffffff);border-color:#ffffff47}:where(._Ghost_1tozl_62){background:transparent;border-color:#ffffff24;color:var(--chures-fg-muted, #9ca3af)}:where(._Ghost_1tozl_62):hover:not(:disabled){color:var(--chures-fg, #ffffff);border-color:#ffffff47}:where(._IconDanger_1tozl_74){width:1.375rem;height:1.375rem;padding:0;border:0;border-radius:.375rem;background:transparent;color:var(--chures-fg-muted, #9ca3af);font-size:1rem;line-height:1;justify-content:center;flex-shrink:0;transition:background .14s ease,color .14s ease}:where(._IconDanger_1tozl_74):hover:not(:disabled){background:#ef44441f;color:var(--chures-error, #ef4444)}:where(._Danger_1tozl_95){background:transparent;border-color:#ef444466;color:var(--chures-error, #ef4444);transition:background .16s ease,border-color .16s ease}:where(._Danger_1tozl_95):hover:not(:disabled){background:#ef44441a;border-color:var(--chures-error, #ef4444)}._ConfirmWrapper_1tq4o_4{width:100%;max-width:24rem;animation:_confirmIn_1tq4o_1 .28s cubic-bezier(.2,.7,.2,1) both}@keyframes _confirmIn_1tq4o_1{0%{opacity:0;transform:translateY(.75rem) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}._ConfirmContainer_1tq4o_1{width:100%;background:var(--chures-surface, #000000);border:1px solid rgb(255 255 255 / 14%);border-radius:1.25rem;padding:1.75rem 1.75rem 1.5rem;box-shadow:0 32px 80px -20px #000c}._Glass_1tq4o_24{background:var(--chures-dialog-glass-bg, rgb(255 255 255 / 6%));backdrop-filter:blur(var(--chures-dialog-glass-blur, 1.25rem));-webkit-backdrop-filter:blur(var(--chures-dialog-glass-blur, 1.25rem))}._ConfirmTitle_1tq4o_30{font-size:1.25rem;font-weight:600;letter-spacing:-.02em;color:var(--chures-fg, #ffffff);margin-bottom:.75rem}._ConfirmMessage_1tq4o_38{font-size:.875rem;color:var(--chures-fg-muted, #9ca3af);line-height:1.5;letter-spacing:-.005em}._ConfirmActions_1tq4o_45{display:flex;align-items:center;justify-content:flex-end;gap:.625rem;margin-top:1.5rem}._BtnCancel_1tq4o_53{display:inline-flex;align-items:center;padding:.625rem 1.125rem;border-radius:.625rem;border:1px solid rgb(255 255 255 / 14%);background:transparent;color:var(--chures-fg-muted, #9ca3af);font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .16s ease,color .16s ease}._BtnCancel_1tq4o_53:hover:not(:disabled){background:#ffffff14;color:var(--chures-fg, #ffffff)}._BtnConfirm_1tq4o_73{display:inline-flex;align-items:center;padding:.625rem 1.125rem;border-radius:.625rem;border:1px solid var(--chures-accent, #229ED9);background:var(--chures-accent, #229ED9);color:#fff;font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;transition:filter .16s ease,opacity .16s ease}._BtnConfirm_1tq4o_73:hover:not(:disabled){filter:brightness(1.06)}._BtnDanger_1tq4o_92{display:inline-flex;align-items:center;padding:.625rem 1.125rem;border-radius:.625rem;border:1px solid rgb(239 68 68 / 40%);background:transparent;color:var(--chures-error, #ef4444);font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .16s ease,border-color .16s ease}._BtnDanger_1tq4o_92:hover:not(:disabled){background:#ef44441a;border-color:var(--chures-error, #ef4444)}._BtnConfirm_1tq4o_73:disabled,._BtnDanger_1tq4o_92:disabled,._BtnCancel_1tq4o_53:disabled{opacity:.4;cursor:not-allowed}._InfoWrapper_cqv58_4{width:100%;max-width:24rem;animation:_infoIn_cqv58_1 .28s cubic-bezier(.2,.7,.2,1) both}@keyframes _infoIn_cqv58_1{0%{opacity:0;transform:translateY(.75rem) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}._InfoContainer_cqv58_1{width:100%;background:var(--chures-surface, #000000);border:1px solid rgb(255 255 255 / 14%);border-radius:1.25rem;padding:1.75rem 1.75rem 1.5rem;box-shadow:0 32px 80px -20px #000c}._Glass_cqv58_24{background:var(--chures-dialog-glass-bg, rgb(255 255 255 / 6%));backdrop-filter:blur(var(--chures-dialog-glass-blur, 1.25rem));-webkit-backdrop-filter:blur(var(--chures-dialog-glass-blur, 1.25rem))}._InfoTitle_cqv58_30{font-size:1.25rem;font-weight:600;letter-spacing:-.02em;color:var(--chures-fg, #ffffff);margin-bottom:.75rem}._InfoMessage_cqv58_38{font-size:.875rem;color:var(--chures-fg-muted, #9ca3af);line-height:1.5;letter-spacing:-.005em}._InfoActions_cqv58_45{display:flex;align-items:center;justify-content:flex-end;margin-top:1.5rem}._BtnClose_cqv58_52{display:inline-flex;align-items:center;padding:.625rem 1.125rem;border-radius:.625rem;border:1px solid rgb(255 255 255 / 14%);background:transparent;color:var(--chures-fg-muted, #9ca3af);font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .16s ease,color .16s ease}._BtnClose_cqv58_52:hover{background:#ffffff14;color:var(--chures-fg, #ffffff)}:where(._Backdrop_1w1e3_7){position:fixed;inset:0;background:var(--chures-overlay, rgb(0 0 0 / 58%));opacity:0;pointer-events:none;transition:opacity .26s ease}:where(._BackdropOpen_1w1e3_16){opacity:1;pointer-events:auto}:where(._Panel_1w1e3_21){position:fixed;display:flex;flex-direction:column;overflow:hidden;background:var(--chures-surface, #000000);box-shadow:0 0 3rem #00000059;transition:transform .28s cubic-bezier(.32,0,0,1)}:where(._Right_1w1e3_31){top:0;right:0;bottom:0;width:var(--chures-side-drawer-size, 22rem);max-width:100vw;transform:translate(100%)}:where(._Left_1w1e3_40){top:0;bottom:0;left:0;width:var(--chures-side-drawer-size, 22rem);max-width:100vw;transform:translate(-100%)}:where(._Top_1w1e3_49){top:0;left:0;right:0;height:var(--chures-side-drawer-size, 22rem);max-height:100vh;transform:translateY(-100%)}:where(._Bottom_1w1e3_58){left:0;right:0;bottom:0;height:var(--chures-side-drawer-size, 22rem);max-height:100vh;transform:translateY(100%)}:where(._PanelOpen_1w1e3_67){transform:translate(0)}")),document.head.appendChild(r)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
|
|
2
|
-
(function(c,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("react/jsx-runtime"),require("react"),require("framer-motion"),require("zustand"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","framer-motion","zustand","react-dom"],n):(c=typeof globalThis<"u"?globalThis:c||self,n(c.Chures={},c.ReactJSXRuntime,c.React,c.FramerMotion,c.Zustand,c.ReactDOM))})(this,(function(c,n,l,pe,We,he){"use strict";function Fe(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var se={exports:{}};var ge;function ze(){return ge||(ge=1,(function(e){(function(){var t={}.hasOwnProperty;function o(){for(var s="",i=0;i<arguments.length;i++){var u=arguments[i];u&&(s=a(s,r(u)))}return s}function r(s){if(typeof s=="string"||typeof s=="number")return s;if(typeof s!="object")return"";if(Array.isArray(s))return o.apply(null,s);if(s.toString!==Object.prototype.toString&&!s.toString.toString().includes("[native code]"))return s.toString();var i="";for(var u in s)t.call(s,u)&&s[u]&&(i=a(i,u));return i}function a(s,i){return i?s?s+" "+i:s+i:s}e.exports?(o.default=o,e.exports=o):window.classNames=o})()})(se)),se.exports}var Me=ze();const p=Fe(Me),Z={LoaderContainer:"_LoaderContainer_wa8op_24",sm:"_sm_wa8op_31",md:"_md_wa8op_32",lg:"_lg_wa8op_33",Arc1:"_Arc1_wa8op_37",Arc2:"_Arc2_wa8op_38",Arc3:"_Arc3_wa8op_39",spin:"_spin_wa8op_1",Ring1:"_Ring1_wa8op_71",Ring2:"_Ring2_wa8op_72",Ring3:"_Ring3_wa8op_73",ripple:"_ripple_wa8op_1",Dot1:"_Dot1_wa8op_86",Dot2:"_Dot2_wa8op_87",Dot3:"_Dot3_wa8op_88",dotPulse:"_dotPulse_wa8op_1",Wave1:"_Wave1_wa8op_105",Wave2:"_Wave2_wa8op_106",Wave3:"_Wave3_wa8op_107",Wave4:"_Wave4_wa8op_108",Wave5:"_Wave5_wa8op_109",waveBounce:"_waveBounce_wa8op_1"},Ce=l.createContext({});function I(e,t){const o=l.useContext(Ce);return t??o[e]}function Ue(e,t){switch(e){case"ripple":return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:t.Ring1}),n.jsx("div",{className:t.Ring2}),n.jsx("div",{className:t.Ring3})]});case"dots":return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:t.Dot1}),n.jsx("div",{className:t.Dot2}),n.jsx("div",{className:t.Dot3})]});case"wave":return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:t.Wave1}),n.jsx("div",{className:t.Wave2}),n.jsx("div",{className:t.Wave3}),n.jsx("div",{className:t.Wave4}),n.jsx("div",{className:t.Wave5})]});default:return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:t.Arc1}),n.jsx("div",{className:t.Arc2}),n.jsx("div",{className:t.Arc3})]})}}function ve({variant:e="arcs",size:t="md",color:o,className:r}){const a=I("Loader",r);return n.jsx("div",{className:p(Z.LoaderContainer,Z[t],Z[e],a),role:"status","aria-label":"Loading",style:o?{"--chures-accent":o}:void 0,children:Ue(e,Z)})}const Ie={LoadingWrapperContainer:"_LoadingWrapperContainer_1q0w7_1",SkeletonWrapper:"_SkeletonWrapper_1q0w7_9"};function Ge({isLoading:e,children:t,skeleton:o,loaderProps:r,className:a}){const s=I("LoadingWrapper",a);return e?o?n.jsx("div",{className:p(Ie.SkeletonWrapper,s),children:o}):n.jsx("div",{className:p(Ie.LoadingWrapperContainer,s),children:n.jsx(ve,{...r})}):n.jsx(n.Fragment,{children:t})}const qe="https://oauth.telegram.org/js/telegram-login.js?3";function we(e){const{botId:t,redirectUri:o,requestAccess:r="write"}=e,a=l.useRef(e.onSuccess);a.current=e.onSuccess;const s=l.useRef(!1),[i,u]=l.useState(!1),[h,f]=l.useState(!1);l.useEffect(function(){if(!t)return;const C=o??window.location.origin;f(!0),u(!1);const v=document.createElement("script");return v.src=qe,v.async=!0,v.onload=function(){const S=window.Telegram;S&&(S.Login.init({client_id:t,redirect_uri:C},function(W){s.current||(s.current=!0,a.current(W))}),u(!0)),f(!1)},v.onerror=function(){f(!1)},document.head.appendChild(v),function(){document.head.contains(v)&&document.head.removeChild(v),u(!1),f(!1)}},[t,o]);function g(){const C=window.Telegram;if(!i||!C)return;s.current=!1;const v=o??window.location.origin;C.Login.auth({client_id:t,redirect_uri:v,request_access:r},function(S){s.current||(s.current=!0,a.current(S))})}return{login:g,isReady:i,isLoading:h}}const ce={TelegramSignInButtonContainer:"_TelegramSignInButtonContainer_10wun_1",FullSize:"_FullSize_10wun_46",Icon:"_Icon_10wun_50"},$e={en:"Continue with Telegram",ru:"Войти через Telegram"};function xe(){return n.jsx("svg",{viewBox:"0 0 24 24",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",className:ce.Icon,children:n.jsx("path",{d:"M22 3.5L2.5 11l5 1.7L18 6 9.7 14l-.4 5.5 3.4-3.2 5.5 4c.9.5 1.5.2 1.7-.8L22 4.3c.2-.7-.2-1.1-.9-.8z"})})}function me({onClick:e,disabled:t,lang:o="en",title:r,label:a,fullSize:s,className:i}){l.useEffect(function(){const g="comfortaa-font";if(document.getElementById(g))return;const C=document.createElement("link");C.id=g,C.rel="stylesheet",C.href="https://fonts.googleapis.com/css2?family=Comfortaa:wght@600&display=swap",document.head.appendChild(C)},[]);const u=a??r??$e[o],h=I("TelegramSignInButton",i),f=p(ce.TelegramSignInButtonContainer,{[ce.FullSize]:s},h);return n.jsxs("button",{type:"button",className:f,onClick:e,disabled:t,children:[n.jsx(xe,{}),u]})}function He({botId:e,onSuccess:t,lang:o,title:r,redirectUri:a,requestAccess:s,children:i,className:u}){const{login:h,isReady:f}=we({botId:e,onSuccess:t,redirectUri:a,requestAccess:s});return i?n.jsx(n.Fragment,{children:i({login:h,isReady:f})}):n.jsx(me,{onClick:h,disabled:!f,lang:o,title:r,className:u})}let Ve=0;const ie=We.create((e,t)=>({toasts:[],bake:o=>{const r=Ve++;e(a=>({toasts:[...a.toasts,{...o,id:r}]})),setTimeout(()=>{t().dismiss(r)},5e3)},dismiss:o=>{e(r=>({toasts:r.toasts.filter(a=>a.id!==o)}))}})),k={ToastContainer:"_ToastContainer_1tme2_1",Toast:"_Toast_1tme2_1",error:"_error_1tme2_33",warn:"_warn_1tme2_41",info:"_info_1tme2_49",Description:"_Description_1tme2_53",DismissButton:"_DismissButton_1tme2_59",slideIn:"_slideIn_1tme2_79",slideOut:"_slideOut_1tme2_83"};function Ye({className:e}={}){const{toasts:t}=ie(),o=I("Toaster",e);return n.jsx("div",{className:p(k.ToastContainer,o),children:n.jsx(pe.AnimatePresence,{children:t.map(r=>n.jsx(pe.motion.div,{layout:!0,initial:{opacity:0,x:100,y:50},animate:{opacity:1,x:0,y:0},exit:{opacity:0,y:-50},transition:{type:"spring",stiffness:300,damping:20},children:n.jsx(Ke,{...r})},r.id))})})}function Ke({id:e,title:t,description:o,level:r,isDismissable:a}){const[s,i]=l.useState(!1),u=ie();return l.useEffect(()=>()=>{i(!0)},[]),n.jsxs("div",{className:p(k.Toast,{[k.error]:r==="Error",[k.warn]:r==="Warn",[k.info]:r==null||r==="Info",[k.slideIn]:!s,[k.slideOut]:s}),children:[n.jsx("div",{children:t}),n.jsx("div",{className:k.Description,children:o}),a&&e!==void 0&&n.jsx("div",{className:k.DismissButton,onClick:()=>u.dismiss(e),children:"×"})]})}const m={InputContainer:"_InputContainer_1uu20_15",InputField:"_InputField_1uu20_21",hasStartIcon:"_hasStartIcon_1uu20_35",hasEndIcon:"_hasEndIcon_1uu20_39",StartIcon:"_StartIcon_1uu20_43",EndIcon:"_EndIcon_1uu20_54",hasError:"_hasError_1uu20_69",disabled:"_disabled_1uu20_74",Label:"_Label_1uu20_79",lifted:"_lifted_1uu20_93",ErrorText:"_ErrorText_1uu20_104",Skeleton:"_Skeleton_1uu20_112"},Xe=l.forwardRef(function({value:t,setValue:o,label:r,isLoader:a,type:s="text",disabled:i,error:u,className:h,inputClassName:f,startIcon:g,endIcon:C,...v},S){const[W,F]=l.useState(!1),Y=W||t.length>0,D=I("Input",h),{onFocus:z,onBlur:K,...q}=v;return a?n.jsx("div",{className:p(m.Skeleton,D),"aria-hidden":"true"}):n.jsxs("div",{className:p(m.InputContainer,{[m.hasError]:!!u,[m.disabled]:i},D),children:[g&&n.jsx("span",{className:m.StartIcon,children:g}),n.jsx("input",{ref:S,className:p(m.InputField,{[m.hasStartIcon]:!!g,[m.hasEndIcon]:!!C},f),type:s,value:t,onChange:w=>o(w.target.value),onFocus:w=>{F(!0),z?.(w)},onBlur:w=>{F(!1),K?.(w)},disabled:i,...q}),r&&n.jsx("label",{className:p(m.Label,{[m.lifted]:Y}),children:r}),C&&n.jsx("span",{className:m.EndIcon,children:C}),u&&n.jsx("span",{className:m.ErrorText,children:u})]})}),y={ToggleContainer:"_ToggleContainer_1jetc_6",disabled:"_disabled_1jetc_13",Track:"_Track_1jetc_18",on:"_on_1jetc_31",Thumb:"_Thumb_1jetc_39",Label:"_Label_1jetc_57",LabelSkeleton:"_LabelSkeleton_1jetc_63",Skeleton:"_Skeleton_1jetc_78"};function Qe({checked:e,onChange:t,label:o,labelPosition:r="right",disabled:a,isLoader:s,isLoadingLabel:i,className:u}){const h=!!o||i,f=I("Toggle",u),g=i?n.jsx("span",{className:y.LabelSkeleton,"aria-hidden":"true"}):o?n.jsx("span",{className:y.Label,children:o}):null;return s?h?n.jsxs("div",{className:p(y.ToggleContainer,f),children:[r==="left"&&g,n.jsx("div",{className:y.Skeleton,"aria-hidden":"true"}),r==="right"&&g]}):n.jsx("div",{className:p(y.Skeleton,f),"aria-hidden":"true"}):n.jsxs("label",{className:p(y.ToggleContainer,{[y.disabled]:a},f),children:[r==="left"&&g,n.jsx("button",{role:"switch","aria-checked":e,className:p(y.Track,{[y.on]:e}),onClick:()=>!a&&t(!e),disabled:a,type:"button",children:n.jsx("span",{className:y.Thumb})}),r==="right"&&g]})}function Je(){const[e,t]=l.useState(!1),o=l.useRef(null),r=l.useCallback(()=>t(s=>!s),[]),a=l.useCallback(()=>t(!1),[]);return{isOpen:e,triggerRef:o,toggleOpen:r,close:a}}function Ze(e,t,o){l.useEffect(()=>{function r(s){const i=s.target;e.current?.contains(i)||o?.current?.contains(i)||t()}function a(s){s.key==="Escape"&&t()}return document.addEventListener("mousedown",r,!0),document.addEventListener("keydown",a),()=>{document.removeEventListener("mousedown",r,!0),document.removeEventListener("keydown",a)}},[t,e,o])}function Re(e,t){const[o,r]=l.useState([]);return l.useEffect(()=>{if(!t)return;let a=!1;return t(e).then(s=>{a||r(s)}),()=>{a=!0}},[e,t]),o}function x(e){return typeof e=="object"&&e!==null&&"group"in e}function Ne(e){return e.flatMap(t=>x(t)?t.options:[t])}function N(e){return typeof e=="string"?e:e.id}function R(e){return typeof e=="string"?e:e.name}function en(e,t){return e.map(o=>t.find(r=>N(r)===o)??o)}const _={DropdownContainer:"_DropdownContainer_1jz2j_13",PanelWrapper:"_PanelWrapper_1jz2j_20",Portal:"_Portal_1jz2j_34",PanelContainer:"_PanelContainer_1jz2j_18",Glass:"_Glass_1jz2j_48",Label:"_Label_1jz2j_54",lifted:"_lifted_1jz2j_68",TriggerContainer:"_TriggerContainer_1jz2j_75",Open:"_Open_1jz2j_99",TriggerPlaceholder:"_TriggerPlaceholder_1jz2j_104",TriggerValue:"_TriggerValue_1jz2j_112",TriggerIcon:"_TriggerIcon_1jz2j_120",ChipsWrapper:"_ChipsWrapper_1jz2j_127",Expand:"_Expand_1jz2j_145",MultiSelect:"_MultiSelect_1jz2j_151",ExpandHeight:"_ExpandHeight_1jz2j_156",Chip:"_Chip_1jz2j_127",SearchRow:"_SearchRow_1jz2j_175",SearchBox:"_SearchBox_1jz2j_180",SearchIcon:"_SearchIcon_1jz2j_190",SearchInput:"_SearchInput_1jz2j_197",ResultsList:"_ResultsList_1jz2j_211",OptionRow:"_OptionRow_1jz2j_216",Selected:"_Selected_1jz2j_231",Indented:"_Indented_1jz2j_235",GroupHeader:"_GroupHeader_1jz2j_240",Checkmark:"_Checkmark_1jz2j_253",CreateRow:"_CreateRow_1jz2j_259",WithBorder:"_WithBorder_1jz2j_272",CreateIcon:"_CreateIcon_1jz2j_277",CreateLabel:"_CreateLabel_1jz2j_289",EmptyHint:"_EmptyHint_1jz2j_295",SkeletonRow:"_SkeletonRow_1jz2j_302"};function nn({query:e,withBorder:t,onCreate:o}){function r(a){a.preventDefault(),o()}return n.jsxs("div",{className:p(_.CreateRow,t&&_.WithBorder),onMouseDown:r,children:[n.jsx("span",{className:_.CreateIcon,children:n.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",children:[n.jsx("line",{x1:"5",y1:"1",x2:"5",y2:"9"}),n.jsx("line",{x1:"1",y1:"5",x2:"9",y2:"5"})]})}),n.jsxs("span",{className:_.CreateLabel,children:["create “",e,"”"]})]})}function tn({label:e}){return n.jsx("div",{className:_.GroupHeader,children:e})}function ye({opt:e,isSelected:t,multiSelect:o,onPick:r,indented:a=!1}){function s(i){i.preventDefault(),r(e)}return n.jsxs("div",{className:p(_.OptionRow,t&&_.Selected,a&&_.Indented),onMouseDown:s,children:[o&&t&&n.jsx("span",{className:_.Checkmark,children:"✓"}),R(e)]})}function on({inputRef:e,query:t,onChange:o,onKeyDown:r,placeholder:a}){return n.jsx("div",{className:_.SearchRow,children:n.jsxs("div",{className:_.SearchBox,children:[n.jsx("span",{className:_.SearchIcon,children:n.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",children:[n.jsx("circle",{cx:"5",cy:"5",r:"3.5"}),n.jsx("line",{x1:"8",y1:"8",x2:"11",y2:"11"})]})}),n.jsx("input",{ref:e,className:_.SearchInput,value:t,onChange:o,onKeyDown:r,placeholder:a})]})})}function rn({count:e}){return n.jsx(n.Fragment,{children:Array.from({length:e}).map((t,o)=>n.jsx("div",{className:_.SkeletonRow},o))})}function an({onSearch:e,onCreate:t,onPick:o,onClose:r,anchorRef:a,placeholder:s,options:i=[],excluded:u=[],selected:h=[],multiSelect:f=!1,selectedAtTop:g=!1,isLoading:C=!1,emptyHint:v="no results found",skeletonRowCount:S=4,onError:W=console.error,glass:F=!1,portal:Y=!1,renderOption:D}){const[z,K]=l.useState(""),[q,w]=l.useState(!1),[B,X]=l.useState(null),Q=l.useRef(null),oe=l.useRef(null),M=!!e,re=Re(z,e);Ze(oe,r,a);const P=F||Y;l.useLayoutEffect(()=>{if(!P)return;function d(){a?.current&&X(a.current.getBoundingClientRect())}return d(),window.addEventListener("scroll",d,!0),window.addEventListener("resize",d),()=>{window.removeEventListener("scroll",d,!0),window.removeEventListener("resize",d)}},[P,a]),l.useEffect(()=>{M&&Q.current?.focus()},[M]);const J=(e?re:i).flatMap(d=>{if(x(d)){const b=d.options.filter(bn=>!u.includes(N(bn)));return b.length>0?[{...d,options:b}]:[]}return u.includes(N(d))?[]:[d]}),ae=g?[...J.filter(d=>!x(d)&&h.includes(N(d))),...J.filter(d=>x(d)||!h.includes(N(d)))]:J,U=Ne(ae),T=z.trim(),_e=U.some(d=>R(d).toLowerCase()===T.toLowerCase()),fe=!!t&&T.length>0&&!_e;async function Pe(){!T||q||!t||(w(!0),t(T).then($).catch(W).finally(()=>w(!1)))}function $(d){o(d),f||r()}function En(d){K(d.target.value)}function Dn(d){d.key==="Enter"&&(d.preventDefault(),U.length>0?$(U[0]):fe&&Pe())}const Bn=s??(t?"search or add new…":"search…");if(P&&!B)return null;const Oe=n.jsx("div",{ref:oe,className:p(_.PanelWrapper,{[_.Portal]:P}),style:P&&B?{top:B.bottom,left:B.left,width:B.width}:void 0,children:n.jsxs("div",{className:p(_.PanelContainer,{[_.Glass]:F}),children:[M&&n.jsx(on,{inputRef:Q,query:z,onChange:En,onKeyDown:Dn,placeholder:Bn}),n.jsx("div",{className:_.ResultsList,children:C?n.jsx(rn,{count:S}):n.jsxs(n.Fragment,{children:[ae.map(d=>x(d)?n.jsxs(l.Fragment,{children:[n.jsx(tn,{label:d.group}),d.options.map(b=>n.jsx(l.Fragment,{children:D?D(b,{isSelected:h.includes(N(b)),multiSelect:f,indented:!0,onPick:()=>$(b)}):n.jsx(ye,{opt:b,isSelected:h.includes(N(b)),multiSelect:f,onPick:$,indented:!0})},N(b)))]},`group:${d.group}`):n.jsx(l.Fragment,{children:D?D(d,{isSelected:h.includes(N(d)),multiSelect:f,indented:!1,onPick:()=>$(d)}):n.jsx(ye,{opt:d,isSelected:h.includes(N(d)),multiSelect:f,onPick:$})},N(d))),fe&&n.jsx(nn,{query:T,withBorder:U.length>0,onCreate:Pe}),U.length===0&&!fe&&n.jsx("div",{className:_.EmptyHint,children:v})]})})]})});return P?he.createPortal(Oe,document.body):Oe}function Se({size:e=14,strokeWidth:t=2,className:o}){return n.jsx("svg",{viewBox:"0 0 24 24",width:e,height:e,fill:"none",stroke:"currentColor",strokeWidth:t,strokeLinecap:"round",strokeLinejoin:"round",className:o,children:n.jsx("polyline",{points:"6 9 12 15 18 9"})})}function sn({size:e=18,strokeWidth:t=2.5,shrink:o=!0}){return n.jsx("svg",{viewBox:"0 0 24 24",width:e,height:e,fill:"none",stroke:"currentColor",strokeWidth:t,strokeLinecap:"round",strokeLinejoin:"round",style:o?{flexShrink:0}:void 0,children:n.jsx("polyline",{points:"20 6 9 17 4 12"})})}function cn(){return n.jsxs("svg",{viewBox:"0 0 24 24",width:"14",height:"14",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[n.jsx("path",{d:"M12 20h9"}),n.jsx("path",{d:"M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4z"})]})}function ln(){return n.jsxs("svg",{viewBox:"0 0 24 24",width:"14",height:"14",fill:"none",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[n.jsx("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),n.jsx("circle",{cx:"12",cy:"7",r:"4"})]})}function dn({size:e=14,strokeWidth:t=2,className:o}){return n.jsxs("svg",{viewBox:"0 0 24 24",width:e,height:e,fill:"none",stroke:"currentColor",strokeWidth:t,strokeLinecap:"round",strokeLinejoin:"round",className:o,children:[n.jsx("circle",{cx:"11",cy:"11",r:"7"}),n.jsx("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})]})}function un({triggerRef:e,isOpen:t,onClick:o,selectedOptions:r,multiSelect:a,placeholder:s,onOverflow:i="scroll"}){const u=i==="expand";return n.jsxs("button",{type:"button",ref:e,className:p(_.TriggerContainer,t&&_.Open,a&&_.MultiSelect,u&&_.ExpandHeight),onClick:o,"aria-expanded":t,"aria-haspopup":"listbox",children:[a&&r.length>0?n.jsx("div",{className:p(_.ChipsWrapper,u&&_.Expand),children:r.map((h,f)=>n.jsx("span",{className:_.Chip,children:R(h)},f))}):n.jsx("span",{className:r.length===0?_.TriggerPlaceholder:_.TriggerValue,children:r.length===0?s:r.map(R).join(", ")}),n.jsx("span",{className:_.TriggerIcon,children:n.jsx(Se,{size:12})})]})}function _n({options:e=[],value:t,onChange:o,onSearch:r,onCreate:a,excluded:s,multiSelect:i=!1,selectedAtTop:u=!1,onOverflow:h="scroll",label:f,placeholder:g="select…",searchPlaceholder:C,emptyHint:v,isLoading:S,skeletonRowCount:W,onError:F,className:Y,glass:D=!1,portal:z=!1,renderOption:K,children:q}){const{isOpen:w,triggerRef:B,toggleOpen:X,close:Q}=Je(),oe=I("Dropdown",Y),M=en(t,Ne(e)),re=w||M.length>0,P=f&&!re?"":g;function J(U){const T=N(U);o(i?t.includes(T)?t.filter(_e=>_e!==T):[...t,T]:[T])}const ae={ref:B,onClick:X,"aria-expanded":w,"aria-haspopup":"listbox"};return n.jsxs("div",{className:p(_.DropdownContainer,oe),children:[f&&n.jsx("label",{className:p(_.Label,{[_.lifted]:re}),children:f}),q?q({selectedOptions:M,isOpen:w,toggleOpen:X,close:Q,triggerProps:ae}):n.jsx(un,{triggerRef:B,isOpen:w,onClick:X,selectedOptions:M,multiSelect:i,onOverflow:h,placeholder:P}),w&&n.jsx(an,{options:e,onSearch:r,onCreate:a,onPick:J,onClose:Q,anchorRef:B,excluded:s,multiSelect:i,selectedAtTop:u,selected:t,placeholder:C,emptyHint:v,isLoading:S,skeletonRowCount:W,onError:F,glass:D,portal:z,renderOption:K})]})}const G={Btn:"_Btn_1tozl_10",Primary:"_Primary_1tozl_35",Secondary:"_Secondary_1tozl_50",Ghost:"_Ghost_1tozl_62",IconDanger:"_IconDanger_1tozl_74",Danger:"_Danger_1tozl_95"},fn={primary:G.Primary,secondary:G.Secondary,danger:G.Danger,ghost:G.Ghost,iconDanger:G.IconDanger};function pn({variant:e="default",className:t,children:o,...r}){const a=I("Button",t),s=e==="unstyled";return n.jsx("button",{type:"button",...r,className:p(!s&&G.Btn,!s&&fn[e],a),children:o})}const L={ConfirmWrapper:"_ConfirmWrapper_1tq4o_4",ConfirmContainer:"_ConfirmContainer_1tq4o_1",Glass:"_Glass_1tq4o_24",ConfirmTitle:"_ConfirmTitle_1tq4o_30",ConfirmMessage:"_ConfirmMessage_1tq4o_38",ConfirmActions:"_ConfirmActions_1tq4o_45",BtnCancel:"_BtnCancel_1tq4o_53",BtnConfirm:"_BtnConfirm_1tq4o_73",BtnDanger:"_BtnDanger_1tq4o_92"};function hn({title:e,message:t,confirmLabel:o="Confirm",cancelLabel:r="Cancel",danger:a=!1,onConfirm:s,onClose:i,className:u,glass:h=!1}){const[f,g]=l.useState(!1),C=I("ConfirmDialog",u);function v(){g(!0),Promise.resolve(s()).finally(()=>{g(!1),i()})}return n.jsx("div",{className:L.ConfirmWrapper,children:n.jsxs("div",{className:p(L.ConfirmContainer,{[L.Glass]:h},C),role:"dialog","aria-modal":"true",children:[n.jsx("h2",{className:L.ConfirmTitle,children:e}),n.jsx("p",{className:L.ConfirmMessage,children:t}),n.jsxs("div",{className:L.ConfirmActions,children:[n.jsx("button",{className:L.BtnCancel,type:"button",onClick:i,disabled:f,children:r}),n.jsx("button",{className:p(a?L.BtnDanger:L.BtnConfirm),type:"button",onClick:v,disabled:f,children:f?"…":o})]})]})})}const O={InfoWrapper:"_InfoWrapper_cqv58_4",InfoContainer:"_InfoContainer_cqv58_1",Glass:"_Glass_cqv58_24",InfoTitle:"_InfoTitle_cqv58_30",InfoMessage:"_InfoMessage_cqv58_38",InfoActions:"_InfoActions_cqv58_45",BtnClose:"_BtnClose_cqv58_52"};function gn({title:e,message:t,onClose:o,className:r,glass:a=!1}){const s=I("InfoDialog",r);return n.jsx("div",{className:O.InfoWrapper,children:n.jsxs("div",{className:p(O.InfoContainer,{[O.Glass]:a},s),role:"dialog","aria-modal":"true",children:[n.jsx("h2",{className:O.InfoTitle,children:e}),n.jsx("p",{className:O.InfoMessage,children:t}),n.jsx("div",{className:O.InfoActions,children:n.jsx("button",{className:O.BtnClose,type:"button",onClick:o,children:"Got it"})})]})})}function Cn({buttons:e,containerClassName:t}){const o=I("ModalActions",t);return n.jsx("div",{className:o,children:e.map((r,a)=>n.jsx("button",{className:r.className,type:"button",onClick:r.onClick,disabled:r.disabled,children:r.label},a))})}function vn({onClick:e,disabled:t,className:o}){const r=I("ModalClose",o);return n.jsx("button",{className:r,type:"button",onClick:e,disabled:t,"aria-label":"Close",children:n.jsxs("svg",{viewBox:"0 0 24 24",width:"18",height:"18",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",children:[n.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),n.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})}const A={Backdrop:"_Backdrop_1w1e3_7",BackdropOpen:"_BackdropOpen_1w1e3_16",Panel:"_Panel_1w1e3_21",Right:"_Right_1w1e3_31",Left:"_Left_1w1e3_40",Top:"_Top_1w1e3_49",Bottom:"_Bottom_1w1e3_58",PanelOpen:"_PanelOpen_1w1e3_67"},H=[];let In=1,ee=!1,le=0;function Te(){if(le>0){le-=1;return}const e=H.pop();ke(),e&&e.onBack()}function wn(){ee||(ee=!0,window.addEventListener("popstate",Te))}function ke(){H.length>0||!ee||(ee=!1,window.removeEventListener("popstate",Te))}function Le(e){const t=In++;return H.push({handle:t,onBack:e}),wn(),window.history.pushState({churesOverlayBackHandle:t},""),t}function de(e){const t=H.findIndex(o=>o.handle===e);t!==-1&&(H.splice(t,1),ke(),le+=1,window.history.back())}function Ee(e,t){const o=l.useRef([]),r=l.useRef(t);r.current=t,l.useEffect(()=>{const a=o.current;for(;a.length<e;)a.push(Le(()=>r.current()));for(;a.length>e;){const s=a.pop();s!==void 0&&de(s)}},[e]),l.useEffect(()=>()=>{const a=o.current;for(;a.length>0;){const s=a.pop();s!==void 0&&de(s)}},[])}const mn={top:A.Top,right:A.Right,bottom:A.Bottom,left:A.Left};let j=null,ue=0;function De(){return j||(j=document.createElement("div"),j.setAttribute("data-chures-side-drawer-root",""),document.body.appendChild(j)),j}function Nn({open:e,onClose:t,children:o,side:r="right",backdropBlur:a=0,className:s}){const[i,u]=l.useState(!1),h=I("SideDrawer",s);Ee(e?1:0,t),l.useLayoutEffect(()=>{if(!e){u(!1);return}document.body.appendChild(De());const g=requestAnimationFrame(()=>u(!0));return()=>cancelAnimationFrame(g)},[e]),l.useEffect(()=>(ue+=1,()=>{ue-=1,ue===0&&j&&(j.remove(),j=null)}),[]);const f=a>0?{backdropFilter:`blur(${a}rem)`,WebkitBackdropFilter:`blur(${a}rem)`}:void 0;return he.createPortal(n.jsxs(n.Fragment,{children:[n.jsx("div",{className:p(A.Backdrop,i&&A.BackdropOpen),style:f,onClick:t}),n.jsx("div",{className:p(A.Panel,mn[r],i&&A.PanelOpen,h),children:o})]}),De())}function yn({classNames:e,children:t}){return n.jsx(Ce.Provider,{value:e,children:t})}var ne=(e=>(e[e.OK=0]="OK",e[e.CANCELLED=1]="CANCELLED",e[e.UNKNOWN=2]="UNKNOWN",e[e.INVALID_ARGUMENT=3]="INVALID_ARGUMENT",e[e.DEADLINE_EXCEEDED=4]="DEADLINE_EXCEEDED",e[e.NOT_FOUND=5]="NOT_FOUND",e[e.ALREADY_EXISTS=6]="ALREADY_EXISTS",e[e.PERMISSION_DENIED=7]="PERMISSION_DENIED",e[e.RESOURCE_EXHAUSTED=8]="RESOURCE_EXHAUSTED",e[e.FAILED_PRECONDITION=9]="FAILED_PRECONDITION",e[e.ABORTED=10]="ABORTED",e[e.OUT_OF_RANGE=11]="OUT_OF_RANGE",e[e.UNIMPLEMENTED=12]="UNIMPLEMENTED",e[e.INTERNAL=13]="INTERNAL",e[e.UNAVAILABLE=14]="UNAVAILABLE",e[e.DATA_LOSS=15]="DATA_LOSS",e[e.UNAUTHENTICATED=16]="UNAUTHENTICATED",e))(ne||{});const Be="type.googleapis.com/google.rpc.ErrorInfo",be="type.googleapis.com/google.rpc.BadRequest",Ae="type.googleapis.com/google.rpc.PreconditionFailure";function te(e){return typeof e=="object"&&e!==null}function E(e){return typeof e=="string"?e:""}function je(e){if(!te(e))return{kind:"Unknown",typeUrl:"",raw:e};const t=E(e["@type"]);switch(t){case Be:{const o=te(e.metadata)?e.metadata:{},r={};for(const a of Object.keys(o))r[a]=E(o[a]);return{kind:"ErrorInfo",reason:E(e.reason),domain:E(e.domain),metadata:r}}case be:return{kind:"BadRequest",fieldViolations:(Array.isArray(e.fieldViolations)?e.fieldViolations:[]).map(a=>{const s=te(a)?a:{};return{field:E(s.field),description:E(s.description)}})};case Ae:return{kind:"PreconditionFailure",violations:(Array.isArray(e.violations)?e.violations:[]).map(a=>{const s=te(a)?a:{};return{type:E(s.type),subject:E(s.subject),description:E(s.description)}})};default:return{kind:"Unknown",typeUrl:t,raw:e}}}function Sn(e){return e.kind==="ErrorInfo"}function Tn(e){return e.kind==="BadRequest"}function kn(e){return e.kind==="PreconditionFailure"}class V extends Error{constructor(t){super(t.title),this.isRetryable=t.isRetryable??!1,this.grpcCode=t.grpcCode,this.details=t.details??[]}}function Ln(e){if(e instanceof V)return e;if(e instanceof Error&&e.message==="Failed to fetch")return new V({title:"Server unavailable. Try again later",isRetryable:!0});if(typeof e=="object"&&e!==null&&"code"in e){const t=e,o=t.code===ne.UNAVAILABLE||t.code===ne.INTERNAL,r=(t.details??[]).map(je);return new V({title:t.message,isRetryable:o,grpcCode:t.code,details:r})}return new V({title:String(e),isRetryable:!1})}c.AvatarFallbackIcon=ln,c.BAD_REQUEST_TYPE_URL=be,c.Button=pn,c.CheckmarkIcon=sn,c.ChevronDownIcon=Se,c.ChuresConfigProvider=yn,c.ConfirmDialog=hn,c.Dropdown=_n,c.ERROR_INFO_TYPE_URL=Be,c.EditPencilIcon=cn,c.Errors=ne,c.InfoDialog=gn,c.Input=Xe,c.Loader=ve,c.LoadingWrapper=Ge,c.ModalActions=Cn,c.ModalClose=vn,c.PRECONDITION_FAILURE_TYPE_URL=Ae,c.SearchIcon=dn,c.ServiceError=V,c.SideDrawer=Nn,c.TelegramAuth=He,c.TelegramSignInButton=me,c.Toaster=Ye,c.Toggle=Qe,c.isBadRequest=Tn,c.isErrorInfo=Sn,c.isPreconditionFailure=kn,c.parseErrorDetail=je,c.parseGrpcError=Ln,c.popOverlayBack=de,c.pushOverlayBack=Le,c.useBackableOverlay=Ee,c.useComponentClassName=I,c.useTelegramLogin=we,c.useToaster=ie,Object.defineProperty(c,Symbol.toStringTag,{value:"Module"})}));
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var r=document.createElement("style");r.appendChild(document.createTextNode('@layer chures-defaults{:root{--chures-accent: #229ED9;--chures-accent-muted: rgb(34 158 217 / 50%);--chures-btn-from: #2AABEE;--chures-btn-to: #229ED9;--chures-button-bg: var(--chures-accent);--chures-error: #ef4444;--chures-warn: #f59e0b;--chures-bg: #000000;--chures-fg: #ffffff;--chures-fg-muted: #9ca3af;--chures-surface: #000000;--chures-font-sm: .875rem;--chures-font-xs: .75rem;--chures-input-bg: #111111;--chures-input-height: 3rem;--chures-input-radius: .75rem;--chures-skeleton-shine: #1e1e1e;--chures-toggle-width: 2.75rem;--chures-toggle-height: 1.5rem;--chures-toggle-thumb: 1.125rem;--chures-toggle-bg-off: rgb(255 255 255 / 13%);--chures-toggle-bg-on: var(--chures-accent);--chures-toggle-thumb-color: #ffffff;--chures-toggle-label-skeleton-w: 5rem;--chures-dropdown-bg: var(--chures-bg);--chures-dropdown-radius: .75rem;--chures-dropdown-row-radius: .375rem;--chures-dropdown-border: var(--chures-accent);--chures-dropdown-border-subtle: var(--chures-accent-muted);--chures-dropdown-hover: rgb(255 255 255 / 8%);--chures-dropdown-create-bg: rgb(34 158 217 / 12%);--chures-dropdown-create-bg-hover: rgb(34 158 217 / 20%);--chures-dropdown-trigger-border: rgb(255 255 255 / 22%);--chures-dropdown-trigger-border-hover: rgb(255 255 255 / 38%);--chures-dropdown-trigger-focus-ring: rgb(34 158 217 / 15%);--chures-dropdown-chip-border: rgb(34 158 217 / 30%);--chures-dropdown-panel-gap: .375rem;--chures-dropdown-glass-bg: rgb(255 255 255 / 6%);--chures-dropdown-glass-blur: 1.25rem;--chures-dialog-glass-bg: rgb(255 255 255 / 6%);--chures-dialog-glass-blur: 1.25rem;--chures-overlay: rgb(0 0 0 / 58%);--chures-side-drawer-size: 22rem;--chures-flyout-bg: #0d0d0d;--chures-flyout-min-width: 10rem;--chures-flyout-border: rgb(255 255 255 / 11%);--chures-flyout-radius: .5rem;--chures-flyout-shadow: rgb(0 0 0 / 80%);--chures-flyout-fg: rgb(255 255 255 / 55%);--chures-flyout-fg-strong: rgb(255 255 255 / 92%);--chures-flyout-fg-muted: rgb(255 255 255 / 32%);--chures-flyout-hover: rgb(255 255 255 / 4%);--chures-flyout-skeleton: rgb(255 255 255 / 7%);--chures-flyout-font: .8125rem;--chures-flyout-font-sm: .6875rem;--chures-flyout-font-md: .75rem;--chures-flyout-font-mono: "JetBrains Mono", ui-monospace, sfmono-regular, menlo, monospace}}@keyframes _spin_wa8op_1{to{transform:rotate(360deg)}}@keyframes _ripple_wa8op_1{0%{transform:scale(.08);opacity:.9}to{transform:scale(1);opacity:0}}@keyframes _dotPulse_wa8op_1{0%,to{transform:translate(-50%,-50%) scale(.55);opacity:.3}50%{transform:translate(-50%,calc(-50% - var(--sz) * .1)) scale(1);opacity:1}}@keyframes _waveBounce_wa8op_1{0%,55%,to{transform:translate(-50%,-50%) scale(.8);opacity:.4}27%{transform:translate(-50%,calc(-50% - var(--sz) * .28)) scale(1);opacity:1}}._LoaderContainer_wa8op_24{position:relative;flex-shrink:0}._sm_wa8op_31{width:1.5rem;height:1.5rem;--sz: 1.5rem;--arc-gap: .2rem;--arc-bw: .125rem}._md_wa8op_32{width:2.5rem;height:2.5rem;--sz: 2.5rem;--arc-gap: .35rem;--arc-bw: .1875rem}._lg_wa8op_33{width:4rem;height:4rem;--sz: 4rem;--arc-gap: .55rem;--arc-bw: .25rem}._Arc1_wa8op_37,._Arc2_wa8op_38,._Arc3_wa8op_39{position:absolute;border-radius:50%;border:var(--arc-bw) solid transparent}._Arc1_wa8op_37{inset:0;border-top-color:var(--chures-accent, #229ED9);border-left-color:var(--chures-accent, #229ED9);animation:_spin_wa8op_1 1.2s linear infinite;filter:drop-shadow(0 0 .25rem var(--chures-accent, #229ED9))}._Arc2_wa8op_38{inset:var(--arc-gap);border-bottom-color:var(--chures-accent, #229ED9);border-right-color:var(--chures-accent, #229ED9);animation:_spin_wa8op_1 1.8s linear infinite reverse;opacity:.8}._Arc3_wa8op_39{inset:calc(var(--arc-gap) * 2);border-top-color:var(--chures-accent, #229ED9);border-right-color:var(--chures-accent, #229ED9);animation:_spin_wa8op_1 2.4s linear infinite;opacity:.6}._Ring1_wa8op_71,._Ring2_wa8op_72,._Ring3_wa8op_73{position:absolute;inset:0;border-radius:50%;border:var(--arc-bw) solid var(--chures-accent, #229ED9);animation:_ripple_wa8op_1 1.8s ease-out infinite both}._Ring2_wa8op_72{animation-delay:.6s}._Ring3_wa8op_73{animation-delay:1.2s}._Dot1_wa8op_86,._Dot2_wa8op_87,._Dot3_wa8op_88{position:absolute;top:50%;border-radius:50%;width:calc(var(--sz) * .2);height:calc(var(--sz) * .2);background:var(--chures-accent, #229ED9);box-shadow:0 0 calc(var(--sz) * .14) var(--chures-accent, #229ED9);animation:_dotPulse_wa8op_1 1.1s ease-in-out infinite both}._Dot1_wa8op_86{left:22%}._Dot2_wa8op_87{left:50%;animation-delay:.18s}._Dot3_wa8op_88{left:78%;animation-delay:.36s}._Wave1_wa8op_105,._Wave2_wa8op_106,._Wave3_wa8op_107,._Wave4_wa8op_108,._Wave5_wa8op_109{position:absolute;top:50%;border-radius:50%;width:calc(var(--sz) * .16);height:calc(var(--sz) * .16);background:var(--chures-accent, #229ED9);box-shadow:0 0 calc(var(--sz) * .1) var(--chures-accent, #229ED9);animation:_waveBounce_wa8op_1 1s ease-in-out infinite both}._Wave1_wa8op_105{left:10%}._Wave2_wa8op_106{left:28%;animation-delay:.12s}._Wave3_wa8op_107{left:46%;animation-delay:.24s}._Wave4_wa8op_108{left:64%;animation-delay:.36s}._Wave5_wa8op_109{left:82%;animation-delay:.48s}._LoadingWrapperContainer_1q0w7_1{display:flex;align-items:center;justify-content:center;width:100%;min-height:4rem}._SkeletonWrapper_1q0w7_9{width:100%}._TelegramSignInButtonContainer_10wun_1{display:inline-flex;align-items:center;justify-content:center;gap:.625rem;width:100%;padding:1rem 1.375rem;background:linear-gradient(180deg,var(--chures-btn-from, #2AABEE) 0%,var(--chures-btn-to, #229ED9) 100%);border:0;border-radius:.875rem;color:#fff;font-family:Comfortaa,sans-serif;font-weight:600;font-size:1rem;letter-spacing:-.005em;cursor:pointer;box-shadow:inset 0 .0625rem #ffffff26,0 .75rem 2rem -.75rem #2aabee8c;transition:transform .14s ease,box-shadow .2s ease,filter .16s ease}._TelegramSignInButtonContainer_10wun_1:hover{transform:translateY(-.0625rem);box-shadow:inset 0 .0625rem #ffffff2e,0 1.125rem 2.375rem -.75rem #2aabeea6;filter:brightness(1.05)}._TelegramSignInButtonContainer_10wun_1:active{transform:translateY(0);filter:brightness(.97)}._TelegramSignInButtonContainer_10wun_1:focus-visible{outline:.125rem solid rgba(255,255,255,.8);outline-offset:.125rem}._TelegramSignInButtonContainer_10wun_1:disabled{opacity:.6;cursor:not-allowed}._FullSize_10wun_46{height:100%}._Icon_10wun_50{flex-shrink:0}._ToastContainer_1tme2_1{position:fixed;right:1.5rem;top:1.5rem;width:clamp(25vw,24.5rem,95vw);display:flex;flex-direction:column;gap:1rem;z-index:9999}._Toast_1tme2_1{min-height:4rem;border:var(--chures-accent, #229ED9) 1px solid;border-radius:1rem;padding:1rem;box-sizing:border-box;position:relative;background:var(--chures-surface, #000000);display:flex;flex-direction:column}._Toast_1tme2_1>div:first-child{font-weight:700;font-size:var(--chures-font-sm, .875rem);color:var(--chures-fg, #ffffff)}._Toast_1tme2_1._error_1tme2_33{border-color:var(--chures-error, #ef4444)}._Toast_1tme2_1._error_1tme2_33>div:first-child{color:var(--chures-error, #ef4444)}._Toast_1tme2_1._warn_1tme2_41{border-color:var(--chures-warn, #f59e0b)}._Toast_1tme2_1._warn_1tme2_41>div:first-child{color:var(--chures-warn, #f59e0b)}._Toast_1tme2_1._info_1tme2_49{border-color:var(--chures-accent, #229ED9)}._Toast_1tme2_1 ._Description_1tme2_53{color:var(--chures-fg-muted, #9ca3af);font-size:var(--chures-font-xs, .75rem);margin-top:.125rem}._Toast_1tme2_1 ._DismissButton_1tme2_59{position:absolute;width:1rem;height:1rem;display:flex;justify-content:center;align-items:center;top:0;right:1%;cursor:pointer;font-size:1.5rem;color:var(--chures-fg-muted, #9ca3af)}._slideIn_1tme2_79{animation:_slideIn_1tme2_79 .2s ease forwards}._slideOut_1tme2_83{animation:_slideOut_1tme2_83 .2s ease forwards}@keyframes _slideIn_1tme2_79{0%{opacity:0;transform:translate(2rem)}to{opacity:1;transform:translate(0)}}@keyframes _slideOut_1tme2_83{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(2rem)}}@keyframes _shimmer_1uu20_1{0%{background-position:-200% 0}to{background-position:200% 0}}:where(._InputContainer_1uu20_15){position:relative;width:100%;height:var(--chures-input-height, 3rem)}:where(._InputField_1uu20_21){width:100%;height:100%;background:var(--chures-input-bg, #111111);border:.0625rem solid rgb(255 255 255 / 13%);border-radius:var(--chures-input-radius, .75rem);color:var(--chures-fg, #ffffff);font-size:var(--chures-font-sm, .875rem);padding:0 .875rem;outline:none;transition:border-color .18s ease;box-sizing:border-box}:where(._InputField_1uu20_21._hasStartIcon_1uu20_35){padding-left:2.25rem}:where(._InputField_1uu20_21._hasEndIcon_1uu20_39){padding-right:2.25rem}:where(._StartIcon_1uu20_43){position:absolute;left:.875rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;color:var(--chures-fg-muted, #9ca3af);pointer-events:none}:where(._EndIcon_1uu20_54){position:absolute;right:.875rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;color:var(--chures-fg-muted, #9ca3af);pointer-events:none}:where(._InputField_1uu20_21):focus{border-color:#ffffff59}:where(._hasError_1uu20_69 ._InputField_1uu20_21),:where(._hasError_1uu20_69 ._InputField_1uu20_21):focus{border-color:var(--chures-error, #ef4444)}:where(._disabled_1uu20_74 ._InputField_1uu20_21){opacity:.45;cursor:not-allowed}:where(._Label_1uu20_79){position:absolute;left:.875rem;top:50%;transform:translateY(-50%);transform-origin:left center;color:var(--chures-fg-muted, #9ca3af);font-size:var(--chures-font-sm, .875rem);pointer-events:none;transition:all .18s ease;padding:0 .25rem;border-radius:.1875rem}:where(._Label_1uu20_79._lifted_1uu20_93){top:0;transform:translateY(-50%) scale(.82);background:var(--chures-input-bg, #111111);color:var(--chures-fg-muted, #9ca3af)}:where(._hasError_1uu20_69 ._Label_1uu20_79._lifted_1uu20_93){color:var(--chures-error, #ef4444)}:where(._ErrorText_1uu20_104){display:block;margin-top:.25rem;padding-left:.875rem;font-size:var(--chures-font-xs, .75rem);color:var(--chures-error, #ef4444)}:where(._Skeleton_1uu20_112){width:100%;height:var(--chures-input-height, 3rem);border-radius:var(--chures-input-radius, .75rem);background:linear-gradient(90deg,var(--chures-input-bg, #111111) 25%,var(--chures-skeleton-shine, #1e1e1e) 50%,var(--chures-input-bg, #111111) 75%);background-size:200% 100%;animation:_shimmer_1uu20_1 1.5s ease-in-out infinite}@keyframes _shimmer_1jetc_1{0%{background-position:-200% 0}to{background-position:200% 0}}._ToggleContainer_1jetc_6{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer}._disabled_1jetc_13{opacity:.45;cursor:not-allowed}._Track_1jetc_18{position:relative;width:var(--chures-toggle-width, 2.75rem);height:var(--chures-toggle-height, 1.5rem);border-radius:624.9375rem;background:var(--chures-toggle-bg-off, rgb(255 255 255 / 13%));border:none;padding:0;cursor:pointer;transition:background .2s ease;flex-shrink:0}._Track_1jetc_18._on_1jetc_31{background:var(--chures-toggle-bg-on, var(--chures-accent, #229ED9))}._disabled_1jetc_13 ._Track_1jetc_18{cursor:not-allowed}._Thumb_1jetc_39{position:absolute;top:0;bottom:0;margin:auto 0;left:.1875rem;width:var(--chures-toggle-thumb, 1.125rem);height:var(--chures-toggle-thumb, 1.125rem);border-radius:50%;background:var(--chures-toggle-thumb-color, #ffffff);transition:left .2s ease;pointer-events:none}._Track_1jetc_18._on_1jetc_31 ._Thumb_1jetc_39{left:calc(var(--chures-toggle-width, 2.75rem) - var(--chures-toggle-thumb, 1.125rem) - .1875rem)}._Label_1jetc_57{font-size:var(--chures-font-sm, .875rem);color:var(--chures-fg, #ffffff);-webkit-user-select:none;user-select:none}._LabelSkeleton_1jetc_63{display:inline-block;width:var(--chures-toggle-label-skeleton-w, 5rem);height:var(--chures-font-sm, .875rem);border-radius:624.9375rem;background:linear-gradient(90deg,var(--chures-input-bg, #111111) 25%,var(--chures-skeleton-shine, #1e1e1e) 50%,var(--chures-input-bg, #111111) 75%);background-size:200% 100%;animation:_shimmer_1jetc_1 1.5s ease-in-out infinite}._Skeleton_1jetc_78{width:var(--chures-toggle-width, 2.75rem);height:var(--chures-toggle-height, 1.5rem);border-radius:624.9375rem;background:linear-gradient(90deg,var(--chures-input-bg, #111111) 25%,var(--chures-skeleton-shine, #1e1e1e) 50%,var(--chures-input-bg, #111111) 75%);background-size:200% 100%;animation:_shimmer_1jetc_1 1.5s ease-in-out infinite}@layer chures-defaults{:root{--chures-accent: #229ED9;--chures-accent-muted: rgb(34 158 217 / 50%);--chures-btn-from: #2AABEE;--chures-btn-to: #229ED9;--chures-button-bg: var(--chures-accent);--chures-error: #ef4444;--chures-warn: #f59e0b;--chures-bg: #000000;--chures-fg: #ffffff;--chures-fg-muted: #9ca3af;--chures-surface: #000000;--chures-font-sm: .875rem;--chures-font-xs: .75rem;--chures-input-bg: #111111;--chures-input-height: 3rem;--chures-input-radius: .75rem;--chures-skeleton-shine: #1e1e1e;--chures-toggle-width: 2.75rem;--chures-toggle-height: 1.5rem;--chures-toggle-thumb: 1.125rem;--chures-toggle-bg-off: rgb(255 255 255 / 13%);--chures-toggle-bg-on: var(--chures-accent);--chures-toggle-thumb-color: #ffffff;--chures-toggle-label-skeleton-w: 5rem;--chures-dropdown-bg: var(--chures-bg);--chures-dropdown-radius: .75rem;--chures-dropdown-row-radius: .375rem;--chures-dropdown-border: var(--chures-accent);--chures-dropdown-border-subtle: var(--chures-accent-muted);--chures-dropdown-hover: rgb(255 255 255 / 8%);--chures-dropdown-create-bg: rgb(34 158 217 / 12%);--chures-dropdown-create-bg-hover: rgb(34 158 217 / 20%);--chures-dropdown-trigger-border: rgb(255 255 255 / 22%);--chures-dropdown-trigger-border-hover: rgb(255 255 255 / 38%);--chures-dropdown-trigger-focus-ring: rgb(34 158 217 / 15%);--chures-dropdown-chip-border: rgb(34 158 217 / 30%);--chures-dropdown-panel-gap: .375rem;--chures-dropdown-glass-bg: rgb(255 255 255 / 6%);--chures-dropdown-glass-blur: 1.25rem;--chures-dialog-glass-bg: rgb(255 255 255 / 6%);--chures-dialog-glass-blur: 1.25rem;--chures-overlay: rgb(0 0 0 / 58%);--chures-side-drawer-size: 22rem;--chures-flyout-bg: #0d0d0d;--chures-flyout-min-width: 10rem;--chures-flyout-border: rgb(255 255 255 / 11%);--chures-flyout-radius: .5rem;--chures-flyout-shadow: rgb(0 0 0 / 80%);--chures-flyout-fg: rgb(255 255 255 / 55%);--chures-flyout-fg-strong: rgb(255 255 255 / 92%);--chures-flyout-fg-muted: rgb(255 255 255 / 32%);--chures-flyout-hover: rgb(255 255 255 / 4%);--chures-flyout-skeleton: rgb(255 255 255 / 7%);--chures-flyout-font: .8125rem;--chures-flyout-font-sm: .6875rem;--chures-flyout-font-md: .75rem;--chures-flyout-font-mono: "JetBrains Mono", ui-monospace, sfmono-regular, menlo, monospace}}@keyframes _panelIn_1jz2j_1{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:none}}@keyframes _shimmer_1jz2j_1{0%{background-position:-200% center}to{background-position:200% center}}._DropdownContainer_1jz2j_13{position:relative;width:100%}._PanelWrapper_1jz2j_20{position:absolute;top:calc(100% + var(--chures-dropdown-panel-gap));left:0;width:100%;animation:_panelIn_1jz2j_1 .14s ease}._PanelWrapper_1jz2j_20._Portal_1jz2j_34{position:fixed;width:auto;margin-top:var(--chures-dropdown-panel-gap)}._PanelContainer_1jz2j_18{background:var(--chures-dropdown-bg);border:1px solid var(--chures-dropdown-border);border-radius:var(--chures-dropdown-radius);overflow:hidden;box-shadow:0 1rem 3rem #000c}._PanelContainer_1jz2j_18._Glass_1jz2j_48{background:var(--chures-dropdown-glass-bg, rgb(255 255 255 / 6%));backdrop-filter:blur(var(--chures-dropdown-glass-blur, 1.25rem));-webkit-backdrop-filter:blur(var(--chures-dropdown-glass-blur, 1.25rem))}._Label_1jz2j_54{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);transform-origin:left center;color:var(--chures-fg-muted);font-size:var(--chures-font-sm);pointer-events:none;transition:all .18s ease;padding:0 .25rem;border-radius:.1875rem}._Label_1jz2j_54._lifted_1jz2j_68{top:0;transform:translateY(-50%) scale(.82);background:var(--chures-input-bg);color:var(--chures-fg-muted)}._TriggerContainer_1jz2j_75{width:100%;height:var(--chures-input-height);background:var(--chures-input-bg);border:1px solid var(--chures-dropdown-trigger-border);border-radius:var(--chures-input-radius);color:var(--chures-fg);font-size:var(--chures-font-sm);font-family:inherit;padding:0 .875rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.5rem;text-align:left;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}._TriggerContainer_1jz2j_75:hover{border-color:var(--chures-dropdown-trigger-border-hover)}._TriggerContainer_1jz2j_75._Open_1jz2j_99{border-color:var(--chures-accent);box-shadow:0 0 0 .1875rem var(--chures-dropdown-trigger-focus-ring)}._TriggerPlaceholder_1jz2j_104{color:var(--chures-fg-muted);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._TriggerValue_1jz2j_112{color:var(--chures-fg);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._TriggerIcon_1jz2j_120{color:var(--chures-fg-muted);flex-shrink:0;display:flex;align-items:center}._ChipsWrapper_1jz2j_127{display:flex;flex-wrap:nowrap;gap:.25rem;flex:1;overflow-x:auto;overflow-y:hidden;min-width:0;align-items:center;margin:.375rem 0;scrollbar-width:none;-ms-overflow-style:none}._ChipsWrapper_1jz2j_127::-webkit-scrollbar{display:none}._ChipsWrapper_1jz2j_127._Expand_1jz2j_145{flex-wrap:wrap;overflow:visible;row-gap:.25rem}._TriggerContainer_1jz2j_75._MultiSelect_1jz2j_151 ._TriggerIcon_1jz2j_120{align-self:flex-start;height:var(--chures-input-height)}._TriggerContainer_1jz2j_75._ExpandHeight_1jz2j_156{height:auto;min-height:var(--chures-input-height)}._Chip_1jz2j_127{display:inline-flex;align-items:center;flex-shrink:0;background:var(--chures-dropdown-create-bg);border:1px solid var(--chures-dropdown-chip-border);border-radius:624.9375rem;padding:.15rem .5rem;font-size:var(--chures-font-xs);color:var(--chures-fg);white-space:nowrap;line-height:1.4}._SearchRow_1jz2j_175{padding:.5rem;border-bottom:1px solid var(--chures-dropdown-border-subtle)}._SearchBox_1jz2j_180{display:flex;align-items:center;gap:.5rem;background:var(--chures-input-bg);border:1px solid var(--chures-dropdown-border-subtle);border-radius:var(--chures-dropdown-row-radius);padding:.4rem .625rem}._SearchIcon_1jz2j_190{display:flex;align-items:center;color:var(--chures-fg-muted);flex-shrink:0}._SearchInput_1jz2j_197{flex:1;background:transparent;border:none;outline:none;font-size:var(--chures-font-sm);color:var(--chures-fg);font-family:inherit}._SearchInput_1jz2j_197::placeholder{color:var(--chures-fg-muted)}._ResultsList_1jz2j_211{max-height:13rem;overflow-y:auto}._OptionRow_1jz2j_216{padding:.5625rem .875rem;font-size:var(--chures-font-sm);color:var(--chures-fg-muted);cursor:pointer;transition:background .1s ease,color .1s ease;display:flex;align-items:center;gap:.5rem}._OptionRow_1jz2j_216:hover{background:var(--chures-dropdown-hover);color:var(--chures-fg)}._OptionRow_1jz2j_216._Selected_1jz2j_231{color:var(--chures-fg)}._OptionRow_1jz2j_216._Indented_1jz2j_235{padding-left:1.875rem}._GroupHeader_1jz2j_240{padding:.5625rem .875rem .25rem;font-size:var(--chures-font-xs);color:var(--chures-fg-muted);text-transform:uppercase;letter-spacing:.03em}._GroupHeader_1jz2j_240:not(:first-child){margin-top:.25rem;border-top:1px solid var(--chures-dropdown-border-subtle)}._Checkmark_1jz2j_253{color:var(--chures-accent);font-size:var(--chures-font-xs);flex-shrink:0}._CreateRow_1jz2j_259{display:flex;align-items:center;gap:.625rem;padding:.5625rem .875rem;cursor:pointer;background:var(--chures-dropdown-create-bg);transition:background .1s ease}._CreateRow_1jz2j_259:hover{background:var(--chures-dropdown-create-bg-hover)}._CreateRow_1jz2j_259._WithBorder_1jz2j_272{border-top:1px solid var(--chures-dropdown-border-subtle)}._CreateIcon_1jz2j_277{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;background:var(--chures-accent);color:#fff;flex-shrink:0}._CreateLabel_1jz2j_289{font-size:var(--chures-font-sm);font-weight:600;color:var(--chures-fg)}._EmptyHint_1jz2j_295{padding:.75rem .875rem;font-size:var(--chures-font-sm);color:var(--chures-fg-muted);font-style:italic}._SkeletonRow_1jz2j_302{height:2rem;margin:.375rem .875rem;border-radius:var(--chures-dropdown-row-radius);background:linear-gradient(90deg,var(--chures-dropdown-bg) 25%,var(--chures-skeleton-shine) 50%,var(--chures-dropdown-bg) 75%);background-size:200% 100%;animation:_shimmer_1jz2j_1 1.4s infinite linear}:where(._Btn_1tozl_10){display:inline-flex;align-items:center;justify-content:center;gap:.375rem;border-radius:.625rem;border:1px solid transparent;font-family:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;padding:.625rem 1rem;transition:all .16s ease;white-space:nowrap;color:var(--chures-fg, #ffffff);background:var(--chures-button-bg)}:where(._Btn_1tozl_10):disabled{opacity:.4;cursor:not-allowed}:where(._Primary_1tozl_35){background:var(--chures-accent, #229ED9);border-color:var(--chures-accent, #229ED9);color:#fff;font-weight:600;padding:.625rem 1.125rem;box-shadow:0 10px 28px -12px var(--chures-accent-muted, rgb(34 158 217 / 50%));transition:filter .16s ease,opacity .16s ease}:where(._Primary_1tozl_35):hover:not(:disabled){filter:brightness(1.06)}:where(._Secondary_1tozl_50){background:transparent;border-color:#ffffff24;color:var(--chures-fg-muted, #9ca3af)}:where(._Secondary_1tozl_50):hover:not(:disabled){color:var(--chures-fg, #ffffff);border-color:#ffffff47}:where(._Ghost_1tozl_62){background:transparent;border-color:#ffffff24;color:var(--chures-fg-muted, #9ca3af)}:where(._Ghost_1tozl_62):hover:not(:disabled){color:var(--chures-fg, #ffffff);border-color:#ffffff47}:where(._IconDanger_1tozl_74){width:1.375rem;height:1.375rem;padding:0;border:0;border-radius:.375rem;background:transparent;color:var(--chures-fg-muted, #9ca3af);font-size:1rem;line-height:1;justify-content:center;flex-shrink:0;transition:background .14s ease,color .14s ease}:where(._IconDanger_1tozl_74):hover:not(:disabled){background:#ef44441f;color:var(--chures-error, #ef4444)}:where(._Danger_1tozl_95){background:transparent;border-color:#ef444466;color:var(--chures-error, #ef4444);transition:background .16s ease,border-color .16s ease}:where(._Danger_1tozl_95):hover:not(:disabled){background:#ef44441a;border-color:var(--chures-error, #ef4444)}._ConfirmWrapper_1tq4o_4{width:100%;max-width:24rem;animation:_confirmIn_1tq4o_1 .28s cubic-bezier(.2,.7,.2,1) both}@keyframes _confirmIn_1tq4o_1{0%{opacity:0;transform:translateY(.75rem) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}._ConfirmContainer_1tq4o_1{width:100%;background:var(--chures-surface, #000000);border:1px solid rgb(255 255 255 / 14%);border-radius:1.25rem;padding:1.75rem 1.75rem 1.5rem;box-shadow:0 32px 80px -20px #000c}._Glass_1tq4o_24{background:var(--chures-dialog-glass-bg, rgb(255 255 255 / 6%));backdrop-filter:blur(var(--chures-dialog-glass-blur, 1.25rem));-webkit-backdrop-filter:blur(var(--chures-dialog-glass-blur, 1.25rem))}._ConfirmTitle_1tq4o_30{font-size:1.25rem;font-weight:600;letter-spacing:-.02em;color:var(--chures-fg, #ffffff);margin-bottom:.75rem}._ConfirmMessage_1tq4o_38{font-size:.875rem;color:var(--chures-fg-muted, #9ca3af);line-height:1.5;letter-spacing:-.005em}._ConfirmActions_1tq4o_45{display:flex;align-items:center;justify-content:flex-end;gap:.625rem;margin-top:1.5rem}._BtnCancel_1tq4o_53{display:inline-flex;align-items:center;padding:.625rem 1.125rem;border-radius:.625rem;border:1px solid rgb(255 255 255 / 14%);background:transparent;color:var(--chures-fg-muted, #9ca3af);font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .16s ease,color .16s ease}._BtnCancel_1tq4o_53:hover:not(:disabled){background:#ffffff14;color:var(--chures-fg, #ffffff)}._BtnConfirm_1tq4o_73{display:inline-flex;align-items:center;padding:.625rem 1.125rem;border-radius:.625rem;border:1px solid var(--chures-accent, #229ED9);background:var(--chures-accent, #229ED9);color:#fff;font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;transition:filter .16s ease,opacity .16s ease}._BtnConfirm_1tq4o_73:hover:not(:disabled){filter:brightness(1.06)}._BtnDanger_1tq4o_92{display:inline-flex;align-items:center;padding:.625rem 1.125rem;border-radius:.625rem;border:1px solid rgb(239 68 68 / 40%);background:transparent;color:var(--chures-error, #ef4444);font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .16s ease,border-color .16s ease}._BtnDanger_1tq4o_92:hover:not(:disabled){background:#ef44441a;border-color:var(--chures-error, #ef4444)}._BtnConfirm_1tq4o_73:disabled,._BtnDanger_1tq4o_92:disabled,._BtnCancel_1tq4o_53:disabled{opacity:.4;cursor:not-allowed}._InfoWrapper_cqv58_4{width:100%;max-width:24rem;animation:_infoIn_cqv58_1 .28s cubic-bezier(.2,.7,.2,1) both}@keyframes _infoIn_cqv58_1{0%{opacity:0;transform:translateY(.75rem) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}._InfoContainer_cqv58_1{width:100%;background:var(--chures-surface, #000000);border:1px solid rgb(255 255 255 / 14%);border-radius:1.25rem;padding:1.75rem 1.75rem 1.5rem;box-shadow:0 32px 80px -20px #000c}._Glass_cqv58_24{background:var(--chures-dialog-glass-bg, rgb(255 255 255 / 6%));backdrop-filter:blur(var(--chures-dialog-glass-blur, 1.25rem));-webkit-backdrop-filter:blur(var(--chures-dialog-glass-blur, 1.25rem))}._InfoTitle_cqv58_30{font-size:1.25rem;font-weight:600;letter-spacing:-.02em;color:var(--chures-fg, #ffffff);margin-bottom:.75rem}._InfoMessage_cqv58_38{font-size:.875rem;color:var(--chures-fg-muted, #9ca3af);line-height:1.5;letter-spacing:-.005em}._InfoActions_cqv58_45{display:flex;align-items:center;justify-content:flex-end;margin-top:1.5rem}._BtnClose_cqv58_52{display:inline-flex;align-items:center;padding:.625rem 1.125rem;border-radius:.625rem;border:1px solid rgb(255 255 255 / 14%);background:transparent;color:var(--chures-fg-muted, #9ca3af);font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .16s ease,color .16s ease}._BtnClose_cqv58_52:hover{background:#ffffff14;color:var(--chures-fg, #ffffff)}:where(._Backdrop_1w1e3_7){position:fixed;inset:0;background:var(--chures-overlay, rgb(0 0 0 / 58%));opacity:0;pointer-events:none;transition:opacity .26s ease}:where(._BackdropOpen_1w1e3_16){opacity:1;pointer-events:auto}:where(._Panel_1w1e3_21){position:fixed;display:flex;flex-direction:column;overflow:hidden;background:var(--chures-surface, #000000);box-shadow:0 0 3rem #00000059;transition:transform .28s cubic-bezier(.32,0,0,1)}:where(._Right_1w1e3_31){top:0;right:0;bottom:0;width:var(--chures-side-drawer-size, 22rem);max-width:100vw;transform:translate(100%)}:where(._Left_1w1e3_40){top:0;bottom:0;left:0;width:var(--chures-side-drawer-size, 22rem);max-width:100vw;transform:translate(-100%)}:where(._Top_1w1e3_49){top:0;left:0;right:0;height:var(--chures-side-drawer-size, 22rem);max-height:100vh;transform:translateY(-100%)}:where(._Bottom_1w1e3_58){left:0;right:0;bottom:0;height:var(--chures-side-drawer-size, 22rem);max-height:100vh;transform:translateY(100%)}:where(._PanelOpen_1w1e3_67){transform:translate(0)}@layer chures-defaults{:root{--chures-accent: #229ED9;--chures-accent-muted: rgb(34 158 217 / 50%);--chures-btn-from: #2AABEE;--chures-btn-to: #229ED9;--chures-button-bg: var(--chures-accent);--chures-error: #ef4444;--chures-warn: #f59e0b;--chures-bg: #000000;--chures-fg: #ffffff;--chures-fg-muted: #9ca3af;--chures-surface: #000000;--chures-font-sm: .875rem;--chures-font-xs: .75rem;--chures-input-bg: #111111;--chures-input-height: 3rem;--chures-input-radius: .75rem;--chures-skeleton-shine: #1e1e1e;--chures-toggle-width: 2.75rem;--chures-toggle-height: 1.5rem;--chures-toggle-thumb: 1.125rem;--chures-toggle-bg-off: rgb(255 255 255 / 13%);--chures-toggle-bg-on: var(--chures-accent);--chures-toggle-thumb-color: #ffffff;--chures-toggle-label-skeleton-w: 5rem;--chures-dropdown-bg: var(--chures-bg);--chures-dropdown-radius: .75rem;--chures-dropdown-row-radius: .375rem;--chures-dropdown-border: var(--chures-accent);--chures-dropdown-border-subtle: var(--chures-accent-muted);--chures-dropdown-hover: rgb(255 255 255 / 8%);--chures-dropdown-create-bg: rgb(34 158 217 / 12%);--chures-dropdown-create-bg-hover: rgb(34 158 217 / 20%);--chures-dropdown-trigger-border: rgb(255 255 255 / 22%);--chures-dropdown-trigger-border-hover: rgb(255 255 255 / 38%);--chures-dropdown-trigger-focus-ring: rgb(34 158 217 / 15%);--chures-dropdown-chip-border: rgb(34 158 217 / 30%);--chures-dropdown-panel-gap: .375rem;--chures-dropdown-glass-bg: rgb(255 255 255 / 6%);--chures-dropdown-glass-blur: 1.25rem;--chures-dialog-glass-bg: rgb(255 255 255 / 6%);--chures-dialog-glass-blur: 1.25rem;--chures-overlay: rgb(0 0 0 / 58%);--chures-side-drawer-size: 22rem;--chures-flyout-bg: #0d0d0d;--chures-flyout-min-width: 10rem;--chures-flyout-border: rgb(255 255 255 / 11%);--chures-flyout-radius: .5rem;--chures-flyout-shadow: rgb(0 0 0 / 80%);--chures-flyout-fg: rgb(255 255 255 / 55%);--chures-flyout-fg-strong: rgb(255 255 255 / 92%);--chures-flyout-fg-muted: rgb(255 255 255 / 32%);--chures-flyout-hover: rgb(255 255 255 / 4%);--chures-flyout-skeleton: rgb(255 255 255 / 7%);--chures-flyout-font: .8125rem;--chures-flyout-font-sm: .6875rem;--chures-flyout-font-md: .75rem;--chures-flyout-font-mono: "JetBrains Mono", ui-monospace, sfmono-regular, menlo, monospace}}._FlyoutMenuContainer_1q0ma_5{display:contents}._Backdrop_1q0ma_9{position:fixed;inset:0}._Panel_1q0ma_14{position:fixed;display:flex;flex-direction:column;min-width:var(--chures-flyout-min-width);padding:.35rem;background:var(--chures-flyout-bg);border:1px solid var(--chures-flyout-border);border-radius:var(--chures-flyout-radius);box-shadow:0 1rem 2.5rem -.75rem var(--chures-flyout-shadow);overflow-y:auto}._Submenu_1q0ma_27{position:fixed;display:flex;flex-direction:column;min-width:var(--chures-flyout-min-width);background:var(--chures-flyout-bg);border:1px solid var(--chures-flyout-border);border-radius:var(--chures-flyout-radius);box-shadow:0 1rem 2.5rem -.75rem var(--chures-flyout-shadow);overflow-y:auto}._FlyoutPanelContainer_1q0ma_41{display:flex;flex-direction:column;gap:.15rem}._Back_1q0ma_9{display:flex;align-items:center;justify-content:flex-start;gap:.4rem;padding:.4rem .55rem;border:1px solid transparent;border-radius:var(--chures-flyout-radius);background:transparent;color:var(--chures-flyout-fg);font-size:var(--chures-flyout-font);text-align:left;cursor:pointer;transition:background .14s ease,color .14s ease}._Back_1q0ma_9:hover{background:var(--chures-flyout-hover);color:var(--chures-flyout-fg-strong)}._Chevron_1q0ma_68{flex-shrink:0;color:var(--chures-flyout-fg-muted)}._MenuListContainer_1q0ma_75{display:flex;flex-direction:column;gap:.15rem}._Heading_1q0ma_81{padding:.35rem .55rem .25rem;color:var(--chures-flyout-fg-muted);font-family:var(--chures-flyout-font-mono);font-size:var(--chures-flyout-font-sm);letter-spacing:.06rem;text-transform:uppercase}._Divider_1q0ma_90{height:1px;margin:.3rem .2rem;background:var(--chures-flyout-border)}._MenuRowContainer_1q0ma_98{display:flex}._MenuRowContainer_1q0ma_98._Dim_1q0ma_102{opacity:.5}._Row_1q0ma_106{display:flex;flex:1;min-width:0;align-items:center;justify-content:flex-start;gap:.5rem;padding:.4rem .55rem;overflow:hidden;border:1px solid transparent;border-radius:var(--chures-flyout-radius);background:transparent;color:var(--chures-flyout-fg);font-size:var(--chures-flyout-font);text-align:left;cursor:pointer;transition:background .14s ease,color .14s ease}._Row_1q0ma_106:hover:not(:disabled){background:var(--chures-flyout-hover);color:var(--chures-flyout-fg-strong)}._Row_1q0ma_106:disabled{color:var(--chures-flyout-fg-muted);cursor:default}._Icon_1q0ma_135{display:flex;flex-shrink:0}._Label_1q0ma_140{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}._Arrow_1q0ma_148{flex-shrink:0;color:var(--chures-flyout-fg-muted);font-size:var(--chures-flyout-font-md)}._MenuSkeletonContainer_1q0ma_156{display:flex;flex-direction:column;gap:.15rem;padding:.35rem .5rem}._MenuSkeletonRow_1q0ma_163{height:1.75rem;border-radius:var(--chures-flyout-radius);background:var(--chures-flyout-skeleton);animation:_churesFlyoutSkeletonPulse_1q0ma_1 1.5s ease-in-out infinite}._MenuSkeletonRow_1q0ma_163:nth-child(2){animation-delay:.15s}._MenuSkeletonRow_1q0ma_163:nth-child(3){animation-delay:.3s}@keyframes _churesFlyoutSkeletonPulse_1q0ma_1{0%,to{opacity:1}50%{opacity:.4}}._MenuSearchFieldContainer_1q0ma_191{overflow:hidden;padding-bottom:.35rem}')),document.head.appendChild(r)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
|
|
2
|
+
(function(d,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("react/jsx-runtime"),require("react"),require("framer-motion"),require("zustand"),require("react-dom")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","framer-motion","zustand","react-dom"],t):(d=typeof globalThis<"u"?globalThis:d||self,t(d.Chures={},d.ReactJSXRuntime,d.React,d.FramerMotion,d.Zustand,d.ReactDOM))})(this,(function(d,t,c,M,tn,le){"use strict";function on(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var de={exports:{}};var we;function rn(){return we||(we=1,(function(e){(function(){var n={}.hasOwnProperty;function r(){for(var a="",i=0;i<arguments.length;i++){var l=arguments[i];l&&(a=s(a,o(l)))}return a}function o(a){if(typeof a=="string"||typeof a=="number")return a;if(typeof a!="object")return"";if(Array.isArray(a))return r.apply(null,a);if(a.toString!==Object.prototype.toString&&!a.toString.toString().includes("[native code]"))return a.toString();var i="";for(var l in a)n.call(a,l)&&a[l]&&(i=s(i,l));return i}function s(a,i){return i?a?a+" "+i:a+i:a}e.exports?(r.default=r,e.exports=r):window.classNames=r})()})(de)),de.exports}var sn=rn();const C=on(sn),te={LoaderContainer:"_LoaderContainer_wa8op_24",sm:"_sm_wa8op_31",md:"_md_wa8op_32",lg:"_lg_wa8op_33",Arc1:"_Arc1_wa8op_37",Arc2:"_Arc2_wa8op_38",Arc3:"_Arc3_wa8op_39",spin:"_spin_wa8op_1",Ring1:"_Ring1_wa8op_71",Ring2:"_Ring2_wa8op_72",Ring3:"_Ring3_wa8op_73",ripple:"_ripple_wa8op_1",Dot1:"_Dot1_wa8op_86",Dot2:"_Dot2_wa8op_87",Dot3:"_Dot3_wa8op_88",dotPulse:"_dotPulse_wa8op_1",Wave1:"_Wave1_wa8op_105",Wave2:"_Wave2_wa8op_106",Wave3:"_Wave3_wa8op_107",Wave4:"_Wave4_wa8op_108",Wave5:"_Wave5_wa8op_109",waveBounce:"_waveBounce_wa8op_1"},ye=c.createContext({});function N(e,n){const r=c.useContext(ye);return n??r[e]}function an(e,n){switch(e){case"ripple":return t.jsxs(t.Fragment,{children:[t.jsx("div",{className:n.Ring1}),t.jsx("div",{className:n.Ring2}),t.jsx("div",{className:n.Ring3})]});case"dots":return t.jsxs(t.Fragment,{children:[t.jsx("div",{className:n.Dot1}),t.jsx("div",{className:n.Dot2}),t.jsx("div",{className:n.Dot3})]});case"wave":return t.jsxs(t.Fragment,{children:[t.jsx("div",{className:n.Wave1}),t.jsx("div",{className:n.Wave2}),t.jsx("div",{className:n.Wave3}),t.jsx("div",{className:n.Wave4}),t.jsx("div",{className:n.Wave5})]});default:return t.jsxs(t.Fragment,{children:[t.jsx("div",{className:n.Arc1}),t.jsx("div",{className:n.Arc2}),t.jsx("div",{className:n.Arc3})]})}}function Se({variant:e="arcs",size:n="md",color:r,className:o}){const s=N("Loader",o);return t.jsx("div",{className:C(te.LoaderContainer,te[n],te[e],s),role:"status","aria-label":"Loading",style:r?{"--chures-accent":r}:void 0,children:an(e,te)})}const Ie={LoadingWrapperContainer:"_LoadingWrapperContainer_1q0w7_1",SkeletonWrapper:"_SkeletonWrapper_1q0w7_9"};function cn({isLoading:e,children:n,skeleton:r,loaderProps:o,className:s}){const a=N("LoadingWrapper",s);return e?r?t.jsx("div",{className:C(Ie.SkeletonWrapper,a),children:r}):t.jsx("div",{className:C(Ie.LoadingWrapperContainer,a),children:t.jsx(Se,{...o})}):t.jsx(t.Fragment,{children:n})}const ln="https://oauth.telegram.org/js/telegram-login.js?3";function ke(e){const{botId:n,redirectUri:r,requestAccess:o="write"}=e,s=c.useRef(e.onSuccess);s.current=e.onSuccess;const a=c.useRef(!1),[i,l]=c.useState(!1),[_,f]=c.useState(!1);c.useEffect(function(){if(!n)return;const h=r??window.location.origin;f(!0),l(!1);const m=document.createElement("script");return m.src=ln,m.async=!0,m.onload=function(){const v=window.Telegram;v&&(v.Login.init({client_id:n,redirect_uri:h},function(I){a.current||(a.current=!0,s.current(I))}),l(!0)),f(!1)},m.onerror=function(){f(!1)},document.head.appendChild(m),function(){document.head.contains(m)&&document.head.removeChild(m),l(!1),f(!1)}},[n,r]);function u(){const h=window.Telegram;if(!i||!h)return;a.current=!1;const m=r??window.location.origin;h.Login.auth({client_id:n,redirect_uri:m,request_access:o},function(v){a.current||(a.current=!0,s.current(v))})}return{login:u,isReady:i,isLoading:_}}const ue={TelegramSignInButtonContainer:"_TelegramSignInButtonContainer_10wun_1",FullSize:"_FullSize_10wun_46",Icon:"_Icon_10wun_50"},dn={en:"Continue with Telegram",ru:"Войти через Telegram"};function un(){return t.jsx("svg",{viewBox:"0 0 24 24",width:"20",height:"20",fill:"currentColor","aria-hidden":"true",className:ue.Icon,children:t.jsx("path",{d:"M22 3.5L2.5 11l5 1.7L18 6 9.7 14l-.4 5.5 3.4-3.2 5.5 4c.9.5 1.5.2 1.7-.8L22 4.3c.2-.7-.2-1.1-.9-.8z"})})}function Ne({onClick:e,disabled:n,lang:r="en",title:o,label:s,fullSize:a,className:i}){c.useEffect(function(){const u="comfortaa-font";if(document.getElementById(u))return;const h=document.createElement("link");h.id=u,h.rel="stylesheet",h.href="https://fonts.googleapis.com/css2?family=Comfortaa:wght@600&display=swap",document.head.appendChild(h)},[]);const l=s??o??dn[r],_=N("TelegramSignInButton",i),f=C(ue.TelegramSignInButtonContainer,{[ue.FullSize]:a},_);return t.jsxs("button",{type:"button",className:f,onClick:e,disabled:n,children:[t.jsx(un,{}),l]})}function fn({botId:e,onSuccess:n,lang:r,title:o,redirectUri:s,requestAccess:a,children:i,className:l}){const{login:_,isReady:f}=ke({botId:e,onSuccess:n,redirectUri:s,requestAccess:a});return i?t.jsx(t.Fragment,{children:i({login:_,isReady:f})}):t.jsx(Ne,{onClick:_,disabled:!f,lang:r,title:o,className:l})}let _n=0;const fe=tn.create((e,n)=>({toasts:[],bake:r=>{const o=_n++;e(s=>({toasts:[...s.toasts,{...r,id:o}]})),setTimeout(()=>{n().dismiss(o)},5e3)},dismiss:r=>{e(o=>({toasts:o.toasts.filter(s=>s.id!==r)}))}})),O={ToastContainer:"_ToastContainer_1tme2_1",Toast:"_Toast_1tme2_1",error:"_error_1tme2_33",warn:"_warn_1tme2_41",info:"_info_1tme2_49",Description:"_Description_1tme2_53",DismissButton:"_DismissButton_1tme2_59",slideIn:"_slideIn_1tme2_79",slideOut:"_slideOut_1tme2_83"};function hn({className:e}={}){const{toasts:n}=fe(),r=N("Toaster",e);return t.jsx("div",{className:C(O.ToastContainer,r),children:t.jsx(M.AnimatePresence,{children:n.map(o=>t.jsx(M.motion.div,{layout:!0,initial:{opacity:0,x:100,y:50},animate:{opacity:1,x:0,y:0},exit:{opacity:0,y:-50},transition:{type:"spring",stiffness:300,damping:20},children:t.jsx(pn,{...o})},o.id))})})}function pn({id:e,title:n,description:r,level:o,isDismissable:s}){const[a,i]=c.useState(!1),l=fe();return c.useEffect(()=>()=>{i(!0)},[]),t.jsxs("div",{className:C(O.Toast,{[O.error]:o==="Error",[O.warn]:o==="Warn",[O.info]:o==null||o==="Info",[O.slideIn]:!a,[O.slideOut]:a}),children:[t.jsx("div",{children:n}),t.jsx("div",{className:O.Description,children:r}),s&&e!==void 0&&t.jsx("div",{className:O.DismissButton,onClick:()=>l.dismiss(e),children:"×"})]})}const L={InputContainer:"_InputContainer_1uu20_15",InputField:"_InputField_1uu20_21",hasStartIcon:"_hasStartIcon_1uu20_35",hasEndIcon:"_hasEndIcon_1uu20_39",StartIcon:"_StartIcon_1uu20_43",EndIcon:"_EndIcon_1uu20_54",hasError:"_hasError_1uu20_69",disabled:"_disabled_1uu20_74",Label:"_Label_1uu20_79",lifted:"_lifted_1uu20_93",ErrorText:"_ErrorText_1uu20_104",Skeleton:"_Skeleton_1uu20_112"},Te=c.forwardRef(function({value:n,setValue:r,label:o,isLoader:s,type:a="text",disabled:i,error:l,className:_,inputClassName:f,startIcon:u,endIcon:h,...m},v){const[I,T]=c.useState(!1),A=I||n.length>0,b=N("Input",_),{onFocus:W,onBlur:G,...U}=m;return s?t.jsx("div",{className:C(L.Skeleton,b),"aria-hidden":"true"}):t.jsxs("div",{className:C(L.InputContainer,{[L.hasError]:!!l,[L.disabled]:i},b),children:[u&&t.jsx("span",{className:L.StartIcon,children:u}),t.jsx("input",{ref:v,className:C(L.InputField,{[L.hasStartIcon]:!!u,[L.hasEndIcon]:!!h},f),type:a,value:n,onChange:w=>r(w.target.value),onFocus:w=>{T(!0),W?.(w)},onBlur:w=>{T(!1),G?.(w)},disabled:i,...U}),o&&t.jsx("label",{className:C(L.Label,{[L.lifted]:A}),children:o}),h&&t.jsx("span",{className:L.EndIcon,children:h}),l&&t.jsx("span",{className:L.ErrorText,children:l})]})}),B={ToggleContainer:"_ToggleContainer_1jetc_6",disabled:"_disabled_1jetc_13",Track:"_Track_1jetc_18",on:"_on_1jetc_31",Thumb:"_Thumb_1jetc_39",Label:"_Label_1jetc_57",LabelSkeleton:"_LabelSkeleton_1jetc_63",Skeleton:"_Skeleton_1jetc_78"};function gn({checked:e,onChange:n,label:r,labelPosition:o="right",disabled:s,isLoader:a,isLoadingLabel:i,className:l}){const _=!!r||i,f=N("Toggle",l),u=i?t.jsx("span",{className:B.LabelSkeleton,"aria-hidden":"true"}):r?t.jsx("span",{className:B.Label,children:r}):null;return a?_?t.jsxs("div",{className:C(B.ToggleContainer,f),children:[o==="left"&&u,t.jsx("div",{className:B.Skeleton,"aria-hidden":"true"}),o==="right"&&u]}):t.jsx("div",{className:C(B.Skeleton,f),"aria-hidden":"true"}):t.jsxs("label",{className:C(B.ToggleContainer,{[B.disabled]:s},f),children:[o==="left"&&u,t.jsx("button",{role:"switch","aria-checked":e,className:C(B.Track,{[B.on]:e}),onClick:()=>!s&&n(!e),disabled:s,type:"button",children:t.jsx("span",{className:B.Thumb})}),o==="right"&&u]})}function mn(){const[e,n]=c.useState(!1),r=c.useRef(null),o=c.useCallback(()=>n(a=>!a),[]),s=c.useCallback(()=>n(!1),[]);return{isOpen:e,triggerRef:r,toggleOpen:o,close:s}}function Cn(e,n,r){c.useEffect(()=>{function o(a){const i=a.target;e.current?.contains(i)||r?.current?.contains(i)||n()}function s(a){a.key==="Escape"&&n()}return document.addEventListener("mousedown",o,!0),document.addEventListener("keydown",s),()=>{document.removeEventListener("mousedown",o,!0),document.removeEventListener("keydown",s)}},[n,e,r])}function vn(e,n){const[r,o]=c.useState([]);return c.useEffect(()=>{if(!n)return;let s=!1;return n(e).then(a=>{s||o(a)}),()=>{s=!0}},[e,n]),r}function Z(e){return typeof e=="object"&&e!==null&&"group"in e}function be(e){return e.flatMap(n=>Z(n)?n.options:[n])}function E(e){return typeof e=="string"?e:e.id}function oe(e){return typeof e=="string"?e:e.name}function wn(e,n){return e.map(r=>n.find(o=>E(o)===r)??r)}const g={DropdownContainer:"_DropdownContainer_1jz2j_13",PanelWrapper:"_PanelWrapper_1jz2j_20",Portal:"_Portal_1jz2j_34",PanelContainer:"_PanelContainer_1jz2j_18",Glass:"_Glass_1jz2j_48",Label:"_Label_1jz2j_54",lifted:"_lifted_1jz2j_68",TriggerContainer:"_TriggerContainer_1jz2j_75",Open:"_Open_1jz2j_99",TriggerPlaceholder:"_TriggerPlaceholder_1jz2j_104",TriggerValue:"_TriggerValue_1jz2j_112",TriggerIcon:"_TriggerIcon_1jz2j_120",ChipsWrapper:"_ChipsWrapper_1jz2j_127",Expand:"_Expand_1jz2j_145",MultiSelect:"_MultiSelect_1jz2j_151",ExpandHeight:"_ExpandHeight_1jz2j_156",Chip:"_Chip_1jz2j_127",SearchRow:"_SearchRow_1jz2j_175",SearchBox:"_SearchBox_1jz2j_180",SearchIcon:"_SearchIcon_1jz2j_190",SearchInput:"_SearchInput_1jz2j_197",ResultsList:"_ResultsList_1jz2j_211",OptionRow:"_OptionRow_1jz2j_216",Selected:"_Selected_1jz2j_231",Indented:"_Indented_1jz2j_235",GroupHeader:"_GroupHeader_1jz2j_240",Checkmark:"_Checkmark_1jz2j_253",CreateRow:"_CreateRow_1jz2j_259",WithBorder:"_WithBorder_1jz2j_272",CreateIcon:"_CreateIcon_1jz2j_277",CreateLabel:"_CreateLabel_1jz2j_289",EmptyHint:"_EmptyHint_1jz2j_295",SkeletonRow:"_SkeletonRow_1jz2j_302"};function yn({query:e,withBorder:n,onCreate:r}){function o(s){s.preventDefault(),r()}return t.jsxs("div",{className:C(g.CreateRow,n&&g.WithBorder),onMouseDown:o,children:[t.jsx("span",{className:g.CreateIcon,children:t.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",children:[t.jsx("line",{x1:"5",y1:"1",x2:"5",y2:"9"}),t.jsx("line",{x1:"1",y1:"5",x2:"9",y2:"5"})]})}),t.jsxs("span",{className:g.CreateLabel,children:["create “",e,"”"]})]})}function Sn({label:e}){return t.jsx("div",{className:g.GroupHeader,children:e})}function Le({opt:e,isSelected:n,multiSelect:r,onPick:o,indented:s=!1}){function a(i){i.preventDefault(),o(e)}return t.jsxs("div",{className:C(g.OptionRow,n&&g.Selected,s&&g.Indented),onMouseDown:a,children:[r&&n&&t.jsx("span",{className:g.Checkmark,children:"✓"}),oe(e)]})}function In({inputRef:e,query:n,onChange:r,onKeyDown:o,placeholder:s}){return t.jsx("div",{className:g.SearchRow,children:t.jsxs("div",{className:g.SearchBox,children:[t.jsx("span",{className:g.SearchIcon,children:t.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",children:[t.jsx("circle",{cx:"5",cy:"5",r:"3.5"}),t.jsx("line",{x1:"8",y1:"8",x2:"11",y2:"11"})]})}),t.jsx("input",{ref:e,className:g.SearchInput,value:n,onChange:r,onKeyDown:o,placeholder:s})]})})}function kn({count:e}){return t.jsx(t.Fragment,{children:Array.from({length:e}).map((n,r)=>t.jsx("div",{className:g.SkeletonRow},r))})}function Nn({onSearch:e,onCreate:n,onPick:r,onClose:o,anchorRef:s,placeholder:a,options:i=[],excluded:l=[],selected:_=[],multiSelect:f=!1,selectedAtTop:u=!1,isLoading:h=!1,emptyHint:m="no results found",skeletonRowCount:v=4,onError:I=console.error,glass:T=!1,portal:A=!1,renderOption:b}){const[W,G]=c.useState(""),[U,w]=c.useState(!1),[D,V]=c.useState(null),K=c.useRef(null),Q=c.useRef(null),q=!!e,k=vn(W,e);Cn(Q,o,s);const y=T||A;c.useLayoutEffect(()=>{if(!y)return;function p(){s?.current&&V(s.current.getBoundingClientRect())}return p(),window.addEventListener("scroll",p,!0),window.addEventListener("resize",p),()=>{window.removeEventListener("scroll",p,!0),window.removeEventListener("resize",p)}},[y,s]),c.useEffect(()=>{q&&K.current?.focus()},[q]);const X=(e?k:i).flatMap(p=>{if(Z(p)){const x=p.options.filter(ct=>!l.includes(E(ct)));return x.length>0?[{...p,options:x}]:[]}return l.includes(E(p))?[]:[p]}),ce=u?[...X.filter(p=>!Z(p)&&_.includes(E(p))),...X.filter(p=>Z(p)||!_.includes(E(p)))]:X,R=be(ce),P=W.trim(),Ce=R.some(p=>oe(p).toLowerCase()===P.toLowerCase()),ve=!!n&&P.length>0&&!Ce;async function en(){!P||U||!n||(w(!0),n(P).then(J).catch(I).finally(()=>w(!1)))}function J(p){r(p),f||o()}function st(p){G(p.target.value)}function at(p){p.key==="Enter"&&(p.preventDefault(),R.length>0?J(R[0]):ve&&en())}const it=a??(n?"search or add new…":"search…");if(y&&!D)return null;const nn=t.jsx("div",{ref:Q,className:C(g.PanelWrapper,{[g.Portal]:y}),style:y&&D?{top:D.bottom,left:D.left,width:D.width}:void 0,children:t.jsxs("div",{className:C(g.PanelContainer,{[g.Glass]:T}),children:[q&&t.jsx(In,{inputRef:K,query:W,onChange:st,onKeyDown:at,placeholder:it}),t.jsx("div",{className:g.ResultsList,children:h?t.jsx(kn,{count:v}):t.jsxs(t.Fragment,{children:[ce.map(p=>Z(p)?t.jsxs(c.Fragment,{children:[t.jsx(Sn,{label:p.group}),p.options.map(x=>t.jsx(c.Fragment,{children:b?b(x,{isSelected:_.includes(E(x)),multiSelect:f,indented:!0,onPick:()=>J(x)}):t.jsx(Le,{opt:x,isSelected:_.includes(E(x)),multiSelect:f,onPick:J,indented:!0})},E(x)))]},`group:${p.group}`):t.jsx(c.Fragment,{children:b?b(p,{isSelected:_.includes(E(p)),multiSelect:f,indented:!1,onPick:()=>J(p)}):t.jsx(Le,{opt:p,isSelected:_.includes(E(p)),multiSelect:f,onPick:J})},E(p))),ve&&t.jsx(yn,{query:P,withBorder:R.length>0,onCreate:en}),R.length===0&&!ve&&t.jsx("div",{className:g.EmptyHint,children:m})]})})]})});return y?le.createPortal(nn,document.body):nn}function Ee({size:e=14,strokeWidth:n=2,className:r}){return t.jsx("svg",{viewBox:"0 0 24 24",width:e,height:e,fill:"none",stroke:"currentColor",strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round",className:r,children:t.jsx("polyline",{points:"6 9 12 15 18 9"})})}function Tn({size:e=18,strokeWidth:n=2.5,shrink:r=!0}){return t.jsx("svg",{viewBox:"0 0 24 24",width:e,height:e,fill:"none",stroke:"currentColor",strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round",style:r?{flexShrink:0}:void 0,children:t.jsx("polyline",{points:"20 6 9 17 4 12"})})}function bn(){return t.jsxs("svg",{viewBox:"0 0 24 24",width:"14",height:"14",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("path",{d:"M12 20h9"}),t.jsx("path",{d:"M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4z"})]})}function Ln(){return t.jsxs("svg",{viewBox:"0 0 24 24",width:"14",height:"14",fill:"none",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),t.jsx("circle",{cx:"12",cy:"7",r:"4"})]})}function De({size:e=14,strokeWidth:n=2,className:r}){return t.jsxs("svg",{viewBox:"0 0 24 24",width:e,height:e,fill:"none",stroke:"currentColor",strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round",className:r,children:[t.jsx("circle",{cx:"11",cy:"11",r:"7"}),t.jsx("line",{x1:"21",y1:"21",x2:"16.65",y2:"16.65"})]})}function En({triggerRef:e,isOpen:n,onClick:r,selectedOptions:o,multiSelect:s,placeholder:a,onOverflow:i="scroll"}){const l=i==="expand";return t.jsxs("button",{type:"button",ref:e,className:C(g.TriggerContainer,n&&g.Open,s&&g.MultiSelect,l&&g.ExpandHeight),onClick:r,"aria-expanded":n,"aria-haspopup":"listbox",children:[s&&o.length>0?t.jsx("div",{className:C(g.ChipsWrapper,l&&g.Expand),children:o.map((_,f)=>t.jsx("span",{className:g.Chip,children:oe(_)},f))}):t.jsx("span",{className:o.length===0?g.TriggerPlaceholder:g.TriggerValue,children:o.length===0?a:o.map(oe).join(", ")}),t.jsx("span",{className:g.TriggerIcon,children:t.jsx(Ee,{size:12})})]})}function Dn({options:e=[],value:n,onChange:r,onSearch:o,onCreate:s,excluded:a,multiSelect:i=!1,selectedAtTop:l=!1,onOverflow:_="scroll",label:f,placeholder:u="select…",searchPlaceholder:h,emptyHint:m,isLoading:v,skeletonRowCount:I,onError:T,className:A,glass:b=!1,portal:W=!1,renderOption:G,children:U}){const{isOpen:w,triggerRef:D,toggleOpen:V,close:K}=mn(),Q=N("Dropdown",A),q=wn(n,be(e)),k=w||q.length>0,y=f&&!k?"":u;function X(R){const P=E(R);r(i?n.includes(P)?n.filter(Ce=>Ce!==P):[...n,P]:[P])}const ce={ref:D,onClick:V,"aria-expanded":w,"aria-haspopup":"listbox"};return t.jsxs("div",{className:C(g.DropdownContainer,Q),children:[f&&t.jsx("label",{className:C(g.Label,{[g.lifted]:k}),children:f}),U?U({selectedOptions:q,isOpen:w,toggleOpen:V,close:K,triggerProps:ce}):t.jsx(En,{triggerRef:D,isOpen:w,onClick:V,selectedOptions:q,multiSelect:i,onOverflow:_,placeholder:y}),w&&t.jsx(Nn,{options:e,onSearch:o,onCreate:s,onPick:X,onClose:K,anchorRef:D,excluded:a,multiSelect:i,selectedAtTop:l,selected:n,placeholder:h,emptyHint:m,isLoading:v,skeletonRowCount:I,onError:T,glass:b,portal:W,renderOption:G})]})}const Y={Btn:"_Btn_1tozl_10",Primary:"_Primary_1tozl_35",Secondary:"_Secondary_1tozl_50",Ghost:"_Ghost_1tozl_62",IconDanger:"_IconDanger_1tozl_74",Danger:"_Danger_1tozl_95"},Bn={primary:Y.Primary,secondary:Y.Secondary,danger:Y.Danger,ghost:Y.Ghost,iconDanger:Y.IconDanger};function _e({variant:e="default",className:n,children:r,...o}){const s=N("Button",n),a=e==="unstyled";return t.jsx("button",{type:"button",...o,className:C(!a&&Y.Btn,!a&&Bn[e],s),children:r})}const j={ConfirmWrapper:"_ConfirmWrapper_1tq4o_4",ConfirmContainer:"_ConfirmContainer_1tq4o_1",Glass:"_Glass_1tq4o_24",ConfirmTitle:"_ConfirmTitle_1tq4o_30",ConfirmMessage:"_ConfirmMessage_1tq4o_38",ConfirmActions:"_ConfirmActions_1tq4o_45",BtnCancel:"_BtnCancel_1tq4o_53",BtnConfirm:"_BtnConfirm_1tq4o_73",BtnDanger:"_BtnDanger_1tq4o_92"};function An({title:e,message:n,confirmLabel:r="Confirm",cancelLabel:o="Cancel",danger:s=!1,onConfirm:a,onClose:i,className:l,glass:_=!1}){const[f,u]=c.useState(!1),h=N("ConfirmDialog",l);function m(){u(!0),Promise.resolve(a()).finally(()=>{u(!1),i()})}return t.jsx("div",{className:j.ConfirmWrapper,children:t.jsxs("div",{className:C(j.ConfirmContainer,{[j.Glass]:_},h),role:"dialog","aria-modal":"true",children:[t.jsx("h2",{className:j.ConfirmTitle,children:e}),t.jsx("p",{className:j.ConfirmMessage,children:n}),t.jsxs("div",{className:j.ConfirmActions,children:[t.jsx("button",{className:j.BtnCancel,type:"button",onClick:i,disabled:f,children:o}),t.jsx("button",{className:C(s?j.BtnDanger:j.BtnConfirm),type:"button",onClick:m,disabled:f,children:f?"…":r})]})]})})}const $={InfoWrapper:"_InfoWrapper_cqv58_4",InfoContainer:"_InfoContainer_cqv58_1",Glass:"_Glass_cqv58_24",InfoTitle:"_InfoTitle_cqv58_30",InfoMessage:"_InfoMessage_cqv58_38",InfoActions:"_InfoActions_cqv58_45",BtnClose:"_BtnClose_cqv58_52"};function Pn({title:e,message:n,onClose:r,className:o,glass:s=!1}){const a=N("InfoDialog",o);return t.jsx("div",{className:$.InfoWrapper,children:t.jsxs("div",{className:C($.InfoContainer,{[$.Glass]:s},a),role:"dialog","aria-modal":"true",children:[t.jsx("h2",{className:$.InfoTitle,children:e}),t.jsx("p",{className:$.InfoMessage,children:n}),t.jsx("div",{className:$.InfoActions,children:t.jsx("button",{className:$.BtnClose,type:"button",onClick:r,children:"Got it"})})]})})}function Mn({buttons:e,containerClassName:n}){const r=N("ModalActions",n);return t.jsx("div",{className:r,children:e.map((o,s)=>t.jsx("button",{className:o.className,type:"button",onClick:o.onClick,disabled:o.disabled,children:o.label},s))})}function On({onClick:e,disabled:n,className:r}){const o=N("ModalClose",r);return t.jsx("button",{className:o,type:"button",onClick:e,disabled:n,"aria-label":"Close",children:t.jsxs("svg",{viewBox:"0 0 24 24",width:"18",height:"18",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",children:[t.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),t.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})}const z={Backdrop:"_Backdrop_1w1e3_7",BackdropOpen:"_BackdropOpen_1w1e3_16",Panel:"_Panel_1w1e3_21",Right:"_Right_1w1e3_31",Left:"_Left_1w1e3_40",Top:"_Top_1w1e3_49",Bottom:"_Bottom_1w1e3_58",PanelOpen:"_PanelOpen_1w1e3_67"},ee=[];let jn=1,re=!1,he=0;function Be(){if(he>0){he-=1;return}const e=ee.pop();Ae(),e&&e.onBack()}function Fn(){re||(re=!0,window.addEventListener("popstate",Be))}function Ae(){ee.length>0||!re||(re=!1,window.removeEventListener("popstate",Be))}function Pe(e){const n=jn++;return ee.push({handle:n,onBack:e}),Fn(),window.history.pushState({churesOverlayBackHandle:n},""),n}function pe(e){const n=ee.findIndex(o=>o.handle===e);n===-1||(ee.splice(n,1),Ae(),window.history.state?.churesOverlayBackHandle!==e)||(he+=1,window.history.back())}function Me(e,n){const r=c.useRef([]),o=c.useRef(n);o.current=n,c.useEffect(()=>{const s=r.current;for(;s.length<e;)s.push(Pe(()=>o.current()));for(;s.length>e;){const a=s.pop();a!==void 0&&pe(a)}},[e]),c.useEffect(()=>()=>{const s=r.current;for(;s.length>0;){const a=s.pop();a!==void 0&&pe(a)}},[])}const Wn={top:z.Top,right:z.Right,bottom:z.Bottom,left:z.Left};let H=null,ge=0;function Oe(){return H||(H=document.createElement("div"),H.setAttribute("data-chures-side-drawer-root",""),document.body.appendChild(H)),H}function qn({open:e,onClose:n,children:r,side:o="right",backdropBlur:s=0,className:a}){const[i,l]=c.useState(!1),_=N("SideDrawer",a);Me(e?1:0,n),c.useLayoutEffect(()=>{if(!e){l(!1);return}document.body.appendChild(Oe());const u=requestAnimationFrame(()=>l(!0));return()=>cancelAnimationFrame(u)},[e]),c.useEffect(()=>(ge+=1,()=>{ge-=1,ge===0&&H&&(H.remove(),H=null)}),[]);const f=s>0?{backdropFilter:`blur(${s}rem)`,WebkitBackdropFilter:`blur(${s}rem)`}:void 0;return le.createPortal(t.jsxs(t.Fragment,{children:[t.jsx("div",{className:C(z.Backdrop,i&&z.BackdropOpen),style:f,onClick:n}),t.jsx("div",{className:C(z.Panel,Wn[o],i&&z.PanelOpen,_),children:r})]}),Oe())}const se=c.createContext(!0);function je(){return c.useContext(se)}const S={FlyoutMenuContainer:"_FlyoutMenuContainer_1q0ma_5",Backdrop:"_Backdrop_1q0ma_9",Panel:"_Panel_1q0ma_14",Submenu:"_Submenu_1q0ma_27",FlyoutPanelContainer:"_FlyoutPanelContainer_1q0ma_41",Back:"_Back_1q0ma_9",Chevron:"_Chevron_1q0ma_68",MenuListContainer:"_MenuListContainer_1q0ma_75",Heading:"_Heading_1q0ma_81",Divider:"_Divider_1q0ma_90",MenuRowContainer:"_MenuRowContainer_1q0ma_98",Dim:"_Dim_1q0ma_102",Row:"_Row_1q0ma_106",Icon:"_Icon_1q0ma_135",Label:"_Label_1q0ma_140",Arrow:"_Arrow_1q0ma_148",MenuSkeletonContainer:"_MenuSkeletonContainer_1q0ma_156",MenuSkeletonRow:"_MenuSkeletonRow_1q0ma_163",MenuSearchFieldContainer:"_MenuSearchFieldContainer_1q0ma_191"},xn={duration:.15,ease:[.2,.7,.2,1]};function Fe({item:e,menu:n,dim:r}){const o=je(),s=e.submenu;function a(i){if(s){n.toggleSubmenuFrom(i.currentTarget,s);return}e.disabled||n.selectItem(e)}return t.jsx(M.motion.div,{layout:o,transition:xn,className:C(S.MenuRowContainer,r&&S.Dim),children:t.jsxs(_e,{variant:"unstyled",className:S.Row,disabled:e.disabled,"aria-haspopup":s?"menu":void 0,onClick:a,onMouseEnter:s?i=>n.openSubmenuFrom(i.currentTarget,s):void 0,onMouseLeave:s?n.closeSubmenuSoon:void 0,children:[e.icon&&t.jsx("span",{className:S.Icon,children:e.icon}),t.jsx("span",{className:S.Label,children:e.label}),s&&t.jsx("span",{className:S.Arrow,children:"▸"})]})})}function We({items:e,menu:n,heading:r,rest:o}){const s=!!o&&o.length>0;return t.jsxs("div",{className:S.MenuListContainer,children:[r&&t.jsx("span",{className:S.Heading,children:r}),e.map(a=>t.jsx(Fe,{item:a,menu:n},a.key)),s&&t.jsx("div",{className:S.Divider}),o?.map(a=>t.jsx(Fe,{item:a,menu:n,dim:!0},a.key))]})}function qe({count:e=3}){const n=c.useMemo(()=>Array.from({length:Math.max(0,e)},(r,o)=>o),[e]);return t.jsx("div",{className:S.MenuSkeletonContainer,children:n.map(r=>t.jsx("div",{className:S.MenuSkeletonRow,role:"presentation"},r))})}const zn={duration:.15,ease:[.2,.7,.2,1]};function xe({value:e,onChange:n,placeholder:r}){function o(s){s.key==="Escape"&&n("")}return t.jsx(M.motion.div,{className:S.MenuSearchFieldContainer,initial:{opacity:0,height:0},animate:{opacity:1,height:"auto"},exit:{opacity:0,height:0},transition:zn,children:t.jsx(Te,{value:e,setValue:n,placeholder:r??"Search",autoFocus:!0,onKeyDown:o,startIcon:t.jsx(De,{size:14})})})}function ze(e,n,r){const o=n.trim().toLowerCase();if(!o)return{matches:e,rest:[]};const s=[],a=[];for(const i of e)r(i).toLowerCase().includes(o)?s.push(i):a.push(i);return{matches:s,rest:a}}function Hn(e){return e instanceof HTMLElement?e.tagName==="INPUT"||e.tagName==="TEXTAREA"||e.isContentEditable:!1}function He(e){const[n,r]=c.useState("");return c.useEffect(()=>{if(!e)return;function o(s){if(!Hn(document.activeElement)){if(s.key==="Backspace"){r(a=>a.slice(0,-1));return}s.key.length===1&&!s.ctrlKey&&!s.metaKey&&!s.altKey&&(r(a=>a+s.key),s.preventDefault())}}return document.addEventListener("keydown",o),()=>document.removeEventListener("keydown",o)},[e]),{query:n,setQuery:r}}function Ue(e){return e.searchText!==void 0?e.searchText:typeof e.label=="string"?e.label:""}function $e({section:e,menu:n,onBack:r,skeletonCount:o,active:s}){const a=!!e.searchable&&!!e.items,{query:i,setQuery:l}=He(!!s&&a);c.useEffect(()=>l(""),[e,l]);const{matches:_,rest:f}=c.useMemo(()=>ze(e.items??[],i,Ue),[e.items,i]),u=r?void 0:e.title;let h;return e.loading?h=t.jsx(qe,{count:o}):e.renderPanel?h=e.renderPanel():a?h=t.jsx(We,{items:_,rest:f,menu:n,heading:u}):h=t.jsx(We,{items:e.items??[],menu:n,heading:u}),t.jsxs("div",{className:S.FlyoutPanelContainer,children:[r&&t.jsxs(_e,{variant:"unstyled",className:S.Back,onClick:r,children:[t.jsx("span",{className:S.Chevron,children:"‹"}),e.title??"Back"]}),a&&t.jsx(M.AnimatePresence,{children:i!==""&&t.jsx(xe,{value:i,onChange:l})}),h]})}function Un(e,n,r,o,s){const a=r.width-2*o,i=Math.max(o,r.width-o-n.width),l=Math.min(Math.max(e.right-n.width,o),i),_=e.top-s-o,f=r.height-o-e.bottom-s;if(n.height>_&&f>_)return{top:e.bottom+s,left:l,maxHeight:f,maxWidth:a};const u=e.top-s-n.height;return{top:u<o?o:u,left:l,maxHeight:_,maxWidth:a}}function $n(e,n,r,o,s){if(s)return{side:"collapse"};const a=e.right+n.width<=r.width-o,i=e.left-n.width,l=a?"right":i>=o?"left":null;if(!l)return{side:"collapse"};const _=l==="right"?e.right:i,f=r.height-o-e.top,u=e.bottom-o;if(f>=n.height||f>=u)return{side:l,left:_,top:e.top,maxHeight:f};const h=Math.max(e.bottom-n.height,o);return{side:l,left:_,top:h,maxHeight:u}}function Ge(e,n,r){const[o,s]=c.useState(null),a=c.useRef(n),i=c.useRef(r);a.current=n,i.current=r;const l=c.useRef(null);return c.useLayoutEffect(()=>{if(!e){l.current=null,s(null);return}let _=0;function f(){const u=a.current();if(u!==null){const h=l.current;(h===null||!i.current(h,u))&&(l.current=u,s(u))}_=requestAnimationFrame(f)}return f(),()=>{cancelAnimationFrame(_),l.current=null,s(null)}},[e]),o}const Ve=8,Gn=8,Vn=150,Kn=3;function Ke(){return{width:window.innerWidth,height:window.innerHeight}}function me(){return window.matchMedia("(orientation: portrait)").matches}function Xe(e){return{width:e.scrollWidth||e.offsetWidth,height:e.scrollHeight||e.offsetHeight}}function Xn(e,n){return e.top===n.top&&e.left===n.left&&e.maxHeight===n.maxHeight&&e.maxWidth===n.maxWidth}function Rn(e,n){return e==="collapse"||n==="collapse"?e===n:e.side===n.side&&e.top===n.top&&e.left===n.left&&e.maxHeight===n.maxHeight}function Yn(e,n,r){return Ge(e,()=>{const o=n.current,s=r.current;return!o||!s?null:Un(o.getBoundingClientRect(),Xe(s),Ke(),Ve,Gn)},Xn)}function Qn(e,n,r){return Ge(e,()=>{const o=n.current,s=r.current;if(!o||!s)return null;const a=$n(s.getBoundingClientRect(),Xe(o),Ke(),Ve,me());return a.side==="collapse"?"collapse":a},Rn)}function Jn(e){const{anchorRef:n,panelRef:r,submenuRef:o,open:s,onOpenChange:a}=e,[i,l]=c.useState(!1),_=s??i,[f,u]=c.useState([]),[h,m]=c.useState(null),v=c.useRef(null),I=c.useRef(void 0),T=c.useCallback(k=>{l(k),a?.(k)},[a]),A=c.useCallback(k=>{m(null),u(y=>y.length>=Kn?y:[...y,k])},[]);c.useEffect(()=>{_||(u([]),m(null),v.current=null,I.current&&clearTimeout(I.current))},[_]);const b=c.useCallback((k,y)=>{if(I.current&&clearTimeout(I.current),v.current=k,me()){A(y);return}m({section:y,placement:null})},[A]),W=c.useCallback((k,y)=>{if(me()){f[f.length-1]===y?u(X=>X.slice(0,-1)):b(k,y);return}h&&h.section===y?m(null):b(k,y)},[f,h,b]),G=c.useCallback(()=>{I.current&&clearTimeout(I.current),I.current=setTimeout(()=>m(null),Vn)},[]),U=c.useCallback(()=>{I.current&&clearTimeout(I.current)},[]),w=Qn(!!h,o,v),D=Yn(_,n,r);c.useEffect(()=>{if(!(!h||!w)){if(w==="collapse"){A(h.section);return}h.placement!==w&&m({section:h.section,placement:w})}},[w,h,A]);const V=c.useCallback(()=>u(k=>k.slice(0,-1)),[]),K=c.useCallback(()=>T(!1),[T]),Q=c.useCallback(()=>T(!_),[T,_]),q=c.useCallback(k=>{k.onSelect?.(),T(!1)},[T]);return{open:_,toggle:Q,close:K,back:V,selectItem:q,openSubmenuFrom:b,toggleSubmenuFrom:W,closeSubmenuSoon:G,holdSubmenu:U,frame:f[f.length-1]??null,menuPlacement:D,submenu:h}}const Re={duration:.15,ease:[.2,.7,.2,1]};function Zn(e){const{anchorRef:n,open:r,onClose:o,items:s,rootTitle:a,skeletonCount:i}=e,l=c.useRef(null),_=c.useRef(null);function f(I){I||o()}const u=Jn({anchorRef:n,panelRef:l,submenuRef:_,open:r,onOpenChange:f}),h=u.frame??{title:a,items:s,searchable:e.searchable},m=u.menuPlacement,v=u.submenu?.placement??null;return le.createPortal(t.jsxs("div",{className:S.FlyoutMenuContainer,children:[r&&t.jsx("div",{className:S.Backdrop,onClick:o}),t.jsx(M.AnimatePresence,{children:r&&t.jsx(M.motion.div,{ref:l,className:S.Panel,style:m?{top:m.top,left:m.left,maxHeight:m.maxHeight,maxWidth:m.maxWidth}:{visibility:"hidden"},initial:{opacity:0,scale:.94,y:6},animate:{opacity:1,scale:1,y:0},exit:{opacity:0,scale:.94,y:6},transition:Re,children:t.jsx(se.Provider,{value:!!m,children:t.jsx($e,{section:h,menu:u,onBack:u.frame?u.back:void 0,skeletonCount:i,active:!u.submenu})})},"flyout-panel")}),t.jsx(M.AnimatePresence,{children:r&&u.submenu&&t.jsx(M.motion.div,{ref:_,className:S.Submenu,style:v?{top:v.top,left:v.left,maxHeight:v.maxHeight}:{visibility:"hidden"},onMouseEnter:u.holdSubmenu,onMouseLeave:u.closeSubmenuSoon,initial:{opacity:0,scale:.94,x:6},animate:{opacity:1,scale:1,x:0},exit:{opacity:0,scale:.94,x:6},transition:Re,children:t.jsx(se.Provider,{value:!!v,children:t.jsx($e,{section:u.submenu.section,menu:u,skeletonCount:i,active:!0})})},"flyout-submenu")})]}),document.body)}function et({classNames:e,children:n}){return t.jsx(ye.Provider,{value:e,children:n})}var ae=(e=>(e[e.OK=0]="OK",e[e.CANCELLED=1]="CANCELLED",e[e.UNKNOWN=2]="UNKNOWN",e[e.INVALID_ARGUMENT=3]="INVALID_ARGUMENT",e[e.DEADLINE_EXCEEDED=4]="DEADLINE_EXCEEDED",e[e.NOT_FOUND=5]="NOT_FOUND",e[e.ALREADY_EXISTS=6]="ALREADY_EXISTS",e[e.PERMISSION_DENIED=7]="PERMISSION_DENIED",e[e.RESOURCE_EXHAUSTED=8]="RESOURCE_EXHAUSTED",e[e.FAILED_PRECONDITION=9]="FAILED_PRECONDITION",e[e.ABORTED=10]="ABORTED",e[e.OUT_OF_RANGE=11]="OUT_OF_RANGE",e[e.UNIMPLEMENTED=12]="UNIMPLEMENTED",e[e.INTERNAL=13]="INTERNAL",e[e.UNAVAILABLE=14]="UNAVAILABLE",e[e.DATA_LOSS=15]="DATA_LOSS",e[e.UNAUTHENTICATED=16]="UNAUTHENTICATED",e))(ae||{});const Ye="type.googleapis.com/google.rpc.ErrorInfo",Qe="type.googleapis.com/google.rpc.BadRequest",Je="type.googleapis.com/google.rpc.PreconditionFailure";function ie(e){return typeof e=="object"&&e!==null}function F(e){return typeof e=="string"?e:""}function Ze(e){if(!ie(e))return{kind:"Unknown",typeUrl:"",raw:e};const n=F(e["@type"]);switch(n){case Ye:{const r=ie(e.metadata)?e.metadata:{},o={};for(const s of Object.keys(r))o[s]=F(r[s]);return{kind:"ErrorInfo",reason:F(e.reason),domain:F(e.domain),metadata:o}}case Qe:return{kind:"BadRequest",fieldViolations:(Array.isArray(e.fieldViolations)?e.fieldViolations:[]).map(s=>{const a=ie(s)?s:{};return{field:F(a.field),description:F(a.description)}})};case Je:return{kind:"PreconditionFailure",violations:(Array.isArray(e.violations)?e.violations:[]).map(s=>{const a=ie(s)?s:{};return{type:F(a.type),subject:F(a.subject),description:F(a.description)}})};default:return{kind:"Unknown",typeUrl:n,raw:e}}}function nt(e){return e.kind==="ErrorInfo"}function tt(e){return e.kind==="BadRequest"}function ot(e){return e.kind==="PreconditionFailure"}class ne extends Error{constructor(n){super(n.title),this.isRetryable=n.isRetryable??!1,this.grpcCode=n.grpcCode,this.details=n.details??[]}}function rt(e){if(e instanceof ne)return e;if(e instanceof Error&&e.message==="Failed to fetch")return new ne({title:"Server unavailable. Try again later",isRetryable:!0});if(typeof e=="object"&&e!==null&&"code"in e){const n=e,r=n.code===ae.UNAVAILABLE||n.code===ae.INTERNAL,o=(n.details??[]).map(Ze);return new ne({title:n.message,isRetryable:r,grpcCode:n.code,details:o})}return new ne({title:String(e),isRetryable:!1})}d.AvatarFallbackIcon=Ln,d.BAD_REQUEST_TYPE_URL=Qe,d.Button=_e,d.CheckmarkIcon=Tn,d.ChevronDownIcon=Ee,d.ChuresConfigProvider=et,d.ConfirmDialog=An,d.Dropdown=Dn,d.ERROR_INFO_TYPE_URL=Ye,d.EditPencilIcon=bn,d.Errors=ae,d.FlyoutMenu=Zn,d.InfoDialog=Pn,d.Input=Te,d.Loader=Se,d.LoadingWrapper=cn,d.MenuMeasuredContext=se,d.MenuSearchField=xe,d.MenuSkeleton=qe,d.ModalActions=Mn,d.ModalClose=On,d.PRECONDITION_FAILURE_TYPE_URL=Je,d.SearchIcon=De,d.ServiceError=ne,d.SideDrawer=qn,d.TelegramAuth=fn,d.TelegramSignInButton=Ne,d.Toaster=hn,d.Toggle=gn,d.isBadRequest=tt,d.isErrorInfo=nt,d.isPreconditionFailure=ot,d.menuItemText=Ue,d.parseErrorDetail=Ze,d.parseGrpcError=rt,d.partitionBySubstring=ze,d.popOverlayBack=pe,d.pushOverlayBack=Pe,d.useBackableOverlay=Me,d.useComponentClassName=N,d.useMenuMeasured=je,d.useTelegramLogin=ke,d.useToaster=fe,d.useTypeToSearch=He,Object.defineProperty(d,Symbol.toStringTag,{value:"Module"})}));
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
import { MenuItem } from './menuModel';
|
|
3
|
+
interface Props {
|
|
4
|
+
anchorRef: RefObject<HTMLElement | null>;
|
|
5
|
+
open: boolean;
|
|
6
|
+
onClose: () => void;
|
|
7
|
+
items: MenuItem[];
|
|
8
|
+
rootTitle?: string;
|
|
9
|
+
skeletonCount?: number;
|
|
10
|
+
searchable?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export type FlyoutMenuProps = Props;
|
|
13
|
+
export declare function FlyoutMenu(props: Props): import('react').ReactPortal;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { MenuSection } from './menuModel';
|
|
2
|
+
import { FloatingMenu } from './useFloatingMenu';
|
|
3
|
+
interface Props {
|
|
4
|
+
section: MenuSection;
|
|
5
|
+
menu: FloatingMenu;
|
|
6
|
+
onBack?: () => void;
|
|
7
|
+
skeletonCount?: number;
|
|
8
|
+
active?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare function FlyoutPanel({ section, menu, onBack, skeletonCount, active }: Props): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { MenuItem } from './menuModel';
|
|
2
|
+
import { FloatingMenu } from './useFloatingMenu';
|
|
3
|
+
interface Props {
|
|
4
|
+
items: MenuItem[];
|
|
5
|
+
menu: FloatingMenu;
|
|
6
|
+
heading?: string;
|
|
7
|
+
rest?: MenuItem[];
|
|
8
|
+
}
|
|
9
|
+
export declare function MenuList({ items, menu, heading, rest }: Props): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { MenuItem } from './menuModel';
|
|
2
|
+
import { FloatingMenu } from './useFloatingMenu';
|
|
3
|
+
interface Props {
|
|
4
|
+
item: MenuItem;
|
|
5
|
+
menu: FloatingMenu;
|
|
6
|
+
dim?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function MenuRow({ item, menu, dim }: Props): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
value: string;
|
|
3
|
+
onChange: (v: string) => void;
|
|
4
|
+
placeholder?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function MenuSearchField({ value, onChange, placeholder }: Props): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export type MenuSearchFieldProps = Props;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { FlyoutMenu } from './FlyoutMenu';
|
|
2
|
+
export type { FlyoutMenuProps } from './FlyoutMenu';
|
|
3
|
+
export { MenuSearchField } from './MenuSearchField';
|
|
4
|
+
export type { MenuSearchFieldProps } from './MenuSearchField';
|
|
5
|
+
export { MenuSkeleton } from './MenuSkeleton';
|
|
6
|
+
export type { MenuSkeletonProps } from './MenuSkeleton';
|
|
7
|
+
export { useMenuMeasured, MenuMeasuredContext } from './menuMeasuredContext';
|
|
8
|
+
export { useTypeToSearch } from './useTypeToSearch';
|
|
9
|
+
export { partitionBySubstring } from './partitionBySubstring';
|
|
10
|
+
export type { Partitioned } from './partitionBySubstring';
|
|
11
|
+
export { menuItemText } from './menuModel';
|
|
12
|
+
export type { MenuItem, MenuSection } from './menuModel';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface MenuItem {
|
|
3
|
+
key: string;
|
|
4
|
+
label: ReactNode;
|
|
5
|
+
icon?: ReactNode;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
onSelect?: () => void;
|
|
8
|
+
submenu?: MenuSection;
|
|
9
|
+
searchText?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface MenuSection {
|
|
12
|
+
title?: string;
|
|
13
|
+
items?: MenuItem[];
|
|
14
|
+
renderPanel?: () => ReactNode;
|
|
15
|
+
loading?: boolean;
|
|
16
|
+
searchable?: boolean;
|
|
17
|
+
}
|
|
18
|
+
export declare function menuItemText(item: MenuItem): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface Size {
|
|
2
|
+
width: number;
|
|
3
|
+
height: number;
|
|
4
|
+
}
|
|
5
|
+
export interface Viewport {
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
}
|
|
9
|
+
export interface MenuPlacement {
|
|
10
|
+
top: number;
|
|
11
|
+
left: number;
|
|
12
|
+
maxHeight: number;
|
|
13
|
+
maxWidth: number;
|
|
14
|
+
}
|
|
15
|
+
export declare function positionMenu(anchor: DOMRect, panel: Size, vp: Viewport, pad: number, gap: number): MenuPlacement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Size, Viewport } from './positionMenu';
|
|
2
|
+
export type SubmenuPlacement = {
|
|
3
|
+
side: "right" | "left";
|
|
4
|
+
top: number;
|
|
5
|
+
left: number;
|
|
6
|
+
maxHeight: number;
|
|
7
|
+
} | {
|
|
8
|
+
side: "collapse";
|
|
9
|
+
};
|
|
10
|
+
export declare function positionSubmenu(row: DOMRect, panel: Size, vp: Viewport, pad: number, forceCollapse: boolean): SubmenuPlacement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
import { MenuItem, MenuSection } from './menuModel';
|
|
3
|
+
import { MenuPlacement } from './positionMenu';
|
|
4
|
+
import { SubmenuPlacement } from './positionSubmenu';
|
|
5
|
+
type SidePlacement = Extract<SubmenuPlacement, {
|
|
6
|
+
side: "right" | "left";
|
|
7
|
+
}>;
|
|
8
|
+
export interface FloatingSubmenu {
|
|
9
|
+
section: MenuSection;
|
|
10
|
+
placement: SidePlacement | null;
|
|
11
|
+
}
|
|
12
|
+
export interface FloatingMenu {
|
|
13
|
+
open: boolean;
|
|
14
|
+
toggle: () => void;
|
|
15
|
+
close: () => void;
|
|
16
|
+
back: () => void;
|
|
17
|
+
selectItem: (item: MenuItem) => void;
|
|
18
|
+
openSubmenuFrom: (rowEl: HTMLElement, section: MenuSection) => void;
|
|
19
|
+
toggleSubmenuFrom: (rowEl: HTMLElement, section: MenuSection) => void;
|
|
20
|
+
closeSubmenuSoon: () => void;
|
|
21
|
+
holdSubmenu: () => void;
|
|
22
|
+
frame: MenuSection | null;
|
|
23
|
+
menuPlacement: MenuPlacement | null;
|
|
24
|
+
submenu: FloatingSubmenu | null;
|
|
25
|
+
}
|
|
26
|
+
interface Args {
|
|
27
|
+
anchorRef: RefObject<HTMLElement | null>;
|
|
28
|
+
panelRef: RefObject<HTMLElement | null>;
|
|
29
|
+
submenuRef: RefObject<HTMLElement | null>;
|
|
30
|
+
open?: boolean;
|
|
31
|
+
onOpenChange?: (next: boolean) => void;
|
|
32
|
+
}
|
|
33
|
+
export declare function useFloatingMenu(args: Args): FloatingMenu;
|
|
34
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function useTrackedPlacement<T>(active: boolean, compute: () => T | null, eq: (a: T, b: T) => boolean): T | null;
|
package/dist/index.d.ts
CHANGED
|
@@ -34,6 +34,14 @@ export type { SideDrawerProps, SideDrawerSide } from './components/SideDrawer';
|
|
|
34
34
|
export { useBackableOverlay } from './hooks/overlayBack/useBackableOverlay';
|
|
35
35
|
export { pushOverlayBack, popOverlayBack } from './hooks/overlayBack/overlayBackStack';
|
|
36
36
|
export type { OverlayBackHandle } from './hooks/overlayBack/overlayBackStack';
|
|
37
|
+
export { FlyoutMenu } from './components/FlyoutMenu';
|
|
38
|
+
export type { FlyoutMenuProps } from './components/FlyoutMenu';
|
|
39
|
+
export { MenuSearchField } from './components/FlyoutMenu';
|
|
40
|
+
export type { MenuSearchFieldProps } from './components/FlyoutMenu';
|
|
41
|
+
export { MenuSkeleton } from './components/FlyoutMenu';
|
|
42
|
+
export type { MenuSkeletonProps } from './components/FlyoutMenu';
|
|
43
|
+
export { useMenuMeasured, MenuMeasuredContext, useTypeToSearch, partitionBySubstring, menuItemText } from './components/FlyoutMenu';
|
|
44
|
+
export type { MenuItem, MenuSection, Partitioned } from './components/FlyoutMenu';
|
|
37
45
|
export { ChevronDownIcon, CheckmarkIcon, EditPencilIcon, AvatarFallbackIcon, SearchIcon } from './components/icons';
|
|
38
46
|
export type { ChevronDownIconProps, CheckmarkIconProps, SearchIconProps } from './components/icons';
|
|
39
47
|
export { ChuresConfigProvider } from './theme/ChuresConfigProvider';
|