gitifact 0.5.1 → 0.6.1
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/THIRD_PARTY_NOTICES.txt +3495 -191
- package/dist/browser/assets/BottomSheet-BFoM6syr.js +1 -0
- package/dist/browser/assets/Grid-BgyoU_D4.js +1 -0
- package/dist/browser/assets/Icon-DPaLmsmh.js +4 -0
- package/dist/browser/assets/IconButton-Br-4XhQr.js +1 -0
- package/dist/browser/assets/Markdown-d1SaIOZk.js +68 -0
- package/dist/browser/assets/{MenuBottomSheet-CQA7HL9k.js → MenuBottomSheet-Dgz4h1S7.js} +1 -1
- package/dist/browser/assets/MetadataListItem-BTW_ggUY.js +1 -0
- package/dist/browser/assets/ProgressBarMarkTooltip-BxGSd9KS.js +1 -0
- package/dist/browser/assets/Section-Z2PuhE6c.js +1 -0
- package/dist/browser/assets/Table-7eL9Hctc.js +3 -0
- package/dist/browser/assets/TimestampHoverCard-BJShn6bb.js +1 -0
- package/dist/browser/assets/Tooltip-MoU3alsv.js +1 -0
- package/dist/browser/assets/abnfDiagram-VCTEODGH-DmAlk-TR.js +1 -0
- package/dist/browser/assets/about-Dyn0BeO0.js +3 -0
- package/dist/browser/assets/activity-Cgw5nLJm.js +1 -0
- package/dist/browser/assets/appearance-DgDbwXAm.js +1 -0
- package/dist/browser/assets/arc-Pry-7G1_.js +1 -0
- package/dist/browser/assets/architecture-7GRP2DOG-BuddTnfb.js +1 -0
- package/dist/browser/assets/architectureDiagram-5GKGNRK7-VwuVv8aO.js +36 -0
- package/dist/browser/assets/array-BifhSqXX.js +1 -0
- package/dist/browser/assets/blockDiagram-I7D4REHJ-BY92gQgN.js +129 -0
- package/dist/browser/assets/c4Diagram-7LVT6UL2-D5TNBYXh.js +38 -0
- package/dist/browser/assets/changelog-DjXt1_80.js +2 -0
- package/dist/browser/assets/channel-NEbtzeVB.js +1 -0
- package/dist/browser/assets/chunk-2Q5K7J3B-C1jixKkw.js +1 -0
- package/dist/browser/assets/chunk-4HAMMTFA-DBbX-wzu.js +62 -0
- package/dist/browser/assets/chunk-5VM5RSS4-ZNzvKenW.js +15 -0
- package/dist/browser/assets/chunk-75Z2AOVW-962-yyBD.js +2 -0
- package/dist/browser/assets/chunk-DU6HZSFF-CHHMX1CR.js +127 -0
- package/dist/browser/assets/chunk-F27PBJKO-BOnYAGjZ.js +1 -0
- package/dist/browser/assets/chunk-FOHPRMQF-DzxwRta7.js +161 -0
- package/dist/browser/assets/chunk-GMAD6QVW-DQF31PdR.js +72 -0
- package/dist/browser/assets/chunk-GVQU2GXP-rruJzn36.js +1 -0
- package/dist/browser/assets/chunk-IMKFNOWR-CZ8ptS4j.js +231 -0
- package/dist/browser/assets/chunk-JWPE2WC7-DVXcaiue.js +1 -0
- package/dist/browser/assets/chunk-L3NEJ4N5-USlKRxmU.js +1 -0
- package/dist/browser/assets/chunk-OSK3NFVY-DYQeYWNP.js +10 -0
- package/dist/browser/assets/chunk-P2QGCYS3-SDkZ9hQX.js +1 -0
- package/dist/browser/assets/chunk-POPQ4Y6H-bdnFdIMc.js +1 -0
- package/dist/browser/assets/chunk-PWAF6VOD-DuKrEmQw.js +1 -0
- package/dist/browser/assets/chunk-SHT3W25Y-IggbHeog.js +168 -0
- package/dist/browser/assets/chunk-SVP7TREG-BxYPjkqU.js +88 -0
- package/dist/browser/assets/chunk-TICWLB2K-DMrY9ez0.js +206 -0
- package/dist/browser/assets/chunk-XXDRQBXY-DqAYeljN.js +1 -0
- package/dist/browser/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +1 -0
- package/dist/browser/assets/classDiagram-ZZMXUADV-BwE_Hs5R.js +1 -0
- package/dist/browser/assets/classDiagram-v2-VYDZK3BY-BwE_Hs5R.js +1 -0
- package/dist/browser/assets/{container.stylex-oPimSCGl.js → container.stylex-rwI38dw9.js} +1 -1
- package/dist/browser/assets/{contributors._email-CINLTSX2.js → contributors._email-BNMR_dTN.js} +1 -1
- package/dist/browser/assets/contributors.index-G5f2IyP0.js +1 -0
- package/dist/browser/assets/cose-bilkent-JH36ORCC-BEpcWcmK.js +1 -0
- package/dist/browser/assets/cynefin-OW5HDTMX-C4N2LLi1.js +1 -0
- package/dist/browser/assets/cynefinDiagram-5FMLGOSQ-C3KE8asf.js +62 -0
- package/dist/browser/assets/cytoscape.esm-Yq6u8L66.js +321 -0
- package/dist/browser/assets/dagre-C-rnJpZF.js +1 -0
- package/dist/browser/assets/dagre-GXQ25YYZ-C20xAaTE.js +4 -0
- package/dist/browser/assets/defaultLocale-BFoDCU3G.js +1 -0
- package/dist/browser/assets/diagram-S7CK7UJ4-6wtbgLIX.js +30 -0
- package/dist/browser/assets/diagram-UQ7AKVKN-BA02zKbd.js +41 -0
- package/dist/browser/assets/diagram-VSXAHHWV-Bl0Bun2O.js +3 -0
- package/dist/browser/assets/diagram-VX7I27RA-ChsRTsfS.js +24 -0
- package/dist/browser/assets/diagram-Z3DM3KII-B3Mxficd.js +24 -0
- package/dist/browser/assets/dist-v5Q1xZ2K.js +1 -0
- package/dist/browser/assets/document-CaUvlKcm.css +1 -0
- package/dist/browser/assets/document-Dx4gYX9t.js +11 -0
- package/dist/browser/assets/ebnfDiagram-PWID7BFC-Cs_89QgY.js +1 -0
- package/dist/browser/assets/erDiagram-RLTQ6QDP-BefkilYT.js +99 -0
- package/dist/browser/assets/eventmodeling-NTZA5JFV-OyiymXqZ.js +1 -0
- package/dist/browser/assets/{features._featureId-FySsJ2tl.js → features._featureId-BazwZKuA.js} +1 -1
- package/dist/browser/assets/features.index-BJB0VCMw.js +1 -0
- package/dist/browser/assets/flowDiagram-HODETNUW-BGkl5kD6.js +1 -0
- package/dist/browser/assets/ganttDiagram-EL5Y4UJY-B_Y3HJTL.js +292 -0
- package/dist/browser/assets/git-CuSufflq.js +1 -0
- package/dist/browser/assets/gitGraph-4MIJSDKK-CPDeR11I.js +1 -0
- package/dist/browser/assets/gitGraphDiagram-WWUBYQGX-B89zUhQY.js +106 -0
- package/dist/browser/assets/graphlib-DS17s2tU.js +1 -0
- package/dist/browser/assets/{index-CiEgP5lo.css → index-BSZEm1y4.css} +1 -1
- package/dist/browser/assets/index-Cgka-Zmz.js +48 -0
- package/dist/browser/assets/info-A6RAGUB7-DlEdyaYJ.js +1 -0
- package/dist/browser/assets/infoDiagram-27XIBGKW-T8vu4pEW.js +2 -0
- package/dist/browser/assets/init-C-OQMol4.js +1 -0
- package/dist/browser/assets/ishikawaDiagram-5VMMS53U-B4C53CII.js +70 -0
- package/dist/browser/assets/journeyDiagram-3NMN7TZE-DemWKqD6.js +139 -0
- package/dist/browser/assets/kanban-definition-UXKFOSKX-xMvrIZPT.js +89 -0
- package/dist/browser/assets/katex-ZlcWpGUi.js +257 -0
- package/dist/browser/assets/line-CfCBYCoS.js +1 -0
- package/dist/browser/assets/linear-SzVmGSw4.js +1 -0
- package/dist/browser/assets/mermaid-parser.core-DCp4gVZn.js +7 -0
- package/dist/browser/assets/mermaid.core-ny8BaDSG.js +44 -0
- package/dist/browser/assets/mindmap-definition-YA3MSWOX-CNWF3H17.js +96 -0
- package/dist/browser/assets/ordinal-BDEzSJ7C.js +1 -0
- package/dist/browser/assets/packet-AYTQ26CC-DgNRIjqj.js +1 -0
- package/dist/browser/assets/page-header-BxP70prH.js +124 -0
- package/dist/browser/assets/page-header-ClRsIf4A.css +1 -0
- package/dist/browser/assets/path-fybaL0A-.js +1 -0
- package/dist/browser/assets/pegDiagram-XKGWAZYB-BPEzoUlc.js +1 -0
- package/dist/browser/assets/pie-WAS4IAKB-D85SGg9H.js +1 -0
- package/dist/browser/assets/pieDiagram-E7YTZNPT-L5HtHPrJ.js +39 -0
- package/dist/browser/assets/preload-helper-BZ1Pz5am.js +1 -0
- package/dist/browser/assets/product-DLraSF3D.css +1 -0
- package/dist/browser/assets/product-Df-TRcl5.js +8 -0
- package/dist/browser/assets/product.index-68tq-tnH.js +1 -0
- package/dist/browser/assets/quadrantDiagram-AXDQQJYC-BFek-axl.js +7 -0
- package/dist/browser/assets/radar-RG4KPBEZ-BwPngHhh.js +1 -0
- package/dist/browser/assets/railroad-74A4TZTK-Bf5cESw-.js +1 -0
- package/dist/browser/assets/railroad-abnf-HS5TGJTU-QtVzwDRk.js +1 -0
- package/dist/browser/assets/railroad-ebnf-LZEXJU2U-CCcgn2jt.js +1 -0
- package/dist/browser/assets/railroad-peg-WCYAUIDC-DWRNBkSL.js +1 -0
- package/dist/browser/assets/railroadDiagram-O6MQD6OU-0D-Z1mj1.js +1 -0
- package/dist/browser/assets/request-state-BR8vtOZQ.js +1 -0
- package/dist/browser/assets/requirementDiagram-BXWQKSXE-8pNButqN.js +84 -0
- package/dist/browser/assets/requirements-C6bYGbsR.js +1 -0
- package/dist/browser/assets/rolldown-runtime-hePW80VL.js +1 -0
- package/dist/browser/assets/rough.esm-Dy-Kn_BL.js +1 -0
- package/dist/browser/assets/sankeyDiagram-P5KCCOFB-BOWaOPXp.js +40 -0
- package/dist/browser/assets/sequenceDiagram-WJ2MYXX4-BA3_JPLh.js +162 -0
- package/dist/browser/assets/settings-DHKMQuFF.js +1 -0
- package/dist/browser/assets/sizeCapture-INFHLROL-B0uUizjq.js +1 -0
- package/dist/browser/assets/src-B6xuSHsQ.js +1 -0
- package/dist/browser/assets/stateDiagram-D77RDMKH-YYcbi5Z-.js +1 -0
- package/dist/browser/assets/stateDiagram-v2-MP3YSRHH-BEg6dLDA.js +1 -0
- package/dist/browser/assets/swimlanes-42K2YHIH-B_Eh1oqP.js +1 -0
- package/dist/browser/assets/swimlanesDiagram-VR7AAH4N-Bckt0ZyW.js +8 -0
- package/dist/browser/assets/themeProps-CkLe5zXY.js +1 -0
- package/dist/browser/assets/timeline-definition-24CTP7MA-DfFHHbdC.js +120 -0
- package/dist/browser/assets/treeView-Q6P3EWNA-CaZRyAuW.js +1 -0
- package/dist/browser/assets/treemap-WGGIJYW6-DI2-Ryxd.js +1 -0
- package/dist/browser/assets/useClipboard-Cqx6Upy7.js +1 -0
- package/dist/browser/assets/useDevWarning-Dudfg3qF.js +1 -0
- package/dist/browser/assets/useIsomorphicLayoutEffect-BiEJxDg_.js +1 -0
- package/dist/browser/assets/useMediaQuery-twbHF0pO.js +1 -0
- package/dist/browser/assets/useScrollLock-D-Y-zHSV.js +1 -0
- package/dist/browser/assets/vennDiagram-4TSXK5OY-QXok2k3u.js +34 -0
- package/dist/browser/assets/wardley-WFR3VGLG-BiXQYqiJ.js +1 -0
- package/dist/browser/assets/wardleyDiagram-VM6X3IG4-BZBhm2Zm.js +78 -0
- package/dist/browser/assets/{wiki-DYxjYiPl.js → wiki-C-iMsNey.js} +1 -1
- package/dist/browser/assets/xychartDiagram-S5SC5T6Z-qrzzwM55.js +7 -0
- package/dist/browser/index.html +27 -26
- package/dist/i18n/ko/block.md +1 -0
- package/dist/i18n/ko/changelog.md +32 -0
- package/dist/i18n/ko/docs/commit.md +0 -1
- package/dist/i18n/ko/docs/design.md +2 -0
- package/dist/i18n/ko/docs/spec.md +2 -0
- package/dist/i18n/ko/docs/wiki.md +2 -0
- package/dist/i18n/ko/docs/writing.md +54 -0
- package/dist/main.js +1358 -944
- package/package.json +1 -1
- package/dist/browser/assets/BottomSheet-F2BUQwSi.js +0 -1
- package/dist/browser/assets/Grid-kXvDaAvk.js +0 -1
- package/dist/browser/assets/IconButton-CkA9oftf.js +0 -1
- package/dist/browser/assets/Markdown-CqZ4w2H_.js +0 -68
- package/dist/browser/assets/MetadataListItem-B6xUZEC3.js +0 -1
- package/dist/browser/assets/ProgressBarMarkTooltip-BVcVKVq9.js +0 -1
- package/dist/browser/assets/Section-zmL2D3WL.js +0 -1
- package/dist/browser/assets/Table-DDKWqCdD.js +0 -3
- package/dist/browser/assets/TimestampHoverCard-DOWpOAzA.js +0 -1
- package/dist/browser/assets/Tooltip-a2AGdnkC.js +0 -1
- package/dist/browser/assets/about-Chl-XBQg.js +0 -3
- package/dist/browser/assets/activity-F2_AhgBS.js +0 -1
- package/dist/browser/assets/changelog-DrJfyXDZ.js +0 -2
- package/dist/browser/assets/composeEventHandlers-CHIontwB.js +0 -1
- package/dist/browser/assets/contributors.index-ChB89wcL.js +0 -1
- package/dist/browser/assets/devWarning-BZMSgwyk.js +0 -1
- package/dist/browser/assets/document-Jy6Buepz.js +0 -9
- package/dist/browser/assets/document-QMuypGH5.css +0 -1
- package/dist/browser/assets/features.index-DWfPG8WV.js +0 -1
- package/dist/browser/assets/git-AnH-8SBT.js +0 -1
- package/dist/browser/assets/index-DXK4gUTr.js +0 -48
- package/dist/browser/assets/page-header-9-i3H9WR.css +0 -1
- package/dist/browser/assets/page-header-N7A_M6-B.js +0 -124
- package/dist/browser/assets/product-BKOKDrzZ.js +0 -8
- package/dist/browser/assets/product-DNlxFjU7.css +0 -1
- package/dist/browser/assets/product.index-BohDJK9z.js +0 -1
- package/dist/browser/assets/request-state-CO3OLoay.js +0 -1
- package/dist/browser/assets/requirements-Dh2NEqNw.js +0 -1
- package/dist/browser/assets/settings-DylPhHVJ.js +0 -1
- package/dist/browser/assets/themeProps-MQSlTycI.js +0 -1
- package/dist/browser/assets/useClipboard-B8Or2k0a.js +0 -1
- package/dist/browser/assets/useDevWarning-Xg7kPMHJ.js +0 -1
- package/dist/browser/assets/useIsomorphicLayoutEffect-f8dYmyS2.js +0 -1
- package/dist/browser/assets/useMediaQuery-DFlnKIlp.js +0 -1
- package/dist/browser/assets/useScrollLock-CrQ0xkil.js +0 -1
- package/dist/browser/assets/useTranslator-DY2HN18N.js +0 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{K as t,V as n,_ as r,c as i,l as a,n as o,q as s}from"./themeProps-CkLe5zXY.js";import{a as c,t as l}from"./useMediaQuery-twbHF0pO.js";import{t as u}from"./useDevWarning-Dudfg3qF.js";import{t as d}from"./useScrollLock-D-Y-zHSV.js";var f=e(s(),1),p=/^(\d+(?:\.\d+)?|\.\d+)(px|%)$/i;function m(e,t){if(typeof e==`number`)return Number.isFinite(e)&&e>0&&e<=1?e*t:null;let n=p.exec(e.trim());if(n===null)return null;let r=Number.parseFloat(n[1]);return r>0?n[2].toLowerCase()===`%`?r/100*t:r:null}function h(e){return m(e,1)!==null}function g(e,t){let n=[];for(let r of e){let e=m(r,t);e!==null&&n.push(e)}return n}function _(e,t,n=48){let r=[0,...t.filter(t=>t>0&&t<e).map(t=>e-t)].sort((e,t)=>e-t),i=[];for(let e of r){let t=i[i.length-1];(t===void 0||e-t>=n)&&i.push(e)}return i}function v(e,t){return t.reduce((t,n)=>Math.abs(n-e)<Math.abs(t-e)?n:t,t[0])}var y=.3;function ee(e,t){if(e.length<2||t<=0)return null;let n=e[e.length-1];return t-n<=.25*t?n:null}function b(e,t,n,r){let i=r!==null,a=i?t[t.length-2]:t[t.length-1],o=i?r:n,s=i?y:0;return e<=a?1:e>=o?s:1-(1-s)*((e-a)/(o-a))}function x(e,t,n,r){let i=t;if(n>0){let e=t.filter(e=>e>=r);e.length>0&&(i=e)}else if(n<0){let e=t.filter(e=>e<=r);e.length>0&&(i=e)}return v(e,i)}var S=`--_sheet-keyboard-inset`,C=new Set([`button`,`checkbox`,`color`,`file`,`hidden`,`image`,`radio`,`range`,`reset`,`submit`]);function w(){return window.visualViewport?.height??window.innerHeight}function T(){return w()>=window.innerHeight-.5}function te(){let e=window.navigator.userAgent;return/iPad|iPhone|iPod/.test(e)||e.includes(`Macintosh`)&&window.navigator.maxTouchPoints>1}function E(e){return e instanceof HTMLTextAreaElement?!e.disabled&&!e.readOnly:e instanceof HTMLInputElement?!e.disabled&&!e.readOnly&&!C.has((e.getAttribute(`type`)??`text`).toLowerCase()):e instanceof HTMLElement&&e.matches(`[contenteditable]:not([contenteditable="false"])`)}function D(e,t){if(!(e instanceof Element))return null;let n=e.closest(`input, textarea, [contenteditable]:not([contenteditable="false"])`);if(t.contains(n)&&E(n))return n;let r=e.closest(`label`),i=r instanceof HTMLLabelElement?r.control:null;return t.contains(i)&&E(i)?i:null}function O({bodyRef:e,bottomClearance:t,isEnabled:n,isFullyExpanded:r,isPageScrollLocked:i,isSheetTraveling:a,isOpen:o,isPresented:s,sheetRef:c}){let l=(0,f.useRef)(!1),u=(0,f.useRef)(!1),d=(0,f.useRef)(r),p=(0,f.useRef)(o);d.current=r,p.current=o,(0,f.useEffect)(()=>{if(!n||!a)return;let e=c.current,t=document.activeElement;e&&t instanceof HTMLElement&&t!==e&&e.contains(t)&&(u.current=l.current,e.focus({preventScroll:!0}))},[n,a,c]),(0,f.useEffect)(()=>{if(!n||!s||o)return;let e=c.current,t=document.activeElement;e&&t instanceof HTMLElement&&t!==e&&e.contains(t)&&(u.current=l.current,t.blur())},[n,o,s,c]),(0,f.useEffect)(()=>{let r=e.current,a=c.current;if(!n||!s||!r)return;let o=null,f=null,m=te(),h=()=>{r.style.setProperty(S,`0px`),o=null,f=null,l.current=!1,u.current=!1},g=(e,t)=>{if(typeof r.scrollBy!=`function`){r.scrollTop+=e;return}let n=typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;r.scrollBy({top:e,behavior:t&&!n?`smooth`:`instant`})},_=(e,n)=>{let i=r.getBoundingClientRect(),a=e.getBoundingClientRect(),o=w(),s=Math.max(0,i.bottom-o)>0?t:0,c=i.top,l=Math.min(i.bottom,o-s);l<=c||(a.bottom>l?g(a.bottom-l,n):a.top<c&&g(a.top-c,n))},v=e=>{let n=w();if(T()){h();return}if(Math.max(0,e.bodyBottom-n)===0){h();return}let i=Math.max(0,e.bodyBottom-(n-t));r.style.setProperty(S,`${i}px`)},y=e=>{if(!d.current)return;let t=D(e.relatedTarget,r);if(t){t!==document.activeElement&&t.focus({preventScroll:!0});return}let n=D(e.target,r);p.current&&n&&!e.relatedTarget&&a?.focus({preventScroll:!0})},ee=()=>{let e=document.activeElement;if(!d.current||!(e instanceof HTMLElement)||!r.contains(e)||!E(e)){if(u.current&&o){v(o);return}h();return}u.current=!1;let n=r.getBoundingClientRect(),a=w(),s=Math.max(0,n.bottom-a),c=s>0?t:0;o=s>0?{bodyBottom:n.bottom}:null,i&&s>0&&!l.current&&(f={x:window.scrollX,y:window.scrollY}),l.current=s>0;let p=s>0?Math.max(0,n.bottom-(a-c)):0;r.style.setProperty(S,`${p}px`),_(e,s>0)},b=0,x=()=>{cancelAnimationFrame(b),b=requestAnimationFrame(ee)},C=()=>{let e=f;if(e==null||window.scrollX===e.x&&window.scrollY===e.y)return;window.scrollTo(e.x,e.y);let t=document.activeElement;t instanceof HTMLElement&&r.contains(t)&&E(t)&&_(t,!1)},O=typeof ResizeObserver>`u`?null:new ResizeObserver(x),k=()=>{if(!O)return;O.disconnect();let e=new Set([r]);a&&e.add(a);for(let t of r.children)e.add(t);let t=document.activeElement;if(t instanceof HTMLElement&&r.contains(t))for(let n=t;n&&n!==r;n=n.parentElement)e.add(n);for(let t of e)O.observe(t)},A=typeof MutationObserver>`u`?null:new MutationObserver(e=>{e.every(e=>e.type===`attributes`&&e.target===r)||(k(),x())}),j=()=>{k(),x()},M=()=>{u.current=l.current,x()},ne=e=>{e.target===a&&e.propertyName===`transform`&&x()},N=window.visualViewport;return m&&document.addEventListener(`blur`,y,!0),r.addEventListener(`focusin`,j),r.addEventListener(`focusout`,M),a?.addEventListener(`transitionend`,ne),N?.addEventListener(`resize`,x),N?.addEventListener(`scroll`,x),window.addEventListener(`scroll`,C),window.addEventListener(`resize`,x),A?.observe(r,{attributes:!0,characterData:!0,childList:!0,subtree:!0}),k(),x(),()=>{cancelAnimationFrame(b),m&&document.removeEventListener(`blur`,y,!0),r.removeEventListener(`focusin`,j),r.removeEventListener(`focusout`,M),a?.removeEventListener(`transitionend`,ne),N?.removeEventListener(`resize`,x),N?.removeEventListener(`scroll`,x),window.removeEventListener(`scroll`,C),window.removeEventListener(`resize`,x),O?.disconnect(),A?.disconnect(),r.style.removeProperty(S),l.current=!1,u.current=!1}},[e,t,n,i,s,c])}var k=1.2,A=48,j=.4,M=40;function ne(e){return e.syntheticTouch===!0}var N=.35,re=4,ie=8;function ae(){typeof navigator>`u`||typeof navigator.vibrate!=`function`||ue()||navigator.vibrate(8)}function oe(e,t){let n=t[0],r=Math.abs(e-n);for(let i of t){let t=Math.abs(e-i);t<r&&(r=t,n=i)}if(r>=M)return e;let i=r/M,a=1-i*i;return e+(n-e)*a}function se(e,t,n){return Math.max(0,e-t-n)}function ce(e){let t=Number.parseFloat(getComputedStyle(e).paddingBlockEnd);return Number.isFinite(t)?t:0}function le(e){if(!e)return 0;let t=ce(e);return Math.max(0,e.scrollHeight-e.clientHeight-t)-e.scrollTop}function P(e,t,n){return Math.max(0,e-n-t)}function ue(){return typeof window>`u`||!window.matchMedia?!1:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches}function de({isOpen:e,canDismiss:t=!0,offscreenBlockEndInset:n=0,onDismiss:r,snapHeights:i,onSnap:a,onScrimOpacity:o}){let[s,c]=(0,f.useState)(0),[u,d]=(0,f.useState)(0),[p,m]=(0,f.useState)(!1),[h,g]=(0,f.useState)(0),[v,y]=(0,f.useState)(0),[S,C]=(0,f.useState)(0),w=(0,f.useRef)(0),T=(0,f.useRef)(0),[te,E]=(0,f.useState)(null),[D,O]=(0,f.useState)(!1),M=(0,f.useRef)(0),de=(0,f.useRef)(null),F=(0,f.useRef)(null),I=(0,f.useRef)(n);I.current=Math.max(0,n);let L=(0,f.useCallback)(e=>{let t=Math.max(0,e);w.current=t,C(t)},[]),R=(0,f.useCallback)(e=>{let t=Math.max(0,e);Math.abs(t-M.current)>.5&&(M.current=t,y(t))},[]),fe=(0,f.useCallback)(()=>{O(!0),de.current=null,E(null);let e=F.current;F.current=null,e!=null&&R(e)},[R]),z=(0,f.useCallback)((e,t,n,r,i,a,o)=>{let s=se(e,n,a);if(o&&Math.abs(r-t)>.5&&!ue()){F.current=s,de.current=i,E(i);return}F.current=null,de.current=null,E(null),O(Math.abs(i-n)>.5),R(s)},[R]),pe=(0,f.useRef)(0);pe.current=p?s:u;let B=(0,f.useRef)(e);B.current=e;let me=(0,f.useRef)(i);me.current=i;let he=(0,f.useRef)(r),ge=(0,f.useRef)(t),V=(0,f.useRef)(a),H=(0,f.useRef)(o);(0,f.useEffect)(()=>{he.current=r,ge.current=t,V.current=a,H.current=o});let U=(0,f.useRef)(null),W=(0,f.useRef)(0),G=(0,f.useRef)(null),K=(0,f.useRef)(null),q=(0,f.useRef)(null);(0,f.useLayoutEffect)(()=>{if(!D)return;G.current?.offsetHeight;let e=requestAnimationFrame(()=>{O(!1)});return()=>cancelAnimationFrame(e)},[D]);let J=(0,f.useCallback)(e=>{e<=0||!B.current||pe.current>0||(W.current=e,g(t=>t===e?t:e))},[]),_e=(0,f.useCallback)(e=>{if(q.current?.disconnect(),q.current=null,G.current=e,!e||typeof ResizeObserver>`u`){e&&J(e.getBoundingClientRect().height);return}J(e.getBoundingClientRect().height);let t=new ResizeObserver(e=>{let t=e[0];if(t){let e=t.borderBoxSize?.[0]?.blockSize;J(e??t.target.getBoundingClientRect().height)}});t.observe(e),q.current=t},[J]);(0,f.useEffect)(()=>()=>q.current?.disconnect(),[]),(0,f.useEffect)(()=>{e&&(c(0),d(0),m(!1),O(!1),L(0),T.current=0,M.current=0,de.current=null,F.current=null,y(0),E(null))},[e,L]);let Y=(0,f.useCallback)(()=>W.current>0?W.current:G.current?.getBoundingClientRect().height??0,[]),X=(0,f.useCallback)(e=>{let t=P(e,0,I.current),n=_(t,me.current?.()??[]);return{offsets:n,peekOffset:ee(n,t)}},[]),ve=(0,f.useCallback)(()=>{let e=G.current;if(!e)return W.current;let t=e.style.height;if(t===``)return e.getBoundingClientRect().height;e.style.height=``;let n=e.getBoundingClientRect().height;return e.style.height=t,n},[]),ye=(0,f.useCallback)(()=>{if(!B.current||U.current!=null||de.current!=null)return;let e=ve();if(e<=0)return;let{offsets:t,peekOffset:n}=X(e),r=Math.min(T.current,t.length-1),i=t[r],a=i===n?0:i,o=w.current;if(e===W.current&&Math.abs(i-pe.current)<=.5&&Math.abs(a-o)<=.5)return;W.current=e,g(e),T.current=r,z(o,i,a,i,o,le(K.current),!1),L(a),d(i),V.current?.(P(e,i,I.current));let s=t[t.length-1],c=P(e,s,I.current);H.current?.(b(i,t,s+c*j,n))},[ve,z,L,X]);(0,f.useEffect)(()=>{if(!(!e||typeof window>`u`))return window.addEventListener(`resize`,ye),window.addEventListener(`orientationchange`,ye),()=>{window.removeEventListener(`resize`,ye),window.removeEventListener(`orientationchange`,ye)}},[e,ye]);let Z=(0,f.useRef)(!1);(0,f.useLayoutEffect)(()=>{if(!Z.current){Z.current=!0;return}ye()},[ye,i]);let Q=(0,f.useCallback)(e=>{let t=U.current;if(t==null)return;U.current=null,e?.hasPointerCapture?.(t.pointerId)&&e.releasePointerCapture(t.pointerId),c(t.baseOffset),m(!1),z(t.baseLayoutOffset,t.baseOffset,t.baseLayoutOffset,t.renderedOffset,t.layoutOffset,t.naturalEndGap,!0);let{offsets:n,peekOffset:r}=X(t.height),i=n[n.length-1],a=i+P(t.height,i,I.current)*j;H.current?.(b(t.baseOffset,n,a,r))},[z,X]);(0,f.useEffect)(()=>{let e=()=>Q(),t=()=>{document.visibilityState===`hidden`&&Q()};return window.addEventListener(`blur`,e),document.addEventListener(`visibilitychange`,t),()=>{window.removeEventListener(`blur`,e),document.removeEventListener(`visibilitychange`,t)}},[Q]);let be=(0,f.useCallback)((e,t,n,r,i,a,o,s,l,u)=>{let{offsets:f,peekOffset:p}=X(n),m=f[f.length-1],h=P(n,m,I.current),g=Math.abs(t)>k&&i>A,_=e=>{let t=e===p?0:e;z(o,e,t,s,l,u,!0),L(t),T.current=Math.max(0,f.indexOf(e)),d(e),V.current?.(P(n,e,I.current));let r=m+h*j;H.current?.(b(e,f,r,p)),e!==a&&ae()};if(r>0&&g){ge.current?(z(o,a,o,o,o,u,!1),he.current()):_(m);return}if(r<0&&g){z(o,0,0,s,l,u,!0),L(0),T.current=0,c(0),d(0),V.current?.(P(n,0,I.current)),H.current?.(1),ae();return}if(e>m+h*j){ge.current?(z(o,a,o,o,o,u,!1),he.current()):_(m);return}_(x(e,f,r,a))},[z,L,X]),$=(0,f.useCallback)((e,t,n)=>{let r=e.currentTarget,i=ne(e);i||r.setPointerCapture?.(e.pointerId);let a=n??e.clientY,o=le(K.current),s=w.current;U.current={syntheticTouch:i,pointerId:e.pointerId,startCoord:a,lastCoord:e.clientY,lastTime:e.timeStamp,velocity:0,height:t,baseOffset:u,baseLayoutOffset:s,renderedOffset:u,layoutOffset:s,naturalEndGap:o},R(se(s,s,o)),c(u),m(!0)},[u,R]),xe=(0,f.useCallback)(e=>{e.button===0&&e.isPrimary&&(e.preventDefault(),$(e,Y()))},[$,Y]),Se=(0,f.useCallback)(e=>{U.current!=null&&(e.preventDefault(),Q(e.currentTarget))},[Q]),Ce=(0,f.useCallback)(e=>{U.current?.syntheticTouch||U.current?.pointerId===e.pointerId&&Q()},[Q]),we=(0,f.useCallback)(e=>{let t=U.current;if(!t||t.pointerId!==e.pointerId||t.syntheticTouch&&!ne(e))return;let n=e.clientY-t.startCoord,r=e.timeStamp-t.lastTime;r>0&&(t.velocity=(e.clientY-t.lastCoord)/r,t.lastCoord=e.clientY,t.lastTime=e.timeStamp);let{offsets:i,peekOffset:a}=X(t.height),o=t.baseOffset+n,s=i[i.length-1],l;l=o<0?Math.max(-48,o*N):o>s?o:oe(o,i);let u=l<t.baseOffset?0:t.baseLayoutOffset;t.renderedOffset=l,t.layoutOffset=u,c(l),R(se(t.baseLayoutOffset,u,t.naturalEndGap));let d=i[i.length-1],f=d+P(t.height,d,I.current)*j;H.current?.(b(l,i,f,a))},[X,R]),Te=(0,f.useCallback)(e=>{let t=U.current;if(!t||t.pointerId!==e.pointerId||t.syntheticTouch&&!ne(e))return;let n=e.currentTarget,r=e.clientY-t.startCoord,i=Math.max(0,t.baseOffset+r),a=r===0?0:r>0?1:-1;U.current=null,t.syntheticTouch||n.releasePointerCapture?.(e.pointerId),m(!1),be(i,t.velocity,t.height||1,a,Math.abs(r),t.baseOffset,t.baseLayoutOffset,t.renderedOffset,t.layoutOffset,t.naturalEndGap)},[be]),Ee=(0,f.useRef)(null),De=(0,f.useCallback)(e=>{if(e.button!==0||!e.isPrimary)return;let t=e.currentTarget;if(t.scrollTop>0){Ee.current=null;return}Ee.current={pointerId:e.pointerId,startCoord:e.clientY,scroller:t}},[]),Oe=(0,f.useCallback)(e=>{if(U.current){we(e);return}let t=Ee.current;if(!t||t.pointerId!==e.pointerId)return;let n=e.clientY-t.startCoord;n>ie&&t.scroller.scrollTop<=0?(Ee.current=null,$(e,Y(),t.startCoord),we(e)):n<0&&(Ee.current=null)},[$,we,Y]),ke=(0,f.useCallback)(e=>{Ee.current=null,!U.current?.syntheticTouch&&U.current&&Te(e)},[Te]),Ae=(0,f.useRef)(null),je=(0,f.useRef)(null),Me=(0,f.useRef)($),Ne=(0,f.useRef)(Q),Pe=(0,f.useRef)(we),Fe=(0,f.useRef)(Te),Ie=(0,f.useRef)(Y);(0,f.useEffect)(()=>{Me.current=$,Ne.current=Q,Pe.current=we,Fe.current=Te,Ie.current=Y});let Le=(0,f.useCallback)(e=>{let t=(e,t)=>({syntheticTouch:!0,pointerId:e.identifier,clientY:e.clientY,timeStamp:Date.now(),currentTarget:t,setPointerCapture:()=>{},releasePointerCapture:()=>{}}),n=e=>e.scrollTop<=0,r=e=>e.scrollTop+e.clientHeight>=e.scrollHeight-1,i=e=>{let t=e.currentTarget,i=e.changedTouches[0];if(!i){Ae.current=null;return}let a=n(t),o=r(t)&&pe.current>0;Ae.current={id:i.identifier,startY:i.clientY,top:a,bottom:o,contentEndY:null,promotedAtContentEnd:!1}},a=e=>{let i=e.currentTarget,a=Ae.current;if(U.current){let n=[...e.changedTouches].find(e=>e.identifier===U.current?.pointerId);if(!n)return;if(a?.promotedAtContentEnd&&a.contentEndY!=null){if(n.clientY>=a.contentEndY){a.contentEndY=null,a.promotedAtContentEnd=!1,Ne.current(i);return}Pe.current(t(n,i));return}e.preventDefault(),Pe.current(t(n,i));return}if(!a)return;let o=[...e.changedTouches].find(e=>e.identifier===a.id);if(!o)return;let s=o.clientY-a.startY,c=a.top&&s>ie&&n(i),l=a.bottom&&s<-8&&r(i);if(c||l){e.preventDefault(),Ae.current=null,Me.current(t(o,i),Ie.current(),a.startY),Pe.current(t(o,i));return}(a.top&&s<0||a.bottom&&s>0)&&(a.top=!1,a.bottom=!1),pe.current>0&&r(i)?a.contentEndY==null?a.contentEndY=o.clientY:a.contentEndY-o.clientY>=re&&(a.promotedAtContentEnd=!0,Me.current(t(o,i),Ie.current(),a.contentEndY),Pe.current(t(o,i))):a.contentEndY=null},o=e=>{Ae.current=null;let n=U.current?.pointerId;if(n==null)return;let r=[...e.changedTouches].find(e=>e.identifier===n),i=e.currentTarget;r?Fe.current(t(r,i)):e.touches.length===0&&Ne.current(i)},s=K.current;if(s&&je.current){let e=je.current;s.removeEventListener(`touchstart`,e.start),s.removeEventListener(`touchmove`,e.move),s.removeEventListener(`touchend`,e.end),s.removeEventListener(`touchcancel`,e.end)}K.current=e,e?(e.addEventListener(`touchstart`,i,{passive:!0}),e.addEventListener(`touchmove`,a,{passive:!1}),e.addEventListener(`touchend`,o,{passive:!0}),e.addEventListener(`touchcancel`,o,{passive:!0}),je.current={start:i,move:a,end:o}):je.current=null},[]),Re=l(`(prefers-reduced-motion: reduce)`),ze=(0,f.useCallback)(e=>{if(M.current<=0)return;let t=ce(e),n=Math.max(0,e.scrollHeight-e.clientHeight-t),r=Math.max(0,e.scrollTop-n);r<M.current-.5&&R(r)},[R]),Be=(0,f.useCallback)(e=>{U.current==null&&de.current==null&&ze(e.currentTarget)},[ze]),Ve=p?s:u;return{sheetRef:_e,contentProps:(0,f.useMemo)(()=>({style:{transform:Ve===0?void 0:`translateY(${Ve}px)`,transition:e&&(p||D||Re)?`none`:void 0,touchAction:`none`,overscrollBehavior:`contain`}}),[Ve,p,e,D,Re]),handleProps:(0,f.useMemo)(()=>({style:{touchAction:`none`,cursor:`grab`},onContextMenu:Se,onLostPointerCapture:Ce,onPointerDown:xe,onPointerMove:we,onPointerUp:Te,onPointerCancel:Te}),[Te,Se,Ce,xe,we]),bodyProps:(0,f.useMemo)(()=>({ref:Le,onContextMenu:Se,onLostPointerCapture:Ce,onPointerDown:De,onPointerMove:Oe,onPointerUp:ke,onPointerCancel:ke,onScroll:Be}),[Le,ke,De,Oe,Be,Se,Ce]),bodyElementRef:K,dragOffset:s,settledOffset:u,isDragging:p,sheetHeight:h,scrollPreservationInset:v,settlingLayoutOffset:te,settledLayoutOffset:S,completeScrollAreaSettle:fe}}var F=a(),I={hug:`92dvh`,capped:`62dvh`,tall:`92dvh`},L=48,R=48,fe=50;n[`--spacing-6`];function z(){return typeof window>`u`?0:window.innerHeight}function pe(e){let t=``;for(let n of e??[])t+=`${typeof n}:${n}|`;return t}var B={sheet:{kfzvcC:`x67bb7w`,kB7OPa:`x9f619`,kVAEAm:`x1n2onr6`,k1xSpc:`x78zum5`,kXwgrk:`xdt5ytf`,kAzted:`x2lwn1j`,kzqmXN:`xh8yej3`,ks0D6T:`x11gisft`,kWkggS:`x10xzikg`,kEafiO:`x11xkdxz`,kPef9Z:`x13fuv20`,kLZC3w:`x1pc3f07`,k2ei4v:`xgbv0en`,kVhnKS:`x1t7ytsu`,kGJrpR:`x1j92z86`,ke9TFa:`xw8tdv1`,k8ry5P:`x18b5jzi`,kBCPoo:`x1gejf6u`,krdFHd:`x81l70g`,kfmiAY:`x7hs6f1`,kGVxlE:`x1kcpxr7`,kI3sdo:`x1a2a7pz`,kVQacm:`xb3r6kr`,kGO01o:`x1wkw6tp`,k1K539:`x1if0o47`,k3aq6I:`xnn1q72 xhbqy3z`,kSiTet:`x1hc1fzr`,k1ekBW:`xwcsmn1`,kIyJzY:`x80gvsz`,kAMwcw:`xlr8y92`,k6sLGO:`x1q1rmc8`,k6CgDc:`xzg1mie`,$$css:!0},sheetClosing:{k3aq6I:`x1weeur4`,kAMwcw:`xv2sgk5`,$$css:!0},sheetFading:{kSiTet:`xg01cxk`,$$css:!0},sheetInactive:{kfzvcC:`x47corl`,$$css:!0},budget:{kZKoxP:`x1tpcejd`,$$css:!0},hugHeight:{kZKoxP:`xg7h5cd`,kskxy:`x14bu9tk`,$$css:!0}};function me(e){return e.kind===`open`?e.entering?`entering`:null:e.kind===`retained`?e.motion===`covered`?null:e.motion:e.kind===`exiting`?`exiting`:null}function he(e,t,n){if(e==null)return n(),()=>{};let r=!1,i=null,a=()=>{r||(r=!0,i!=null&&clearTimeout(i),e.removeEventListener(`transitionend`,o),e.removeEventListener(`transitioncancel`,o),n())},o=n=>{n.target===e&&n.propertyName===t&&a()};e.addEventListener(`transitionend`,o),e.addEventListener(`transitioncancel`,o);let s=getComputedStyle(e);if(e.style.transition.trim()===`none`||s.transition.trim()===`none`)return a(),()=>{};let c=s.transitionProperty.split(`,`).map(e=>e.trim()),l=s.transitionDuration.split(`,`).map(ge),u=s.transitionDelay.split(`,`).map(ge),d=!1,f=c.reduce((e,n,r)=>{if(n!==t&&n!==`all`)return e;let i=l[r%l.length],a=u[r%u.length];return i==null||a==null?(d=!0,e):Math.max(e,i+a)},0);return d?()=>{e.removeEventListener(`transitionend`,o),e.removeEventListener(`transitioncancel`,o)}:f<=0?(a(),()=>{}):(i=setTimeout(a,f+fe),()=>{i!=null&&clearTimeout(i),e.removeEventListener(`transitionend`,o),e.removeEventListener(`transitioncancel`,o)})}function ge(e){let t=e.trim();if(!/^-?(?:\d+|\d*\.\d+)(?:ms|s)$/.test(t))return null;let n=Number.parseFloat(e);return t.endsWith(`ms`)?n:n*1e3}function V({ref:e,state:n,height:i,children:a,snapPoints:s,className:l,style:d,tabIndex:p,xstyle:m,isSwipeDismissAllowed:_=!0,isPageScrollLocked:v=!1,onDismiss:y,onScrimOpacity:ee,onElementChange:b,onMotionStart:x,onMotionComplete:S,...C}){let w=(0,f.useRef)(null),T=(0,f.useRef)(n),te=(0,f.useRef)(!1),E=(0,f.useRef)(x),D=(0,f.useRef)(S),k=(0,f.useRef)(null),A=(0,f.useRef)(null),j=n.kind===`open`&&n.entering,M=T.current,ne=M.kind===`open`&&M.entering;j&&!ne?te.current=M.kind===`retained`:j||(te.current=!1),(0,f.useLayoutEffect)(()=>{T.current=n,E.current=x,D.current=S},[S,x,n]);let N=n.kind===`open`,re=n.kind!==`hidden`,ie=n.kind===`retained`,ae=ie||n.kind===`exiting`,oe=n.kind===`exiting`,se=ie&&n.motion===`fading`,ce=ie?n.alignmentOffset:0,le=pe(s),P=(0,f.useRef)(s);P.current=s;let{snapHeights:ue,ignoredSnapPointsMessage:fe}=(0,f.useMemo)(()=>{if(le===``)return{snapHeights:void 0,ignoredSnapPointsMessage:``};let e=(P.current??[]).filter(e=>!h(e));return{snapHeights:()=>g(P.current??[],z()),ignoredSnapPointsMessage:e.length===0?``:`snapPoints ignored ${JSON.stringify(e)}. A snap point is a viewport fraction above 0 and up to 1 (0.5 is half the screen), a px length ('320px'), or a percentage ('50%').`}},[le]);u(`BottomSheet`,fe,fe!==``);let{contentProps:ge,handleProps:V,bodyProps:H,bodyElementRef:U,sheetRef:W,dragOffset:G,settledOffset:K,isDragging:q,sheetHeight:J,scrollPreservationInset:_e,settlingLayoutOffset:Y,settledLayoutOffset:X,completeScrollAreaSettle:ve}=de({isOpen:N,canDismiss:_,offscreenBlockEndInset:L,onDismiss:y,snapHeights:ue,onScrimOpacity:ee}),ye=(0,f.useCallback)(e=>{W(e),w.current=e,b?.(e)},[b,W]);O({bodyRef:U,bottomClearance:R,isEnabled:i===`tall`,isFullyExpanded:K===0,isPageScrollLocked:v,isSheetTraveling:q&&G!==K,isOpen:N,isPresented:re,sheetRef:w}),(0,f.useImperativeHandle)(e,()=>w.current,[]);let Z=me(n);(0,f.useLayoutEffect)(()=>{if(Z!=null){if(k.current=null,A.current=null,Z===`entering`&&te.current){A.current=Z;return}return he(w.current,Z===`fading`?`opacity`:`transform`,()=>{k.current===Z?D.current?.(Z):A.current=Z})}},[Z]),(0,f.useLayoutEffect)(()=>{if(Y!=null)return he(w.current,`transform`,ve)},[ve,Y]),(0,f.useEffect)(()=>{if(Z!=null)return E.current?.(Z),k.current=Z,A.current===Z&&(A.current=null,D.current?.(Z)),()=>{k.current===Z&&(k.current=null),A.current===Z&&(A.current=null)}},[Z]);let Q=typeof i==`string`&&i in I?I[i]:typeof i==`number`?`${i}px`:i,be=J>0,$=ge.style.transform,xe;if(be){let e=q?G<K?0:X:Y??X,t=(q?G:K)-e;xe=e>0||q||Y!=null?`${Math.max(0,J-Math.max(0,e))}px`:void 0,$=t===0?void 0:`translateY(${t}px)`}let Se=ce>0?[$,`translateY(${ce}px)`].filter(Boolean).join(` `):$,Ce={...ge.style,transform:$,height:xe};return(0,F.jsxs)(`div`,{...C,ref:ye,tabIndex:p??-1,...c(o(`bottom-sheet`),t(B.sheet,r.reset,i===`hug`?B.hugHeight:B.budget,oe&&B.sheetClosing,se&&B.sheetFading,ae&&B.sheetInactive,m),l,{"--_sheet-budget":Q,...N?Ce:ie?{transform:Se,height:xe}:oe?{height:xe}:{},...d}),children:[(0,F.jsx)(`div`,{className:`x10l6tqk x13vifvy x1o0tod xtijo5x x1vjfegm x78zum5 x6s0dn4 xl56j7k xvpftlf xafqdz2 x5ve5x3 x1jm3nie x16khyan`,...V,"aria-hidden":`true`,children:(0,F.jsx)(`div`,{className:`x1m747yf x11c6zpc xjspbzw x1m4xfpy`})}),(0,F.jsx)(`div`,{...c({0:{className:`x1iyjqo2 x2lwn1j x9f619 x1odjw0f x8du1vd xx69xxh x10xzikg x18d9i69`},1:{className:`x1iyjqo2 x2lwn1j x9f619 x1odjw0f x8du1vd xx69xxh x10xzikg x18d9i69 xrw9175 x1s928wv xhkezso xu6fald x2q1x1w`}}[(i===`tall`)<<0],_e>0?{style:{paddingBlockEnd:`${_e}px`}}:{}),...H,children:a})]})}V.displayName=`BottomSheetPanel`;function H(){return(0,F.jsx)(`div`,{className:`xixxii4 x17y0mx6 x1ey2m1c x1kpxq89 x10xzikg xhtitgo x47corl x1cb67k9 xt2iwb0`,"data-sheet-edge-tint":``,"aria-hidden":`true`})}var U=(0,f.createContext)(null);U.displayName=`BottomSheetSwitcherContext`;function W(e,t){switch(e){case`active`:return{kind:`open`,entering:!1};case`entering`:return{kind:`open`,entering:!0};case`covered`:case`aligning`:case`fading`:return{kind:`retained`,motion:e,alignmentOffset:t};case`exiting`:return{kind:`exiting`};case`hidden`:return{kind:`hidden`}}}function G(e,t){let n=document.activeElement;if(n!=null&&e?.contains(n))return;let r=e?.querySelector(`[data-autofocus]`);r==null?t&&e?.focus({preventScroll:!0}):r.focus({preventScroll:!0})}function K({ref:e,isOpen:t,onOpenChange:n,label:r,children:a,height:o=`capped`,snapPoints:s,hasScrim:c=!0,finalFocusRef:l,purpose:p=`info`,xstyle:m,...h}){let g=(0,f.useRef)(null),_=(0,f.useRef)(null),v=(0,f.useRef)(null),[y,ee]=(0,f.useState)(t),b=t||y,x=t?{kind:`open`,entering:!1}:y?{kind:`exiting`}:{kind:`hidden`},S=(0,f.useCallback)(()=>{p!==`required`&&n(!1)},[n,p]),C=(0,f.useCallback)(()=>{p===`info`&&n(!1)},[n,p]),w=(0,f.useCallback)(e=>{_.current=e},[]),T=(0,f.useCallback)(e=>{g.current?.style.setProperty(`--_sheet-scrim-opacity`,String(e))},[]);(0,f.useEffect)(()=>{let e=g.current;e!=null&&t&&(ee(!0),e.style.setProperty(`--_sheet-scrim-opacity`,`1`),e.open||(c?(v.current=document.activeElement,e.showModal()):e.show(),G(_.current,c)))},[c,t]),(0,f.useEffect)(()=>{!t&&y&&c&&T(0)},[T,c,t,y]);let te=(0,f.useCallback)(e=>{if(e!==`exiting`||t)return;let n=g.current;n?.open&&n.close(),ee(!1),(l?.current??v.current)?.focus(),v.current=null},[l,t]);d(b&&c),u(`BottomSheet`,"requires a non-empty `label` for an accessible name; the open sheet has no built-in heading to derive one from.",t&&!r);let E=(0,f.useCallback)(e=>{e.preventDefault(),S()},[S]),D=(0,f.useCallback)(e=>{e.key===`Escape`&&(e.preventDefault(),!i(e.nativeEvent)&&S())},[S]),O=(0,f.useCallback)(e=>{c&&e.target===e.currentTarget&&C()},[C,c]);return(0,F.jsxs)(`dialog`,{...{0:{className:`xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1s85apg x1a2a7pz`},8:{className:`xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1a2a7pz x1lliihq`},4:{className:`xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1s85apg x1a2a7pz xnixb3f xni466t xxiuuzi xc0dz0a xft5bk6 x15h3t91 x142juwg x1viac0w`},12:{className:`xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1a2a7pz x1lliihq xnixb3f xni466t xxiuuzi xc0dz0a xft5bk6 x15h3t91 x142juwg x1viac0w`},2:{className:`xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1s85apg x1a2a7pz x1cz9k3x`},10:{className:`xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1a2a7pz x1lliihq x1cz9k3x`},6:{className:`xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1s85apg x1a2a7pz xnixb3f xni466t xxiuuzi xc0dz0a xft5bk6 x142juwg x1viac0w x1cz9k3x`},14:{className:`xixxii4 x10a8y8t x1o6l61p xtdtrs8 x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1a2a7pz x1lliihq xnixb3f xni466t xxiuuzi xc0dz0a xft5bk6 x142juwg x1viac0w x1cz9k3x`},1:{className:`xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1s85apg x1a2a7pz x47corl xfo81ep xh8yej3 x5yr21d`},9:{className:`xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1a2a7pz x1lliihq x47corl xfo81ep xh8yej3 x5yr21d`},5:{className:`xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1s85apg x1a2a7pz xnixb3f xni466t xxiuuzi xc0dz0a xft5bk6 x15h3t91 x142juwg x1viac0w x47corl xfo81ep xh8yej3 x5yr21d`},13:{className:`xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1a2a7pz x1lliihq xnixb3f xni466t xxiuuzi xc0dz0a xft5bk6 x15h3t91 x142juwg x1viac0w x47corl xfo81ep xh8yej3 x5yr21d`},3:{className:`xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1s85apg x1a2a7pz x1cz9k3x x47corl xfo81ep xh8yej3 x5yr21d`},11:{className:`xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1a2a7pz x1lliihq x1cz9k3x x47corl xfo81ep xh8yej3 x5yr21d`},7:{className:`xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1s85apg x1a2a7pz xnixb3f xni466t xxiuuzi xc0dz0a xft5bk6 x142juwg x1viac0w x1cz9k3x x47corl xfo81ep xh8yej3 x5yr21d`},15:{className:`xixxii4 x10a8y8t x1x1rfll x7ab17h x1ghz6dp x1717udv xjbqb8w x1rea2x4 x1a2a7pz x1lliihq xnixb3f xni466t xxiuuzi xc0dz0a xft5bk6 x142juwg x1viac0w x1cz9k3x x47corl xfo81ep xh8yej3 x5yr21d`}}[!!b<<3|!!c<<2|!!(c&&!t&&y)<<1|!c<<0],ref:g,"aria-label":r,"aria-hidden":!t&&y?`true`:void 0,"aria-modal":c&&t?`true`:void 0,role:p===`required`?`alertdialog`:void 0,inert:!t&&y?!0:void 0,onCancel:E,onClick:O,onKeyDown:D,children:[(0,F.jsx)(`div`,{className:`x10l6tqk x17y0mx6 x1ey2m1c x78zum5 xl56j7k x47corl`,children:(0,F.jsx)(V,{...h,ref:e,state:x,height:o,snapPoints:s,isSwipeDismissAllowed:p===`info`,isPageScrollLocked:b&&c,xstyle:m,onDismiss:C,onScrimOpacity:T,onElementChange:w,onMotionComplete:te,children:a})}),(0,F.jsx)(H,{})]})}function q({switcher:e,ref:t,sheetId:n,label:r,children:i,height:a=`capped`,snapPoints:o,purpose:s=`info`,xstyle:c,...l}){let{activeSheet:d,hasScrim:p,onActiveSheetChange:m,getSheetPhase:h,getSheetAlignmentOffset:g,registerSheetElement:_,registerSheetLabel:v,registerSheetPurpose:y,onSheetEnterStart:ee,onSheetTransitionComplete:b,onSheetScrimOpacityChange:x}=e,S=typeof n==`string`&&n.length>0,C=S?h(n):`hidden`,w=W(C,S?g(n):0),T=C===`active`||C===`entering`,te=C===`covered`||C===`aligning`||C===`fading`||C===`exiting`,E=C!==`hidden`,D=C===`active`||C===`entering`,O=(0,f.useRef)(null),k=(0,f.useRef)(C),A=k.current,j=(0,f.useRef)(!1);(0,f.useLayoutEffect)(()=>{k.current=C},[C]);let M=(0,f.useCallback)(()=>{s===`info`&&S&&d===n&&m(null)},[d,S,m,s,n]),ne=(0,f.useCallback)(e=>{O.current=e,S&&_(n,e)},[S,_,n]),N=(0,f.useCallback)(e=>{e===`entering`&&S&&ee(n)},[S,ee,n]),re=(0,f.useCallback)(e=>{S&&b({sheetId:n,phase:e})},[S,b,n]),ie=(0,f.useCallback)(e=>{S&&x(n,e)},[S,x,n]);return(0,f.useLayoutEffect)(()=>{if(S)return v(n,r),()=>v(n,null)},[S,r,v,n]),(0,f.useLayoutEffect)(()=>{if(S)return y(n,s),()=>y(n,null)},[S,s,y,n]),(0,f.useEffect)(()=>{if(T){let e=A===`active`||A===`entering`;(!j.current||!e)&&G(O.current,p),j.current=!0}else C===`hidden`&&(j.current=!1)},[p,T,C,A]),u(`BottomSheet`,"requires a non-empty `label` for an accessible name; the open sheet has no built-in heading to derive one from.",T&&!r),(0,F.jsx)(`div`,{...{0:{className:`x10l6tqk x17y0mx6 x1ey2m1c x78zum5 xl56j7k x47corl`},2:{className:`x10l6tqk x17y0mx6 x1ey2m1c xl56j7k x47corl x1s85apg`},1:{className:`x10l6tqk x17y0mx6 x1ey2m1c x78zum5 xl56j7k x47corl x1vjfegm`},3:{className:`x10l6tqk x17y0mx6 x1ey2m1c xl56j7k x47corl x1s85apg x1vjfegm`}}[!E<<1|!!D<<0],hidden:!E,"aria-hidden":te?`true`:void 0,inert:te?!0:void 0,children:(0,F.jsx)(V,{...l,ref:t,state:w,height:a,snapPoints:o,isSwipeDismissAllowed:s===`info`,isPageScrollLocked:p,xstyle:c,onDismiss:M,onScrimOpacity:ie,onElementChange:ne,onMotionStart:N,onMotionComplete:re,children:(0,F.jsx)(U,{value:null,children:i})})})}function J(e){let t=(0,f.use)(U),n=e.sheetId,r=typeof n==`string`&&n.length>0;return u(`BottomSheet`,"requires a non-empty `sheetId` when nested in BottomSheetSwitcher; standalone `isOpen` / `onOpenChange` props are ignored there.",t!=null&&!r),u(`BottomSheet`,"`sheetId` only works inside BottomSheetSwitcher. Use `isOpen` and `onOpenChange` for a standalone sheet.",t==null&&n!=null),t==null?(0,F.jsx)(K,{...e}):(0,F.jsx)(q,{...e,switcher:t})}J.displayName=`BottomSheet`;export{J as BottomSheet};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{E as t,K as n,V as r,l as i,n as a,q as o}from"./themeProps-CkLe5zXY.js";import{u as s}from"./useIsomorphicLayoutEffect-BiEJxDg_.js";import{a as c}from"./useMediaQuery-twbHF0pO.js";import{_ as l}from"./Icon-DPaLmsmh.js";import{at as u}from"./page-header-BxP70prH.js";import{t as d}from"./container.stylex-rwI38dw9.js";var f=e(o(),1),p=i(),m=new Set([`ArrowLeft`,`ArrowRight`,`ArrowUp`,`ArrowDown`]),h={horizontal:[`left`,`right`],vertical:[`up`,`down`],both:[`left`,`right`,`up`,`down`]},g={hint:{kVAEAm:`xixxii4`,kpwlN0:`x1anvkwx`,kogj98:`x1ghz6dp`,kWkggS:`x1prclbq`,kaIpWk:`xh6dtrn`,kGVxlE:`x1i5ehqx`,kLKAdn:`xfsso4q`,kGO01o:`xy143xn`,kZCmMZ:`x12gdq22`,kwRFfy:`x1djylfy`,kGuDYH:`x141an7d`,kLWn49:`x1ltkj2j`,kMwMTN:`xv1l7n4`,khDVqt:`xuxw1ft`,kSiTet:`xg01cxk xofkqq2`,k1ekBW:`xsm4mo9`,kIyJzY:`xx6bhzk`,kzIqYQ:`xd00j3c`,kfzvcC:`x47corl`,$$css:!0}};function _(e={}){let{orientation:t=`horizontal`,dismissAfterMs:n=3e3,isEnabled:i=!0}=e,a=l(),o=(0,f.useRef)(null),c=(0,f.useRef)(!1),d=(0,f.useRef)(!1),_=(0,f.useRef)(()=>{}),v=(0,f.useCallback)(()=>{o.current&&=(clearTimeout(o.current),null)},[]),y=(0,f.useCallback)(()=>{d.current=!0},[]),b=(0,f.useCallback)(()=>{d.current=!1,v(),_.current(null)},[v]),x=s({mode:`context`,onShow:y,onHide:b});_.current=x.ref;let S=(0,f.useCallback)(()=>{c.current=!0,v(),x.hide(),d.current=!1,_.current(null)},[v,x]),C=(0,f.useCallback)(e=>{!c.current&&i&&(_.current(e),x.show(),v(),o.current=setTimeout(()=>{S()},n))},[v,S,n,i,x]);(0,f.useEffect)(()=>()=>{v(),_.current(null)},[v]);let w=(0,f.useCallback)(e=>{if(c.current||!i)return;let t=e.target;if(!t.matches(`:focus-visible`))return;let n=e.currentTarget;e.relatedTarget instanceof Node&&n.contains(e.relatedTarget)||C(t)},[C,i]),T=(0,f.useCallback)(e=>{if(!d.current)return;let t=e.currentTarget;if(e.relatedTarget instanceof Node&&t.contains(e.relatedTarget)){!c.current&&e.relatedTarget instanceof HTMLElement&&_.current(e.relatedTarget);return}S()},[S]),E=(0,f.useCallback)(e=>{d.current&&m.has(e.key)&&S()},[S]),D=(0,p.jsx)(`span`,{className:`x3nfvp2 x6s0dn4 xzye2dw`,children:h[t].map(e=>(0,p.jsx)(u,{keys:e},e))});return{hintElement:x.render((0,p.jsxs)(`span`,{"aria-hidden":`true`,children:[D,(0,p.jsx)(`span`,{className:`x11g1kdw`,children:a(`@astryx.keyboardHint.toNavigate`)})]}),{placement:`below`,alignment:`start`,xstyle:g.hint,style:{marginBlockStart:r[`--spacing-2`]}}),onFocus:w,onBlur:T,onKeyDown:E}}var v={card:{"--_card-radius":`x2kkz0m`,kaIpWk:`x153u1i6`,kVQacm:`x7giv3`,kGVxlE:`x1p8z4y0`,$$css:!0},withBorder:{kMzoRj:`x1litavf`,ksu8eU:`x1y0btm7`,kVAM5u:`x14i3s5s`,kZCmMZ:`xs19ii7`,kwRFfy:`x12frdag`,kLKAdn:`x1nex4ik`,kGO01o:`xbv1mwh`,$$css:!0},scrollable:{kVQacm:`xysyzu8`,$$css:!0}},y={default:{kWkggS:`x1de1mus`,$$css:!0},transparent:{kWkggS:`xjbqb8w`,$$css:!0},muted:{kWkggS:`xwmxj5m`,$$css:!0},blue:{kWkggS:`x1o0wnni`,$$css:!0},cyan:{kWkggS:`x1rgj867`,$$css:!0},gray:{kWkggS:`xspzpui`,$$css:!0},green:{kWkggS:`x1sqjeoo`,$$css:!0},orange:{kWkggS:`x1e9xt6e`,$$css:!0},pink:{kWkggS:`xnpoty2`,$$css:!0},purple:{kWkggS:`x16i6n6f`,$$css:!0},red:{kWkggS:`x1cibrc5`,$$css:!0},teal:{kWkggS:`x1jtji5o`,$$css:!0},yellow:{kWkggS:`x1bo7t0x`,$$css:!0}},b={none:{"--_card-elevation":`xw28qpl`,$$css:!0},low:{"--_card-elevation":`x1nn8khe`,$$css:!0},med:{"--_card-elevation":`x1ovzxg0`,$$css:!0},high:{"--_card-elevation":`xnpe7fx`,$$css:!0}},x={sizing:(e,t,n,r)=>[{kzqmXN:e==null?e:`x5lhr3w`,kZKoxP:t==null?t:`x16ye13r`,ks0D6T:n==null?n:`xf68679`,kAzted:r==null?r:`x82snj4`,$$css:!0},{"--x-width":(e=>typeof e==`number`?e+`px`:e??void 0)(e),"--x-height":(e=>typeof e==`number`?e+`px`:e??void 0)(t),"--x-maxWidth":(e=>typeof e==`number`?e+`px`:e??void 0)(n),"--x-minHeight":(e=>typeof e==`number`?e+`px`:e??void 0)(r)}]};function S({width:e,height:r,maxWidth:i,minHeight:o,children:s,padding:l,variant:u=`default`,elevation:f=`none`,xstyle:m,className:h,style:g,ref:_,...S}){let C=r!=null&&r!==`auto`,w=l==null?void 0:t[l];return(0,p.jsx)(`div`,{ref:_,...c(a(`card`,{variant:u,elevation:f}),n(v.card,y[u],b[f],C&&v.scrollable,x.sizing(e??null,r??null,i??null,o??null),...d(w==null?{useThemeDefault:`card`}:{paddingInnerX:w,paddingInnerY:w,paddingOuterX:w,paddingOuterY:w}),u==="default"&&v.withBorder,m),h,g),...S,children:s})}S.displayName=`Card`;var C={grid:{k1xSpc:`xrvj5dj`,$$css:!0}},w={kJBjZk:`xhij9v2`,$$css:!0},T={templateColumns:e=>[{kumcoG:e==null?e:`xqketvx`,$$css:!0},{"--x-gridTemplateColumns":e??void 0}],autoRows:e=>[w,{"--x-gridAutoRows":`${e}px`==null?void 0:`${e}px`}]},E={start:{kGNEyG:`x7a106z`,$$css:!0},center:{kGNEyG:`x6s0dn4`,$$css:!0},end:{kGNEyG:`xpqajaz`,$$css:!0},stretch:{kGNEyG:`x1qjc9v5`,$$css:!0}},D={start:{kAPf3g:`x619ttb`,$$css:!0},center:{kAPf3g:`x1o2pa38`,$$css:!0},end:{kAPf3g:`x4xo5sw`,$$css:!0},stretch:{kAPf3g:`xl4xnwh`,$$css:!0}},O={0:{kOIVth:`xsn7fz1`,$$css:!0},1:{kOIVth:`xzye2dw`,$$css:!0},2:{kOIVth:`x1txdalj`,$$css:!0},3:{kOIVth:`xjcht0a`,$$css:!0},4:{kOIVth:`x18g69wz`,$$css:!0},5:{kOIVth:`x9mgr7n`,$$css:!0},6:{kOIVth:`x1qh66ti`,$$css:!0},8:{kOIVth:`x4t41sb`,$$css:!0},10:{kOIVth:`x3hoi3v`,$$css:!0},"0.5":{kOIVth:`x1lsbc85`,$$css:!0},"1.5":{kOIVth:`x1s4dlld`,$$css:!0}},k={0:{khm7nJ:`x6yxi7o`,$$css:!0},1:{khm7nJ:`x1ngg2t4`,$$css:!0},2:{khm7nJ:`x1x7z4sm`,$$css:!0},3:{khm7nJ:`x4olc9o`,$$css:!0},4:{khm7nJ:`xtx9w7w`,$$css:!0},5:{khm7nJ:`x1iu6piu`,$$css:!0},6:{khm7nJ:`xczp1bk`,$$css:!0},8:{khm7nJ:`xgx0vcf`,$$css:!0},10:{khm7nJ:`x1xpicb7`,$$css:!0},"0.5":{khm7nJ:`x1tw44j4`,$$css:!0},"1.5":{khm7nJ:`xhq53yo`,$$css:!0}},A={0:{k1C7PZ:`x1o57wo1`,$$css:!0},1:{k1C7PZ:`x1lfs0n9`,$$css:!0},2:{k1C7PZ:`xak3so`,$$css:!0},3:{k1C7PZ:`xewh9hi`,$$css:!0},4:{k1C7PZ:`xty4p9g`,$$css:!0},5:{k1C7PZ:`x1eqhezk`,$$css:!0},6:{k1C7PZ:`x3qlgwd`,$$css:!0},8:{k1C7PZ:`xicv188`,$$css:!0},10:{k1C7PZ:`x1p37tyl`,$$css:!0},"0.5":{k1C7PZ:`x1kihgfc`,$$css:!0},"1.5":{k1C7PZ:`x1thn6ci`,$$css:!0}},j={0:`--spacing-0`,.5:`--spacing-0-5`,1:`--spacing-1`,1.5:`--spacing-1-5`,2:`--spacing-2`,3:`--spacing-3`,4:`--spacing-4`,5:`--spacing-5`,6:`--spacing-6`,8:`--spacing-8`,10:`--spacing-10`};function M(e,t,n,r,i){let a=i==null?r==null?null:j[r]:j[i];return`repeat(${n}, minmax(${`min(100%, max(${e}px, ${a?`calc((100% - ${t-1} * var(${a})) / ${t})`:`calc(100% / ${t})`}))`}, 1fr))`}function N({columns:e,rowHeight:t,width:r,height:i,maxWidth:o,minHeight:s,gap:l,rowGap:u,columnGap:d,align:f,justify:m,xstyle:h,className:g,style:_,children:v,ref:y,...b}){let x;if(typeof e==`object`&&e){let t=e.repeat===`fit`?`auto-fit`:`auto-fill`;x=e.max!=null&&e.max>0?M(e.minWidth,e.max,t,l,d):`repeat(${t}, minmax(${e.minWidth}px, 1fr))`}else x=typeof e==`number`&&e>0?`repeat(${e}, 1fr)`:`1fr`;let S={...r!=null&&{width:typeof r==`number`?`${r}px`:r},...i!=null&&{height:typeof i==`number`?`${i}px`:i},...o!=null&&{maxWidth:typeof o==`number`?`${o}px`:o},...s!=null&&{minHeight:typeof s==`number`?`${s}px`:s}};return(0,p.jsx)(`div`,{ref:y,...c(a(`grid`,{columns:typeof e==`number`?e:void 0,gap:l,align:f,justify:m}),n(C.grid,T.templateColumns(x),t!=null&&T.autoRows(t),l!=null&&O[l],u!=null&&k[u],d!=null&&A[d],f!=null&&E[f],m!=null&&D[m],h),g,{..._,...S}),...b,children:v})}N.displayName=`Grid`;export{S as n,_ as r,N as t};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Tooltip-MoU3alsv.js","assets/rolldown-runtime-hePW80VL.js","assets/themeProps-CkLe5zXY.js","assets/useIsomorphicLayoutEffect-BiEJxDg_.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{A as t,B as n,D as r,F as i,G as a,H as o,I as s,K as c,L as l,M as u,O as d,P as f,R as p,U as m,a as h,k as g,l as _,n as v,q as y,z as b}from"./themeProps-CkLe5zXY.js";import{a as x,t as ee}from"./useMediaQuery-twbHF0pO.js";import{t as te}from"./preload-helper-BZ1Pz5am.js";var S=e(y(),1);function C(...e){return t=>{let n=[];for(let r of e)if(typeof r==`function`){let e=r(t);n.push(typeof e==`function`?e:()=>r(null))}else if(r!=null){let e=r;e.current=t,n.push(()=>{e.current=null})}if(t!=null&&n.length>0)return()=>{for(let e of n)e()}}}var w=null,T=new Map;function ne(){return typeof ResizeObserver>`u`?null:(w||=new ResizeObserver(e=>{for(let t of e){let e=T.get(t.target);if(e)for(let n of[...e.keys()])n(t)}}),w)}function E(e,t){let n=T.get(e);n?n.set(t,(n.get(t)??0)+1):T.set(e,new Map([[t,1]])),ne()?.observe(e),t({target:e});let r=!0;return()=>{r&&(r=!1,re(e,t))}}function re(e,t){let n=T.get(e);if(t!=null){let e=n?.get(t);if(n==null||e==null)return;if(e>1){n.set(t,e-1);return}if(n.delete(t),n.size>0)return}T.delete(e),w&&(w.unobserve(e),T.size===0&&(w.disconnect(),w=null))}var D=_(),ie={transparent:{r:0,g:0,b:0,a:0},black:{r:0,g:0,b:0,a:1},white:{r:255,g:255,b:255,a:1}},O=(e,t,n)=>Math.max(t,Math.min(n,e));function ae(e){return e.split(``).map(e=>e+e).join(``)}function oe(e){if(typeof e!=`string`)return null;let t=e.trim().replace(/^#/,``),n=t.length===3||t.length===4?ae(t):t;return n.length!==6&&n.length!==8||!/^[0-9a-fA-F]+$/.test(n)?null:{r:parseInt(n.slice(0,2),16),g:parseInt(n.slice(2,4),16),b:parseInt(n.slice(4,6),16),a:n.length===8?parseInt(n.slice(6,8),16)/255:1}}function se(e){let t=e.indexOf(`(`);if(t===-1||!e.trim().endsWith(`)`))return null;let n=e.slice(t+1,e.lastIndexOf(`)`)).replace(/\//g,` `).split(/[\s,]+/).map(e=>e.trim()).filter(Boolean);if(n.length<3)return null;let r=e=>O(e.endsWith(`%`)?parseFloat(e)/100*255:parseFloat(e),0,255),i=r(n[0]),a=r(n[1]),o=r(n[2]);if([i,a,o].some(Number.isNaN))return null;let s=1;if(n.length>=4){let e=n[3];if(s=e.endsWith(`%`)?parseFloat(e)/100:parseFloat(e),Number.isNaN(s))return null;s=O(s,0,1)}return{r:i,g:a,b:o,a:s}}function ce(e){let t=e.trim(),n=ie[t.toLowerCase()];return n?{...n}:t.startsWith(`#`)?oe(t):/^rgba?\(/i.test(t)?se(t):null}function le(e,t,n){let r=e=>O(Math.round(e),0,255).toString(16).padStart(2,`0`).toUpperCase();return`#${r(e)}${r(t)}${r(n)}`}function ue({r:e,g:t,b:n,a:r}){if(r>=1)return le(e,t,n);let i=e=>O(Math.round(e),0,255);return`rgba(${i(e)}, ${i(t)}, ${i(n)}, ${parseFloat(r.toFixed(4))})`}var de=i[`--focus-outline-width`],fe=i[`--focus-outline-style`],pe=i[`--focus-outline-color`],me=i[`--focus-outline-offset`];`${de}${fe}${pe}`;var he={outlineWidth:de,outlineStyle:fe,outlineColor:pe,outlineOffset:me},ge={outlineWidth:``,outlineStyle:``,outlineColor:``,outlineOffset:``},k={focusVisible:{kMeerF:`x1k57tk5 x1vidyx5`,k3XXqK:`x1t137rt x1jhp3zv`,kjBf7l:`xx47ajj`,kInvED:`x1wfwxd8 x1vwwbsn`,$$css:!0},focusWithin:{kMeerF:`x1k57tk5 x11j6mr8`,k3XXqK:`x1t137rt xciu248`,kjBf7l:`x1uy843r`,kInvED:`x1wfwxd8 x1jumodi`,$$css:!0},focusWithinFirstChild:{kMeerF:`x1k57tk5 xmmisi4`,k3XXqK:`x1t137rt xfd04fr`,kjBf7l:`xobxmqy`,kInvED:`x1wfwxd8 x2vr5qc`,$$css:!0},suppressed:{kMeerF:`x1k57tk5`,k3XXqK:`x1t137rt`,kInvED:`x1wfwxd8`,$$css:!0},publishFocusVisibleVars:{"--_focus-outline":`x17wzz1v xqih627`,"--_focus-outline-offset":`xgzxwq1 xqchwus`,$$css:!0},focusWithinOrPublished:{kI3sdo:`xaw4jrz x16s19ga`,kInvED:`x1kvmbwa x1jumodi`,$$css:!0}};function A(e){return(...t)=>c(e,...t)}var _e={focusVisible:A(k.focusVisible),focusWithin:A(k.focusWithin),focusWithinFirstChild:A(k.focusWithinFirstChild),suppressed:A(k.suppressed),publishFocusVisibleVars:A(k.publishFocusVisibleVars),focusWithinOrPublished:A(k.focusWithinOrPublished)},ve=`data-astryx-live-region`,ye=`position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;inset-block-start:0;inset-inline-start:0;pointer-events:none;user-select:none;`,be=2e3,xe={polite:null,assertive:null};function Se(e){let t=xe[e];t!=null&&(clearTimeout(t),xe[e]=null)}function Ce(e,t){Se(e),xe[e]=setTimeout(()=>{xe[e]=null,t.textContent=``},be)}var j=null;function we(e){let t=document.createElement(`div`);return t.setAttribute(ve,e),t.setAttribute(`aria-live`,e),t.setAttribute(`aria-atomic`,`true`),t.setAttribute(`role`,e===`assertive`?`alert`:`status`),t.style.cssText=ye,document.body.appendChild(t),t}function Te(){return typeof document>`u`?null:j?(j.polite.isConnected||document.body.appendChild(j.polite),j.assertive.isConnected||document.body.appendChild(j.assertive),j):(j={polite:we(`polite`),assertive:we(`assertive`)},j)}function Ee(e,t){let n=Te();if(!n)return;let r=t===`assertive`?n.assertive:n.polite;r.textContent=``,requestAnimationFrame(()=>{r.textContent=e}),Ce(t,r)}function De(e){if(Se(e),!j)return;let t=e===`assertive`?j.assertive:j.polite;t.textContent=``}function Oe(){return(0,S.useCallback)((e,t=`polite`)=>{if(!e){De(t);return}Ee(e,t)},[])}var ke={primary:{kMwMTN:`x1tgivj0`,$$css:!0},secondary:{kMwMTN:`xv1l7n4`,$$css:!0},disabled:{kMwMTN:`xnbbluu`,$$css:!0},placeholder:{kMwMTN:`xv1l7n4`,$$css:!0},accent:{kMwMTN:`xjse4m1`,$$css:!0},inherit:{kMwMTN:`x1heor9g`,$$css:!0}},Ae={normal:{k63SB2:`x1sodnla`,$$css:!0},medium:{k63SB2:`x1e4wzip`,$$css:!0},semibold:{k63SB2:`x2mo6ok`,$$css:!0},bold:{k63SB2:`x1lvx875`,$$css:!0}},je={body:{k63SB2:`xxovm9e`,$$css:!0},large:{k63SB2:`x149oux8`,$$css:!0},label:{k63SB2:`xmhvcl5`,$$css:!0},code:{k63SB2:`xx3eeay`,$$css:!0},supporting:{k63SB2:`xv8on6e`,$$css:!0},"display-1":{k63SB2:`x1txul5o`,$$css:!0},"display-2":{k63SB2:`x1y36c3f`,$$css:!0},"display-3":{k63SB2:`x1on40hk`,$$css:!0},inherit:{k63SB2:`x1pd3egz`,$$css:!0}},Me={body:{kGuDYH:`xjm74w1`,kLWn49:`xw6l6zx`,$$css:!0},large:{kGuDYH:`x18juvz8`,kLWn49:`xf74fhv`,$$css:!0},label:{kGuDYH:`xcr08ib`,kLWn49:`x1kq96og`,$$css:!0},code:{kGuDYH:`xp03k98`,kLWn49:`x17iicif`,kMv6JI:`x9m5x89`,$$css:!0},supporting:{kGuDYH:`x141an7d`,kLWn49:`x1ltkj2j`,$$css:!0},"display-1":{kGuDYH:`xsub3ws`,kLWn49:`x112ttwr`,$$css:!0},"display-2":{kGuDYH:`x1yego12`,kLWn49:`xh0iwvy`,$$css:!0},"display-3":{kGuDYH:`xlgnzhf`,kLWn49:`x1ujwuaq`,$$css:!0},inherit:{kGuDYH:`x1qlqyl8`,kLWn49:`x15bjb6t`,$$css:!0}},Ne={"4xs":{kGuDYH:`xxc45ev`,$$css:!0},"3xs":{kGuDYH:`x10p7juq`,$$css:!0},"2xs":{kGuDYH:`x16a80zy`,$$css:!0},xsm:{kGuDYH:`x51wmvv`,$$css:!0},sm:{kGuDYH:`x1eqnyfr`,$$css:!0},base:{kGuDYH:`x1j29vfg`,$$css:!0},lg:{kGuDYH:`xc7cgfe`,$$css:!0},xl:{kGuDYH:`x1wqms48`,$$css:!0},"2xl":{kGuDYH:`xhs0kqb`,$$css:!0},"3xl":{kGuDYH:`x10srzze`,$$css:!0},"4xl":{kGuDYH:`xqcvi3d`,$$css:!0}},Pe={1:{kGuDYH:`xcg7oai`,kLWn49:`xfmsba7`,k63SB2:`x1v68xuy`,$$css:!0},2:{kGuDYH:`x1xvnhcw`,kLWn49:`x1cpk1wn`,k63SB2:`x12yy4cs`,$$css:!0},3:{kGuDYH:`xii13ha`,kLWn49:`xwjzt0u`,k63SB2:`x1jcxfy8`,$$css:!0},4:{kGuDYH:`x8tkxat`,kLWn49:`xqerer`,k63SB2:`x2hcmsi`,$$css:!0},5:{kGuDYH:`xsgqta0`,kLWn49:`xo3gurs`,k63SB2:`xno150v`,$$css:!0},6:{kGuDYH:`xw5ohdf`,kLWn49:`xeixjfn`,k63SB2:`x1pw4frv`,$$css:!0}},Fe={inline:{k1xSpc:`xt0psk2`,$$css:!0},block:{k1xSpc:`x1lliihq`,$$css:!0}},Ie={singleLine:{kVQacm:`xb3r6kr`,kg5iWk:`xlyipyv`,khDVqt:`xuxw1ft`,k1xSpc:`x1lliihq`,$$css:!0},multiLine:{kVQacm:`xb3r6kr`,k1xSpc:`x104kibb`,kgKLqz:`x1ua5tub`,$$css:!0}},Le={"break-word":{kTgw9:`x1lldw8n`,kHjlTd:`x1mzt3pk`,$$css:!0},"break-all":{kTgw9:`x1yn0g08`,$$css:!0}},Re={wrap:{kN2L0X:`xk4td0m`,$$css:!0},nowrap:{kN2L0X:`xebhuq6`,$$css:!0},balance:{kN2L0X:`x1w2vvpw`,$$css:!0},pretty:{kN2L0X:`x1fzhlzt`,$$css:!0}},ze={enabled:{kxwWH2:`x1b2iylo`,kzeHkT:`xwgcxoh`,k1xSpc:`x1lliihq`,$$css:!0}},Be={strikethrough:{kybGjl:`xmqliwb`,$$css:!0}},Ve={enabled:{kcqcaj:`xss6m8b`,$$css:!0}},He={start:{k9WMMc:`x1yc453h`,$$css:!0},center:{k9WMMc:`x2b8uid`,$$css:!0},end:{k9WMMc:`xp4054r`,$$css:!0}},Ue={content:{ks0D6T:`xw5ewwj`,kTgw9:`x13faqbe`,$$css:!0}};function We(e){let{maxLines:t}=e,[n,r]=(0,S.useState)(!1),[i,a]=(0,S.useState)(``),o=(0,S.useRef)(null),s=(0,S.useRef)(null),c=(0,S.useCallback)(e=>{if(t===0){r(!1);return}if(a(e.textContent??``),t===1)r(e.scrollWidth>e.offsetWidth);else{let t=e.scrollHeight;try{let n=document.createRange();n.selectNodeContents(e),t=n.getBoundingClientRect().height,n.detach()}catch{}r(t>e.offsetHeight)}},[t]);return{ref:(0,S.useCallback)(e=>{s.current?.(),s.current=null,o.current=e,e&&t>0?typeof ResizeObserver<`u`?s.current=E(e,()=>{c(e)}):c(e):(r(!1),a(``))},[t,c]),isTruncated:n,fullText:i}}function Ge(e,t,n,r,i,a){return(0,S.useMemo)(()=>C(e,t,n,r,i,a),[e,t,n,r,i,a])}var Ke=(0,S.lazy)(async()=>te(()=>import(`./Tooltip-MoU3alsv.js`).then(e=>e.n).then(e=>({default:e.Tooltip})),__vite__mapDeps([0,1,2,3]))),qe={body:`primary`,large:`primary`,label:`primary`,supporting:`secondary`,code:`primary`,"display-1":`primary`,"display-2":`primary`,"display-3":`primary`,inherit:`inherit`};function Je(e){return e in Me?e:`body`}function Ye(e){return e in ke?e:`primary`}function Xe({type:e=`body`,size:t,color:n,weight:r,display:i=`inline`,maxLines:a=0,hasTruncateTooltip:o=!0,wordBreak:s,textWrap:l,justify:u=`start`,hasCapsize:d=!1,hasStrikethrough:f=!1,hasTabularNumbers:p=!1,xstyle:m,className:h,style:g,as:_=`span`,children:y,ref:b,...ee}){let te=n??qe[e]??`primary`,C=Je(e),w=Ye(te),T=s??(a===1?`break-all`:`break-word`),ne=a>0||d?`block`:i,E=We({maxLines:a}),re=typeof o==`string`?o:`above`,ie=a>0&&o!==!1&&E.isTruncated,O=(0,S.useRef)(null),ae=Ge(b,E.ref,O),oe=a>1?{WebkitLineClamp:a}:void 0;return(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(_,{ref:ae,...x(v(`text`,{type:e,size:t,color:te}),c(ke[w],Me[C],t&&Ne[t],je[C],r&&Ae[r],a===1?Ie.singleLine:a>1?Ie.multiLine:Fe[ne],a>0&&Le[T],l&&Re[l],u!==`start`&&He[u],d&&ze.enabled,f&&Be.strikethrough,p&&Ve.enabled,m),h,{...g,...oe}),...ee,children:y}),ie&&(0,D.jsx)(S.Suspense,{fallback:null,children:(0,D.jsx)(Ke,{anchorRef:O,content:(0,D.jsx)(`span`,{...c(Ue.content),children:E.fullText}),placement:re})})]})}Xe.displayName=`Text`;var Ze=.375,Qe={sm:{diameter:10,border:2},md:{diameter:14,border:3},lg:{diameter:18,border:3},xl:{diameter:28,border:4}},$e=[`--_spinner-ring-diameter`,`--_spinner-ring-stroke`],et=`--_spinner-box-size`;function tt(){if(!(typeof CSS>`u`||typeof CSS.registerProperty!=`function`))for(let e of $e)try{CSS.registerProperty({name:e,syntax:`<length>`,inherits:!0,initialValue:`0px`})}catch{}}tt();var M=new Set,nt=!1;function rt(){nt=!1;let e=[];for(let t of M)e.push(...t.getAnimations());M.clear();for(let t of e)t.startTime=0}function it(e){if(e!=null&&typeof e.getAnimations==`function`)return M.add(e),nt||(nt=!0,requestAnimationFrame(rt)),()=>{M.delete(e)}}var at={wrapper:{k1xSpc:`x3nfvp2`,kXwgrk:`xdt5ytf`,kGNEyG:`x6s0dn4`,kOIVth:`x1txdalj`,$$css:!0},spinner:{k1xSpc:`xwz0xwf`,kgQiWS:`x1ku5rj1`,kXLuUW:`xxymvpz`,"--_spinner-ring-diameter":`x2lq4xu`,"--_spinner-ring-stroke":`x10qssua`,"--_spinner-box-size":`x69vvuq`,kmuXW:`x2lah0s`,$$css:!0},circle:{kDwRjp:`xbh8q5q`,kR8GR0:`x1764fhq`,k3nNDw:`x1g0ag68`,kU5bRw:`x1owpc8m`,kPFa82:`xio8zfp`,kfJifR:`xgw3ha0`,$$css:!0},track:{kjVXCG:`xalkhop`,$$css:!0}},ot={sm:{"--spinner-diameter":`x11wm0hx`,"--spinner-stroke-width":`xls98ul`,$$css:!0},md:{"--spinner-diameter":`x15pu9g6`,"--spinner-stroke-width":`xr0wkrm`,$$css:!0},lg:{"--spinner-diameter":`x1w424tr`,"--spinner-stroke-width":`xr0wkrm`,$$css:!0},xl:{"--spinner-diameter":`x1orj1z9`,"--spinner-stroke-width":`x7y2bof`,$$css:!0}},st={default:{"--spinner-color":`xt1b8mc`,"--spinner-track-color":`xspt9s2`,$$css:!0},subtle:{"--spinner-color":`x1jevo6s`,"--spinner-track-color":`xspt9s2`,$$css:!0},onMedia:{"--spinner-color":`x13u6jys`,"--spinner-track-color":`x1ufpcf6`,$$css:!0},inherit:{"--spinner-color":`x1uzk0gl`,"--spinner-track-color":`xbfzqbu`,$$css:!0}},ct={default:{kDd8S0:`x1g350g8`,$$css:!0},subtle:{kDd8S0:`x1g350g8`,$$css:!0},onMedia:{kDd8S0:`x1smxkh6`,$$css:!0},inherit:{kDd8S0:`x7bo2k`,$$css:!0}};function lt({size:e=`md`,shade:t=`default`,label:n,xstyle:r,className:i,style:a,"aria-label":o,"data-testid":s,ref:l,...u}){let{border:d,diameter:f}=Qe[e],p=f+d*2,m=Math.PI*f,h=m*Ze,g=n!=null,_=(0,S.useId)(),y=g&&typeof n==`string`&&o==null,b=(0,D.jsx)(`span`,{ref:g?void 0:l,role:`status`,"aria-label":y?void 0:o??(typeof n==`string`?n:void 0)??`Loading`,"aria-labelledby":y?_:void 0,"data-testid":g?void 0:s,...g?{}:u,...x(g?``:v(`spinner`,{size:e,shade:t}),c(at.spinner,!g&&ot[e],!g&&st[t],!g&&r),g?void 0:i,{...g?{}:a,width:`var(${et}, ${p}px)`,height:`var(${et}, ${p}px)`}),children:(0,D.jsxs)(`svg`,{ref:it,width:p,height:p,"aria-hidden":`true`,className:`xlp1x4z x1lliihq x6v0vjy x7yyq19 x1so62im x1rea2x4 x14qxm4i xnh0sag xa4qsjk x1ka1v4i x1esw782`,children:[(0,D.jsx)(`circle`,{cx:`50%`,cy:`50%`,r:f/2,strokeWidth:d,...c(at.circle,at.track,ct[t])}),(0,D.jsx)(`circle`,{cx:`50%`,cy:`50%`,r:f/2,strokeWidth:d,strokeDasharray:`${h} ${m-h}`,className:`xbh8q5q x1764fhq x1g0ag68 x1owpc8m xio8zfp xgw3ha0 xtve3lm x9tu13d x1vy8frr`})]})});return g?(0,D.jsxs)(`div`,{ref:l,"data-testid":s,...u,...x(v(`spinner`,{size:e,shade:t}),c(at.wrapper,ot[e],st[t],r),i,a),children:[b,typeof n==`string`?(0,D.jsx)(Xe,{id:_,type:`body`,weight:`bold`,children:n}):n]}):b}lt.displayName=`Spinner`;var ut=(0,S.createContext)(null);ut.displayName=`SizeContext`;function dt(e,t=`md`){let n=(0,S.use)(ut);return e??n??t}var ft=ut.Provider;`${g[`--color-overlay-hover`]}${g[`--color-overlay-hover`]}`,`${g[`--color-overlay-pressed`]}${g[`--color-overlay-pressed`]}`,`${g[`--color-neutral`]}${g[`--color-neutral`]}`;var pt={backgroundColor:{kWkggS:`xjbqb8w x1anq1lc xoevpu5 xprvw0a`,$$css:!0},backgroundImage:{kKwaWg:`x7uyq82 xmvprkv xetgvay`,$$css:!0},backgroundImageOnNeutral:{kKwaWg:`x14bno8m xzmimnh x1otsd3y xo3fi6e`,$$css:!0}};function mt(e,t){let n=t&&t.cache?t.cache:wt,r=t&&t.serializer?t.serializer:St;return(t&&t.strategy?t.strategy:yt)(e,{cache:n,serializer:r})}function ht(e){return e==null||typeof e==`number`||typeof e==`boolean`}function gt(e,t,n,r){let i=ht(r)?r:n(r),a=t.get(i);return a===void 0&&(a=e.call(this,r),t.set(i,a)),a}function _t(e,t,n){let r=Array.prototype.slice.call(arguments,3),i=n(r),a=t.get(i);return a===void 0&&(a=e.apply(this,r),t.set(i,a)),a}function vt(e,t,n,r,i){return n.bind(t,e,r,i)}function yt(e,t){let n=e.length===1?gt:_t;return vt(e,this,n,t.cache.create(),t.serializer)}function bt(e,t){return vt(e,this,_t,t.cache.create(),t.serializer)}function xt(e,t){return vt(e,this,gt,t.cache.create(),t.serializer)}var St=function(){return JSON.stringify(arguments)},Ct=class{constructor(){this.cache=Object.create(null)}get(e){return this.cache[e]}set(e,t){this.cache[e]=t}},wt={create:function(){return new Ct}},Tt={variadic:bt,monadic:xt},Et=/(?:[Eec]{1,6}|G{1,5}|[Qq]{1,5}|(?:[yYur]+|U{1,5})|[ML]{1,5}|d{1,2}|D{1,3}|F{1}|[abB]{1,5}|[hkHK]{1,2}|w{1,2}|W{1}|m{1,2}|s{1,2}|[zZOvVxX]{1,4})(?=([^']*'[^']*')*[^']*$)/g;function Dt(e){let t={};return e.replace(Et,e=>{let n=e.length;switch(e[0]){case`G`:t.era=n===4?`long`:n===5?`narrow`:`short`;break;case`y`:t.year=n===2?`2-digit`:`numeric`;break;case`Y`:case`u`:case`U`:case`r`:throw RangeError("`Y/u/U/r` (year) patterns are not supported, use `y` instead");case`q`:case`Q`:throw RangeError("`q/Q` (quarter) patterns are not supported");case`M`:case`L`:t.month=[`numeric`,`2-digit`,`short`,`long`,`narrow`][n-1];break;case`w`:case`W`:throw RangeError("`w/W` (week) patterns are not supported");case`d`:t.day=[`numeric`,`2-digit`][n-1];break;case`D`:case`F`:case`g`:throw RangeError("`D/F/g` (day) patterns are not supported, use `d` instead");case`E`:t.weekday=n===4?`long`:n===5?`narrow`:`short`;break;case`e`:if(n<4)throw RangeError("`e..eee` (weekday) patterns are not supported");t.weekday=[`short`,`long`,`narrow`,`short`][n-3];break;case`c`:if(n<4)throw RangeError("`c..ccc` (weekday) patterns are not supported");t.weekday=[`short`,`long`,`narrow`,`short`][n-3];break;case`a`:t.hour12=!0;break;case`b`:case`B`:throw RangeError("`b/B` (period) patterns are not supported, use `a` instead");case`h`:t.hourCycle=`h12`,t.hour=[`numeric`,`2-digit`][n-1];break;case`H`:t.hourCycle=`h23`,t.hour=[`numeric`,`2-digit`][n-1];break;case`K`:t.hourCycle=`h11`,t.hour=[`numeric`,`2-digit`][n-1];break;case`k`:t.hourCycle=`h24`,t.hour=[`numeric`,`2-digit`][n-1];break;case`j`:case`J`:case`C`:throw RangeError("`j/J/C` (hour) patterns are not supported, use `h/H/K/k` instead");case`m`:t.minute=[`numeric`,`2-digit`][n-1];break;case`s`:t.second=[`numeric`,`2-digit`][n-1];break;case`S`:case`A`:throw RangeError("`S/A` (second) patterns are not supported, use `s` instead");case`z`:t.timeZoneName=n<4?`short`:`long`;break;case`Z`:case`O`:case`v`:case`V`:case`X`:case`x`:throw RangeError("`Z/O/v/V/X/x` (timeZone) patterns are not supported, use `z` instead")}return``}),t}var Ot=/[\t-\r \x85\u200E\u200F\u2028\u2029]/i;function kt(e){if(e.length===0)throw Error(`Number skeleton cannot be empty`);let t=e.split(Ot).filter(e=>e.length>0),n=[];for(let e of t){let t=e.split(`/`);if(t.length===0)throw Error(`Invalid number skeleton`);let[r,...i]=t;for(let e of i)if(e.length===0)throw Error(`Invalid number skeleton`);n.push({stem:r,options:i})}return n}function At(e){return e.replace(/^(.*?)-/,``)}var jt=/^\.(?:(0+)(\*)?|(#+)|(0+)(#+))$/g,Mt=/^(@+)?(\+|#+)?[rs]?$/g,Nt=/(\*)(0+)|(#+)(0+)|(0+)/g,Pt=/^(0+)$/;function Ft(e){let t={};return e[e.length-1]===`r`?t.roundingPriority=`morePrecision`:e[e.length-1]===`s`&&(t.roundingPriority=`lessPrecision`),e.replace(Mt,function(e,n,r){return typeof r==`string`?r===`+`?t.minimumSignificantDigits=n.length:n[0]===`#`?t.maximumSignificantDigits=n.length:(t.minimumSignificantDigits=n.length,t.maximumSignificantDigits=n.length+(typeof r==`string`?r.length:0)):(t.minimumSignificantDigits=n.length,t.maximumSignificantDigits=n.length),``}),t}function It(e){switch(e){case`sign-auto`:return{signDisplay:`auto`};case`sign-accounting`:case`()`:return{currencySign:`accounting`};case`sign-always`:case`+!`:return{signDisplay:`always`};case`sign-accounting-always`:case`()!`:return{signDisplay:`always`,currencySign:`accounting`};case`sign-except-zero`:case`+?`:return{signDisplay:`exceptZero`};case`sign-accounting-except-zero`:case`()?`:return{signDisplay:`exceptZero`,currencySign:`accounting`};case`sign-never`:case`+_`:return{signDisplay:`never`}}}function Lt(e){let t;if(e[0]===`E`&&e[1]===`E`?(t={notation:`engineering`},e=e.slice(2)):e[0]===`E`&&(t={notation:`scientific`},e=e.slice(1)),t){let n=e.slice(0,2);if(n===`+!`?(t.signDisplay=`always`,e=e.slice(2)):n===`+?`&&(t.signDisplay=`exceptZero`,e=e.slice(2)),!Pt.test(e))throw Error(`Malformed concise eng/scientific notation`);t.minimumIntegerDigits=e.length}return t}function Rt(e){return It(e)||{}}function zt(e){let t={};for(let n of e){switch(n.stem){case`percent`:case`%`:t.style=`percent`;continue;case`%x100`:t.style=`percent`,t.scale=100;continue;case`currency`:t.style=`currency`,t.currency=n.options[0];continue;case`group-off`:case`,_`:t.useGrouping=!1;continue;case`precision-integer`:case`.`:t.maximumFractionDigits=0;continue;case`measure-unit`:case`unit`:t.style=`unit`,t.unit=At(n.options[0]);continue;case`compact-short`:case`K`:t.notation=`compact`,t.compactDisplay=`short`;continue;case`compact-long`:case`KK`:t.notation=`compact`,t.compactDisplay=`long`;continue;case`scientific`:t={...t,notation:`scientific`,...n.options.reduce((e,t)=>({...e,...Rt(t)}),{})};continue;case`engineering`:t={...t,notation:`engineering`,...n.options.reduce((e,t)=>({...e,...Rt(t)}),{})};continue;case`notation-simple`:t.notation=`standard`;continue;case`unit-width-narrow`:t.currencyDisplay=`narrowSymbol`,t.unitDisplay=`narrow`;continue;case`unit-width-short`:t.currencyDisplay=`code`,t.unitDisplay=`short`;continue;case`unit-width-full-name`:t.currencyDisplay=`name`,t.unitDisplay=`long`;continue;case`unit-width-iso-code`:t.currencyDisplay=`symbol`;continue;case`scale`:t.scale=parseFloat(n.options[0]);continue;case`rounding-mode-floor`:t.roundingMode=`floor`;continue;case`rounding-mode-ceiling`:t.roundingMode=`ceil`;continue;case`rounding-mode-down`:t.roundingMode=`trunc`;continue;case`rounding-mode-up`:t.roundingMode=`expand`;continue;case`rounding-mode-half-even`:t.roundingMode=`halfEven`;continue;case`rounding-mode-half-down`:t.roundingMode=`halfTrunc`;continue;case`rounding-mode-half-up`:t.roundingMode=`halfExpand`;continue;case`integer-width`:if(n.options.length>1)throw RangeError(`integer-width stems only accept a single optional option`);n.options[0].replace(Nt,function(e,n,r,i,a,o){if(n)t.minimumIntegerDigits=r.length;else if(i&&a)throw Error(`We currently do not support maximum integer digits`);else if(o)throw Error(`We currently do not support exact integer digits`);return``});continue}if(Pt.test(n.stem)){t.minimumIntegerDigits=n.stem.length;continue}if(jt.test(n.stem)){if(n.options.length>1)throw RangeError(`Fraction-precision stems only accept a single optional option`);n.stem.replace(jt,function(e,n,r,i,a,o){return r===`*`?t.minimumFractionDigits=n.length:i&&i[0]===`#`?t.maximumFractionDigits=i.length:a&&o?(t.minimumFractionDigits=a.length,t.maximumFractionDigits=a.length+o.length):(t.minimumFractionDigits=n.length,t.maximumFractionDigits=n.length),``});let e=n.options[0];e===`w`?t={...t,trailingZeroDisplay:`stripIfInteger`}:e&&(t={...t,...Ft(e)});continue}if(Mt.test(n.stem)){t={...t,...Ft(n.stem)};continue}let e=It(n.stem);e&&(t={...t,...e});let r=Lt(n.stem);r&&(t={...t,...r})}return t}var Bt=function(e){return e[e.EXPECT_ARGUMENT_CLOSING_BRACE=1]=`EXPECT_ARGUMENT_CLOSING_BRACE`,e[e.EMPTY_ARGUMENT=2]=`EMPTY_ARGUMENT`,e[e.MALFORMED_ARGUMENT=3]=`MALFORMED_ARGUMENT`,e[e.EXPECT_ARGUMENT_TYPE=4]=`EXPECT_ARGUMENT_TYPE`,e[e.INVALID_ARGUMENT_TYPE=5]=`INVALID_ARGUMENT_TYPE`,e[e.EXPECT_ARGUMENT_STYLE=6]=`EXPECT_ARGUMENT_STYLE`,e[e.INVALID_NUMBER_SKELETON=7]=`INVALID_NUMBER_SKELETON`,e[e.INVALID_DATE_TIME_SKELETON=8]=`INVALID_DATE_TIME_SKELETON`,e[e.EXPECT_NUMBER_SKELETON=9]=`EXPECT_NUMBER_SKELETON`,e[e.EXPECT_DATE_TIME_SKELETON=10]=`EXPECT_DATE_TIME_SKELETON`,e[e.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE=11]=`UNCLOSED_QUOTE_IN_ARGUMENT_STYLE`,e[e.EXPECT_SELECT_ARGUMENT_OPTIONS=12]=`EXPECT_SELECT_ARGUMENT_OPTIONS`,e[e.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE=13]=`EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE`,e[e.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE=14]=`INVALID_PLURAL_ARGUMENT_OFFSET_VALUE`,e[e.EXPECT_SELECT_ARGUMENT_SELECTOR=15]=`EXPECT_SELECT_ARGUMENT_SELECTOR`,e[e.EXPECT_PLURAL_ARGUMENT_SELECTOR=16]=`EXPECT_PLURAL_ARGUMENT_SELECTOR`,e[e.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT=17]=`EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT`,e[e.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT=18]=`EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT`,e[e.INVALID_PLURAL_ARGUMENT_SELECTOR=19]=`INVALID_PLURAL_ARGUMENT_SELECTOR`,e[e.DUPLICATE_PLURAL_ARGUMENT_SELECTOR=20]=`DUPLICATE_PLURAL_ARGUMENT_SELECTOR`,e[e.DUPLICATE_SELECT_ARGUMENT_SELECTOR=21]=`DUPLICATE_SELECT_ARGUMENT_SELECTOR`,e[e.MISSING_OTHER_CLAUSE=22]=`MISSING_OTHER_CLAUSE`,e[e.INVALID_TAG=23]=`INVALID_TAG`,e[e.INVALID_TAG_NAME=25]=`INVALID_TAG_NAME`,e[e.UNMATCHED_CLOSING_TAG=26]=`UNMATCHED_CLOSING_TAG`,e[e.UNCLOSED_TAG=27]=`UNCLOSED_TAG`,e}({});function Vt(e){return e.type===0}function Ht(e){return e.type===1}function Ut(e){return e.type===2}function Wt(e){return e.type===3}function Gt(e){return e.type===4}function Kt(e){return e.type===5}function qt(e){return e.type===6}function Jt(e){return e.type===7}function Yt(e){return e.type===8}function Xt(e){return!!(e&&typeof e==`object`&&e.type===0)}function Zt(e){return!!(e&&typeof e==`object`&&e.type===1)}var Qt=/[ \xA0\u1680\u2000-\u200A\u202F\u205F\u3000]/,N={"001":[`H`,`h`],419:[`h`,`H`,`hB`,`hb`],AC:[`H`,`h`,`hb`,`hB`],AD:[`H`,`hB`],AE:[`h`,`hB`,`hb`,`H`],AF:[`H`,`hb`,`hB`,`h`],AG:[`h`,`hb`,`H`,`hB`],AI:[`H`,`h`,`hb`,`hB`],AL:[`h`,`H`,`hB`],AM:[`H`,`hB`],AO:[`H`,`hB`],AR:[`h`,`H`,`hB`,`hb`],AS:[`h`,`H`],AT:[`H`,`hB`],AU:[`h`,`hb`,`H`,`hB`],AW:[`H`,`hB`],AX:[`H`],AZ:[`H`,`hB`,`h`],BA:[`H`,`hB`,`h`],BB:[`h`,`hb`,`H`,`hB`],BD:[`h`,`hB`,`H`],BE:[`H`,`hB`],BF:[`H`,`hB`],BG:[`H`,`hB`,`h`],BH:[`h`,`hB`,`hb`,`H`],BI:[`H`,`h`],BJ:[`H`,`hB`],BL:[`H`,`hB`],BM:[`h`,`hb`,`H`,`hB`],BN:[`hb`,`hB`,`h`,`H`],BO:[`h`,`H`,`hB`,`hb`],BQ:[`H`],BR:[`H`,`hB`],BS:[`h`,`hb`,`H`,`hB`],BT:[`h`,`H`],BW:[`H`,`h`,`hb`,`hB`],BY:[`H`,`h`],BZ:[`H`,`h`,`hb`,`hB`],CA:[`h`,`hb`,`H`,`hB`],CC:[`H`,`h`,`hb`,`hB`],CD:[`hB`,`H`],CF:[`H`,`h`,`hB`],CG:[`H`,`hB`],CH:[`H`,`hB`,`h`],CI:[`H`,`hB`],CK:[`H`,`h`,`hb`,`hB`],CL:[`h`,`H`,`hB`,`hb`],CM:[`H`,`h`,`hB`],CN:[`H`,`hB`,`hb`,`h`],CO:[`h`,`H`,`hB`,`hb`],CP:[`H`],CR:[`h`,`H`,`hB`,`hb`],CU:[`h`,`H`,`hB`,`hb`],CV:[`H`,`hB`],CW:[`H`,`hB`],CX:[`H`,`h`,`hb`,`hB`],CY:[`h`,`H`,`hb`,`hB`],CZ:[`H`],DE:[`H`,`hB`],DG:[`H`,`h`,`hb`,`hB`],DJ:[`h`,`H`],DK:[`H`],DM:[`h`,`hb`,`H`,`hB`],DO:[`h`,`H`,`hB`,`hb`],DZ:[`h`,`hB`,`hb`,`H`],EA:[`H`,`h`,`hB`,`hb`],EC:[`h`,`H`,`hB`,`hb`],EE:[`H`,`hB`],EG:[`h`,`hB`,`hb`,`H`],EH:[`h`,`hB`,`hb`,`H`],ER:[`h`,`H`],ES:[`H`,`hB`,`h`,`hb`],ET:[`hB`,`hb`,`h`,`H`],FI:[`H`],FJ:[`h`,`hb`,`H`,`hB`],FK:[`H`,`h`,`hb`,`hB`],FM:[`h`,`hb`,`H`,`hB`],FO:[`H`,`h`],FR:[`H`,`hB`],GA:[`H`,`hB`],GB:[`H`,`h`,`hb`,`hB`],GD:[`h`,`hb`,`H`,`hB`],GE:[`H`,`hB`,`h`],GF:[`H`,`hB`],GG:[`H`,`h`,`hb`,`hB`],GH:[`h`,`H`],GI:[`H`,`h`,`hb`,`hB`],GL:[`H`,`h`],GM:[`h`,`hb`,`H`,`hB`],GN:[`H`,`hB`],GP:[`H`,`hB`],GQ:[`H`,`hB`,`h`,`hb`],GR:[`h`,`H`,`hb`,`hB`],GS:[`H`,`h`,`hb`,`hB`],GT:[`h`,`H`,`hB`,`hb`],GU:[`h`,`hb`,`H`,`hB`],GW:[`H`,`hB`],GY:[`h`,`hb`,`H`,`hB`],HK:[`h`,`hB`,`hb`,`H`],HN:[`h`,`H`,`hB`,`hb`],HR:[`H`,`hB`],HU:[`H`,`h`],IC:[`H`,`h`,`hB`,`hb`],ID:[`H`],IE:[`H`,`h`,`hb`,`hB`],IL:[`H`,`hB`],IM:[`H`,`h`,`hb`,`hB`],IN:[`h`,`H`],IO:[`H`,`h`,`hb`,`hB`],IQ:[`h`,`hB`,`hb`,`H`],IR:[`hB`,`H`],IS:[`H`],IT:[`H`,`hB`],JE:[`H`,`h`,`hb`,`hB`],JM:[`h`,`hb`,`H`,`hB`],JO:[`h`,`hB`,`hb`,`H`],JP:[`H`,`K`,`h`],KE:[`hB`,`hb`,`H`,`h`],KG:[`H`,`h`,`hB`,`hb`],KH:[`hB`,`h`,`H`,`hb`],KI:[`h`,`hb`,`H`,`hB`],KM:[`H`,`h`,`hB`,`hb`],KN:[`h`,`hb`,`H`,`hB`],KP:[`h`,`H`,`hB`,`hb`],KR:[`h`,`H`,`hB`,`hb`],KW:[`h`,`hB`,`hb`,`H`],KY:[`h`,`hb`,`H`,`hB`],KZ:[`H`,`hB`],LA:[`H`,`hb`,`hB`,`h`],LB:[`h`,`hB`,`hb`,`H`],LC:[`h`,`hb`,`H`,`hB`],LI:[`H`,`hB`,`h`],LK:[`H`,`h`,`hB`,`hb`],LR:[`h`,`hb`,`H`,`hB`],LS:[`h`,`H`],LT:[`H`,`h`,`hb`,`hB`],LU:[`H`,`h`,`hB`],LV:[`H`,`hB`,`hb`,`h`],LY:[`h`,`hB`,`hb`,`H`],MA:[`H`,`h`,`hB`,`hb`],MC:[`H`,`hB`],MD:[`H`,`hB`],ME:[`H`,`hB`,`h`],MF:[`H`,`hB`],MG:[`H`,`h`],MH:[`h`,`hb`,`H`,`hB`],MK:[`H`,`h`,`hb`,`hB`],ML:[`H`],MM:[`hB`,`hb`,`H`,`h`],MN:[`H`,`h`,`hb`,`hB`],MO:[`h`,`hB`,`hb`,`H`],MP:[`h`,`hb`,`H`,`hB`],MQ:[`H`,`hB`],MR:[`h`,`hB`,`hb`,`H`],MS:[`H`,`h`,`hb`,`hB`],MT:[`H`,`h`],MU:[`H`,`h`],MV:[`H`,`h`],MW:[`h`,`hb`,`H`,`hB`],MX:[`h`,`H`,`hB`,`hb`],MY:[`hb`,`hB`,`h`,`H`],MZ:[`H`,`hB`],NA:[`h`,`H`,`hB`,`hb`],NC:[`H`,`hB`],NE:[`H`],NF:[`H`,`h`,`hb`,`hB`],NG:[`H`,`h`,`hb`,`hB`],NI:[`h`,`H`,`hB`,`hb`],NL:[`H`,`hB`],NO:[`H`,`h`],NP:[`H`,`h`,`hB`],NR:[`H`,`h`,`hb`,`hB`],NU:[`H`,`h`,`hb`,`hB`],NZ:[`h`,`hb`,`H`,`hB`],OM:[`h`,`hB`,`hb`,`H`],PA:[`h`,`H`,`hB`,`hb`],PE:[`h`,`H`,`hB`,`hb`],PF:[`H`,`h`,`hB`],PG:[`h`,`H`],PH:[`h`,`hB`,`hb`,`H`],PK:[`h`,`hB`,`H`],PL:[`H`,`h`],PM:[`H`,`hB`],PN:[`H`,`h`,`hb`,`hB`],PR:[`h`,`H`,`hB`,`hb`],PS:[`h`,`hB`,`hb`,`H`],PT:[`H`,`hB`],PW:[`h`,`H`],PY:[`h`,`H`,`hB`,`hb`],QA:[`h`,`hB`,`hb`,`H`],RE:[`H`,`hB`],RO:[`H`,`hB`],RS:[`H`,`hB`,`h`],RU:[`H`],RW:[`H`,`h`],SA:[`h`,`hB`,`hb`,`H`],SB:[`h`,`hb`,`H`,`hB`],SC:[`H`,`h`,`hB`],SD:[`h`,`hB`,`hb`,`H`],SE:[`H`],SG:[`h`,`hb`,`H`,`hB`],SH:[`H`,`h`,`hb`,`hB`],SI:[`H`,`hB`],SJ:[`H`],SK:[`H`],SL:[`h`,`hb`,`H`,`hB`],SM:[`H`,`h`,`hB`],SN:[`H`,`h`,`hB`],SO:[`h`,`H`],SR:[`H`,`hB`],SS:[`h`,`hb`,`H`,`hB`],ST:[`H`,`hB`],SV:[`h`,`H`,`hB`,`hb`],SX:[`H`,`h`,`hb`,`hB`],SY:[`h`,`hB`,`hb`,`H`],SZ:[`h`,`hb`,`H`,`hB`],TA:[`H`,`h`,`hb`,`hB`],TC:[`h`,`hb`,`H`,`hB`],TD:[`h`,`H`,`hB`],TF:[`H`,`h`,`hB`],TG:[`H`,`hB`],TH:[`H`,`h`],TJ:[`H`,`h`],TL:[`H`,`hB`,`hb`,`h`],TM:[`H`,`h`],TN:[`h`,`hB`,`hb`,`H`],TO:[`h`,`H`],TR:[`H`,`hB`],TT:[`h`,`hb`,`H`,`hB`],TW:[`hB`,`hb`,`h`,`H`],TZ:[`hB`,`hb`,`H`,`h`],UA:[`H`,`hB`,`h`],UG:[`hB`,`hb`,`H`,`h`],UM:[`h`,`hb`,`H`,`hB`],US:[`h`,`hb`,`H`,`hB`],UY:[`h`,`H`,`hB`,`hb`],UZ:[`H`,`hB`,`h`],VA:[`H`,`h`,`hB`],VC:[`h`,`hb`,`H`,`hB`],VE:[`h`,`H`,`hB`,`hb`],VG:[`h`,`hb`,`H`,`hB`],VI:[`h`,`hb`,`H`,`hB`],VN:[`H`,`h`],VU:[`h`,`H`],WF:[`H`,`hB`],WS:[`h`,`H`],XK:[`H`,`hB`,`h`],YE:[`h`,`hB`,`hb`,`H`],YT:[`H`,`hB`],ZA:[`H`,`h`,`hb`,`hB`],ZM:[`h`,`hb`,`H`,`hB`],ZW:[`H`,`h`],"af-ZA":[`H`,`h`,`hB`,`hb`],"ar-001":[`h`,`hB`,`hb`,`H`],"ca-ES":[`H`,`h`,`hB`],"en-001":[`h`,`hb`,`H`,`hB`],"en-HK":[`h`,`hb`,`H`,`hB`],"en-IL":[`H`,`h`,`hb`,`hB`],"en-MY":[`h`,`hb`,`H`,`hB`],"es-BR":[`H`,`h`,`hB`,`hb`],"es-ES":[`H`,`h`,`hB`,`hb`],"es-GQ":[`H`,`h`,`hB`,`hb`],"fr-CA":[`H`,`h`,`hB`],"gl-ES":[`H`,`h`,`hB`],"gu-IN":[`hB`,`hb`,`h`,`H`],"hi-IN":[`hB`,`h`,`H`],"it-CH":[`H`,`h`,`hB`],"it-IT":[`H`,`h`,`hB`],"kn-IN":[`hB`,`h`,`H`],"ku-SY":[`H`,`hB`],"ml-IN":[`hB`,`h`,`H`],"mr-IN":[`hB`,`hb`,`h`,`H`],"pa-IN":[`hB`,`hb`,`h`,`H`],"ta-IN":[`hB`,`h`,`hb`,`H`],"te-IN":[`hB`,`h`,`H`],"zu-ZA":[`H`,`hB`,`hb`,`h`]};function $t(e,t){let n=``;for(let r=0;r<e.length;r++){let i=e.charAt(r);if(i===`j`){let a=0;for(;r+1<e.length&&e.charAt(r+1)===i;)a++,r++;let o=1+(a&1),s=a<2?1:3+(a>>1),c=en(t);for((c==`H`||c==`k`)&&(s=0);s-->0;)n+=`a`;for(;o-->0;)n=c+n}else n+=i===`J`?`H`:i}return n}function en(e){let t=e.hourCycle;if(t===void 0){let n=e;t=n.getHourCycles?.()[0]??n.hourCycles?.[0]}if(t)switch(t){case`h24`:return`k`;case`h23`:return`H`;case`h12`:return`h`;case`h11`:return`K`;default:throw Error(`Invalid hourCycle`)}let n=e.language,r;return n!==`root`&&(r=e.maximize().region),(N[`${n}-${r}`]||N[r||``]||N[n||``]||N[`${n}-001`]||N[`001`])[0].charAt(0)}var tn=RegExp(`^${Qt.source}*`),nn=RegExp(`${Qt.source}*$`);function P(e,t){return{start:e,end:t}}var rn=!!Object.fromEntries,an=!!String.prototype.trimStart,on=!!String.prototype.trimEnd,sn=rn?Object.fromEntries:function(e){let t={};for(let[n,r]of e)t[n]=r;return t},cn=an?function(e){return e.trimStart()}:function(e){return e.replace(tn,``)},ln=on?function(e){return e.trimEnd()}:function(e){return e.replace(nn,``)},un=RegExp(`([^\\p{White_Space}\\p{Pattern_Syntax}]*)`,`yu`);function dn(e,t){return un.lastIndex=t,un.exec(e)[1]??``}function fn(e){if(e.length===0)return null;let t=1,n=1;for(let r=0;r<e.length;){let i=e.charCodeAt(r);switch(i){case 35:case 39:case 60:case 123:case 125:return null}if(i===10)t++,n=1,r++;else if(n++,i>=55296&&i<=56319&&r+1<e.length){let t=e.charCodeAt(r+1);r+=t>=56320&&t<=57343?2:1}else r++}return{offset:e.length,line:t,column:n}}var pn=class{constructor(e,t={}){this.message=e,this.position={offset:0,line:1,column:1},this.ignoreTag=!!t.ignoreTag,this.locale=t.locale,this.requiresOtherClause=!!t.requiresOtherClause,this.shouldParseSkeletons=!!t.shouldParseSkeletons}parse(){if(this.offset()!==0)throw Error(`parser can only be used once`);if(this.message.length>0){let e=this.message.charCodeAt(0);if(e!==35&&e!==39&&e!==60&&e!==123&&e!==125){let e=fn(this.message);if(e){let t=this.clonePosition();return this.position=e,{val:[{type:0,value:this.message,location:P(t,this.clonePosition())}],err:null}}}}return this.parseMessage(0,``,!1)}parseMessage(e,t,n){let r=[];for(;!this.isEOF();){let i=this.char();if(i===123){let t=this.parseArgument(e,n);if(t.err)return t;r.push(t.val)}else if(i===125&&e>0)break;else if(i===35&&(t===`plural`||t===`selectordinal`)){let e=this.clonePosition();this.bump(),r.push({type:7,location:P(e,this.clonePosition())})}else if(i===60&&!this.ignoreTag&&this.peek()===47){if(n)break;return this.error(26,P(this.clonePosition(),this.clonePosition()))}else if(i===60&&!this.ignoreTag&&mn(this.peek()||0)){let n=this.parseTag(e,t);if(n.err)return n;r.push(n.val)}else{let n=this.parseLiteral(e,t);if(n.err)return n;r.push(n.val)}}return{val:r,err:null}}parseTag(e,t){let n=this.clonePosition();this.bump();let r=this.parseTagName();if(this.bumpSpace(),this.bumpIf(`/>`))return{val:{type:0,value:`<${r}/>`,location:P(n,this.clonePosition())},err:null};if(this.bumpIf(`>`)){let i=this.parseMessage(e+1,t,!0);if(i.err)return i;let a=i.val,o=this.clonePosition();if(this.bumpIf(`</`)){if(this.isEOF()||!mn(this.char()))return this.error(23,P(o,this.clonePosition()));let e=this.clonePosition();return r===this.parseTagName()?(this.bumpSpace(),this.bumpIf(`>`)?{val:{type:8,value:r,children:a,location:P(n,this.clonePosition())},err:null}:this.error(23,P(o,this.clonePosition()))):this.error(26,P(e,this.clonePosition()))}return this.error(27,P(n,this.clonePosition()))}return this.error(23,P(n,this.clonePosition()))}parseTagName(){let e=this.offset();for(this.bump();!this.isEOF()&&gn(this.char());)this.bump();return this.message.slice(e,this.offset())}parseLiteral(e,t){let n=this.clonePosition(),r=``;for(;;){let n=this.tryParseQuote(t);if(n){r+=n;continue}let i=this.tryParseUnquoted(e,t);if(i){r+=i;continue}let a=this.tryParseLeftAngleBracket();if(a){r+=a;continue}break}let i=P(n,this.clonePosition());return{val:{type:0,value:r,location:i},err:null}}tryParseLeftAngleBracket(){return!this.isEOF()&&this.char()===60&&(this.ignoreTag||!hn(this.peek()||0))?(this.bump(),`<`):null}tryParseQuote(e){if(this.isEOF()||this.char()!==39)return null;switch(this.peek()){case 39:return this.bump(),this.bump(),`'`;case 123:case 60:case 62:case 125:break;case 35:if(e===`plural`||e===`selectordinal`)break;return null;default:return null}this.bump();let t=[this.char()];for(this.bump();!this.isEOF();){let e=this.char();if(e===39){if(this.peek()===39)t.push(39),this.bump();else{this.bump();break}}else t.push(e);this.bump()}return String.fromCodePoint(...t)}tryParseUnquoted(e,t){if(this.isEOF())return null;let n=this.char();return n===60||n===123||n===35&&(t===`plural`||t===`selectordinal`)||n===125&&e>0?null:(this.bump(),String.fromCodePoint(n))}parseArgument(e,t){let n=this.clonePosition();if(this.bump(),this.bumpSpace(),this.isEOF())return this.error(1,P(n,this.clonePosition()));if(this.char()===125)return this.bump(),this.error(2,P(n,this.clonePosition()));let r=this.parseIdentifierIfPossible().value;if(!r)return this.error(3,P(n,this.clonePosition()));if(this.bumpSpace(),this.isEOF())return this.error(1,P(n,this.clonePosition()));switch(this.char()){case 125:return this.bump(),{val:{type:1,value:r,location:P(n,this.clonePosition())},err:null};case 44:return this.bump(),this.bumpSpace(),this.isEOF()?this.error(1,P(n,this.clonePosition())):this.parseArgumentOptions(e,t,r,n);default:return this.error(3,P(n,this.clonePosition()))}}parseIdentifierIfPossible(){let e=this.clonePosition(),t=this.offset(),n=dn(this.message,t),r=t+n.length;return this.bumpTo(r),{value:n,location:P(e,this.clonePosition())}}parseArgumentOptions(e,t,n,r){let i=this.clonePosition(),a=this.parseIdentifierIfPossible().value,o=this.clonePosition();switch(a){case``:return this.error(4,P(i,o));case`number`:case`date`:case`time`:{this.bumpSpace();let e=null;if(this.bumpIf(`,`)){this.bumpSpace();let t=this.clonePosition(),n=this.parseSimpleArgStyleIfPossible();if(n.err)return n;let r=ln(n.val);if(r.length===0)return this.error(6,P(this.clonePosition(),this.clonePosition()));e={style:r,styleLocation:P(t,this.clonePosition())}}let t=this.tryParseArgumentClose(r);if(t.err)return t;let i=P(r,this.clonePosition());if(e&&e.style.startsWith(`::`)){let t=cn(e.style.slice(2));if(a===`number`){let r=this.parseNumberSkeletonFromString(t,e.styleLocation);return r.err?r:{val:{type:2,value:n,location:i,style:r.val},err:null}}{if(t.length===0)return this.error(10,i);let r=t;this.locale&&(r=$t(t,this.locale));let o={type:1,pattern:r,location:e.styleLocation,parsedOptions:this.shouldParseSkeletons?Dt(r):{}};return{val:{type:a===`date`?3:4,value:n,location:i,style:o},err:null}}}return{val:{type:a===`number`?2:a===`date`?3:4,value:n,location:i,style:e?.style??null},err:null}}case`plural`:case`selectordinal`:case`select`:{let i=this.clonePosition();if(this.bumpSpace(),!this.bumpIf(`,`))return this.error(12,P(i,{...i}));this.bumpSpace();let o=this.parseIdentifierIfPossible(),s=0;if(a!==`select`&&o.value===`offset`){if(!this.bumpIf(`:`))return this.error(13,P(this.clonePosition(),this.clonePosition()));this.bumpSpace();let e=this.tryParseDecimalInteger(13,14);if(e.err)return e;this.bumpSpace(),o=this.parseIdentifierIfPossible(),s=e.val}let c=this.tryParsePluralOrSelectOptions(e,a,t,o);if(c.err)return c;let l=this.tryParseArgumentClose(r);if(l.err)return l;let u=P(r,this.clonePosition());return a===`select`?{val:{type:5,value:n,options:sn(c.val),location:u},err:null}:{val:{type:6,value:n,options:sn(c.val),offset:s,pluralType:a===`plural`?`cardinal`:`ordinal`,location:u},err:null}}default:return this.error(5,P(i,o))}}tryParseArgumentClose(e){return this.isEOF()||this.char()!==125?this.error(1,P(e,this.clonePosition())):(this.bump(),{val:!0,err:null})}parseSimpleArgStyleIfPossible(){let e=0,t=this.clonePosition();for(;!this.isEOF();)switch(this.char()){case 39:{this.bump();let e=this.clonePosition();if(!this.bumpUntil(`'`))return this.error(11,P(e,this.clonePosition()));this.bump();break}case 123:e+=1,this.bump();break;case 125:if(e>0)--e;else return{val:this.message.slice(t.offset,this.offset()),err:null};break;default:this.bump()}return{val:this.message.slice(t.offset,this.offset()),err:null}}parseNumberSkeletonFromString(e,t){let n=[];try{n=kt(e)}catch{return this.error(7,t)}return{val:{type:0,tokens:n,location:t,parsedOptions:this.shouldParseSkeletons?zt(n):{}},err:null}}tryParsePluralOrSelectOptions(e,t,n,r){let i=!1,a=[],o=new Set,{value:s,location:c}=r;for(;;){if(s.length===0){let e=this.clonePosition();if(t!==`select`&&this.bumpIf(`=`)){let t=this.tryParseDecimalInteger(16,19);if(t.err)return t;c=P(e,this.clonePosition()),s=this.message.slice(e.offset,this.offset())}else break}if(o.has(s))return this.error(t===`select`?21:20,c);s===`other`&&(i=!0),this.bumpSpace();let r=this.clonePosition();if(!this.bumpIf(`{`))return this.error(t===`select`?17:18,P(this.clonePosition(),this.clonePosition()));let l=this.parseMessage(e+1,t,n);if(l.err)return l;let u=this.tryParseArgumentClose(r);if(u.err)return u;a.push([s,{value:l.val,location:P(r,this.clonePosition())}]),o.add(s),this.bumpSpace(),{value:s,location:c}=this.parseIdentifierIfPossible()}return a.length===0?this.error(t===`select`?15:16,P(this.clonePosition(),this.clonePosition())):this.requiresOtherClause&&!i?this.error(22,P(this.clonePosition(),this.clonePosition())):{val:a,err:null}}tryParseDecimalInteger(e,t){let n=1,r=this.clonePosition();this.bumpIf(`+`)||this.bumpIf(`-`)&&(n=-1);let i=!1,a=0;for(;!this.isEOF();){let e=this.char();if(e>=48&&e<=57)i=!0,a=a*10+(e-48),this.bump();else break}let o=P(r,this.clonePosition());return i?(a*=n,Number.isSafeInteger(a)?{val:a,err:null}:this.error(t,o)):this.error(e,o)}offset(){return this.position.offset}isEOF(){return this.offset()===this.message.length}clonePosition(){return{offset:this.position.offset,line:this.position.line,column:this.position.column}}char(){let e=this.position.offset;if(e>=this.message.length)throw Error(`out of bound`);let t=this.message.codePointAt(e);if(t===void 0)throw Error(`Offset ${e} is at invalid UTF-16 code unit boundary`);return t}error(e,t){return{val:null,err:{kind:e,message:this.message,location:t}}}bump(){if(this.isEOF())return;let e=this.char();e===10?(this.position.line+=1,this.position.column=1,this.position.offset+=1):(this.position.column+=1,this.position.offset+=e<65536?1:2)}bumpIf(e){if(this.message.startsWith(e,this.offset())){for(let t=0;t<e.length;t++)this.bump();return!0}return!1}bumpUntil(e){let t=this.offset(),n=this.message.indexOf(e,t);return n>=0?(this.bumpTo(n),!0):(this.bumpTo(this.message.length),!1)}bumpTo(e){if(this.offset()>e)throw Error(`targetOffset ${e} must be greater than or equal to the current offset ${this.offset()}`);for(e=Math.min(e,this.message.length);;){let t=this.offset();if(t===e)break;if(t>e)throw Error(`targetOffset ${e} is at invalid UTF-16 code unit boundary`);if(this.bump(),this.isEOF())break}}bumpSpace(){for(;!this.isEOF()&&_n(this.char());)this.bump()}peek(){if(this.isEOF())return null;let e=this.char(),t=this.offset();return this.message.charCodeAt(t+(e>=65536?2:1))??null}};function mn(e){return e>=97&&e<=122||e>=65&&e<=90}function hn(e){return mn(e)||e===47}function gn(e){return e===45||e===46||e>=48&&e<=57||e===95||e>=97&&e<=122||e>=65&&e<=90||e==183||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=893||e>=895&&e<=8191||e>=8204&&e<=8205||e>=8255&&e<=8256||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}function _n(e){return e>=9&&e<=13||e===32||e===133||e>=8206&&e<=8207||e===8232||e===8233}function vn(e){e.forEach(e=>{if(delete e.location,Kt(e)||qt(e))for(let t in e.options)delete e.options[t].location,vn(e.options[t].value);else Ut(e)&&Xt(e.style)||(Wt(e)||Gt(e))&&Zt(e.style)?delete e.style.location:Yt(e)&&vn(e.children)})}function yn(e,t={}){t={shouldParseSkeletons:!0,requiresOtherClause:!0,...t};let n=new pn(e,t).parse();if(n.err){let e=SyntaxError(Bt[n.err.kind]);throw e.location=n.err.location,e.originalMessage=n.err.message,e}return t?.captureLocation||vn(n.val),n.val}var bn=class extends Error{constructor(e,t,n){super(e),this.code=t,this.originalMessage=n}toString(){return`[formatjs Error: ${this.code}] ${this.message}`}},xn=class extends bn{constructor(e,t,n,r){super(`Invalid values for "${e}": "${t}". Options are "${Object.keys(n).join(`", "`)}"`,`INVALID_VALUE`,r)}},Sn=class extends bn{constructor(e,t,n){super(`Value for "${e}" must be of type ${t}`,`INVALID_VALUE`,n)}},Cn=class extends bn{constructor(e,t){super(`The intl string context variable "${e}" was not provided to the string "${t}"`,`MISSING_VALUE`,t)}};function wn(e){return e.length<2?e:e.reduce((e,t)=>{let n=e[e.length-1];return!n||n.type!==0||t.type!==0?e.push(t):n.value+=t.value,e},[])}function Tn(e){return typeof e==`function`}function En(e,t,n,r,i,a,o){if(e.length===1&&Vt(e[0]))return[{type:0,value:e[0].value}];let s=[];for(let c of e){if(Vt(c)){s.push({type:0,value:c.value});continue}if(Jt(c)){typeof a==`number`&&s.push({type:0,value:n.getNumberFormat(t).format(a)});continue}let{value:e}=c;if(!(i&&e in i))throw new Cn(e,o);let l=i[e];if(Ht(c)){(!l||typeof l==`string`||typeof l==`number`||typeof l==`bigint`)&&(l=typeof l==`string`||typeof l==`number`||typeof l==`bigint`?String(l):``),s.push({type:typeof l==`string`?0:1,value:l});continue}if(Wt(c)){let e=typeof c.style==`string`?r.date[c.style]:Zt(c.style)?c.style.parsedOptions:void 0;s.push({type:0,value:n.getDateTimeFormat(t,e).format(l)});continue}if(Gt(c)){let e=typeof c.style==`string`?r.time[c.style]:Zt(c.style)?c.style.parsedOptions:r.time.medium;s.push({type:0,value:n.getDateTimeFormat(t,e).format(l)});continue}if(Ut(c)){let e=typeof c.style==`string`?r.number[c.style]:Xt(c.style)?c.style.parsedOptions:void 0;if(e&&e.scale){let t=e.scale||1;if(typeof l==`bigint`){if(!Number.isInteger(t))throw TypeError(`Cannot apply fractional scale ${t} to bigint value. Scale must be an integer when formatting bigint.`);l*=BigInt(t)}else l*=t}s.push({type:0,value:n.getNumberFormat(t,e).format(l)});continue}if(Yt(c)){let{children:e,value:l}=c,u=i[l];if(!Tn(u))throw new Sn(l,`function`,o);let d=u(En(e,t,n,r,i,a).map(e=>e.value));Array.isArray(d)||(d=[d]),s.push(...d.map(e=>({type:typeof e==`string`?0:1,value:e})))}if(Kt(c)){let e=l,a=(Object.prototype.hasOwnProperty.call(c.options,e)?c.options[e]:void 0)||c.options.other;if(!a)throw new xn(c.value,l,Object.keys(c.options),o);s.push(...En(a.value,t,n,r,i));continue}if(qt(c)){let e=`=${l}`,a=Object.prototype.hasOwnProperty.call(c.options,e)?c.options[e]:void 0;if(!a){if(!Intl.PluralRules)throw new bn(`Intl.PluralRules is not available in this environment.
|
|
3
|
+
Try polyfilling it using "@formatjs/intl-pluralrules"
|
|
4
|
+
`,`MISSING_INTL_API`,o);let e=typeof l==`bigint`?Number(l):l,r=n.getPluralRules(t,{type:c.pluralType}).select(e-(c.offset||0));a=(Object.prototype.hasOwnProperty.call(c.options,r)?c.options[r]:void 0)||c.options.other}if(!a)throw new xn(c.value,l,Object.keys(c.options),o);let u=typeof l==`bigint`?Number(l):l;s.push(...En(a.value,t,n,r,i,u-(c.offset||0)));continue}}return wn(s)}function Dn(e,t){return t?{...e,...t,...Object.keys(e).reduce((n,r)=>(n[r]={...e[r],...t[r]},n),{})}:e}function On(e,t){return t?Object.keys(e).reduce((n,r)=>(n[r]=Dn(e[r],t[r]),n),{...e}):e}function kn(e){return{create(){return{get(t){return e[t]},set(t,n){e[t]=n}}}}}function An(e={number:{},dateTime:{},pluralRules:{}}){return{getNumberFormat:mt((...e)=>new Intl.NumberFormat(...e),{cache:kn(e.number),strategy:Tt.variadic}),getDateTimeFormat:mt((...e)=>new Intl.DateTimeFormat(...e),{cache:kn(e.dateTime),strategy:Tt.variadic}),getPluralRules:mt((...e)=>new Intl.PluralRules(...e),{cache:kn(e.pluralRules),strategy:Tt.variadic})}}var jn=class e{constructor(t,n=e.defaultLocale,r,i){if(this.formatterCache={number:{},dateTime:{},pluralRules:{}},this.format=e=>{let t=this.formatToParts(e);if(t.length===1)return t[0].value;let n=t.reduce((e,t)=>(!e.length||t.type!==0||typeof e[e.length-1]!=`string`?e.push(t.value):e[e.length-1]+=t.value,e),[]);return n.length<=1?n[0]||``:n},this.formatToParts=e=>En(this.ast,this.locales,this.formatters,this.formats,e,void 0,this.message),this.resolvedOptions=()=>({locale:this.resolvedLocale?.toString()||Intl.NumberFormat.supportedLocalesOf(this.locales)[0]}),this.getAst=()=>this.ast,this.locales=n,this.resolvedLocale=e.resolveLocale(n),typeof t==`string`){if(this.message=t,!e.__parse)throw TypeError("IntlMessageFormat.__parse must be set to process `message` of type `string`");let{...n}=i||{};this.ast=e.__parse(t,{...n,locale:this.resolvedLocale})}else this.ast=t;if(!Array.isArray(this.ast))throw TypeError(`A message must be provided as a String or AST.`);this.formats=On(e.formats,r),this.formatters=i&&i.formatters||An(this.formatterCache)}static{this.memoizedDefaultLocale=null}static get defaultLocale(){return e.memoizedDefaultLocale||=new Intl.NumberFormat().resolvedOptions().locale,e.memoizedDefaultLocale}static{this.resolveLocale=e=>{if(Intl.Locale===void 0)return;let t=Intl.NumberFormat.supportedLocalesOf(e);return t.length>0?new Intl.Locale(t[0]):new Intl.Locale(typeof e==`string`?e:e[0])}}static{this.__parse=yn}static{this.formats={number:{integer:{maximumFractionDigits:0},currency:{style:`currency`},percent:{style:`percent`}},date:{short:{month:`numeric`,day:`numeric`,year:`2-digit`},medium:{month:`short`,day:`numeric`,year:`numeric`},long:{month:`long`,day:`numeric`,year:`numeric`},full:{weekday:`long`,month:`long`,day:`numeric`,year:`numeric`}},time:{short:{hour:`numeric`,minute:`numeric`},medium:{hour:`numeric`,minute:`numeric`,second:`numeric`},long:{hour:`numeric`,minute:`numeric`,second:`numeric`,timeZoneName:`short`},full:{hour:`numeric`,minute:`numeric`,second:`numeric`,timeZoneName:`short`}}}}},Mn={"@astryx.pagination.label":{defaultMessage:`Pagination`,description:`Aria label for the pagination navigation region.`},"@astryx.pagination.previous":{defaultMessage:`Go to previous page`,description:`Aria label for the previous-page button.`},"@astryx.pagination.next":{defaultMessage:`Go to next page`,description:`Aria label for the next-page button.`},"@astryx.pagination.previousBy":{defaultMessage:`Go back {step, number} {step, plural, one {page} other {pages}}`,description:"Aria label for the previous button when it advances more than one page per click (the `step` prop > 1). `step` is the number of pages skipped."},"@astryx.pagination.nextBy":{defaultMessage:`Go forward {step, number} {step, plural, one {page} other {pages}}`,description:"Aria label for the next button when it advances more than one page per click (the `step` prop > 1). `step` is the number of pages skipped."},"@astryx.pagination.first":{defaultMessage:`Go to first page`,description:`Aria label for the first-page button (« double chevron) in the input pagination variant.`},"@astryx.pagination.last":{defaultMessage:`Go to last page`,description:`Aria label for the last-page button (» double chevron) in the input pagination variant.`},"@astryx.pagination.goToPage":{defaultMessage:`Go to page {page, number}`,description:"Aria label for an individual page-number button. `page` is 1-based."},"@astryx.pagination.goToPageInput":{defaultMessage:`Go to page`,description:`Aria label for the editable page/row number box in the input pagination variant. No number — the box holds the value itself.`},"@astryx.pagination.pageLabel":{defaultMessage:`Page`,description:`Visible label before the editable box in the input pagination variant. Example: "Page [ 1 ] / 10".`},"@astryx.pagination.ofTotalPages":{defaultMessage:`/ {total, number}`,description:`Visible total shown after the editable box in the input pagination variant. Example: the "/ 10" in "Page [ 1 ] / 10".`},"@astryx.pagination.pageIndicators":{defaultMessage:`Page indicators`,description:`Aria label for the dots-variant page-indicator group.`},"@astryx.pagination.itemsPerPage":{defaultMessage:`Items per page`,description:`Label for the page-size selector.`},"@astryx.pagination.count":{defaultMessage:`{from, number}–{to, number} of {total, number}`,description:`Visible range-of-total text on a pagination bar. Example: "1–20 of 347"; the en-dash is translator's choice.`},"@astryx.pagination.pageOfTotal":{defaultMessage:`Page {current, number} of {total, number}`,description:`Visible "Page X of Y" text on the compact pagination variant; also announced by screen readers. Keep short — sits in a compact toolbar.`},"@astryx.pagination.pageAnnounce":{defaultMessage:`Page {current, number}`,description:`Screen-reader announcement when a page changes and total is unknown.`},"@astryx.powersearch.editor.field":{defaultMessage:`Field`,description:`Noun form-label above the field-picker dropdown in the PowerSearch filter-builder popover (which data column to filter on). Not an action.`},"@astryx.powersearch.editor.operator":{defaultMessage:`Operator`,description:`Noun form-label above the operator dropdown in the PowerSearch filter-builder popover. Refers to a comparison verb ("is", "contains"), not a math or phone operator.`},"@astryx.powersearch.editor.addFilter":{defaultMessage:`+ Add filter`,description:`Button label inside a group in the PowerSearch filter-builder; adds another filter row (e.g. "Status = Active"). The leading "+ " is a plus-sign character.`},"@astryx.powersearch.editor.removeFilter":{defaultMessage:`Remove filter`,description:`Screen-reader-only label on the "×" icon button next to a filter row in the PowerSearch editor; removes that row. Imperative verb.`},"@astryx.powersearch.editor.groupOperator":{defaultMessage:`Group operator`,description:`Screen-reader-only label for the AND/OR toggle that combines sibling filters inside a filter group. Sighted users see just "AND" or "OR".`},"@astryx.powersearch.editor.group":{defaultMessage:`Group`,description:`Fallback noun label shown on a nested filter-group chip when no AND/OR combining operator has been chosen. Use the noun ("a cluster"), not the verb "to group".`},"@astryx.powersearch.editor.delete":{defaultMessage:`Delete`,description:`Button label inside the PowerSearch filter-editor popover; deletes the currently-edited filter row. Imperative verb form.`},"@astryx.powersearch.editor.cancel":{defaultMessage:`Cancel`,description:`Button label inside the PowerSearch filter-editor popover; closes the popover and discards pending edits. Imperative verb form.`},"@astryx.powersearch.editor.apply":{defaultMessage:`Apply`,description:`Primary button label inside the PowerSearch filter-editor popover; confirms the edited filter. Imperative verb; consumers may override to "Save".`},"@astryx.powersearch.valueEditor.value":{defaultMessage:`Value`,description:'Noun form-label above a single free-text/number input in the PowerSearch value editor (e.g. the "acme" in `Name contains acme`). Not a verb or "worth".'},"@astryx.powersearch.valueEditor.values":{defaultMessage:`Values`,description:"Plural noun form-label above a multi-value chip input in the PowerSearch value editor. Should match its singular counterpart `Value` in your language."},"@astryx.powersearch.valueEditor.time":{defaultMessage:`Time`,description:`Noun form-label above a time-of-day (HH:MM) picker in the PowerSearch value editor. Clock time, not duration or era.`},"@astryx.powersearch.valueEditor.date":{defaultMessage:`Date`,description:`Noun form-label above a calendar-date picker in the PowerSearch value editor. Calendar date, not romantic date or fruit.`},"@astryx.powersearch.valueEditor.relativeDate":{defaultMessage:`Relative date`,description:`Label for the relative-date selector (e.g. "Last 7 days") in the PowerSearch value editor.`},"@astryx.powersearch.valueEditor.startDate":{defaultMessage:`Start date`,description:"Noun form-label above the start-of-range date picker in the PowerSearch value editor. Pairs with `End date` — keep the two parallel in your language."},"@astryx.powersearch.valueEditor.endDate":{defaultMessage:`End date`,description:"Noun form-label above the end-of-range date picker in the PowerSearch value editor. Pairs with `Start date` — keep the two parallel."},"@astryx.powersearch.valueEditor.entities":{defaultMessage:`Entities`,description:`"Entities" is jargon — plural noun form-label above an entity picker (people, teams, projects). Prefer a natural collective like "items" if your language has no equivalent.`},"@astryx.powersearch.valueEditor.searchPlaceholder":{defaultMessage:`Search…`,description:"Placeholder inside the search input in the PowerSearch entity/typeahead picker. Imperative verb; trailing `…` is one character."},"@astryx.powersearch.valueEditor.enterValuePlaceholder":{defaultMessage:`Enter value…`,description:"Placeholder inside a free-text single-value input in the PowerSearch value editor. Imperative verb; trailing `…` is one character."},"@astryx.powersearch.valueEditor.addValuesPlaceholder":{defaultMessage:`Add values…`,description:"Placeholder inside a multi-value chip input where the user types items and presses Enter to add each as a chip. Imperative verb; trailing `…` is one character."},"@astryx.powersearch.valueEditor.enterNumberPlaceholder":{defaultMessage:`Enter number…`,description:"Placeholder inside a numeric input in the PowerSearch value editor. Imperative verb; trailing `…` is one character."},"@astryx.powersearch.valueEditor.selectValuesPlaceholder":{defaultMessage:`Select values…`,description:`Placeholder on a dropdown for choosing values from a fixed enum list in the PowerSearch value editor. Imperative verb (user selects, not types).`},"@astryx.powersearch.operator.contains":{defaultMessage:`contains`,description:"PowerSearch string operator, rendered inline as `<field> contains <value>` (e.g. `Name contains acme`). Lowercase verb form."},"@astryx.powersearch.operator.notContains":{defaultMessage:`does not contain`,description:"PowerSearch negated string operator. Example: `Name does not contain test`. Lowercase; pairs with `contains`."},"@astryx.powersearch.operator.startsWith":{defaultMessage:`starts with`,description:"PowerSearch string prefix operator. Example: `Email starts with admin@`. Lowercase."},"@astryx.powersearch.operator.notStartsWith":{defaultMessage:`does not start with`,description:"PowerSearch negated prefix operator. Example: `Email does not start with test`. Lowercase; pairs with `starts with`."},"@astryx.powersearch.operator.endsWith":{defaultMessage:`ends with`,description:"PowerSearch string suffix operator. Example: `Email ends with @meta.com`. Lowercase."},"@astryx.powersearch.operator.notEndsWith":{defaultMessage:`does not end with`,description:"PowerSearch negated suffix operator. Example: `Email does not end with @gmail.com`. Lowercase; pairs with `ends with`."},"@astryx.powersearch.operator.is":{defaultMessage:`is`,description:"PowerSearch equality operator for strings/enums. Example: `Status is Active`. Separate from `operator.equals` (numbers) — translations may diverge."},"@astryx.powersearch.operator.isNot":{defaultMessage:`is not`,description:"PowerSearch inequality operator for strings/enums. Example: `Status is not Draft`. Pairs with `is`; separate from `operator.notEquals`."},"@astryx.powersearch.operator.equals":{defaultMessage:`is`,description:'PowerSearch numeric equality operator. Example: `Age is 30`. Ships same English "is" as `operator.is` but is separate so numbers may diverge (e.g. "equals").'},"@astryx.powersearch.operator.notEquals":{defaultMessage:`is not`,description:"PowerSearch numeric inequality operator. Example: `Count is not 0`. Same divergence option as `operator.equals`."},"@astryx.powersearch.operator.greaterThan":{defaultMessage:`is greater than`,description:"PowerSearch numeric operator, strictly greater than. Example: `Age is greater than 18`. Lowercase."},"@astryx.powersearch.operator.lessThan":{defaultMessage:`is less than`,description:"PowerSearch numeric operator, strictly less than. Example: `Priority is less than 5`. Lowercase."},"@astryx.powersearch.operator.greaterThanOrEqual":{defaultMessage:`is greater than or equal to`,description:'PowerSearch numeric operator, ≥. Example: `Age is greater than or equal to 21`. A shorter form (e.g. "≥") is fine if idiomatic.'},"@astryx.powersearch.operator.lessThanOrEqual":{defaultMessage:`is less than or equal to`,description:"PowerSearch numeric operator, ≤. Example: `Priority is less than or equal to 3`. A shorter form is fine if idiomatic."},"@astryx.powersearch.operator.before":{defaultMessage:`is before`,description:"PowerSearch date operator, strictly earlier. Example: `Created is before 2024-01-01`. Temporal, not spatial."},"@astryx.powersearch.operator.after":{defaultMessage:`is after`,description:"PowerSearch date operator, strictly later. Example: `Updated is after 2024-06-01`. Temporal."},"@astryx.powersearch.operator.between":{defaultMessage:`is between`,description:"PowerSearch date operator, inclusive range. Example: `Created is between 2024-01-01 and 2024-06-30`. The `and <end>` portion is composed separately."},"@astryx.powersearch.operator.isTrue":{defaultMessage:`is true`,description:"PowerSearch boolean operator: matches truthy. Example: `Is admin is true`. Pairs with `is false`; field may be affirmative or a yes/no question."},"@astryx.powersearch.operator.isFalse":{defaultMessage:`is false`,description:"PowerSearch boolean operator: matches falsy. Example: `Is admin is false`. Pairs with `is true`."},"@astryx.powersearch.operator.isAnyOf":{defaultMessage:`is any of`,description:"PowerSearch list operator: value is in the set. Example: `Status is any of [Active, Paused, Draft]`. The value list is composed separately; pairs with `is none of`."},"@astryx.powersearch.operator.isNoneOf":{defaultMessage:`is none of`,description:"PowerSearch negated list operator: value not in the set. Example: `Status is none of [Archived, Deleted]`. Pairs with `is any of`."},"@astryx.powersearch.valueEditor.itemsCount":{defaultMessage:`{count, number} {count, plural, one {item} other {items}}`,description:"Overflow summary on a compact filter chip when the list of selected items is too long. Example: `3 items` or `1 item`."},"@astryx.powersearch.valueEditor.entitiesCount":{defaultMessage:`{count, number} {count, plural, one {entity} other {entities}}`,description:"Overflow summary on a compact filter chip when the list of selected entities is too long. Example: `5 entities` or `1 entity`. Pair with `itemsCount` translation."},"@astryx.powersearch.valueEditor.dateRange":{defaultMessage:`date range`,description:"Fallback lowercase noun rendered inline in a filter chip when a date-range value can't be formatted (e.g. `Created is between date range`). Keep lowercase."},"@astryx.powersearch.valueEditor.filtersCount":{defaultMessage:`{count, number} {count, plural, one {filter} other {filters}}`,description:"Summary inside a filter chip when the value is a nested set of filters. Example: `3 filters` or `1 filter`."},"@astryx.powersearch.resultCount":{defaultMessage:`{count, number} {count, plural, one {result} other {results}}`,description:"Live result-count text next to the PowerSearch input, announced to screen readers on change. Example: `12 results`, `1 result`; keep compact."},"@astryx.alertDialog.cancel":{defaultMessage:`Cancel`,description:`Button label on the secondary/dismiss button of an AlertDialog (modal confirmation). Imperative verb; consumers usually override with task-specific text.`},"@astryx.appShell.mobileNavigation":{defaultMessage:`Mobile navigation`,description:`Screen-reader-only accessible name for the mobile-only navigation region on small viewports. "Mobile" = phone/tablet (small screen), not "movable".`},"@astryx.appShell.skipToContent":{defaultMessage:`Skip to content`,description:`Text of the skip link — the first focusable element on the page, visible only while keyboard-focused. Activating it jumps focus past the navigation to the main content area. Imperative verb; keep short.`},"@astryx.avatar.nameWithStatus":{defaultMessage:`{name}, {status}`,description:`Screen-reader accessible name for an Avatar showing a status indicator; composes the person's name with the status label, e.g. "Jane Doe, Online". {name} = the avatar's name/alt text, {status} = the status dot's label. Adjust separator and order per locale.`},"@astryx.avatarGroup.label":{defaultMessage:`Avatars`,description:`Screen-reader-only fallback name for a horizontal cluster of user avatar images. Plural noun; consumers usually override with "Team members", "Attendees", etc.`},"@astryx.avatarGroup.keyboardHint":{defaultMessage:`Use arrow keys to move between avatars`,description:`Screen-reader-only instruction attached (via aria-describedby) to a group of interactive avatars that share a single Tab stop. Tells keyboard users the Left/Right arrow keys move focus between the avatars. Only announced when the group has interactive (link/button) avatars.`},"@astryx.avatarGroup.overflow":{defaultMessage:`{count, number} more`,description:'Accessible name for the "+N" overflow indicator at the end of an AvatarGroup — announces how many additional avatars are not shown. Example: `5 more`. The visible "+N" text is unaffected; this is the aria-label only.'},"@astryx.banner.dismiss":{defaultMessage:`Dismiss`,description:`"Dismiss" = close/hide this notification (not "reject a person"). Tooltip on the small X button on a Banner, and its aria label when the banner's title is not plain text.`},"@astryx.banner.dismissTitled":{defaultMessage:`{dismiss} {title}`,description:"Aria label on the small X button on a Banner, naming which banner it closes so stacked banners are distinguishable. `{dismiss}` is the already-translated tooltip text from `banner.dismiss`; keep it verbatim in the message so visible and accessible labels match. `{title}` is the banner's own title text — example: `Dismiss Upload failed`. Reorder the placeholders freely."},"@astryx.calendar.previousMonth":{defaultMessage:`Previous month`,description:"Screen-reader-only label on the left-arrow button in a Calendar's month header (navigates one month back). Pairs with `calendar.nextMonth`."},"@astryx.calendar.nextMonth":{defaultMessage:`Next month`,description:"Screen-reader-only label on the right-arrow button in a Calendar's month header (navigates one month forward). Pairs with `calendar.previousMonth`."},"@astryx.calendar.daySelected":{defaultMessage:`{date}, selected`,description:'Accessible name for the Calendar day button that is the current single-mode selection. `{date}` is the localized full date, e.g. "Thursday, January 15, 2026". The trailing state word tells screen-reader users the focused day is selected.'},"@astryx.calendar.dayRangeStart":{defaultMessage:`{date}, range start`,description:"Accessible name for the Calendar day button that begins the selected date range (or the first pick of an in-progress range). `{date}` is the localized full date."},"@astryx.calendar.dayRangeEnd":{defaultMessage:`{date}, range end`,description:"Accessible name for the Calendar day button that ends the selected date range. `{date}` is the localized full date. Pairs with `calendar.dayRangeStart`."},"@astryx.calendar.dayRangeStartAndEnd":{defaultMessage:`{date}, range start and range end`,description:"Accessible name for a Calendar day button that both begins and ends a completed one-day range. `{date}` is the localized full date."},"@astryx.calendar.dayInRange":{defaultMessage:`{date}, in range`,description:"Accessible name for a Calendar day button strictly inside the selected date range (not an endpoint). `{date}` is the localized full date."},"@astryx.calendar.rangeStartAnnounce":{defaultMessage:`Start date {date}. Select an end date.`,description:"Screen-reader announcement after the first pick of a Calendar range selection. `{date}` is the localized full date. Prompts the user that a second pick completes the range."},"@astryx.calendar.rangeCompleteAnnounce":{defaultMessage:`Selected range: {start} to {end}.`,description:"Screen-reader announcement after the second pick completes a Calendar range selection. `{start}` and `{end}` are localized full dates in chronological order."},"@astryx.calendar.rangeClearedAnnounce":{defaultMessage:`Cleared start date {date}. Select a start date.`,description:"Screen-reader announcement when the user clicks the in-progress range start again, which clears it instead of completing a zero-length range. `{date}` is the localized full date."},"@astryx.carousel.label":{defaultMessage:`Carousel`,description:`Screen-reader-only fallback name for a horizontally-scrolling row of items. If "carousel" is unfamiliar in your locale, prefer the standard term (e.g. "slider").`},"@astryx.carousel.scrollLeft":{defaultMessage:`Scroll left`,description:"Screen-reader-only label on the left arrow button in a Carousel. Pairs with `carousel.scrollRight`; in RTL locales, coordinate the two so left/right match layout."},"@astryx.carousel.scrollRight":{defaultMessage:`Scroll right`,description:"Screen-reader-only label on the right arrow button in a Carousel. Pairs with `carousel.scrollLeft`; same RTL note."},"@astryx.carousel.slideLabel":{defaultMessage:`Slide {current, number} of {total, number}`,description:"Screen-reader accessible name for one slide in a Carousel, giving its position. `current` is the 1-based slide number; `total` is the slide count."},"@astryx.chat.status.sending":{defaultMessage:`Sending`,description:`Chat send-status caption under an outgoing message while it is being transmitted. Part of the set sending → sent → delivered → read (or failed) — keep tense/aspect consistent.`},"@astryx.chat.status.sent":{defaultMessage:`Sent`,description:`Chat send-status caption shown once the message reaches the server. Part of the set sending → **sent** → delivered → read (or failed) — keep tense consistent.`},"@astryx.chat.status.delivered":{defaultMessage:`Delivered`,description:`Chat send-status caption shown once the recipient's device received the message. Part of the set sending → sent → **delivered** → read (or failed).`},"@astryx.chat.status.read":{defaultMessage:`Read`,description:`Chat send-status caption shown once the recipient opened the message. English past-participle ("has been read", /rɛd/), not the present verb — part of the set sending → sent → delivered → **read**.`},"@astryx.chat.status.failed":{defaultMessage:`Failed`,description:`Chat send-status caption shown when the send attempt errored. Part of the set — the terminal failure branch, orthogonal to the sent → delivered → read success track.`},"@astryx.chat.messageAriaLabel":{defaultMessage:`Message {status}`,description:"Screen-reader-only accessible name for a chat message row. `{status}` interpolates the localized status word (e.g. `Message sent`, `Message delivered`) — reorder if needed."},"@astryx.chat.pastedText.expand":{defaultMessage:`Expand`,description:`Button label on a chip in the chat composer representing a long pasted text block; clicking reveals full content. "Expand" here means reveal more, not grow physically.`},"@astryx.checkboxList.item.checkbox":{defaultMessage:`Checkbox`,description:`Localized hidden text used internally when a rich visible label names the checkbox through aria-labelledby. It does not become the computed name; callers must provide aria-label when rich content has no text.`},"@astryx.commandPalette.emptySearch":{defaultMessage:`No results`,description:`Fallback empty-state text inside a CommandPalette when the user's query has no matches. Very short (2 words); neutral tone.`},"@astryx.commandPalette.emptyBootstrap":{defaultMessage:`Type to search`,description:`Onboarding empty-state text shown inside a CommandPalette on first open, before the user has typed anything. Imperative sentence fragment.`},"@astryx.commandPalette.resultCount":{defaultMessage:`{count, number} {count, plural, one {result} other {results}}`,description:"Screen-reader-only announcement of how many commands match the CommandPalette query as the user types. Example: `12 results`, `1 result`; keep compact."},"@astryx.commandPalette.noResultsFor":{defaultMessage:`No results for {query}`,description:"Screen-reader-only announcement when a CommandPalette query matches nothing. `{query}` is the user's verbatim search text; keep it last if your language allows so truncation-by-AT still conveys the outcome."},"@astryx.commandPalette.loading":{defaultMessage:`Loading`,description:`Screen-reader-only announcement that a CommandPalette search has started and results are being fetched. Present-progressive form; matches the visible spinner.`},"@astryx.dateRangeInput.presetDateRanges":{defaultMessage:`Preset date ranges`,description:`Screen-reader-only accessible name for the sidebar of quick-pick preset ranges inside a DateRangeInput popover (e.g. "Last 7 days", "This month").`},"@astryx.dateTimeInput.timePlaceholder":{defaultMessage:`Select a time`,description:`Grey placeholder inside the empty time-of-day slot in a DateTimeInput. "Time" = clock time (HH:MM), not duration.`},"@astryx.dialog.close":{defaultMessage:`Close`,description:`"Close" = shut/dismiss the dialog, not "nearby" (English homograph). Aria label AND tooltip on the X at the top-right of a Dialog.`},"@astryx.dropdownMenu.label":{defaultMessage:`Menu`,description:`Screen-reader-only fallback name for a dropdown menu popover. Very generic; consumers usually override. Noun ("a menu"), not the imperative.`},"@astryx.dropdownMenu.back":{defaultMessage:`Back`,description:`Button label that returns from a nested action list to its parent inside a DropdownMenu bottom sheet. Imperative navigation action.`},"@astryx.lightbox.close":{defaultMessage:`Close`,description:`"Close" = shut/dismiss (not "nearby"). Screen-reader-only label on the X button that dismisses a Lightbox.`},"@astryx.lightbox.previous":{defaultMessage:`Previous`,description:"Screen-reader-only label on the left-arrow button in a Lightbox (navigates to previous media item). Pairs with `lightbox.next`."},"@astryx.lightbox.next":{defaultMessage:`Next`,description:"Screen-reader-only label on the right-arrow button in a Lightbox (navigates to next media item). Pairs with `lightbox.previous`."},"@astryx.listInput.emptyTitle":{defaultMessage:`No {itemName}s yet`,description:'EmptyState title shown inside a lab ListInput when its collection has no records. `{itemName}` is the consumer\'s singular noun for one record (e.g. "guest"); the source appends a literal "s" to pluralize it, which only works for regular English plurals. If your language cannot pluralize an interpolated noun this way, rephrase around `{itemName}` instead (e.g. "No {itemName} added yet").'},"@astryx.listInput.emptyDescription":{defaultMessage:`Add a {itemName} to get started.`,description:'EmptyState supporting text shown inside a lab ListInput when its collection has no records. `{itemName}` is the consumer\'s singular noun for one record (e.g. "guest").'},"@astryx.listInput.addItem":{defaultMessage:`Add {itemName}`,description:'Accessible label on the button that appends a new record to a lab ListInput. `{itemName}` is the consumer\'s singular noun for one record (e.g. "guest").'},"@astryx.listInput.removeItem":{defaultMessage:`Remove {itemName} {position, number}`,description:'Accessible label and tooltip on the button that deletes one record from a lab ListInput. `{itemName}` is the consumer\'s singular noun for one record; `{position}` is its 1-based row number (e.g. "Remove guest 2").'},"@astryx.listInput.removeUnavailable":{defaultMessage:`Remove is unavailable while the list is disabled`,description:`Tooltip shown on the Remove button when the ListInput is disabled or loading, explaining why the action cannot be performed.`},"@astryx.listInput.reorderItem":{defaultMessage:`Reorder {itemName} {position, number}`,description:'Accessible label on the drag-handle button that reorders one record in a lab ListInput. `{itemName}` is the consumer\'s singular noun for one record; `{position}` is its 1-based row number (e.g. "Reorder guest 2").'},"@astryx.listInput.fieldLabelWithPosition":{defaultMessage:`{header}, {itemName} {position, number} of {total, number}`,description:'Accessible name for a field inside a lab ListInput row after the first row, disambiguating repeated column labels. `{header}` is the column\'s own label (e.g. "Name"); `{itemName}` is the consumer\'s singular noun for one record; `{position}`/`{total}` are the row\'s 1-based index and the total row count (e.g. "Name, guest 2 of 3").'},"@astryx.listInput.reorderInstructions":{defaultMessage:`Use Arrow Up or Arrow Down to move this item one position. Press Space or Enter to pick it up for extended keyboard reordering.`,description:`Visually-hidden instructions describing how to use a lab ListInput row's keyboard reorder handle, referenced via aria-describedby from every reorder button.`},"@astryx.listInput.announceAdded":{defaultMessage:`Added {itemName} {position, number}.`,description:"Screen-reader-only live announcement after a new record is appended to a lab ListInput. `{itemName}` is the consumer's singular noun for one record; `{position}` is the new record's 1-based row number."},"@astryx.listInput.announceRemoved":{defaultMessage:`Removed {itemName} {position, number}.`,description:"Screen-reader-only live announcement after a record is deleted from a lab ListInput. `{itemName}` is the consumer's singular noun for one record; `{position}` is the removed record's former 1-based row number."},"@astryx.listInput.announceGrabbed":{defaultMessage:`{itemName} {position, number} grabbed. Use arrow keys to move, Space or Enter to drop, and Escape to cancel.`,description:"Screen-reader-only live announcement when a lab ListInput record's keyboard reorder handle enters extended \"lift\" mode. `{itemName}` is the consumer's singular noun for one record; `{position}` is its 1-based row number."},"@astryx.listInput.announceMovedToPosition":{defaultMessage:`{itemName} moved to position {position, number} of {total, number}.`,description:"Screen-reader-only live announcement each time a lab ListInput record's reorder position changes (arrow-key step, keyboard lift-mode preview, or pointer drag). `{itemName}` is the consumer's singular noun for one record; `{position}`/`{total}` are the record's new 1-based position and the total row count."},"@astryx.listInput.announceReorderCancelled":{defaultMessage:`Reordering cancelled.`,description:`Screen-reader-only live announcement when a lab ListInput reorder in progress is cancelled (Escape key, blur, or the collection becoming disabled/loading mid-drag).`},"@astryx.listInput.announceReturnedToPosition":{defaultMessage:`{itemName} returned to position {position, number}.`,description:"Screen-reader-only live announcement when a lab ListInput reorder is committed without the record's position actually changing. `{itemName}` is the consumer's singular noun for one record; `{position}` is its unchanged 1-based row number."},"@astryx.listInput.announceDropped":{defaultMessage:`{itemName} dropped at position {position, number} of {total, number}.`,description:"Screen-reader-only live announcement when a lab ListInput reorder is committed with the record's position actually changing. `{itemName}` is the consumer's singular noun for one record; `{position}`/`{total}` are its new 1-based position and the total row count."},"@astryx.listInput.announceAlreadyAtBoundary":{defaultMessage:`This {itemName} is already {boundary, select, first {first} last {last} other {}}.`,description:'Screen-reader-only live announcement when an arrow-key reorder attempt has no effect because the record is already at that end of the list. `{itemName}` is the consumer\'s singular noun for one record; `{boundary}` is always exactly "first" or "last".'},"@astryx.markdown.taskList":{defaultMessage:`Task list`,description:"Screen-reader-only accessible name for a GitHub-flavored Markdown task list (rendered from `- [ ] item` / `- [x] done` syntax)."},"@astryx.markdown.table":{defaultMessage:`Table`,description:'Screen-reader-only accessible name for a table rendered inside a Markdown block. Noun ("a table"), not the verb. Separate from `@astryx.table.label` — translations may diverge.'},"@astryx.mobileNav.closeNavigation":{defaultMessage:`Close navigation`,description:"Screen-reader-only label on the X/close button that dismisses the MobileNav overlay. Pairs with `mobileNav.toggle.open`."},"@astryx.multiSelector.selectAll":{defaultMessage:`Select all`,description:`Label on the checkbox/toggle at the top of a MultiSelector dropdown that selects every option. "All" is a determiner here (as in "all the options"), not the pronoun.`},"@astryx.multiSelector.searchPlaceholder":{defaultMessage:`Search…`,description:"Placeholder inside the search input at the top of a MultiSelector's dropdown panel. Imperative verb; trailing `…` is one character."},"@astryx.multiSelector.searchOptions":{defaultMessage:`Search options`,description:`Screen-reader-only accessible name for that same search input inside a MultiSelector.`},"@astryx.multiSelector.empty":{defaultMessage:`No options`,description:`Shown in a MultiSelector's dropdown panel when it was given no options at all, and announced in a polite live region on open. Very short (2 words); neutral tone, not error-y.`},"@astryx.multiSelector.selectAllPartiallySelected":{defaultMessage:`{label}, partially selected`,description:'Accessible name for the MultiSelector select-all option while only some options are selected. `{label}` is the visible select-all label (e.g. "Select all"). ARIA forbids aria-selected="mixed" on options, so the indeterminate state is conveyed through the name instead. "Partially" = some but not all.'},"@astryx.popover.close":{defaultMessage:`Close popover`,description:`"Close" = shut/dismiss, not "nearby". Screen-reader-only label on the close button inside a Popover.`},"@astryx.selector.searchPlaceholder":{defaultMessage:`Search…`,description:"Placeholder inside the search input at the top of a Selector's dropdown panel (for filtering options). Imperative verb; trailing `…` is one character."},"@astryx.selector.searchOptions":{defaultMessage:`Search options`,description:`"Options" = the list of choices in the dropdown. Screen-reader-only accessible name for the search input inside a Selector.`},"@astryx.selector.empty":{defaultMessage:`No options`,description:`Shown in a Selector's dropdown panel when it was given no options at all, and announced in a polite live region on open. Very short (2 words); neutral tone, not error-y.`},"@astryx.sideNav.label":{defaultMessage:`Side navigation`,description:`Screen-reader-only accessible name for the primary vertical sidebar nav (usually on the left).`},"@astryx.sideNav.resizeSidebar":{defaultMessage:`Resize sidebar`,description:`Screen-reader-only label on the vertical drag handle at the right edge of the SideNav that lets the user resize the sidebar's width.`},"@astryx.sideNav.heading.openMenu":{defaultMessage:`Open menu`,description:"Screen-reader-only label on the `⋯` overflow-menu button embedded in a SideNav section heading. Same string as `topNav.heading.openMenu` — translations may share."},"@astryx.tabList.label":{defaultMessage:`Tabs`,description:`Screen-reader-only fallback name for a horizontal tab bar. Plural noun; "Tabs" here = UI tab panels, not browser tabs or the Tab key.`},"@astryx.table.label":{defaultMessage:`Table`,description:`Fallback screen-reader-only accessible name for a data-table region when the consumer provides none. Noun ("a table"), not the verb "to table".`},"@astryx.table.noData":{defaultMessage:`No data`,description:`Fallback empty-state text in the table body when there are zero rows. Neutral tone (not error-y); consumers commonly override with something specific like "No results".`},"@astryx.table.filter.allPlaceholder":{defaultMessage:`All`,description:`Placeholder on a per-column filter dropdown when nothing is selected, meaning "no filter — all rows match". Determiner form (as in "all values"), not the pronoun.`},"@astryx.table.filter.reset":{defaultMessage:`Reset`,description:`Button label inside a table's filter panel/popover; clears pending filter values back to defaults. Imperative verb.`},"@astryx.table.filter.apply":{defaultMessage:`Apply`,description:"Primary button label inside a table's filter panel/popover; commits pending filter values. Imperative verb; pairs with `Reset`."},"@astryx.table.rowStatus.columnHeader":{defaultMessage:`Row status`,description:`Screen-reader-only column header for the narrow status-indicator gutter a Table gains from useTableRowStatus. Sighted users see a blank gutter; assistive tech announces this as the column name.`},"@astryx.table.selection.selectAllRows":{defaultMessage:`Select all rows`,description:`Aria label for the "select all rows" checkbox in a Table header.`},"@astryx.table.selection.selectRow":{defaultMessage:`Select row`,description:`Aria label for the "select row" checkbox on a Table row.`},"@astryx.table.selection.selectRowNamed":{defaultMessage:`Select {label}`,description:`Aria label for a Table row's selection checkbox when a per-row label is available (via getRowLabel). \`label\` is the row's human-readable identity, e.g. "Alice".`},"@astryx.table.sort.ascending":{defaultMessage:`Sort ascending`,description:"Screen-reader-only label on a column header button that will sort the column ascending. Part of a set with `sort.descending` and `sort.clear` — keep parallel."},"@astryx.table.sort.descending":{defaultMessage:`Sort descending`,description:"Screen-reader-only label on a column header button that will sort the column descending. Part of a set with `sort.ascending` and `sort.clear`."},"@astryx.table.sort.clear":{defaultMessage:`Clear sort`,description:`Screen-reader-only label on a column header button that will remove the current sort. "Clear" here means remove, not transparent. Part of the sort set.`},"@astryx.table.sort.direction.ascending":{defaultMessage:`ascending`,description:"Localized direction word interpolated as `direction` into @astryx.table.sort.sortedBy and @astryx.table.sort.sortedByWithPriority."},"@astryx.table.sort.direction.descending":{defaultMessage:`descending`,description:"Localized direction word interpolated as `direction` into @astryx.table.sort.sortedBy and @astryx.table.sort.sortedByWithPriority."},"@astryx.table.sort.sortBy":{defaultMessage:`Sort by {label}`,description:"Aria label for a sortable Table header button when the column is unsorted. `label` is the column header text."},"@astryx.table.sort.sortedBy":{defaultMessage:`Sort by {label}, sorted {direction}`,description:"Aria label for a sorted Table header button. `direction` is the localized direction word from @astryx.table.sort.direction.*."},"@astryx.table.sort.sortedByWithPriority":{defaultMessage:`Sort by {label}, sorted {direction}, priority {rank, number} of {total, number}`,description:"Aria label for a sorted Table header button in multi-sort. `rank` is the 1-based position of this column in the sort order; `total` is the number of sorted columns."},"@astryx.toast.dismiss":{defaultMessage:`Dismiss notification`,description:"Screen-reader-only label on the X button of a Toast (transient notification popup). Distinct from `banner.dismiss` (persistent banner)."},"@astryx.toast.viewport":{defaultMessage:`Notifications`,description:`Screen-reader-only accessible name for the invisible landmark region hosting the stack of Toast popups (usually pinned to a screen corner).`},"@astryx.tokenizer.clearAll":{defaultMessage:`Clear all`,description:`Label on the "×" button that removes every token/chip from a Tokenizer input. Imperative verb + determiner "all"; short.`},"@astryx.topNav.heading.openMenu":{defaultMessage:`Open menu`,description:"Screen-reader-only label on the `⋯` overflow button in a TopNav section heading. Kept separate from `sideNav.heading.openMenu` so translations may diverge."},"@astryx.topNav.landmarkLabel":{defaultMessage:`Top navigation`,description:`Default accessible name (aria-label) for the <nav> landmark rendered by TopNav when no label is provided.`},"@astryx.treeList.toggleChildren":{defaultMessage:`Toggle children`,description:`"Children" = child nodes in the tree, not human children. Screen-reader-only label on the chevron next to a TreeList item that has children — toggles the sub-list.`},"@astryx.typeahead.emptySearchResults":{defaultMessage:`No results found`,description:`Fallback empty-state message inside a Typeahead's suggestion popover when the current query has no matches. Neutral tone (not error-y).`},"@astryx.typeahead.loading":{defaultMessage:`Loading`,description:`Screen-reader-only name for a spinner shown inside a Typeahead dropdown while suggestions are being fetched. Present-progressive form.`},"@astryx.typeahead.searchResults":{defaultMessage:`Search results`,description:`Screen-reader-only accessible name for the list of suggestions inside a Typeahead dropdown.`},"@astryx.typeahead.clearSelection":{defaultMessage:`Clear selection`,description:`"Selection" = the chosen value (not highlighted text). Screen-reader-only label on the X that clears the currently-selected value from a Typeahead.`},"@astryx.breadcrumbs.label":{defaultMessage:`Breadcrumb`,description:"Screen-reader-only fallback name for the breadcrumb trail (e.g. `Home > Section > Page`). Singular in English per ARIA convention; plural is fine if natural in your locale."},"@astryx.chat.composer.placeholder":{defaultMessage:`Type a message…`,description:"Grey placeholder text inside the empty chat composer textarea. Imperative verb; trailing `…` is one character."},"@astryx.chat.composerDrawer.label":{defaultMessage:`Items`,description:`Fallback aria label for the ChatComposerDrawer — a horizontal list of attachment/tool chips. Consumers usually override with "Attachments", "Tools", etc.`},"@astryx.chat.composerInput.label":{defaultMessage:`Message input`,description:`Screen-reader-only accessible name for the chat composer textarea. Reorder freely if your language uses one word for "message field".`},"@astryx.chat.speechRecognition.noSpeechDetected":{defaultMessage:`No speech was detected.`,description:`Full-sentence error shown inline in the chat composer after voice input captured silence. Soft-error tone (not alarming); keep terminal period.`},"@astryx.commandPalette.label":{defaultMessage:`Command palette`,description:`Screen-reader-only fallback name for a keyboard-driven command menu (usually opened with Cmd/Ctrl-K). If unfamiliar, prefer a natural equivalent like "quick actions".`},"@astryx.commandPalette.input.placeholder":{defaultMessage:`Search…`,description:"Grey placeholder inside the CommandPalette's search input. Imperative verb; trailing `…` is one character."},"@astryx.commandPalette.list.label":{defaultMessage:`Commands`,description:`"Command" = an app action a user can invoke (metaphor from CLI), not a Unix command. Screen-reader-only name for the matching-commands list.`},"@astryx.contextMenu.label":{defaultMessage:`Context menu`,description:`Screen-reader-only fallback name for the right-click / long-press popup menu. "Context" = context-specific to the activated element, not linguistic context.`},"@astryx.dateInput.placeholder":{defaultMessage:`Select a date`,description:`Grey placeholder inside an empty DateInput field. "Date" = calendar date, not romantic or fruit. Imperative verb.`},"@astryx.dateInput.dialogLabel":{defaultMessage:`Choose date`,description:`Screen-reader-only accessible name for the popover dialog opened from a DateInput's calendar toggle. Imperative verb + noun.`},"@astryx.dateInput.closeCalendar":{defaultMessage:`Close calendar`,description:"Screen-reader-only label on the X inside the DateInput calendar popover (dismisses the popover). Distinct from `dateInput.toggleCalendarClose`, which labels the outer toggle."},"@astryx.dateInput.openCalendar":{defaultMessage:`Open calendar`,description:`Aria label for the DateInput / DateRangeInput / DateTimeInput calendar toggle button when the popover is closed.`},"@astryx.dateInput.toggleCalendarClose":{defaultMessage:`Close calendar`,description:`Aria label for the DateInput / DateRangeInput / DateTimeInput calendar toggle button when the popover is open. Distinct from closeCalendar (which labels the X inside the popover) so translators can differentiate the toggle vs the close-X UI.`},"@astryx.dateInput.clear":{defaultMessage:`Clear {label}`,description:"Aria label for the clear-value button in DateInput / DateRangeInput / DateTimeInput. `{label}` is the field's own label so screen readers announce e.g. 'Clear Start date'."},"@astryx.dateInput.invalidDate":{defaultMessage:`Invalid date`,description:`Screen-reader-only live-region alert in DateInput / DateTimeInput when the typed date cannot be parsed. The field silently reverts on blur, so this is the only rejection feedback a screen-reader user gets.`},"@astryx.dateInput.resetPicking":{defaultMessage:`Reset`,description:`Ghost button in the mobile date picker's header, at the trailing corner beside the month arrows. Removes the chosen date AND returns the calendar to the current month — it undoes the picking done so far and puts the picker back to how it opens, so prefer a word covering both, not one that only means emptying a field. Not cancel: the picker stays open afterwards and nothing is dismissed. Keep it short; it shares one line with the month title and two arrows.`},"@astryx.dateInput.savePicking":{defaultMessage:`Save`,description:`Full-width primary button that closes the mobile date picker, on the calendar. The date is already committed by the tap that chose it, so this only dismisses — but it is worded as saving because that is how the action reads to someone finishing a form. Use the word your platform uses for accepting and closing a sheet.`},"@astryx.dateInput.doneChoosingMonth":{defaultMessage:`Done`,description:`Full-width button under the month and year wheels in the mobile date picker. It does NOT close the picker — it returns to the calendar, having set the month. Word it as finishing this step, not as finishing the whole task; the calendar's own button is the one that closes.`},"@astryx.dateInput.chooseMonthYear":{defaultMessage:`{monthYear}, Choose month and year`,description:`Accessible name for the mobile date picker's header button, which swaps the calendar for month and year wheels. {monthYear} is the currently shown month and year, already localized (e.g. "March 2026"). The whole label is one string so the separator and word order can change per locale.`},"@astryx.dateInput.monthWheel":{defaultMessage:`Month`,description:`Accessible name for the scrollable month column in the mobile date picker. Single word; a calendar month, not a duration.`},"@astryx.dateInput.yearWheel":{defaultMessage:`Year`,description:`Accessible name for the scrollable year column in the mobile date picker. Single word; a calendar year, not a duration.`},"@astryx.dateTimeInput.timeHint12h":{defaultMessage:`e.g., 2:30 PM`,description:`Placeholder hint shown in the DateTimeInput time field when focused and empty with 12-hour format. Gives an example of expected input format.`},"@astryx.dateTimeInput.timeHint24h":{defaultMessage:`e.g., 14:30`,description:`Placeholder hint shown in the DateTimeInput time field when focused and empty with 24-hour format. Gives an example of expected input format.`},"@astryx.dateTimeInput.timeSuffix":{defaultMessage:`{label} time`,description:'Screen-reader-only accessible name for the time-of-day slot in a DateTimeInput. Example: `Start date time`; reorder freely (e.g. "time of {label}").'},"@astryx.dateTimeInput.timeOptionsLabel":{defaultMessage:`{label} options`,description:"Screen-reader-only accessible name for the list of preset times that drops down from a DateTimeInput's time slot. `{label}` is the accessible name of the time field itself, already ending in the word for time — example: `Meeting time options`. Plural: the list holds every selectable time."},"@astryx.dateRangeInput.placeholder":{defaultMessage:`Select date range`,description:`Grey placeholder inside an empty DateRangeInput field. Represents picking a start–end date pair. Imperative verb.`},"@astryx.dateRangeInput.dialogLabel":{defaultMessage:`Choose date range`,description:`Screen-reader-only accessible name for the popover dialog opened from a DateRangeInput. Imperative verb + noun phrase.`},"@astryx.dateTimeInput.placeholder":{defaultMessage:`Select a date`,description:`Grey placeholder inside an empty DateTimeInput field. Note: the English says only "date" though the field is date+time — do not add "and time" unless natural.`},"@astryx.dateTimeInput.dialogLabel":{defaultMessage:`Choose date and time`,description:`Screen-reader-only accessible name for the DateTimeInput picker dialog. On desktop this labels the date calendar popover inside the date+time field; on touch devices it labels the full Date/Time bottom sheet.`},"@astryx.dateTimeInput.pickerMode":{defaultMessage:`Date/time section`,description:`Screen-reader-only label for the segmented Date/Time switch at the top of the mobile DateTimeInput bottom sheet.`},"@astryx.dateTimeInput.dateTab":{defaultMessage:`Date`,description:`Visible label for the Date segment in the mobile DateTimeInput bottom sheet.`},"@astryx.dateTimeInput.timeTab":{defaultMessage:`Time`,description:`Visible label for the Time segment in the mobile DateTimeInput bottom sheet.`},"@astryx.dateTimeInput.openTimePicker":{defaultMessage:`Open {label}`,description:"Aria label for the clock button in the mobile DateTimeInput closed time segment. `{label}` is the accessible name of the time input, for example `Meeting time`."},"@astryx.dateTimeInput.saveDatePicking":{defaultMessage:`Save date`,description:`Primary button at the bottom of the Date panel in the mobile DateTimeInput bottom sheet. It does not close the sheet; it accepts the date step and moves to the Time panel. Use sentence case in English and title case only when appropriate for the locale.`},"@astryx.dateTimeInput.hourWheel":{defaultMessage:`Hour`,description:`Accessible name for the hour wheel in the mobile DateTimeInput bottom sheet.`},"@astryx.dateTimeInput.minuteWheel":{defaultMessage:`Minute`,description:`Accessible name for the minute wheel in the mobile DateTimeInput bottom sheet.`},"@astryx.dateTimeInput.secondWheel":{defaultMessage:`Second`,description:`Accessible name for the optional seconds wheel in the mobile DateTimeInput bottom sheet.`},"@astryx.dateTimeInput.meridiemWheel":{defaultMessage:`AM/PM`,description:`Accessible name for the AM/PM wheel in the mobile DateTimeInput bottom sheet when using 12-hour time.`},"@astryx.dateTimeInput.meridiemAM":{defaultMessage:`AM`,description:`Label for the morning half of the AM/PM wheel in the mobile DateTimeInput bottom sheet. Use the locale's concise ante-meridiem marker.`},"@astryx.dateTimeInput.meridiemPM":{defaultMessage:`PM`,description:`Label for the afternoon/evening half of the AM/PM wheel in the mobile DateTimeInput bottom sheet. Use the locale's concise post-meridiem marker.`},"@astryx.link.newTab":{defaultMessage:`(opens in new tab)`,description:"Visually-hidden (screen-reader-only) suffix appended to a Link's accessible name when it opens in a new tab. Example: `Documentation (opens in new tab)`."},"@astryx.mobileNav.toggle.open":{defaultMessage:`Open navigation`,description:"Screen-reader-only label on the hamburger button that opens the MobileNav overlay (rendered when the overlay is closed). Pairs with `mobileNav.closeNavigation`."},"@astryx.moreMenu.label":{defaultMessage:`More options`,description:"Screen-reader-only name for the small `⋯` (three-dots) overflow button that opens a menu of additional actions. Very short — sits on a tiny icon button."},"@astryx.multiSelector.selectPlaceholder":{defaultMessage:`Select…`,description:'Placeholder on an empty MultiSelector trigger button. Same English as `selector.placeholder` but a separate key — plural phrasing like "Choose items…" is fine.'},"@astryx.outline.label":{defaultMessage:`Table of contents`,description:"Screen-reader-only fallback name for a page's outline / table-of-contents sidebar (list of in-page headings). Rendered as `aria-label` on a `<nav>` landmark."},"@astryx.powersearch.label":{defaultMessage:`Search`,description:`Screen-reader-only accessible name for the PowerSearch input (a filter-builder). The visible placeholder is separate; noun form often reads better than the verb.`},"@astryx.powersearch.placeholder":{defaultMessage:`Search…`,description:"Grey placeholder text inside the empty PowerSearch input. Imperative verb; trailing `…` is one character."},"@astryx.resizable.collapsed":{defaultMessage:`Collapsed`,description:`aria-valuetext for the Resizable drag handle (role=separator) while its panel is collapsed to zero size. Replaces the numeric value announcement, since the numeric value is clamped to the minimum while collapsed. Adjective describing the panel state, not a verb/command.`},"@astryx.resizable.handle.label":{defaultMessage:`Resize handle`,description:`Screen-reader-only accessible name for the small draggable divider between two Resizable panels (users drag it to change the split ratio).`},"@astryx.selector.placeholder":{defaultMessage:`Select…`,description:"Placeholder text on an empty Selector trigger button (a dropdown). Imperative verb; trailing `…` is one character. Very short — appears on the button face."},"@astryx.sideNav.heading.dialogLabel":{defaultMessage:`Navigation menu`,description:`Screen-reader-only accessible name for the dropdown dialog opened from a SideNavHeading's overflow menu.`},"@astryx.table.pagination.label":{defaultMessage:`Table pagination`,description:"Screen-reader-only accessible name for a table's pagination `<nav>` (rendered below and/or above the table per the plugin's position config). Kept separate from `@astryx.pagination.label` so translations may diverge. When position='both', this string is interpolated as the {label} value into `@astryx.table.pagination.labelAbove`/`labelBelow` — keep it compatible with those suffix templates."},"@astryx.table.pagination.labelAbove":{defaultMessage:`{label} (top)`,description:"Accessible name for the pagination `<nav>` rendered above the table when position='both' renders two navs. `label` is the resolved base label (default \"Table pagination\" or consumer-supplied); the suffix keeps the two same-type landmarks distinguishable."},"@astryx.table.pagination.labelBelow":{defaultMessage:`{label} (bottom)`,description:"Accessible name for the pagination `<nav>` rendered below the table when position='both' renders two navs. `label` is the resolved base label (default \"Table pagination\" or consumer-supplied); the suffix keeps the two same-type landmarks distinguishable."},"@astryx.timeInput.placeholder":{defaultMessage:`Select a time`,description:`"Time" = clock time (HH:MM), not duration or era. Grey placeholder inside an empty TimeInput field; imperative verb.`},"@astryx.timeInput.invalidTime":{defaultMessage:`Invalid time`,description:`Screen-reader-only live-region alert in TimeInput / DateTimeInput when the typed time cannot be parsed. "Time" = clock time (HH:MM). The field silently reverts on blur, so this is the only rejection feedback a screen-reader user gets.`},"@astryx.timeInput.openPicker":{defaultMessage:`Open {label}`,description:"Aria label for the clock button that opens TimeInput's browser/OS time picker. `{label}` is the field label, for example `Start time`."},"@astryx.topNav.heading.dialogLabel":{defaultMessage:`Navigation menu`,description:`Screen-reader-only accessible name for the dropdown dialog opened from a TopNavHeading's overflow menu. Kept separate from the SideNav sibling.`},"@astryx.typeahead.searchPlaceholder":{defaultMessage:`Search…`,description:"Placeholder inside an empty Typeahead input (a search field that suggests results as the user types). Imperative verb; trailing `…` is one character."},"@astryx.banner.collapse":{defaultMessage:`Collapse`,description:'"Collapse" = fold up, not crumble. Aria label AND tooltip on the Banner expand/collapse toggle when currently expanded. Pairs with `banner.expand`.'},"@astryx.banner.expand":{defaultMessage:`Expand`,description:'"Expand" = reveal more, not grow physically. Aria label AND tooltip on the same toggle when currently collapsed. Pairs with `banner.collapse`.'},"@astryx.button.loading":{defaultMessage:`Loading`,description:'Screen-reader-only live-region announcement while a Button is in its loading state (spinner shown, action in flight). Progressive sense ("work in progress"), not a noun. Kept separate from `typeahead.loading` — translations may diverge.'},"@astryx.chatComposerDrawer.expand":{defaultMessage:`Expand {label}`,description:"Screen-reader-only label on the ChatComposerDrawer toggle when the drawer is collapsed. `{label}` is the drawer's visible name — example: `Expand Attachments`. Pairs with `collapse`."},"@astryx.chatComposerDrawer.collapse":{defaultMessage:`Collapse {label}`,description:"Screen-reader-only label on the ChatComposerDrawer toggle when the drawer is expanded. Example: `Collapse Attachments`. Pairs with `expand`."},"@astryx.chatDictationButton.startDictation":{defaultMessage:`Start dictation`,description:`Accessible label for the microphone button when idle (not listening).`},"@astryx.chatDictationButton.stopDictation":{defaultMessage:`Stop dictation`,description:`Accessible label for the microphone button when actively listening.`},"@astryx.chatLayout.newMessages":{defaultMessage:`New messages`,description:`Text on a floating pill at the bottom of a chat viewport when unseen messages arrive below the fold; clicking scrolls to bottom. Keep short — narrow pill.`},"@astryx.chatLayoutScrollButton.scrollToBottom":{defaultMessage:`Scroll to bottom`,description:`Visible tooltip AND screen-reader label for a small down-arrow button that scrolls the chat viewport to its latest message.`},"@astryx.chatMessage.messageFrom":{defaultMessage:`Message from {sender}`,description:"Screen-reader-only accessible name for a chat message when the sender name isn't visible. Example: `Message from Sarah`, `Message from Bot` — reorder freely."},"@astryx.chatSendButton.stop":{defaultMessage:`Stop`,description:"Button label that replaces `Send` on the chat send button while an AI response is streaming; clicking aborts generation. Short — appears on a small button."},"@astryx.chatSendButton.send":{defaultMessage:`Send`,description:"Primary button label on the chat submit button (paperplane icon). Imperative verb; pairs with `Stop`. Very short."},"@astryx.chatToolCalls.error":{defaultMessage:`Error: {message}`,description:`Screen-reader text for a tool call that failed. {message} is the error detail.`},"@astryx.chatToolCalls.status.pending":{defaultMessage:`Pending`,description:`Screen-reader-only status label for a tool call that is waiting to begin.`},"@astryx.chatToolCalls.status.running":{defaultMessage:`Running`,description:`Screen-reader-only status label for a tool call that is currently running.`},"@astryx.chatToolCalls.status.complete":{defaultMessage:`Complete`,description:`Screen-reader-only status label for a tool call that completed successfully.`},"@astryx.chatToolCalls.status.error":{defaultMessage:`Failed`,description:`Screen-reader-only status label for a failed tool call when no error detail is supplied.`},"@astryx.chatToolCalls.groupLabel":{defaultMessage:`{count} tool calls`,description:`Summary label shown in the group header when multiple tool calls are expanded. {count} is the number of calls.`},"@astryx.chatTriggerMenu.suggestions":{defaultMessage:`Suggestions`,description:"Screen-reader-only fallback label for the popover listbox opened by a trigger character (`@`, `/`) in the chat composer when the trigger provides no specific label."},"@astryx.citation.label":{defaultMessage:`Citation {number}: {title}`,description:"Screen-reader-only accessible name for a Citation chip (a small numbered link to a source). Example: `Citation 1: OpenAI research paper`. Reorder freely."},"@astryx.codeBlock.copied":{defaultMessage:`Copied`,description:'Screen-reader-only label on the CodeBlock copy button for ~2s after a successful copy. Past-participle ("has been copied"); pairs with `codeBlock.copyCode`.'},"@astryx.codeBlock.copyCode":{defaultMessage:`Copy code`,description:'"Code" = source code. Aria label AND tooltip on the CodeBlock copy button in its default state. Pairs with `codeBlock.copied` (post-click state).'},"@astryx.codeBlock.code":{defaultMessage:`Code`,description:`Screen-reader-only fallback name for a code-snippet scroll container when the code's language is unknown. "Code" = source code, not secret code or code of conduct.`},"@astryx.field.optional":{defaultMessage:`Optional`,description:`Visible indicator shown next to a form field's label when the field is optional (isOptional). Mutually exclusive with the required indicator. Very short — appears inline after the label text.`},"@astryx.field.required":{defaultMessage:`Required`,description:`Visible indicator shown next to a form field's label when the field must be filled in (isRequired). Mutually exclusive with the optional indicator. Very short — appears inline after the label text.`},"@astryx.fileInput.clearLabel":{defaultMessage:`Clear {label}`,description:"Screen-reader-only label on the X that removes the selected file from a FileInput. Example: `Clear Attachment`, `Clear Résumé`."},"@astryx.fileInput.dropHint":{defaultMessage:`Drop files here`,description:`Text shown in the dropzone area when a user is dragging files over the FileInput.`},"@astryx.fileInput.errorInvalidType":{defaultMessage:`"{fileName}" is not an accepted file type`,description:`Validation error shown when a selected file does not match the accepted types.`},"@astryx.fileInput.errorMaxFiles":{defaultMessage:`Maximum {maxFiles} files allowed`,description:`Validation error shown when the number of selected files exceeds the maximum.`},"@astryx.fileInput.errorMaxSize":{defaultMessage:`"{fileName}" exceeds {maxSize} limit`,description:`Validation error shown when a selected file exceeds the maximum size. {maxSize} is a formatted size string like "2.0 MB".`},"@astryx.fileInput.fileSelected":{defaultMessage:`1 file selected: {fileName}`,description:`Live-region announcement when a single file is successfully selected.`},"@astryx.fileInput.filesSelected":{defaultMessage:`{count} files selected`,description:`Live-region announcement when multiple files are successfully selected.`},"@astryx.fileInput.placeholder":{defaultMessage:`Choose file`,description:`Default placeholder text shown when no file is selected in a single-file FileInput.`},"@astryx.fileInput.placeholderMultiple":{defaultMessage:`Choose files`,description:`Default placeholder text shown when no files are selected in a multi-file FileInput.`},"@astryx.fileInput.required":{defaultMessage:`Required`,description:'Screen-reader-only description on the FileInput trigger indicating the field must be filled in. Mirrors the visible `Required` indicator next to the field label; conveyed via description because aria-required is not supported on role="button".'},"@astryx.fileInput.triggerWithFiles":{defaultMessage:`{label}, {fileNames}`,description:"Accessible name for a FileInput trigger that has files attached, composing the field label with the selected filenames. Example: `Attachments, report.pdf, notes.txt`."},"@astryx.keyboardHint.toNavigate":{defaultMessage:`to navigate`,description:"Trailing text in the keyboard-hint badge, shown after arrow-key icons — reads as `← → to navigate`. Lowercase sentence fragment completing the visual phrase; the badge is aria-hidden, so this is for sighted users only."},"@astryx.lightbox.mediaViewer":{defaultMessage:`Media viewer`,description:`Screen-reader-only fallback name for the Lightbox dialog when the current media item has no alt text. Should rarely render — consumers should provide alt.`},"@astryx.lightbox.zoom":{defaultMessage:`Zoom`,description:`Screen-reader-only label on the Lightbox image acting as a zoom toggle button (aria-pressed reflects zoomed state). Verb ("to zoom"), very short.`},"@astryx.lightbox.zoomedIn":{defaultMessage:`Zoomed in, use arrow keys to pan`,description:"Polite screen-reader announcement after zooming into a Lightbox image, including a hint that arrow keys pan while zoomed. Pairs with `lightbox.zoomedOut`."},"@astryx.lightbox.zoomedOut":{defaultMessage:`Zoomed out`,description:"Polite screen-reader announcement after zooming back out of a Lightbox image. Pairs with `lightbox.zoomedIn`."},"@astryx.metadataList.showMore":{defaultMessage:`Show more`,description:"Button label under a MetadataList that reveals items hidden beyond the configured maximum. Toggles with `metadataList.showLess` — keep the pair parallel in your language."},"@astryx.metadataList.showLess":{defaultMessage:`Show less`,description:"Button label under a MetadataList that re-hides the extra items revealed by `metadataList.showMore`. Keep the pair parallel."},"@astryx.mobileNav.navigation":{defaultMessage:`Navigation`,description:`Screen-reader-only fallback name for the MobileNav overlay dialog when no explicit label was passed.`},"@astryx.multiSelector.clearAll":{defaultMessage:`Clear all {label}`,description:"Screen-reader-only label on the X that clears every selected value from a MultiSelector. Example: `Clear all Countries`. `{label}` is typically already plural in English."},"@astryx.input.readOnly":{defaultMessage:`Read only`,description:`Screen-reader-only description appended to a read-only form control when the platform does not expose aria-readonly for that control's host element. Short state label, not an instruction.`},"@astryx.input.statusButton.error":{defaultMessage:`Error details`,description:`Accessible name for the focusable status icon button inside an input when statusVariant is 'tooltip' and the status type is error. Activating or focusing the button reveals the error message in a tooltip. Keep it short — it labels an icon-only button.`},"@astryx.input.statusButton.warning":{defaultMessage:`Warning details`,description:`Accessible name for the focusable status icon button inside an input when statusVariant is 'tooltip' and the status type is warning. Activating or focusing the button reveals the warning message in a tooltip.`},"@astryx.input.statusButton.success":{defaultMessage:`Success details`,description:`Accessible name for the focusable status icon button inside an input when statusVariant is 'tooltip' and the status type is success. Activating or focusing the button reveals the success message in a tooltip.`},"@astryx.numberInput.clearLabel":{defaultMessage:`Clear {label}`,description:"Screen-reader-only label on the X that clears the value from a NumberInput. Example: `Clear Age`, `Clear Quantity`."},"@astryx.numberInput.decrementLabel":{defaultMessage:`Decrement {label}`,description:"Accessible label for the NumberInput button that decreases the value by one configured step. Example: `Decrement Quantity`."},"@astryx.numberInput.incrementLabel":{defaultMessage:`Increment {label}`,description:"Accessible label for the NumberInput button that increases the value by one configured step. Example: `Increment Quantity`."},"@astryx.selector.clearLabel":{defaultMessage:`Clear {label}`,description:"Screen-reader-only label on the X that clears the selected value from a Selector. `{label}` is the selector's visible label — example: `Clear Country`."},"@astryx.sideNavCollapseButton.expandSidebar":{defaultMessage:`Expand sidebar`,description:"Aria label AND tooltip on the SideNav collapse/expand toggle when the sidebar is currently collapsed (clicking expands it). Pairs with `collapseSidebar`."},"@astryx.sideNavCollapseButton.collapseSidebar":{defaultMessage:`Collapse sidebar`,description:"Aria label AND tooltip on the same toggle when the sidebar is currently expanded (clicking collapses it). Pairs with `expandSidebar`."},"@astryx.sideNavItem.expand":{defaultMessage:`Expand {label}`,description:"Screen-reader-only label on the chevron next to a SideNav item with children when the group is collapsed. Example: `Expand Settings`. Pairs with `sideNavItem.collapse`."},"@astryx.sideNavItem.collapse":{defaultMessage:`Collapse {label}`,description:"Screen-reader-only label on the same chevron when the group is expanded. Example: `Collapse Settings`. Pairs with `sideNavItem.expand`."},"@astryx.sideNavItem.submenuLabel":{defaultMessage:`{label} submenu`,description:"Accessible name for the flyout dialog that opens from a collapsed (icon-only) SideNav item to show its sub-items. {label} is the parent item's label. Example: `Settings submenu`."},"@astryx.tableFiltering.filterByColumn":{defaultMessage:`Filter {header}`,description:"Triple-use string on per-column filter controls: visible label, placeholder, AND aria label. `{header}` is the column header — example: `Filter Name`. Keep short."},"@astryx.tableGroupedRows.expandGroup":{defaultMessage:`Expand group {groupKey}`,description:"Screen-reader-only label on the chevron next to a grouped table's group header when collapsed. Example: `Expand group Q1 2024`. Pairs with `collapseGroup`."},"@astryx.tableGroupedRows.collapseGroup":{defaultMessage:`Collapse group {groupKey}`,description:"Screen-reader-only label on the same chevron when the group is expanded. Example: `Collapse group Q1 2024`. Pairs with `expandGroup`."},"@astryx.tableRowExpansion.collapseRow":{defaultMessage:`Collapse row`,description:`Screen-reader-only label on the row-expand chevron when the row is currently expanded. Part of the four-way expand/collapse set.`},"@astryx.tableRowExpansion.expandRow":{defaultMessage:`Expand row`,description:"Screen-reader-only label on the row-expand chevron when the row is currently collapsed. Part of a four-way set with `collapseRow`, `expandAllRows`, `collapseAllRows`."},"@astryx.tableRowExpansion.columnHeader":{defaultMessage:`Row expansion`,description:`Screen-reader-only header for the leading column that holds the per-row expand/collapse chevrons. The column shows no visible label.`},"@astryx.tableRowExpansion.collapseAllRows":{defaultMessage:`Collapse all rows`,description:`Screen-reader-only label on the same header button when every row is expanded. Part of the four-way set.`},"@astryx.tableRowExpansion.expandAllRows":{defaultMessage:`Expand all rows`,description:`Screen-reader-only label on the header expand-all/collapse-all button when at least one row is collapsed (clicking expands every expandable row). Part of the four-way set.`},"@astryx.stepper.label":{defaultMessage:`Progress`,description:"Screen-reader-only fallback name for the Stepper's ordered list of steps, describing the sequence as a whole (e.g. `Progress`). Used as the aria-label when the consumer does not pass a `label`. Singular per ARIA convention."},"@astryx.stepper.previousStep":{defaultMessage:`Previous step`,description:`Accessible name and tooltip for the button that moves a Stepper back one step. Only rendered when the stepper is narrow enough that step labels have collapsed, and only when the stepper is navigable at all.`},"@astryx.stepper.nextStep":{defaultMessage:`Next step`,description:"Accessible name and tooltip for the button that moves a Stepper forward one step. Counterpart to `stepper.previousStep`; keep the two parallel."},"@astryx.step.goToStep":{defaultMessage:`Go to step {stepNumber, number}: {label}`,description:`Accessible name for a clickable step in the Stepper. {stepNumber} is the 1-based position, {label} is the step's visible label.`},"@astryx.step.goToStepWithStatus":{defaultMessage:`Go to step {stepNumber, number}: {label}, {status}`,description:"Accessible name for a clickable Stepper step that also carries a status. {status} is one of the translated `step.status.*` words (completed/warning/error). Keep the pattern parallel to `step.goToStep`."},"@astryx.step.optional":{defaultMessage:`Optional`,description:`Visible indicator appended after a Stepper step's label when the step is optional (isOptional). Very short; appears inline after the label text.`},"@astryx.step.status.completed":{defaultMessage:`completed`,description:`Screen-reader-only status word rendered next to a Stepper step label when the step is done (either progress-completed or status=success). Lowercase adjective; it is read mid-sentence after the step label.`},"@astryx.step.status.warning":{defaultMessage:`warning`,description:`Screen-reader-only status word rendered next to a Stepper step label when status=warning. Lowercase noun/adjective; read mid-sentence after the step label.`},"@astryx.step.status.error":{defaultMessage:`error`,description:`Screen-reader-only status word rendered next to a Stepper step label when status=error. Lowercase noun; read mid-sentence after the step label.`},"@astryx.tableTree.collapseRow":{defaultMessage:`Collapse row`,description:`Aria label for the Table tree-data expander chevron when the row is currently expanded.`},"@astryx.tableTree.expandRow":{defaultMessage:`Expand row`,description:`Aria label for the Table tree-data expander chevron when the row is currently collapsed.`},"@astryx.tableTree.collapseAllRows":{defaultMessage:`Collapse all rows`,description:`Aria label for the Table tree-data header toggle when all rows are expanded and clicking it collapses them.`},"@astryx.tableTree.expandAllRows":{defaultMessage:`Expand all rows`,description:`Aria label for the Table tree-data header toggle when rows are collapsed and clicking it expands them.`},"@astryx.textArea.charactersRemaining":{defaultMessage:`{count, number} {count, plural, one {character} other {characters}} remaining`,description:"Screen-reader-only announcement of how many characters the user can still type before hitting a TextArea's maxLength. Announced politely as the count nears the limit. `{count}` is the number remaining — example: `12 characters remaining`."},"@astryx.textArea.charactersOverLimit":{defaultMessage:`{count, number} {count, plural, one {character} other {characters}} over the limit`,description:"Screen-reader-only assertive announcement when the user has typed past a TextArea's maxLength. `{count}` is how many characters over — example: `3 characters over the limit`."},"@astryx.textInput.clearLabel":{defaultMessage:`Clear {label}`,description:"Screen-reader-only label on the X that clears the value from a TextInput. Example: `Clear Email`, `Clear Name`."},"@astryx.thumbnail.remove":{defaultMessage:`Remove {accessibleName}`,description:'Screen-reader-only label on the "×" on a Thumbnail (image preview chip). `{accessibleName}` is the thumbnail\'s name — example: `Remove profile.jpg`.'},"@astryx.thumbnail.open":{defaultMessage:`Open {accessibleName}`,description:'"Open" = launch/reveal (not "unfold" or the adjective). Screen-reader-only name on a clickable Thumbnail — example: `Open Sunset photo`.'},"@astryx.thumbnail.fallbackName":{defaultMessage:`Thumbnail`,description:"Generic screen-reader name for a Thumbnail (image preview) that has no `alt` or `label`. Last-resort fallback so the control is never nameless; prefer a real name via `alt` or `label`."},"@astryx.timeInput.clearLabel":{defaultMessage:`Clear {label}`,description:"Screen-reader-only label on the X that clears the value from a TimeInput. Example: `Clear Start time`."},"@astryx.timestamp.copyValue":{defaultMessage:`Copy {value}`,description:"Aria label on a Timestamp copyable-hover-card row's copy button, in its default state. `value` is the formatted instant that row shows (e.g. `Copy February 19, 2026 at 5:00:00 PM UTC`). Imperative verb. Pairs with `timestamp.copied` (post-click state)."},"@astryx.timestamp.copy":{defaultMessage:`Copy`,description:"Short label shown in the tooltip on a Timestamp copyable-hover-card row's copy button (hover/focus), in its default state. Imperative verb. Pairs with `timestamp.copied` (post-click state). The full `copyValue` string remains the button's aria-label for assistive tech."},"@astryx.timestamp.copied":{defaultMessage:`Copied`,description:'Aria label on a Timestamp copy button for ~1.5s after a successful copy, and the text announced to a polite live region. Past-participle ("has been copied"); pairs with `timestamp.copyValue`.'},"@astryx.timestamp.detailsLabel":{defaultMessage:`Timestamp details`,description:`Accessible name for the Timestamp copyable hover card popup, which lists the instant in the configured time zones/formats with a copy button per row.`},"@astryx.token.remove":{defaultMessage:`Remove {label}`,description:'Screen-reader-only label on the "×" on an individual Token/chip. Example: `Remove John Smith`, `Remove Active`. Imperative verb.'},"@astryx.commandPalette.footer.navigate":{defaultMessage:`Navigate`,description:`Keyboard hint in the CommandPalette footer, paired with up/down arrow key icons. Tells users arrow keys move between items.`},"@astryx.commandPalette.footer.select":{defaultMessage:`Select`,description:`Keyboard hint in the CommandPalette footer, paired with the Enter key icon. Tells users Enter activates the highlighted item.`},"@astryx.commandPalette.footer.close":{defaultMessage:`Close`,description:`Keyboard hint in the CommandPalette footer, paired with the Escape key icon. Tells users Escape dismisses the palette.`},"@astryx.multiSelector.selectionCleared":{defaultMessage:`Selection cleared`,description:`Polite screen-reader announcement after the last selected option in a MultiSelector is deselected. Live-region text, never shown on screen; past participle ("has been cleared").`},"@astryx.multiSelector.allSelected":{defaultMessage:`All selected`,description:`Polite screen-reader announcement after every option in a MultiSelector becomes selected. Live-region text, never shown on screen; "all" is a determiner (as in "all the options").`},"@astryx.multiSelector.selectionCount":{defaultMessage:`{count, number} of {total, number} selected`,description:"Polite screen-reader announcement of how many MultiSelector options are selected out of the total, spoken after each toggle. Live-region text, never shown on screen; example: `3 of 12 selected`."},"@astryx.multiSelector.emptySearchResults":{defaultMessage:`No results found`,description:`Shown in a MultiSelector's dropdown panel when the search query matches no options, and announced in a polite live region at the same time. Short; neutral tone (not error-y).`},"@astryx.multiSelector.resultCount":{defaultMessage:`{count, number} {count, plural, one {result} other {results}}`,description:"Polite screen-reader announcement of how many MultiSelector options match the search query, spoken as the user types. Live-region text, never shown on screen; example: `1 result`, `12 results`."},"@astryx.selector.emptySearchResults":{defaultMessage:`No results found`,description:`Shown in a Selector's dropdown panel when the search query matches no options, and announced in a polite live region at the same time. Short; neutral tone (not error-y).`},"@astryx.selector.resultCount":{defaultMessage:`{count, number} {count, plural, one {result} other {results}}`,description:"Polite screen-reader announcement of how many Selector options match the search query, spoken as the user types. Live-region text, never shown on screen; example: `1 result`, `12 results`."},"@astryx.typeahead.resultCount":{defaultMessage:`{count, number} {count, plural, one {result} other {results}}`,description:"Polite screen-reader announcement of how many suggestions a Typeahead search returned. Live-region text, never shown on screen; example: `1 result`, `12 results`."},"@astryx.tokenizer.tokenAdded":{defaultMessage:`Added {label}`,description:"Polite screen-reader announcement after a token is added to a Tokenizer, either picked from the suggestions or newly created. Live-region text, never shown on screen; `{label}` is the token's visible text."},"@astryx.tokenizer.tokenRemoved":{defaultMessage:`Removed {label}`,description:"Polite screen-reader announcement after a token is removed from a Tokenizer, by its × button or by Backspace. Live-region text, never shown on screen; `{label}` is the token's visible text."},"@astryx.lightbox.imagePosition":{defaultMessage:`Image {index, number} of {total, number}`,description:"Polite screen-reader announcement when a Lightbox moves to a media item that has no alt text. Live-region text, never shown on screen; `{index}` is 1-based, example: `Image 3 of 12`."},"@astryx.lightbox.mediaPosition":{defaultMessage:`{alt}, {index, number} of {total, number}`,description:"Polite screen-reader announcement when a Lightbox moves to a media item that has alt text, composing that alt with the item's position. Live-region text, never shown on screen; example: `Sunset over the bay, 3 of 12`."},"@astryx.transferList.selectedLabel":{defaultMessage:`Selected`,description:`Default heading above the right-hand panel of a lab TransferList, which holds the options the user has chosen. Consumers usually override this with a domain noun (e.g. "Shown columns").`},"@astryx.transferList.availableLabel":{defaultMessage:`Available`,description:`Default heading above the left-hand panel of a lab TransferList, which holds the options not yet chosen. Consumers usually override this with a domain noun (e.g. "Hidden columns").`},"@astryx.transferList.ungroupedLabel":{defaultMessage:`Other`,description:"Heading for the bucket of available options that have no `group` set, shown only when some options are grouped and some are not so the ungrouped ones still have a heading."},"@astryx.transferList.searchPlaceholder":{defaultMessage:`Search…`,description:"Placeholder in the single search field that filters both panels of a lab TransferList. Same English as `selector.searchPlaceholder` but a separate key so it can be phrased for two lists."},"@astryx.transferList.searchLabel":{defaultMessage:`Search {label}`,description:'Screen-reader-only label on the search field of a lab TransferList, naming what is being searched. `{label}` is the component\'s own label (e.g. "Search Table columns").'},"@astryx.transferList.selectedEmpty":{defaultMessage:`No selected options`,description:`Message shown inside the selected panel of a lab TransferList when the user has chosen nothing yet.`},"@astryx.transferList.availableEmpty":{defaultMessage:`No available options`,description:`Message shown inside the available panel of a lab TransferList when every option has already been moved to the selected panel.`},"@astryx.transferList.noResults":{defaultMessage:`No results`,description:`Message shown inside either panel of a lab TransferList when the search query matches nothing in that panel.`},"@astryx.transferList.clear":{defaultMessage:`Clear`,description:`Label on the bulk action in a lab TransferList's selected-panel header that removes every option that is allowed to be removed. Locked options stay.`},"@astryx.transferList.addAll":{defaultMessage:`Add all`,description:`Label on the bulk action in a lab TransferList's available-panel header that moves every remaining option into the selected panel.`},"@astryx.transferList.addOption":{defaultMessage:`Add {label}`,description:'Accessible label on the per-row + button that moves one option into the selected panel of a lab TransferList. `{label}` is that option\'s visible text (e.g. "Add Owner").'},"@astryx.transferList.removeOption":{defaultMessage:`Remove {label}`,description:'Accessible label on the per-row × button that moves one option out of the selected panel of a lab TransferList. `{label}` is that option\'s visible text (e.g. "Remove Name").'},"@astryx.transferList.reorderOption":{defaultMessage:`Reorder {label}`,description:'Accessible label on the per-row drag handle that reorders one option within the selected panel of a lab TransferList. `{label}` is that option\'s visible text (e.g. "Reorder Name").'},"@astryx.transferList.transferDisabled":{defaultMessage:`{label} cannot be moved`,description:"Default tooltip explaining why a locked option in a lab TransferList cannot be transferred between panels. `{label}` is the option's visible text. Consumers may override per option."},"@astryx.transferList.reorderDisabled":{defaultMessage:`{label} cannot be reordered`,description:"Default tooltip explaining why a locked option in a lab TransferList cannot be moved within the selected panel. `{label}` is the option's visible text. Consumers may override per option."},"@astryx.transferList.reorderInstructions":{defaultMessage:`Press Space or Enter to pick up an item. Use Arrow Up, Arrow Down, Home, or End to move it. Press Space or Enter to drop, or Escape to cancel.`,description:`Screen-reader-only instructions describing the keyboard reorder contract, referenced by every drag handle in a lab TransferList. Never shown on screen. Name the actual keys your locale's users press.`},"@astryx.transferList.announceAdded":{defaultMessage:`{label} added. {count, number} {count, plural, one {item} other {items}} selected.`,description:"Polite screen-reader announcement after one option moves into the selected panel of a lab TransferList. Live-region text, never shown on screen; `{label}` is the option's visible text and `{count}` is the new selected total."},"@astryx.transferList.announceRemoved":{defaultMessage:`{label} removed. {count, number} {count, plural, one {item} other {items}} selected.`,description:"Polite screen-reader announcement after one option moves out of the selected panel of a lab TransferList. Live-region text, never shown on screen; `{label}` is the option's visible text and `{count}` is the new selected total."},"@astryx.transferList.announceBulkAdded":{defaultMessage:`{count, number} {count, plural, one {item} other {items}} added.`,description:"Polite screen-reader announcement after the Add all bulk action in a lab TransferList. Live-region text, never shown on screen; `{count}` is how many options moved."},"@astryx.transferList.announceBulkRemoved":{defaultMessage:`{count, number} {count, plural, one {item} other {items}} removed.`,description:"Polite screen-reader announcement after the Clear bulk action in a lab TransferList. Live-region text, never shown on screen; `{count}` is how many options moved."},"@astryx.transferList.announceGrabbed":{defaultMessage:`{label} picked up, position {position, number} of {total, number}. Use arrow keys to move, Space or Enter to drop, or Escape to cancel.`,description:"Polite screen-reader announcement when a lab TransferList row enters keyboard reorder mode. Live-region text, never shown on screen; `{position}` is 1-based within the selected panel."},"@astryx.transferList.announceMoveCancelled":{defaultMessage:`{label} move cancelled.`,description:`Polite screen-reader announcement when a lab TransferList reorder is abandoned with Escape or a cancelled pointer drag, restoring the original order. Live-region text, never shown on screen.`},"@astryx.transferList.announceDropped":{defaultMessage:`{label} dropped at position {position, number} of {total, number}.`,description:"Polite screen-reader announcement when a lab TransferList reorder commits at a new position. Live-region text, never shown on screen; `{position}` is 1-based within the selected panel."},"@astryx.transferList.announceReturned":{defaultMessage:`{label} returned to position {position, number}.`,description:"Polite screen-reader announcement when a lab TransferList pointer drag ends where it began, so the order did not change. Live-region text, never shown on screen; `{position}` is 1-based."},"@astryx.transferList.announceMovedToPosition":{defaultMessage:`{label}, position {position, number} of {total, number}.`,description:"Polite screen-reader announcement after each arrow-key step of an in-progress lab TransferList reorder. Live-region text, never shown on screen; `{position}` is 1-based within the selected panel."},"@astryx.transferList.announceSearchResults":{defaultMessage:`{count, number} {count, plural, one {item} other {items}} found.`,description:`Polite screen-reader announcement of how many options a lab TransferList search matched across both panels. Live-region text, never shown on screen.`},"@astryx.transferListSelector.apply":{defaultMessage:`Apply`,description:`Label on the button that commits the staged draft of a lab TransferListSelector and closes it. Only rendered in staged commit mode.`},"@astryx.transferListSelector.cancel":{defaultMessage:`Cancel`,description:`Label on the button that discards the staged draft of a lab TransferListSelector and closes it. Only rendered in staged commit mode.`},"@astryx.transferListSelector.triggerLabel":{defaultMessage:`{count, number} selected`,description:`Default summary on the closed trigger of a lab TransferListSelector, stating how many options are currently chosen. Consumers usually override this with a domain phrase (e.g. "7 columns").`}},Nn=new Map;function Pn(e,t){let n=`${t}::${e}`,r=Nn.get(n);return r===void 0&&(r=new jn(e,t),Nn.set(n,r)),r}function Fn(e){let t;try{t=new Intl.Locale(e).baseName}catch{t=e}let n=t.split(`-`),r=[];for(let e=n.length;e>0;e--)r.push(n.slice(0,e).join(`-`));return r}function In(e,t,n){let r={},i=Fn(e);if(n!==void 0){for(let e of i)if(n[e])for(let[t,i]of Object.entries(n[e]))r[t]===void 0&&i!==null&&(r[t]=i)}for(let e of i)if(t[e])for(let[n,i]of Object.entries(t[e]))r[n]===void 0&&i?.defaultMessage!==null&&(r[n]=i?.defaultMessage);return r}function Ln(e,t,n){let r=In(e,t,n);return(t,n)=>{let i=r[t]??Mn[t]?.defaultMessage;return i===void 0?(`${e}${t}`,`${t}${e}`,t):n===void 0?i:Pn(i,e).format(n)}}var Rn=(0,S.createContext)({locale:`en`,direction:`ltr`,messages:{},translate:Ln(`en`,{})});Rn.displayName=`InternationalizationContext`;function zn(){return(0,S.use)(Rn).translate}function Bn(e,t){if(!e&&!t)return;if(!e)return t;if(!t)return e;let n={};for(let[t,r]of Object.entries(e))n[t]={...r};for(let[e,r]of Object.entries(t))if(!n[e])n[e]={...r};else for(let[t,i]of Object.entries(r))n[e][t]={...n[e][t],...i};return n}var Vn={"color-scheme":`dark`,"--color-text-primary":`var(--color-on-dark)`,"--color-icon-primary":`var(--color-on-dark)`,"--color-accent":`var(--color-on-dark)`},Hn={"color-scheme":`light`,"--color-text-primary":`var(--color-on-light)`,"--color-icon-primary":`var(--color-on-light)`,"--color-accent":`var(--color-on-light)`};function Un(e){return Array.isArray(e)?`light-dark(${e[0]}, ${e[1]})`:e}function Wn(e,t,n){let r={...e===`dark`?Vn:Hn,...n?.tokens};if(t?.tokens)for(let[e,n]of Object.entries(t.tokens))n!==void 0&&(r[e]=Un(n));return{tokens:r,components:Bn(n?.components,t?.components)}}var Gn={[-5]:`--font-size-4xs`,[-4]:`--font-size-3xs`,[-3]:`--font-size-2xs`,[-2]:`--font-size-xs`,[-1]:`--font-size-sm`,0:`--font-size-base`,1:`--font-size-lg`,2:`--font-size-xl`,3:`--font-size-2xl`,4:`--font-size-3xl`,5:`--font-size-4xl`,6:`--font-size-5xl`},Kn={1:3,2:2,3:1,4:0,5:-1,6:-2},qn={body:0,large:1,label:0,code:0,supporting:-1,"display-1":6,"display-2":5,"display-3":4},Jn={1:`var(--font-weight-semibold)`,2:`var(--font-weight-semibold)`,3:`var(--font-weight-semibold)`,4:`var(--font-weight-semibold)`,5:`var(--font-weight-semibold)`,6:`var(--font-weight-semibold)`},Yn={body:`var(--font-weight-normal)`,large:`var(--font-weight-semibold)`,label:`var(--font-weight-medium)`,code:`var(--font-weight-normal)`,supporting:`var(--font-weight-normal)`,"display-1":`var(--font-weight-normal)`,"display-2":`var(--font-weight-normal)`,"display-3":`var(--font-weight-normal)`};function Xn(e,t,n){return Math.round(e*t**+n)}function Zn(e){return`${Math.round(e/16*1e4)/1e4}rem`}function Qn(e){return e<20?1.5:e<32?1.4:1.25}function $n(e){let t=e*Qn(e),n=Math.max(Math.round(t/4)*4,Math.ceil((e+4)/4)*4);return Math.round(n/e*1e4)/1e4}function er(e){let{base:t,ratio:n,weights:r}=e,i={},a={...Jn,...r?.heading},o={...Yn,...r?.text};for(let e=-5;e<=6;e++){let r=Xn(t,n,e);i[Gn[e]]=Zn(r)}for(let[e,r]of Object.entries(Kn)){let o=Number(e),s=$n(Xn(t,n,r));i[`--text-heading-${o}-size`]=`var(${Gn[r]})`,i[`--text-heading-${o}-weight`]=a[o],i[`--text-heading-${o}-leading`]=`${s}`}for(let[e,r]of Object.entries(qn)){let a=$n(Xn(t,n,r));i[`--text-${e}-size`]=`var(${Gn[r]})`,i[`--text-${e}-weight`]=o[e],i[`--text-${e}-leading`]=`${a}`}return i}var tr={body:`var(--font-family-body)`,large:`var(--font-family-body)`,label:`var(--font-family-body)`,code:`var(--font-family-code)`,supporting:`var(--font-family-body)`,"display-1":`var(--font-family-heading)`,"display-2":`var(--font-family-heading)`,"display-3":`var(--font-family-heading)`};function nr(e){let t={},n={};for(let e of[1,2,3,4,5,6])n[`level:${e}`]={fontFamily:`var(--font-family-heading)`,fontSize:`var(--text-heading-${e}-size)`,fontWeight:`var(--text-heading-${e}-weight)`,lineHeight:`var(--text-heading-${e}-leading)`};for(let e of[`display-1`,`display-2`,`display-3`])n[`type:${e}`]={fontFamily:`var(--font-family-heading)`,fontSize:`var(--text-${e}-size)`,lineHeight:`var(--text-${e}-leading)`};t.heading=n;let r={};for(let e of[`body`,`large`,`label`,`code`,`supporting`,`display-1`,`display-2`,`display-3`])r[`type:${e}`]={fontFamily:tr[e],fontSize:`var(--text-${e}-size)`,lineHeight:`var(--text-${e}-leading)`};return t.text=r,t}function F(e){return Math.round(e/5)*5}function rr(e){let{fast:t,medium:n,slow:r,ratio:i,easing:a}=e,o={"--duration-fast-min":`${F(t*i)}ms`,"--duration-fast":`${F(t)}ms`,"--duration-fast-max":`${F(t/i)}ms`,"--duration-medium-min":`${F(n*i)}ms`,"--duration-medium":`${F(n)}ms`,"--duration-medium-max":`${F(n/i)}ms`};return r!=null&&(o[`--duration-slow-min`]=`${F(r*i)}ms`,o[`--duration-slow`]=`${F(r)}ms`,o[`--duration-slow-max`]=`${F(r/i)}ms`),a&&(o[`--ease-standard`]=a),o}function ir(e){let{base:t,multiplier:n}=e;return{"--radius-none":`0px`,"--radius-inner":`${Math.round(t*1*n)}px`,"--radius-element":`${Math.round(t*2*n)}px`,"--radius-container":`${Math.round(t*3*n)}px`,"--radius-page":`${Math.round(t*7*n)}px`,"--radius-chat":`${Math.round(t*7*n)}px`,"--radius-full":`9999px`}}function ar(e){let t=e=>{let t=e/255;return t<=.04045?t/12.92:((t+.055)/1.055)**2.4};return .2126*t(e.r)+.7152*t(e.g)+.0722*t(e.b)}function or(e,t){let n=e.a;return{r:e.r*n+t.r*(1-n),g:e.g*n+t.g*(1-n),b:e.b*n+t.b*(1-n),a:1}}function sr(e,t){if(typeof e!=`string`)return e;let n=ce(e);if(n===null)throw TypeError(`contrastRatio: could not parse ${t} "${e}"`);return n}function cr(e,t){let n=sr(t,`background`);if(n.a<1)throw TypeError(`contrastRatio: background must be opaque — composite it over its backdrop first`);let r=sr(e,`foreground`);r.a<1&&(r=or(r,n));let i=ar(r),a=ar(n),o=Math.max(i,a),s=Math.min(i,a);return(o+.05)/(s+.05)}function I(e){let t=e/255;return t<=.04045?t/12.92:((t+.055)/1.055)**2.4}function lr(e){let t=e<=.0031308?e*12.92:1.055*e**(1/2.4)-.055;return Math.round(Math.min(255,Math.max(0,t*255)))}function ur(e,t,n){return[.4124564*e+.3575761*t+.1804375*n,.2126729*e+.7151522*t+.072175*n,.0193339*e+.119192*t+.9503041*n]}function dr(e,t,n){return[3.2404542*e-1.5371385*t-.4985314*n,-.969266*e+1.8760108*t+.041556*n,.0556434*e-.2040259*t+1.0572252*n]}var L=[.95047,1,1.08883];function fr(e){let t=6/29;return e>t*t*t?Math.cbrt(e):e/(3*t*t)+4/29}function pr(e){let t=6/29;return e>t?e*e*e:3*t*t*(e-4/29)}function mr(e,t,n){let r=fr(e/L[0]),i=fr(t/L[1]),a=fr(n/L[2]);return[116*i-16,500*(r-i),200*(i-a)]}function hr(e,t,n){let r=(e+16)/116,i=t/500+r,a=r-n/200;return[pr(i)*L[0],pr(r)*L[1],pr(a)*L[2]]}function gr(e){return pr((e+16)/116)}function _r(e){let t=oe(e);return t===null?[0,0,0]:[t.r,t.g,t.b]}function vr(e){let[t,n,r]=_r(e),[i,a,o]=ur(I(t),I(n),I(r)),[s,c,l]=mr(i,a,o),u=Math.atan2(l,c)*180/Math.PI;u<0&&(u+=360);let d=Math.sqrt(c*c+l*l);return{hue:u,chroma:d,tone:Math.max(0,Math.min(100,s))}}function yr(e){let{hue:t,chroma:n,tone:r}=e;if(r<=0)return`#000000`;if(r>=100)return`#FFFFFF`;if(n<.5){let e=br(r);return le(e,e,e)}let i=0,a=n,o=`#000000`;for(let e=0;e<16;e++){let e=(i+a)/2,n=xr(t,e,r);n===null?a=e:(o=n,i=e)}return o}function br(e){return lr(gr(e))}function xr(e,t,n){let r=e*Math.PI/180,[i,a,o]=hr(n,Math.cos(r)*t,Math.sin(r)*t),[s,c,l]=dr(i,a,o),u=lr(s),d=lr(c),f=lr(l),p=I(u),m=I(d),h=I(f),g=.02;return Math.abs(p-s)>g||Math.abs(m-c)>g||Math.abs(h-l)>g||u<0||u>255||d<0||d>255||f<0||f>255?null:le(u,d,f)}var Sr=[0,5,10,20,30,40,50,60,70,80,90,95,99,100];function R(e,t){let n={};for(let r of Sr)n[r]=yr({hue:e,chroma:t,tone:r});return n}function z(e,t){return e+Math.round(t*255).toString(16).padStart(2,`0`).toUpperCase()}var Cr={warm:7,cool:5,neutral:3},wr={warm:10,cool:8,neutral:6},Tr=`#0064E0`;function B(e,t){return`light-dark(${e}, ${t})`}function Er(e){return`color-mix(in srgb, var(--color-accent) ${e*100}%, transparent)`}var Dr=3;function Or(e,t,n,r,i,a){let o=n,s=yr({hue:e,chroma:t,tone:o});for(;cr(s,i)<a&&o+r>=0&&o+r<=100;)o+=r,s=yr({hue:e,chroma:t,tone:o});return s}function kr(e){let{accent:t,neutralStyle:n=`cool`,contrast:r=`standard`}=e,[i,a]=Array.isArray(t)?t:[t,t],o=vr(i??Tr),s=a===i,c=s?o:vr(a??Tr),l=Cr[n]??5,u=wr[n]??8,d=R(o.hue,Math.max(o.chroma,48)),f=R(o.hue,l),p=R(o.hue,u),m=s?d:R(c.hue,Math.max(c.chroma,48)),h=s?f:R(c.hue,l),g=s?p:R(c.hue,u),_=r===`high`,v=_?0:10,y=_?99:90,b=_?20:30,x=_?80:70,ee=_?.2:.1,te=_?50:70,S=_?50:30,C=B(Or(o.hue,u,te,-1,f[99],Dr),Or(c.hue,u,S,1,h[10],Dr));return{...t==null?null:{"--color-accent":B(d[40],m[80]),"--color-accent-muted":B(Er(.2),Er(.25)),"--color-on-accent":B(d[100],m[20])},"--color-neutral":B(z(f[10],.1),z(h[90],.2)),"--color-background-surface":B(f[99],h[10]),"--color-background-body":B(f[95],h[5]),"--color-overlay":B(z(f[10],.4),z(h[10],.6)),"--color-overlay-hover":B(z(f[10],.05),z(h[100],.05)),"--color-overlay-pressed":B(z(f[10],.1),z(h[100],.1)),"--color-background-muted":B(z(f[10],.05),z(h[10],.5)),"--color-text-primary":B(f[v],h[y]),"--color-text-secondary":B(p[b],g[x]),"--color-text-disabled":B(p[60],g[40]),"--color-text-accent":`var(--color-accent)`,"--color-icon-accent":`var(--color-accent)`,"--color-icon-primary":B(f[v],h[y]),"--color-icon-secondary":B(p[b],g[x]),"--color-icon-disabled":B(p[60],g[40]),"--color-background-card":B(f[99],h[10]),"--color-background-popover":B(f[99],h[20]),"--color-background-inverted":B(f[10],h[99]),"--color-border":B(z(f[10],ee),z(h[95],ee)),"--color-border-emphasized":C,"--color-skeleton":B(p[70],g[30]),"--color-track":B(p[70],g[30]),"--color-shadow":B(z(f[0],.1),z(h[0],.3)),"--color-tint-hover":B(`black`,`white`)}}function Ar(e,{strict:t=!1}={}){if(typeof e==`string`)return e;if(Array.isArray(e)&&e.length===2&&typeof e[0]==`string`&&typeof e[1]==`string`)return`light-dark(${e[0]}, ${e[1]})`;if(t)throw Error(`Theme token values must be CSS strings or [light, dark] string tuples.`);return Array.isArray(e)?`light-dark(${e[0]}, ${e[1]})`:e}function jr(e){return{normal:`var(--font-weight-normal)`,medium:`var(--font-weight-medium)`,semibold:`var(--font-weight-semibold)`,bold:`var(--font-weight-bold)`}[e]??e}function Mr(e,t){if(!e)return;let n=e.includes(` `)?`"${e}"`:e;return t?`${n}, ${t}`:n}function Nr(e){if(!e.scale)return;let t={},n=e.heading;if(n?.weights)for(let[e,r]of Object.entries(n.weights))r&&(t[Number(e)]=jr(r));let r=n?.weight?jr(n.weight):void 0;if(r)for(let e=1;e<=6;e++)e in t||(t[e]=r);let i={};return e.body?.weight&&(i.body=jr(e.body.weight)),e.code?.weight&&(i.code=jr(e.code.weight)),{base:e.scale.base,ratio:e.scale.ratio,weights:{...Object.keys(t).length>0?{heading:t}:{},...Object.keys(i).length>0?{text:i}:{}}}}function Pr(e){let t={},n=Mr(e.body?.family,e.body?.fallbacks),r=Mr(e.heading?.family,e.heading?.fallbacks)??n,i=Mr(e.code?.family,e.code?.fallbacks);return n&&(t[`--font-family-body`]=n),r&&(t[`--font-family-heading`]=r),i&&(t[`--font-family-code`]=i),t}function Fr(e,t,{strictTokens:n=!1}={}){let r={...t?.tokens},i=e.typography,a=i?Nr(i):void 0;if(e.color&&Object.assign(r,kr(e.color)),a&&Object.assign(r,er(a)),e.radius&&Object.assign(r,ir(e.radius)),e.motion&&Object.assign(r,rr(e.motion)),i&&Object.assign(r,Pr(i)),e.syntax)for(let[t,n]of Object.entries(e.syntax.tokens))r[`--color-syntax-`+t]=n;if(e.tokens)for(let[t,i]of Object.entries(e.tokens))i!==void 0&&(r[t]=Ar(i,{strict:n}));let o=e.components;return a&&(o=Bn(nr(a),e.components)),t?.components&&(o=Bn(t.components,o)),{tokens:r,components:o}}var Ir=`--astryx-theme-`,Lr=/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/,Rr=/^[a-z0-9]+(?:-[a-z0-9]+)*$/,zr=/var\(\s*(--[^,\s)]+)/gi;function Br(e){return e.startsWith(Ir)}function V(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Vr(e,t){let n=`${Ir}${t}-`;return e.startsWith(n)&&Rr.test(e.slice(n.length))}function Hr(e,t){if(typeof e==`string`)return e;if(Array.isArray(e)&&e.length===2&&typeof e[0]==`string`&&typeof e[1]==`string`)return`light-dark(${e[0]}, ${e[1]})`;throw Error(`${t} must be a CSS string or a [light, dark] string tuple.`)}function Ur(e,t){if(typeof e==`string`){zr.lastIndex=0;for(let n=zr.exec(e);n;n=zr.exec(e))t.add(n[1]);return}if(Array.isArray(e)){for(let n of e)Ur(n,t);return}if(e&&typeof e==`object`)for(let n of Object.values(e))Ur(n,t)}function H(e,t){let n=new Set;Ur(e,n);for(let e of n)Br(e)&&t.add(e)}function Wr(e,t,n){let r=new Map;for(let[t,n]of Object.entries(e)){let i=new Set;Ur(n,i),r.set(t,[...i].filter(t=>V(e,t)))}let i=(e,t)=>{let n=[e],i=new Set(n),a=o=>{for(let s of r.get(o)??[])if(t.has(s)){if(s===e)return n.push(e),!0;if(!i.has(s)){if(n.push(s),i.add(s),a(s))return!0;i.delete(s),n.pop()}}return!1};return a(e),n},a=0,o=new Map,s=new Map,c=[],l=new Set,u=e=>{let d=a++;o.set(e,d),s.set(e,d),c.push(e),l.add(e);for(let t of r.get(e)??[])o.has(t)?l.has(t)&&s.set(e,Math.min(s.get(e)??d,o.get(t)??0)):(u(t),s.set(e,Math.min(s.get(e)??d,s.get(t)??0)));if(s.get(e)!==d)return;let f=[],p;do p=c.pop()??e,l.delete(p),f.push(p);while(p!==e);if(!(f.length>1||(r.get(f[0])??[]).includes(f[0]))||n&&!f.some(e=>n.has(e)))return;let m=f.find(e=>n?.has(e))??f[0],h=i(m,new Set(f)).join(` -> `);throw Error(`${t?`${t}: `:``}Theme token cycle detected: ${h}.`)};for(let t of Object.keys(e))o.has(t)||u(t)}function Gr(e,t,n,r){let i=new Set;H(e,i),H(t,i),H(n?.components,i),H(r?.components,i);for(let t of i)if(!V(e,t))throw Error(`Theme-local token reference "${t}" has no declaration in the enrolled theme lineage.`)}function Kr(e,t){let n=t.__localTokenLineage;if(!Array.isArray(n)||n.length===0||n[n.length-1]!==t.name||n.some(e=>typeof e!=`string`||e.length===0))throw Error(`defineTheme("${e}"): the base theme has invalid theme-local token lineage metadata.`);if(!t.localTokens||typeof t.localTokens!=`object`||Array.isArray(t.localTokens)||!t.__localTokenOwners||typeof t.__localTokenOwners!=`object`||Array.isArray(t.__localTokenOwners))throw Error(`defineTheme("${e}"): the base theme has incomplete theme-local token metadata.`);for(let[r,i]of Object.entries(t.localTokens)){let a=t.__localTokenOwners[r];if(typeof i!=`string`||!a||!n.includes(a)||!Vr(r,a))throw Error(`defineTheme("${e}"): inherited local token "${r}" does not match its exact lineage metadata.`)}for(let n of Object.keys(t.__localTokenOwners))if(!V(t.localTokens,n))throw Error(`defineTheme("${e}"): inherited local-token owner metadata names undeclared token "${n}".`)}function qr(e,t,n,r,i,a){let o=V(e,`localTokens`),s=t?.__localTokenLineage!==void 0;if(!o&&!s)return;if(o&&!Lr.test(e.name))throw Error(`defineTheme("${e.name}"): themes using localTokens require a stable lower-kebab name.`);s&&t&&Kr(e.name,t);let c={...t?.localTokens},l={...t?.__localTokenOwners},u=e.localTokens;if(o&&(typeof u!=`object`||!u||Array.isArray(u)))throw Error(`defineTheme("${e.name}"): localTokens must be a token map.`);for(let[t,n]of Object.entries(u??{})){if(!l[t]){let n=`${Ir}${e.name}-`;if(!Vr(t,e.name))throw Error(`defineTheme("${e.name}"): local token "${t}" must use the exact namespace "${n}" followed by a lowercase kebab-case purpose.`);l[t]=e.name}c[t]=Hr(n,`defineTheme("${e.name}").localTokens["${t}"]`)}for(let t of Object.keys(c)){if(!l[t])throw Error(`defineTheme("${e.name}"): inherited local token "${t}" has no owner metadata.`);if(V(n,t))throw Error(`defineTheme("${e.name}"): token "${t}" cannot be declared in both tokens and localTokens.`)}return Gr(c,r,i,a),Wr(c,`defineTheme("${e.name}").localTokens`),{localTokens:c,owners:l,lineage:[...t?.__localTokenLineage??[],e.name]}}function Jr(e,t,n,r,i,a){let o=`defineTheme("${e}").adaptations.rules[${t}].value.localTokens`;if(n===void 0){let e=new Set;H(i,e),H(a,e);for(let t of e)if(!r||!V(r,t))throw Error(`${o}: theme-local token reference "${t}" has no declaration in the enrolled root theme lineage.`);return}if(typeof n!=`object`||!n||Array.isArray(n))throw Error(`${o} must be a token map.`);let s={};for(let[e,t]of Object.entries(n)){if(!r||!V(r,e))throw Error(`${o}["${e}"] cannot enroll a theme-local token. Declare it in the root theme or an exact enrolled base first.`);s[e]=Hr(t,`${o}["${e}"]`)}let c={...r,...s},l=new Set;H(s,l),H(i,l),H(a,l);for(let e of l)if(!V(c,e))throw Error(`${o}: theme-local token reference "${e}" has no declaration in the enrolled root theme lineage.`);return Object.keys(s).length>0?s:void 0}var U=[`sm`,`md`,`lg`,`xl`,`2xl`],Yr=Object.freeze({sm:640,md:768,lg:1024,xl:1280,"2xl":1536});function Xr(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function W(e,t){if(!Xr(e))throw Error(`${t} must be an object.`)}function G(e,t,n){for(let r of Object.keys(e))if(!t.has(r))throw Error(`${n}.${r} is not supported.`)}function Zr(e){if(Array.isArray(e)){let t=[];for(let n of e)t.push(Zr(n));return t}return Xr(e)?Object.fromEntries(Object.entries(e).map(([e,t])=>[e,Zr(t)])):e}var Qr=new Set(U),$r=new Set([`widthBreakpoints`,`rules`]),ei=new Set([`when`,`value`]),ti=new Set([`width`,`pointer`,`contrast`,`motion`]),ni=new Set([`from`,`below`]),ri=new Set([`typography`,`color`,`radius`,`motion`,`tokens`,`localTokens`,`components`]);function ii(e,t){W(e,t),G(e,Qr,t);let n={};for(let r of U){let i=e[r];if(i!==void 0){if(typeof i!=`number`||!Number.isFinite(i)||i<=0)throw Error(`${t}.${r} must be a finite positive number of CSS pixels.`);n[r]=i}}return n}function ai(e,t){let n=ii(e,t);for(let e of U)if(n[e]===void 0)throw Error(`${t}.${e} is missing from the effective breakpoint map.`);return n}function oi(e,t){let n;for(let r of U){if(n!==void 0&&e[r]<=e[n])throw Error(`${t} must be strictly increasing: ${r} (${e[r]}) is not above ${n} (${e[n]}).`);n=r}}function si(e,t){W(e,t),G(e,ti,t);let n=Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0));if(Object.keys(n).length===0)throw Error(`${t} must contain at least one condition.`);let r=Zr(n);if(r.width!==void 0){if(W(r.width,`${t}.width`),G(r.width,ni,`${t}.width`),r.width.from===void 0&&r.width.below===void 0)throw Error(`${t}.width must contain \`from\`, \`below\`, or both.`);for(let e of[`from`,`below`]){let n=r.width[e];if(n!==void 0&&(typeof n!=`string`||!Qr.has(n)))throw Error(`${t}.width.${e} must be one of ${U.join(`, `)}.`)}}if(r.pointer!==void 0&&r.pointer!==`coarse`&&r.pointer!==`fine`)throw Error(`${t}.pointer must be 'coarse' or 'fine'.`);if(r.contrast!==void 0&&r.contrast!==`more`&&r.contrast!==`less`&&r.contrast!==`no-preference`)throw Error(`${t}.contrast must be 'more', 'less', or 'no-preference'.`);if(r.motion!==void 0&&r.motion!==`reduce`&&r.motion!==`no-preference`)throw Error(`${t}.motion must be 'reduce' or 'no-preference'.`);return r}function ci(e,t){W(e,t),G(e,ri,t);for(let n of ri){let r=e[n];if(r!==void 0&&!Xr(r))throw Error(`${t}.${n} must be an object.`)}return Zr(e)}function li(e,t){if(W(e,t),G(e,ei,t),!Object.prototype.hasOwnProperty.call(e,`when`))throw Error(`${t}.when is required.`);if(!Object.prototype.hasOwnProperty.call(e,`value`))throw Error(`${t}.value is required.`);return{when:si(e.when,`${t}.when`),value:ci(e.value,`${t}.value`)}}function ui(e,t){if(!Array.isArray(e))throw Error(`${t} must be an array of {when, value} objects.`);for(let n=0;n<e.length;n++)if(!Object.prototype.hasOwnProperty.call(e,n))throw Error(`${t}[${n}] must be present.`);return e.map((e,n)=>li(e,`${t}[${n}]`))}function di(e,t,n){let r=`defineTheme("${e}").adaptations`,i={...Yr},a=[];t!==void 0&&(W(t,`defineTheme("${e}").extends.__adaptations`),G(t,new Set([`widthBreakpoints`,`rules`]),`defineTheme("${e}").extends.__adaptations`),i=ai(t.widthBreakpoints,`defineTheme("${e}").extends.__adaptations.widthBreakpoints`),a=ui(t.rules,`defineTheme("${e}").extends.__adaptations.rules`));let o={},s=[];n!==void 0&&(W(n,r),G(n,$r,r),n.widthBreakpoints!==void 0&&(o=ii(n.widthBreakpoints,`${r}.widthBreakpoints`)),n.rules!==void 0&&(s=ui(n.rules,`${r}.rules`)));let c={...i,...o};return oi(c,`${r}.widthBreakpoints`),{widthBreakpoints:c,rules:[...a,...s]}}function fi(e,t){return e?t?{...e,...t,weights:e.weights||t.weights?{...e.weights,...t.weights}:void 0}:e:t}function K(e,t){if(typeof e!=`number`||!Number.isFinite(e))throw Error(`${t} must be a finite number.`)}function pi(e,t,n){let r=t.scale!==void 0||[t.body,t.heading,t.code].some(e=>e?.weight!==void 0||e?.weights!==void 0),i=r?e?.scale:void 0;if(t.scale!==void 0){let r=t.scale.base??e?.scale?.base,a=t.scale.ratio??e?.scale?.ratio;if(r===void 0||a===void 0)throw Error(`${n}.scale must supply both \`base\` and \`ratio\` unless the missing field exists on the effective root typography axis.`);K(r,`${n}.scale.base`),K(a,`${n}.scale.ratio`),i={base:r,ratio:a}}else if(r&&i===void 0)throw Error(`${n} sets typography weights without an effective root scale. Supply \`scale.base\` and \`scale.ratio\` in the same rule.`);return{...i?{scale:i}:{},body:fi(e?.body,t.body),heading:fi(e?.heading,t.heading),code:fi(e?.code,t.code)}}function mi(e,t,n){let r=t.base??e?.base,i=t.multiplier??e?.multiplier;if(r===void 0||i===void 0)throw Error(`${n} must supply both \`base\` and \`multiplier\` unless the missing field exists on the effective root radius axis.`);return K(r,`${n}.base`),K(i,`${n}.multiplier`),{base:r,multiplier:i}}function hi(e,t,n){let r=t.fast??e?.fast,i=t.medium??e?.medium,a=t.ratio??e?.ratio;if(r===void 0||i===void 0||a===void 0)throw Error(`${n} must supply \`fast\`, \`medium\`, and \`ratio\` unless each missing field exists on the effective root motion axis.`);K(r,`${n}.fast`),K(i,`${n}.medium`),K(a,`${n}.ratio`);let o=t.slow??e?.slow;o!==void 0&&K(o,`${n}.slow`);let s=t.easing??e?.easing;return{fast:r,medium:i,ratio:a,...o===void 0?{}:{slow:o},...s===void 0?{}:{easing:s}}}function gi(e,t,n,r){let i=`defineTheme("${e}").adaptations.rules[${t}].value`;return{typography:n.typography?pi(r.typography,n.typography,`${i}.typography`):void 0,color:n.color?{...r.color,...n.color}:void 0,radius:n.radius?mi(r.radius,n.radius,`${i}.radius`):void 0,motion:n.motion?hi(r.motion,n.motion,`${i}.motion`):void 0,tokens:n.tokens,components:n.components}}function _i(e,t){if(typeof e==`string`){if(/\b(?:NaN|undefined)\b/.test(e))throw Error(`${t} resolved to the invalid CSS value "${e}".`);return}if(Xr(e)){for(let[n,r]of Object.entries(e))_i(r,`${t}.${n}`);return}throw Error(`${t} must resolve to a concrete CSS string.`)}function vi(e,t,n,r){let i=`defineTheme("${e}").adaptations.rules[${t}].when`,a=[];if(n.width){let e=n.width.from,t=n.width.below;if(e!==void 0&&t!==void 0&&r[e]>=r[t])throw Error(`${i}.width must resolve to \`from < below\`; ${e} is ${r[e]}px and ${t} is ${r[t]}px.`);e!==void 0&&a.push(`(width >= ${r[e]}px)`),t!==void 0&&a.push(`(width < ${r[t]}px)`)}if(n.pointer!==void 0&&a.push(`(pointer: ${n.pointer})`),n.contrast!==void 0&&a.push(`(prefers-contrast: ${n.contrast})`),n.motion!==void 0&&a.push(`(prefers-reduced-motion: ${n.motion})`),a.length===0)throw Error(`${i} must contain at least one concrete condition.`);return a.join(` and `)}var yi={pointer:[`coarse`,`fine`,`none`],contrast:[`more`,`less`,`no-preference`,`custom`],motion:[`reduce`,`no-preference`]};function bi(e,t,n){let r=e.width?.from;if(r!==void 0&&n.width<t[r])return!1;let i=e.width?.below;return!(i!==void 0&&n.width>=t[i]||e.pointer!==void 0&&e.pointer!==n.pointer||e.contrast!==void 0&&e.contrast!==n.contrast||e.motion!==void 0&&e.motion!==n.motion)}function xi(e,t,n,r,i){let a=i.flatMap((e,t)=>Object.keys(e.tokens).length>0||e.localTokens&&Object.keys(e.localTokens).length>0?[t]:[]);if(a.length===0)return;let o=[0,...U.map(e=>t[e])],s=new Set;for(let c of o)for(let o of yi.pointer)for(let l of yi.contrast)for(let u of yi.motion){let d={width:c,pointer:o,contrast:l,motion:u},f=a.filter(e=>bi(i[e].when,t,d));if(f.length===0)continue;let p=f.join(`,`);if(s.has(p))continue;s.add(p);let m={...n,...r},h=new Set;for(let e of f){let t=i[e];Object.assign(m,t.tokens,t.localTokens);for(let e of Object.keys(t.tokens))h.add(e);for(let e of Object.keys(t.localTokens??{}))h.add(e)}let g=f.join(`, `),_=f.map(e=>i[e].query).join(`; `);Wr(m,`defineTheme("${e}").adaptations ${f.length===1?`rule`:`overlapping rules`} [${g}] (${_})`,h)}}function Si(e,t){let n=e?.typography,r=t.typography,i=(e,t,n=!1)=>{let r=fi(e,t);if(r)return t?.family?{...r,family:t.family,fallbacks:t.fallbacks}:n?{...r,family:void 0,fallbacks:void 0}:{...r,family:e?.family,fallbacks:e?.fallbacks}},a=i(n?.body,r?.body),o=i(n?.heading,r?.heading,!(!r?.body?.family||r?.heading?.family)),s=i(n?.code,r?.code),c=r?.scale?r:n?.scale?n:void 0,l=(e,t)=>e?{...e,weight:t?.weight,weights:t?.weights}:void 0;a=l(a,c?.body),o=l(o,c?.heading),s=l(s,c?.code);let u=n||r?{...n,...r,scale:r?.scale??n?.scale,body:a,heading:o,code:s}:void 0,d=t.color??e?.color,f=t.radius?{...e?.radius,...t.radius}:e?.radius,p=t.motion?{...e?.motion,...t.motion}:e?.motion;return{...u?{typography:u}:{},...d?{color:d}:{},...f?{radius:f}:{},...p?{motion:p}:{}}}function Ci(e,t,n,r,i){if(t.rules.length===0)return;let a=t.rules.map((r,a)=>{let o=Fr(gi(e,a,r.value,n),void 0,{strictTokens:!0});for(let[t,n]of Object.entries(o.tokens))_i(n,`defineTheme("${e}").adaptations.rules[${a}].value.tokens["${t}"]`);o.components&&_i(o.components,`defineTheme("${e}").adaptations.rules[${a}].value.components`);for(let t of Object.keys(r.value.tokens??{}))if(Br(t))throw Error(`defineTheme("${e}").adaptations.rules[${a}].value.tokens["${t}"] uses the reserved --astryx-theme-* namespace; write it through value.localTokens instead.`);let s=Jr(e,a,r.value.localTokens,i,o.tokens,o.components);return{when:r.when,query:vi(e,a,r.when,t.widthBreakpoints),tokens:o.tokens,localTokens:s,components:o.components}});return xi(e,t.widthBreakpoints,r,i,a),a}var wi={"--color-syntax-keyword":`var(--color-text-accent)`,"--color-syntax-string":`var(--color-text-green)`,"--color-syntax-comment":`var(--color-text-secondary)`,"--color-syntax-number":`var(--color-text-orange)`,"--color-syntax-function":`var(--color-text-blue)`,"--color-syntax-type":`var(--color-text-purple)`,"--color-syntax-variable":`var(--color-text-primary)`,"--color-syntax-operator":`var(--color-text-cyan)`,"--color-syntax-constant":`var(--color-text-orange)`,"--color-syntax-tag":`var(--color-text-red)`,"--color-syntax-attribute":`var(--color-text-teal)`,"--color-syntax-property":`var(--color-text-cyan)`,"--color-syntax-punctuation":`var(--color-text-secondary)`,"--color-syntax-background":`var(--color-background-muted)`},Ti={"--color-data-categorical-blue":`light-dark(#0171E3, #0171E3)`,"--color-data-categorical-orange":`light-dark(#EB6E00, #EB6E00)`,"--color-data-categorical-purple":`light-dark(#6B1EFD, #6B1EFD)`,"--color-data-categorical-green":`light-dark(#0B991F, #0B991F)`,"--color-data-categorical-pink":`light-dark(#F351C0, #F351C0)`,"--color-data-categorical-cyan":`light-dark(#0171A4, #0171A4)`,"--color-data-categorical-red":`light-dark(#F5394F, #F5394F)`,"--color-data-categorical-teal":`light-dark(#08A3A3, #08A3A3)`,"--color-data-categorical-brown":`light-dark(#965E03, #965E03)`,"--color-data-categorical-indigo":`light-dark(#6F8AFF, #6F8AFF)`,"--color-data-neutral":`light-dark(#8494A3, #8C939B)`,"--color-data-blue-5":`light-dark(#02165E, #02165E)`,"--color-data-blue-4":`light-dark(#004CBC, #004CBC)`,"--color-data-blue-3":`light-dark(#2694FE, #2694FE)`,"--color-data-blue-2":`light-dark(#78BEFF, #78BEFF)`,"--color-data-blue-1":`light-dark(#DBECFF, #DBECFF)`,"--color-data-shamrock-5":`light-dark(#0B603D, #0B603D)`,"--color-data-shamrock-4":`light-dark(#138546, #138546)`,"--color-data-shamrock-3":`light-dark(#24BB5E, #24BB5E)`,"--color-data-shamrock-2":`light-dark(#8EF7AA, #8EF7AA)`,"--color-data-shamrock-1":`light-dark(#D6FEE4, #D6FEE4)`,"--color-data-orange-5":`light-dark(#A13F04, #A13F04)`,"--color-data-orange-4":`light-dark(#D66100, #D66100)`,"--color-data-orange-3":`light-dark(#FD9537, #FD9537)`,"--color-data-orange-2":`light-dark(#FDB876, #FDB876)`,"--color-data-orange-1":`light-dark(#FFE6CF, #FFE6CF)`,"--color-data-pink-5":`light-dark(#8E1073, #8E1073)`,"--color-data-pink-4":`light-dark(#D123A1, #D123A1)`,"--color-data-pink-3":`light-dark(#F989D3, #F989D3)`,"--color-data-pink-2":`light-dark(#FEADE3, #FEADE3)`,"--color-data-pink-1":`light-dark(#FCE3F4, #FCE3F4)`,"--color-data-purple-5":`light-dark(#3E0697, #3E0697)`,"--color-data-purple-4":`light-dark(#6B1EFD, #6B1EFD)`,"--color-data-purple-3":`light-dark(#9081FF, #9081FF)`,"--color-data-purple-2":`light-dark(#B3B0FE, #B3B0FE)`,"--color-data-purple-1":`light-dark(#E8E8FB, #E8E8FB)`,"--color-data-red-5":`light-dark(#9D0519, #9D0519)`,"--color-data-red-4":`light-dark(#D31130, #D31130)`,"--color-data-red-3":`light-dark(#FB7D87, #FB7D87)`,"--color-data-red-2":`light-dark(#FFB2B8, #FFB2B8)`,"--color-data-red-1":`light-dark(#FEE4E6, #FEE4E6)`,"--color-data-teal-5":`light-dark(#08767D, #08767D)`,"--color-data-teal-4":`light-dark(#0C9293, #0C9293)`,"--color-data-teal-3":`light-dark(#0DB7AF, #0DB7AF)`,"--color-data-teal-2":`light-dark(#6CE6D8, #6CE6D8)`,"--color-data-teal-1":`light-dark(#D7FCF8, #D7FCF8)`,"--color-data-yellow-5":`light-dark(#8A5001, #8A5001)`,"--color-data-yellow-4":`light-dark(#D69804, #D69804)`,"--color-data-yellow-3":`light-dark(#FBCE03, #FBCE03)`,"--color-data-yellow-2":`light-dark(#FCEC85, #FCEC85)`,"--color-data-yellow-1":`light-dark(#FDF6BA, #FDF6BA)`,"--color-data-gray-5":`light-dark(#25363F, #333338)`,"--color-data-gray-4":`light-dark(#5D6C7B, #666A72)`,"--color-data-gray-3":`light-dark(#AFB9C4, #B2B8BE)`,"--color-data-gray-2":`light-dark(#CCD3DB, #D0D3D6)`,"--color-data-gray-1":`light-dark(#F1F4F7, #F2F4F6)`},Ei={...wi,...Ti},Di=new Map;function Oi(e){Di.set(e.name,e)}function ki(e){return e==null||e===``?null:Di.get(e)??null}var Ai={...d,...n,...b,...r,...f,...l,...p,...t,...u,...a,...o,...s,...m,...Ei};function ji(e){if(e===void 0)return`undefined`;if(e===null)return`null`;if(typeof e!=`object`)return typeof e;let t=Object.keys(e);return`an object with keys [${t.slice(0,4).join(`, `)}${t.length>4?`, …`:``}]`}function Mi(e){if(`extends`in e&&!Ni(e.extends))throw Error(`defineTheme("${e.name}"): \`extends\` must be a theme from defineTheme(), got ${ji(e.extends)}. Check that the import naming your base theme resolves to its source and exports that name — a generated \`<theme>.js\` artifact sitting next to the source exports \`<name>Theme\`, not the source's own export.`);let t=e.extends,n={typography:e.typography,color:e.color,radius:e.radius,motion:e.motion,syntax:e.syntax,tokens:e.tokens,components:e.components},r={typography:e.typography,color:e.color,radius:e.radius,motion:e.motion},{tokens:i,components:a}=Fr(n,t?{tokens:t.tokens,components:t.components}:void 0),o=Wn(`dark`,e.onDark,t?.__onDark),s=Wn(`light`,e.onLight,t?.__onLight),c=qr(e,t,i,a,o,s),l=Si(t?.__axes,r),u=di(e.name,t?.__adaptations,e.adaptations),d=Ci(e.name,u,l,i,c?.localTokens),f=e.icons&&t?.icons?{...t.icons,...e.icons}:e.icons??t?.icons,p=e.indicators&&t?.indicators?{...t.indicators,...e.indicators}:e.indicators??t?.indicators,m={name:e.name,tokens:i,...c?{localTokens:c.localTokens,__localTokenOwners:c.owners,__localTokenLineage:c.lineage}:{},components:a,icons:f,indicators:p,__inputTokens:t?.__inputTokens||e.tokens?{...t?.__inputTokens,...e.tokens}:void 0,__onDark:o,__onLight:s,__adaptations:u,__adaptationRules:d,__axes:l};return Oi(m),m}function Ni(e){return typeof e==`object`&&!!e&&`name`in e&&`tokens`in e&&!(`styles`in e)}function Pi(e){return`var(${e})`}Object.fromEntries(Object.keys(Ai).map(e=>[e,Pi(e)]));function Fi(e){let t=0,n=null,r=!1;for(let i=0;i<e.length;i++){let a=e[i];if(n!==null){r?r=!1:a===`\\`?r=!0:a===n&&(n=null);continue}if(a===`"`||a===`'`){n=a;continue}if(a===`(`){t++;continue}if(a===`)`){t=Math.max(0,t-1);continue}if(a===`,`&&t===0)return[e.slice(0,i).trim(),e.slice(i+1).trim()]}return null}function Ii(e){let t=e.trim();return!t.startsWith(`light-dark(`)||!t.endsWith(`)`)?null:Fi(t.slice(11,-1))}function Li(e,t){if(Array.isArray(e))return t===`dark`?e[1]:e[0];let n=Ii(e);return n===null?e:t===`dark`?n[1]:n[0]}function Ri(e,t){let n=0;for(let r=t;r<e.length;r++){let t=e[r];if(t===`(`)n++;else if(t===`)`&&(n--,n===0))return r}return-1}function zi(e){let t=e.trim(),n=t.match(/\s+([\d.]+)%$/);return n?{color:t.slice(0,n.index).trim(),percentage:parseFloat(n[1])}:{color:t,percentage:null}}function Bi(e){let t=e.match(/^in\s+([\w-]+)\s*,\s*(.+)$/s);if(!t)return null;let[,n,r]=t;if(n.toLowerCase()!==`srgb`)return null;let i=Fi(r);if(i===null)return null;let a=zi(i[0]),o=zi(i[1]);if(a===null||o===null)return null;let s=ce(a.color),c=ce(o.color);if(s===null||c===null)return null;let l,u;a.percentage!==null&&o.percentage!==null?(l=a.percentage,u=o.percentage):a.percentage===null?o.percentage===null?(l=50,u=50):(u=o.percentage,l=100-u):(l=a.percentage,u=100-l);let d=l+u;if(d<=0)return null;let f=l/d,p=u/d,m=d<100?d/100:1,h=f*s.a+p*c.a,g=(e,t)=>f*e*s.a+p*t*c.a,_=g(s.r,c.r),v=g(s.g,c.g),y=g(s.b,c.b);return ue({...h===0?{r:0,g:0,b:0}:{r:_/h,g:v/h,b:y/h},a:h*m})}function Vi(e){let t=e.indexOf(`color-mix(`);if(t===-1)return e;let n=t+9,r=Ri(e,n);if(r===-1)return e;let i=Vi(e.slice(n+1,r)),a=Bi(i)??`color-mix(${i})`;return e.slice(0,t)+a+Vi(e.slice(r+1))}function Hi(e,t,n,r){let i=e.indexOf(`var(`);if(i===-1)return e;let a=i+3,o=Ri(e,a);if(o===-1)return e;let s=e.slice(a+1,o),c=Fi(s),l=(c?c[0]:s).trim(),u=c?c[1]:null,d;r.has(l)?d=e.slice(i,o+1):l in t?(r.add(l),d=Wi(l,t,n,r),r.delete(l)):d=u===null?e.slice(i,o+1):Hi(u.trim(),t,n,r);let f=Hi(e.slice(o+1),t,n,r);return e.slice(0,i)+d+f}function Ui(e,t,n,r){return!e.includes(`var(`)&&!e.includes(`color-mix(`)?e:Vi(Hi(e,t,n,r))}function Wi(e,t,n,r){if(e in n)return n[e];let i=t[e];if(i===void 0)return``;let a=Ui(i,t,n,r);return n[e]=a,a}function Gi(e){let t={};for(let n of Object.keys(e))Wi(n,e,t,new Set);return t}function Ki(e,t){let{mode:n}=t,r={};for(let[e,t]of Object.entries(Ai))r[e]=Li(t,n);if(e==null)return Gi(r);for(let[t,i]of Object.entries(e.tokens))r[t]=Li(i,n);if(e.__inputTokens)for(let[t,i]of Object.entries(e.__inputTokens))i!==void 0&&(r[t]=Li(i,n));return Gi(r)}var q=(0,S.createContext)(null);q.displayName=`ThemeContext`;function qi(){if(typeof document>`u`)return null;let e=document.documentElement.getAttribute(`data-theme`);return e===`light`||e===`dark`?e:null}function Ji(){return null}function Yi(){return typeof document>`u`?null:document.documentElement.getAttribute(h(`theme`))}function Xi(){return null}function Zi(){return null}var J=new Set,Y=null,X=new Set,Z=null;function Qi(){for(let e of J)e()}function $i(e){return J.add(e),J.size===1&&typeof MutationObserver<`u`&&(Y=new MutationObserver(Qi),Y.observe(document.documentElement,{attributes:!0,attributeFilter:[`data-theme`]})),()=>{J.delete(e),J.size===0&&Y&&(Y.disconnect(),Y=null)}}function ea(){for(let e of X)e()}function ta(e){return X.add(e),X.size===1&&typeof MutationObserver<`u`&&(Z=new MutationObserver(ea),Z.observe(document.documentElement,{attributes:!0,attributeFilter:[h(`theme`)]})),()=>{X.delete(e),X.size===0&&Z&&(Z.disconnect(),Z=null)}}function na(){return()=>{}}function ra(e){return(0,S.useSyncExternalStore)(e?na:$i,e?Zi:qi,Ji)}function ia(e){return(0,S.useSyncExternalStore)(e?na:ta,e?Zi:Yi,Xi)}function aa(){let e=(0,S.use)(q),t=ia(e!=null);return e?.theme.name??t}function oa(){let e=(0,S.use)(q),t=ia(e!=null);return e?.theme??ki(t)??void 0}function sa(){let e=(0,S.use)(q),t=e!=null,n=ra(t),r=ia(t),i=ee(`(prefers-color-scheme: dark)`),a=e?.mode??n??`system`,o=e?.theme??ki(r),s=a===`system`?i?`dark`:`light`:a,c=(0,S.useMemo)(()=>Ki(o,{mode:s}),[o,s]),l=(0,S.useCallback)(e=>c[e]??``,[c]),u=o?.name??`default`;return(0,S.useMemo)(()=>({name:u,mode:s,token:l,tokens:c}),[u,s,l,c])}var Q={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:1.5,strokeLinecap:`round`,strokeLinejoin:`round`,width:`1em`,height:`1em`,"aria-hidden":!0},$={xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,width:`1em`,height:`1em`,"aria-hidden":!0},ca={close:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M6 6l12 12M6 18L18 6`})}),chevronDown:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M6 9l6 6 6-6`})}),"numberInput:stepperDown":(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M7.5 9.75l4.5 4.5 4.5-4.5`})}),chevronLeft:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M15 6l-6 6 6 6`})}),chevronRight:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M9 6l6 6-6 6`})}),chevronsLeft:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M18 6l-6 6 6 6M11 6l-6 6 6 6`})}),chevronsRight:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M6 6l6 6-6 6M13 6l6 6-6 6`})}),check:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M5 13l4 4L19 7`})}),success:(0,D.jsx)(`svg`,{...$,children:(0,D.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M12 3a9 9 0 100 18 9 9 0 000-18zm4.06 6.56a.75.75 0 00-1.12-1l-3.94 4.4-1.94-1.94a.75.75 0 00-1.06 1.06l2.5 2.5a.75.75 0 001.09-.03l4.47-5z`})}),error:(0,D.jsx)(`svg`,{...$,children:(0,D.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M12 3a9 9 0 100 18 9 9 0 000-18zm-2.47 5.47a.75.75 0 00-1.06 1.06L10.94 12l-2.47 2.47a.75.75 0 101.06 1.06L12 13.06l2.47 2.47a.75.75 0 101.06-1.06L13.06 12l2.47-2.47a.75.75 0 00-1.06-1.06L12 10.94l-2.47-2.47z`})}),warning:(0,D.jsx)(`svg`,{...$,children:(0,D.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M10.29 3.86L2.07 19.05A2 2 0 003.78 22h16.44a2 2 0 001.71-2.95L13.71 3.86a2 2 0 00-3.42 0zM12 9a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0112 9zm0 9a1 1 0 100-2 1 1 0 000 2z`})}),info:(0,D.jsx)(`svg`,{...$,children:(0,D.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M12 3a9 9 0 100 18 9 9 0 000-18zm0 4a1 1 0 100 2 1 1 0 000-2zm-.75 3.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5z`})}),calendar:(0,D.jsxs)(`svg`,{...Q,children:[(0,D.jsx)(`rect`,{x:`3`,y:`4`,width:`18`,height:`18`,rx:`2`}),(0,D.jsx)(`path`,{d:`M16 2v4M8 2v4M3 10h18`})]}),clock:(0,D.jsxs)(`svg`,{...Q,children:[(0,D.jsx)(`circle`,{cx:`12`,cy:`12`,r:`9`}),(0,D.jsx)(`path`,{d:`M12 7v5l3 3`})]}),externalLink:(0,D.jsxs)(`svg`,{...Q,children:[(0,D.jsx)(`path`,{d:`M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6`}),(0,D.jsx)(`path`,{d:`M15 3h6v6`}),(0,D.jsx)(`path`,{d:`M10 14L21 3`})]}),menu:(0,D.jsx)(`svg`,{...Q,strokeWidth:2,children:(0,D.jsx)(`path`,{d:`M4 6h16M4 12h16M4 18h16`})}),moreHorizontal:(0,D.jsxs)(`svg`,{...$,children:[(0,D.jsx)(`circle`,{cx:`5`,cy:`12`,r:`1.5`}),(0,D.jsx)(`circle`,{cx:`12`,cy:`12`,r:`1.5`}),(0,D.jsx)(`circle`,{cx:`19`,cy:`12`,r:`1.5`})]}),search:(0,D.jsxs)(`svg`,{...Q,children:[(0,D.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,D.jsx)(`path`,{d:`M21 21l-4.35-4.35`})]}),arrowUp:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M12 19V5m0 0l-7 7m7-7l7 7`})}),arrowDown:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M12 5v14m0 0l7-7m-7 7l-7-7`})}),arrowsUpDown:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M3 7.5L7.5 3m0 0L12 7.5M7.5 3v13.5m13.5 0L16.5 21m0 0L12 16.5m4.5 4.5V7.5`})}),funnel:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M12 3c2.755 0 5.455.232 8.083.678.533.09.917.556.917 1.096v1.044a2.25 2.25 0 01-.659 1.591l-5.432 5.432a2.25 2.25 0 00-.659 1.591v2.927a2.25 2.25 0 01-1.244 2.013L9.75 21v-6.568a2.25 2.25 0 00-.659-1.591L3.659 7.409A2.25 2.25 0 013 5.818V4.774c0-.54.384-1.006.917-1.096A48.32 48.32 0 0112 3z`})}),eyeSlash:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M3.98 8.223A10.477 10.477 0 001.934 12c1.292 4.338 5.31 7.5 10.066 7.5.993 0 1.953-.138 2.863-.395M6.228 6.228A10.45 10.45 0 0112 4.5c4.756 0 8.773 3.162 10.065 7.498a10.523 10.523 0 01-4.293 5.774M6.228 6.228L3 3m3.228 3.228l3.65 3.65m7.894 7.894L21 21m-3.228-3.228l-3.65-3.65m0 0a3 3 0 10-4.243-4.243m4.242 4.242L9.88 9.88`})}),viewColumns:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M9 4.5v15m6-15v15m-10.875 0h15.75c.621 0 1.125-.504 1.125-1.125V5.625c0-.621-.504-1.125-1.125-1.125H4.125C3.504 4.5 3 5.004 3 5.625v12.75c0 .621.504 1.125 1.125 1.125z`})}),copy:(0,D.jsxs)(`svg`,{...Q,children:[(0,D.jsx)(`path`,{d:`M8 4v12a2 2 0 002 2h8a2 2 0 002-2V7.242a2 2 0 00-.602-1.43L16.083 2.57A2 2 0 0014.685 2H10a2 2 0 00-2 2z`}),(0,D.jsx)(`path`,{d:`M16 18v2a2 2 0 01-2 2H6a2 2 0 01-2-2V9a2 2 0 012-2h2`})]}),checkDouble:(0,D.jsxs)(`svg`,{...Q,children:[(0,D.jsx)(`path`,{d:`M2 13l4 4L14 7`}),(0,D.jsx)(`path`,{d:`M9 13l4 4L21 7`})]}),wrench:(0,D.jsx)(`svg`,{...Q,children:(0,D.jsx)(`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z`})}),stop:(0,D.jsx)(`svg`,{...$,children:(0,D.jsx)(`rect`,{x:`6`,y:`6`,width:`12`,height:`12`,rx:`2`})}),microphone:(0,D.jsxs)(`svg`,{...Q,children:[(0,D.jsx)(`path`,{d:`M12 2a3 3 0 00-3 3v6a3 3 0 006 0V5a3 3 0 00-3-3z`}),(0,D.jsx)(`path`,{d:`M19 10v1a7 7 0 01-14 0v-1`}),(0,D.jsx)(`path`,{d:`M12 18v4m-4 0h8`})]})},la={};function ua(e){return e==null?null:typeof e==`string`?ki(e)?.icons??null:e.icons??null}function da(e,t){return ua(t)?.[e]??la[e]??ca[e]}var fa={root:{kmuXW:`x2lah0s`,$$css:!0},span:{k1xSpc:`x3nfvp2`,kGNEyG:`x6s0dn4`,kjj79g:`xl56j7k`,kmuXW:`x2lah0s`,$$css:!0}},pa={primary:{kMwMTN:`xtbr613`,$$css:!0},secondary:{kMwMTN:`xv9yike`,$$css:!0},tertiary:{kMwMTN:`xv9yike`,$$css:!0},disabled:{kMwMTN:`xqa6c3m`,$$css:!0},accent:{kMwMTN:`xqwr325`,$$css:!0},success:{kMwMTN:`xtjic6`,$$css:!0},error:{kMwMTN:`xjt36v0`,$$css:!0},warning:{kMwMTN:`xs3pv69`,$$css:!0},inherit:{kMwMTN:`x1heor9g`,$$css:!0},blue:{kMwMTN:`x1fns2mt`,$$css:!0},red:{kMwMTN:`xeffzf7`,$$css:!0},green:{kMwMTN:`xmxeech`,$$css:!0},gray:{kMwMTN:`x1eyinzz`,$$css:!0},cyan:{kMwMTN:`x157w0xa`,$$css:!0},teal:{kMwMTN:`x1f3zxcb`,$$css:!0},yellow:{kMwMTN:`x1g6zdft`,$$css:!0},orange:{kMwMTN:`xxu74a4`,$$css:!0},pink:{kMwMTN:`x1kxxfg5`,$$css:!0},purple:{kMwMTN:`xzdw94u`,$$css:!0}},ma={xsm:{kzqmXN:`x1jw3ynk`,kZKoxP:`xvle69y`,$$css:!0},sm:{kzqmXN:`xcdlrvm`,kZKoxP:`x1l36t39`,$$css:!0},md:{kzqmXN:`xwqq7k2`,kZKoxP:`xmll18r`,$$css:!0},lg:{kzqmXN:`xp8d6y2`,kZKoxP:`xam5rvr`,$$css:!0}},ha={xsm:{kzqmXN:`x1jw3ynk`,kZKoxP:`xvle69y`,kGuDYH:`xboafo0`,$$css:!0},sm:{kzqmXN:`xcdlrvm`,kZKoxP:`x1l36t39`,kGuDYH:`x1jchvi3`,$$css:!0},md:{kzqmXN:`xwqq7k2`,kZKoxP:`xmll18r`,kGuDYH:`x1603h9y`,$$css:!0},lg:{kzqmXN:`xp8d6y2`,kZKoxP:`xam5rvr`,kGuDYH:`xngnso2`,$$css:!0}};function ga(e){return e!=null&&e!==``?{role:`img`,"aria-label":e}:{"aria-hidden":`true`}}function _a({icon:e,color:t=`inherit`,size:n=`md`,label:r,ref:i,className:a,style:o,xstyle:s,...l}){let u=ga(r);return typeof e==`string`?(0,D.jsx)(va,{name:e,color:t,size:n,a11yProps:u,className:a,style:o,xstyle:s,spanProps:l}):(0,D.jsx)(e,{ref:i,...u,...x(v(`icon`,{size:n,color:t}),c(fa.root,pa[t],ma[n],s),a??void 0,o),...l})}_a.displayName=`Icon`;function va({name:e,color:t,size:n,a11yProps:r,className:i,style:a,xstyle:o,spanProps:s}){let l=da(e,aa());if(l==null)return null;let u=s??{};return(0,D.jsx)(`span`,{...r,...u,...x(v(`icon`,{size:n,color:t}),c(fa.span,pa[t],ha[n],o),i??void 0,a),children:l})}function ya(e,t){return typeof e==`string`||typeof e==`function`||typeof e==`object`&&e&&`render`in e?(0,D.jsx)(_a,{icon:e,...t}):e}export{Be as A,Le as B,lt as C,We as D,Ge as E,Me as F,k as G,he as H,Re as I,E as J,ue as K,Ie as L,Fe as M,He as N,ze as O,Pe as P,Ue as R,dt as S,Ye as T,ge as U,Oe as V,_e as W,zn as _,oa as a,pt as b,ki as c,wi as d,Yr as f,cr as g,or as h,sa as i,je as j,ke as k,Oi as l,Ci as m,ya as n,aa as o,di as p,ce as q,q as r,Mi as s,_a as t,Ti as u,Rn as v,Xe as w,ft as x,Ln as y,Ae as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{K as t,j as n,l as r,n as ee,q as i}from"./themeProps-CkLe5zXY.js";import{n as te}from"./useIsomorphicLayoutEffect-BiEJxDg_.js";import{a as ne}from"./useMediaQuery-twbHF0pO.js";import{C as re,E as ie,S as ae,W as oe,_ as se,b as ce}from"./Icon-DPaLmsmh.js";var a=e(i(),1);function o({children:e,as:t=`span`,ref:n,...r}){return(0,a.createElement)(t,{ref:n,...r,className:`x10l6tqk x1i1rx1s xjm9jq1 xkdpibf x1717udv xb3r6kr xzpqnlu xuxw1ft xng3xce x13vifvy x1o0tod x47corl x87ps6o`},e)}o.displayName=`VisuallyHidden`;var s=`data-astryx-edge-comp`,c={keTefX:`x1kftj4p`,k71WvV:`x92e2el`,$$css:!0},l={inset:e=>[c,{"--x-126w13d":(e=>typeof e==`number`?e+`px`:e??void 0)(`calc(-1 * ${e})`),"--x-4drmnv":(e=>typeof e==`number`?e+`px`:e??void 0)(`calc(-1 * ${e})`)}]},u=(0,a.createContext)(null);u.displayName=`ButtonGroupContext`;function le(){return(0,a.use)(u)}var d=(0,a.createContext)(null);d.displayName=`LinkContext`;function f(e){function t({href:t,ref:n,...r}){return(0,a.createElement)(e,{ref:n,href:t,to:t,...r})}return t.displayName=`LinkWithTo(${typeof e==`string`?e:e.displayName||e.name||`Component`})`,t}function p(e){let t=(0,a.use)(d),n=e??t?.component??`a`;return(0,a.useMemo)(()=>n===`a`?`a`:f(n),[n])}var m=r(),h={base:{"--button-focus-offset":`x16bblx1`,kInvED:`x1wfwxd8 x13aywxo`,kVAEAm:`x1n2onr6`,k1xSpc:`x3nfvp2`,kGNEyG:`x6s0dn4`,kjj79g:`xl56j7k`,kOIVth:`x1txdalj`,k8WAf4:`xce4md1`,kg3NbH:`xrrkdod`,kMzoRj:`xc342km`,ksu8eU:`xng3xce`,kaIpWk:`x1jxw6zd`,kMv6JI:`xjb2p0i`,kGuDYH:`xcr08ib`,kLWn49:`x1kq96og`,k63SB2:`x1e4wzip`,khDVqt:`xuxw1ft`,kkrTdU:`x1ypdohk x16khyan`,k1ekBW:`xrafxwg`,kIyJzY:`xuedmi6 x12w9bfk`,kAMwcw:`xlr8y92`,$$css:!0},pressable:{k3aq6I:`x3oybdh x8ppqj`,$$css:!0},inactive:{kkrTdU:`xt0e3qv`,kKwaWg:`x18o3ruo`,k3aq6I:`x1c071of x1pdlv7q`,$$css:!0},disabled:{kSiTet:`xbyyjgo`,$$css:!0},ariaDisabled:{kKwaWg:`x18o3ruo xuqm82a`,$$css:!0},iconOnly:{"--button-icon-only-aspect":`x1v15ycx`,kOBAk4:`xioom0i`,kg3NbH:`xnjsko4`,k8WAf4:`xt970qd`,$$css:!0},iconWrapper:{k1xSpc:`x3nfvp2`,kGNEyG:`x6s0dn4`,kjj79g:`xl56j7k`,kmuXW:`x2lah0s`,$$css:!0},contentWrapper:{k1xSpc:`xjp7ctv`,$$css:!0},link:{kybGjl:`x1hl2dhg`,$$css:!0}},g={width:e=>[{kzqmXN:e==null?e:`x5lhr3w`,$$css:!0},{"--x-width":(e=>typeof e==`number`?e+`px`:e??void 0)(e)}]},_={sm:{kZKoxP:`x6k0iem`,$$css:!0},md:{kZKoxP:`x1ueg155`,$$css:!0},lg:{kZKoxP:`xssyfek`,$$css:!0}},v={sm:{kzqmXN:`x1kky2od`,kZKoxP:`xlup9mm`,kGuDYH:`x1j61zf2`,$$css:!0},md:{kzqmXN:`x1kky2od`,kZKoxP:`xlup9mm`,kGuDYH:`x1j61zf2`,$$css:!0},lg:{kzqmXN:`xw4jnvo`,kZKoxP:`x1qx5ct2`,kGuDYH:`xwsyq91`,$$css:!0}},y={none:{kGVxlE:`x1gnnqk1`,$$css:!0},low:{kGVxlE:`x1i5ehqx`,$$css:!0},med:{kGVxlE:`x14hfi27`,$$css:!0},high:{kGVxlE:`x1kcpxr7`,$$css:!0}},b={primary:{kWkggS:`x1ewilqj`,kMwMTN:`x17wrial`,$$css:!0},secondary:{kWkggS:`x17x4s8c`,kMwMTN:`x1tgivj0`,$$css:!0},ghost:{kWkggS:`xjbqb8w`,kMwMTN:`x1tgivj0`,$$css:!0},destructive:{kWkggS:`x1pjz0fi`,kMwMTN:`x1m024r3`,kjBf7l:`x1e0x2sz`,$$css:!0}};n[`--duration-medium-min`];var x={hiddenContent:{kMwMTN:`x19co3pv`,$$css:!0},hiddenContentDelayed:{kKVMdj:`x1ffowhz`,k44tkh:`xjlvqhv`,kWV6AL:`x10e4vud`,kKxzle:`x17yabm6 x14q22ui`,$$css:!0}},S={horizontal:{krdFHd:`x15mokao x8eehn2`,kVL7Gh:`xbiv7yw x1xrp5p4`,kfmiAY:`x1ga7v0g x1tzxhge`,kT0f0o:`x16uus16 x1rmb4wm`,k2ei4v:`xgbv0en x1pjv70x`,kVhnKS:`x1t7ytsu xyf0ibl`,kGJrpR:`x1j92z86`,$$css:!0},vertical:{krdFHd:`x15mokao x8eehn2`,kfmiAY:`x1ga7v0g x2qxyot`,kVL7Gh:`xbiv7yw xturttb`,kT0f0o:`x16uus16 x1rmb4wm`,kEafiO:`x11xkdxz x1g31smg`,kPef9Z:`x13fuv20 x1d9v4yf`,kLZC3w:`x1pc3f07`,$$css:!0},onSolidHorizontal:{kGJrpR:`xrvmtm5`,$$css:!0},onSolidVertical:{kLZC3w:`x11npmm7`,$$css:!0}};function C({label:e,variant:n=`secondary`,size:r,type:i=`button`,isDisabled:c=!1,isLoading:l=!1,isInterruptible:u=!1,clickAction:d,icon:f,isIconOnly:C=!1,width:w,elevation:T=`none`,children:E,endContent:D,tooltip:O,href:k,as:ue,target:de,rel:fe,xstyle:A,className:pe,style:me,ref:he,...j}){let M=se(),N=ae(r,`md`),P=le(),[F,I]=(0,a.useTransition)(),L=(0,a.useRef)(!1),R=l||F,z=F||u,B=P?.isDisabled??!1,V=c||B||R&&!u,ge=c||B,_e=p(ue),H=k!=null&&!V,U=O!=null&&V,W=te({placement:`above`,isEnabled:O!=null}),G=e=>{if(V||L.current&&!u){e.preventDefault();return}j.onClick?.(e),d&&!e.defaultPrevented&&(L.current=!0,I(async()=>{try{await d(e)}finally{L.current=!1}}))},K=U?e=>{e.key===`Enter`||e.key===` `?e.preventDefault():j.onKeyDown?.(e)}:void 0,q=n===`ghost`?{[s]:``}:null,ve=oe.focusVisible(h.base,_[N],C&&h.iconOnly,ce.backgroundImage,V&&h.inactive,ge&&h.disabled,U&&h.ariaDisabled,H&&h.link,!P&&h.pressable,P&&(P.orientation===`horizontal`?S.horizontal:S.vertical),P&&(n===`primary`||n===`destructive`)&&(P.orientation===`horizontal`?S.onSolidHorizontal:S.onSolidVertical),!P&&y[T],w!=null&&g.width(w),b[n],A),J=ne(ee(`button`,{variant:n,size:N,elevation:P?`none`:T}),ve,pe,me),Y=(0,m.jsxs)(m.Fragment,{children:[R&&(0,m.jsx)(`span`,{...{0:{className:`x10l6tqk x13vifvy x1o0tod xtijo5x x1ey2m1c xrvj5dj x1ku5rj1`},1:{className:`x10l6tqk x13vifvy x1o0tod xtijo5x x1ey2m1c xrvj5dj x1ku5rj1 xqcmdr3 xb2rp9n xskzprw x17yabm6 x14q22ui`}}[!!z<<0],"aria-hidden":`true`,children:(0,m.jsx)(re,{size:`sm`,shade:`inherit`})}),(0,m.jsxs)(`span`,{...t(h.contentWrapper,R&&(z?x.hiddenContentDelayed:x.hiddenContent)),"aria-hidden":R||void 0,children:[f&&(0,m.jsx)(`span`,{...t(h.iconWrapper,v[N]),children:f}),C?null:(0,m.jsx)(`span`,{className:`xb3r6kr xlyipyv xeuugli`,children:E??e}),!C&&D&&(0,m.jsx)(`span`,{className:`x3nfvp2 x6s0dn4 x1heor9g`,children:D})]}),(0,m.jsx)(o,{role:`status`,"aria-live":`polite`,children:R?M(`@astryx.button.loading`):``})]}),X=C&&e!==``||R&&!C||E!=null&&E!==e?{"aria-label":e}:null,Z=O==null?null:{"aria-describedby":[j[`aria-describedby`],W.describedBy].filter(Boolean).join(` `)||void 0},Q=ie(he,O==null?void 0:W.ref),$;return $=H?(0,m.jsx)(_e,{ref:Q,href:k,target:de,rel:fe,...J,...j,...X,...Z,...q,"aria-busy":R||void 0,onClick:G,children:Y}):(0,m.jsx)(`button`,{ref:Q,type:i,disabled:U?void 0:V,...J,...j,...X,...Z,...q,"aria-busy":R||void 0,"aria-disabled":U||void 0,onClick:G,...K?{onKeyDown:K}:null,children:Y}),O?(0,m.jsxs)(m.Fragment,{children:[$,W.renderTooltip(O)]}):$}C.displayName=`Button`;function w({icon:e,...t}){return(0,m.jsx)(C,{...t,icon:e,isIconOnly:!0})}w.displayName=`IconButton`;export{s as a,d as i,C as n,l as o,p as r,o as s,w as t};
|