koboyo 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -1
- package/assets/editor/assets/DialogDescription-Ddhk2rmF.js +1 -0
- package/assets/editor/assets/DialogRoot-DUeVfNhS.js +1 -0
- package/assets/editor/assets/DialogTitle-D5au2NAn.js +1 -0
- package/assets/editor/assets/FloatingPortalLite-HnWQWrLk.js +1 -0
- package/assets/editor/assets/{IconAlertTriangle-CxPhYpe-.js → IconAlertTriangle-B33xznYN.js} +1 -1
- package/assets/editor/assets/{IconArrowLeft-DFk3Krim.js → IconArrowLeft-B4Zcy-Fc.js} +1 -1
- package/assets/editor/assets/IconChevronLeft-D7e7QC0h.js +1 -0
- package/assets/editor/assets/IconChevronRight-csfMBSUs.js +1 -0
- package/assets/editor/assets/{IconCode-hd05zxU4.js → IconCode-CHIz1nCU.js} +1 -1
- package/assets/editor/assets/IconCornerDownRight-DDiBMO4O.js +1 -0
- package/assets/editor/assets/{IconEraser-DlZQe3-r.js → IconEraser-CYfXj27R.js} +1 -1
- package/assets/editor/assets/{IconFocusCentered-C5PcDeR0.js → IconFocusCentered-Cn8rbfRI.js} +1 -1
- package/assets/editor/assets/IconHelp-CaEwHrsN.js +2 -0
- package/assets/editor/assets/IconLink-VS5p9Ytk.js +1 -0
- package/assets/editor/assets/IconLoader2-CzCTn-Sn.js +1 -0
- package/assets/editor/assets/IconMinus-BcaDLts8.js +1 -0
- package/assets/editor/assets/{IconMoodSmile-Bic_fw54.js → IconMoodSmile-CSZ5p_Hy.js} +1 -1
- package/assets/editor/assets/{IconPencil-C5Y-Y4dC.js → IconPencil-D_pQsAyv.js} +1 -1
- package/assets/editor/assets/{IconPhoto-CR36IK-b.js → IconPhoto-5zuCDtnR.js} +1 -1
- package/assets/editor/assets/{IconPlayerPlayFilled-D4OODBX7.js → IconPlayerPlayFilled-DVAWmYt7.js} +1 -1
- package/assets/editor/assets/{IconPlayerStopFilled-BUbX6ZO5.js → IconPlayerStopFilled-D4qdct2R.js} +1 -1
- package/assets/editor/assets/IconPlus-D4tAoi-A.js +1 -0
- package/assets/editor/assets/{IconPresentation-DCrY3PKL.js → IconPresentation-BMKzt7fv.js} +1 -1
- package/assets/editor/assets/{IconSearch-C1K0_Pq_.js → IconSearch-CCpMt02s.js} +1 -1
- package/assets/editor/assets/{IconSparkles-WDcg8BA9.js → IconSparkles-CnCp3BCQ.js} +1 -1
- package/assets/editor/assets/{IconTrash-DbN_RxB7.js → IconTrash-C8w6ThWx.js} +1 -1
- package/assets/editor/assets/{IconUsers-Bwnyj4mm.js → IconUsers-Dp85N225.js} +1 -1
- package/assets/editor/assets/IconX-KrRqxr2j.js +1 -0
- package/assets/editor/assets/MenuSubmenuTrigger-KacA9GM8.js +1 -0
- package/assets/editor/assets/PopoverPopup-B3Y0VRYc.js +1 -0
- package/assets/editor/assets/{asset-glyph-B3c--Mx2.js → asset-glyph-C1E6cGwM.js} +1 -1
- package/assets/editor/assets/billing-BSXr-z2r.js +1 -0
- package/assets/editor/assets/build-pips-BV-uwXlP.js +1 -0
- package/assets/editor/assets/build-visibility-DyML9SHt.js +1 -0
- package/assets/editor/assets/builders-DMHAOPEv.js +1 -0
- package/assets/editor/assets/{chart-Z4HQx-0h.js → chart-4iRduYdU.js} +4 -4
- package/assets/editor/assets/{chrome-layout-B8YmHznO.js → chrome-layout-BzPU9far.js} +1 -1
- package/assets/editor/assets/{code-panel-BfsykjSz.js → code-panel-koBUgEWp.js} +7 -7
- package/assets/editor/assets/command-palette-BR-_ChOL.js +1 -0
- package/assets/editor/assets/config-D8b1QyEk.js +1 -0
- package/assets/editor/assets/connector-labels-CrEgadsC.js +2 -0
- package/assets/editor/assets/copy-image-dialog-BzGP7Xw8.js +1 -0
- package/assets/editor/assets/{core-CBnmD9hT.js → core-CmsJyU_-.js} +1 -1
- package/assets/editor/assets/createReactComponent-C51FAx3B.js +1 -0
- package/assets/editor/assets/{diagram-fingerprint-CsqZK4xZ.js → diagram-fingerprint-WGQ5iVXx.js} +1 -1
- package/assets/editor/assets/dialog-DnXgEbpz.js +1 -0
- package/assets/editor/assets/{edit-BJ_kibk8.js → edit-C0sBxxsg.js} +1 -1
- package/assets/editor/assets/editor-BeufBV54.js +1 -0
- package/assets/editor/assets/{elk-api-DnfklSaw.js → elk-api-C4wlHVIw.js} +1 -1
- package/assets/editor/assets/{elk-worker-loader-CC-I9MmI.js → elk-worker-loader-CVBdN1je.js} +1 -1
- package/assets/editor/assets/{export-ChP0k5F5.js → export-Bce6ra0N.js} +1 -1
- package/assets/editor/assets/export-K2VWg76n.js +6 -0
- package/assets/editor/assets/export-dialog-x2n2a4KX.js +1 -0
- package/assets/editor/assets/flow-layer-ewaL7g2y.js +1 -0
- package/assets/editor/assets/flow-panel-BzXNGGke.js +1 -0
- package/assets/editor/assets/flow-stage-Ba_CAggI.js +1 -0
- package/assets/editor/assets/flow-start-CpAvU-9P.js +1 -0
- package/assets/editor/assets/{flows-GGbkNqs8.js → flows-Cj7AFMIA.js} +2 -2
- package/assets/editor/assets/frames-Cp1QD3LR.js +1 -0
- package/assets/editor/assets/icon-picker-Cg39IKNJ.js +1 -0
- package/assets/editor/assets/image-library-JQu_tb8P.js +1 -0
- package/assets/editor/assets/index-CBPPqsiR.js +24 -0
- package/assets/editor/assets/{index-CC2h28V_.css → index-DBrN0u0i.css} +1 -1
- package/assets/editor/assets/jsx-runtime-DKdBMi_L.js +1 -0
- package/assets/editor/assets/layout-offthread-mRHRulkS.js +18 -0
- package/assets/editor/assets/{layout.worker-BIE1_z0S.js → layout.worker-CekYkaxO.js} +2 -2
- package/assets/editor/assets/menu-B9BAk63v.js +1 -0
- package/assets/editor/assets/panel-controls-DWVXiNUZ.js +1 -0
- package/assets/editor/assets/{panel-shell-CG2aq4Ia.js → panel-shell-BnMOHgWM.js} +1 -1
- package/assets/editor/assets/{plan-jQm1jDpt.js → plan-CkgM52Yh.js} +1 -1
- package/assets/editor/assets/presentation-DJUO0t7I.js +1 -0
- package/assets/editor/assets/presenter-keys-Bs3LnmOa.js +1 -0
- package/assets/editor/assets/{jsx-runtime-2Zwg-L3c.js → react-lCSYwAWP.js} +1 -1
- package/assets/editor/assets/reflow-DaYiVkwp.js +1 -0
- package/assets/editor/assets/registry-rEGZW7Ab.js +1 -0
- package/assets/editor/assets/renderer-environment-D3n3hbug.js +1 -0
- package/assets/editor/assets/ride-overlay-Hx90v4ZK.js +1 -0
- package/assets/editor/assets/selection-overlay-primitives-BRp854AD.js +1 -0
- package/assets/editor/assets/shape-meta-COE2ATNh.js +1 -0
- package/assets/editor/assets/sign-in-dialog-tmQEB2bx.js +1 -0
- package/assets/editor/assets/slide-notes-dialog-BQBXpep6.js +1 -0
- package/assets/editor/assets/slides-D686obFO.js +15 -0
- package/assets/editor/assets/slides-panel-BEJCevJi.js +26 -0
- package/assets/editor/assets/text-breaks-DM4W6y5f.js +7 -0
- package/assets/editor/assets/{theme-palette-D1nbDFBC.js → theme-palette-Dl_G_VIJ.js} +1 -1
- package/assets/editor/assets/tidy-browser-dF3BON7J.js +1 -0
- package/assets/editor/assets/tidy-scope-BGG3ZXvZ.js +1 -0
- package/assets/editor/assets/toast-Czv_DJ-4.js +1 -0
- package/assets/editor/assets/tool-catalog-DXPhX2S1.js +1 -0
- package/assets/editor/assets/tool-drawer-CWOX_njp.js +1 -0
- package/assets/editor/assets/tooltip-CyBz17g8.js +1 -0
- package/assets/editor/assets/tree-KSgPjntC.js +1 -0
- package/assets/editor/assets/upgrade-dialog-DhSZnDpx.js +1 -0
- package/assets/editor/assets/use-drag-reorder-ye8-kpyR.js +1 -0
- package/assets/editor/assets/use-export-command-sC9UHj3_.js +2 -0
- package/assets/editor/assets/use-grid-keyboard-nav-DhQKecO1.js +0 -0
- package/assets/editor/assets/use-icon-node-BxqH7H27.js +1 -0
- package/assets/editor/assets/use-key-held-094C3Mn3.js +1 -0
- package/assets/editor/assets/use-recent-list-DuazDypH.js +1 -0
- package/assets/editor/assets/useAnchoredPopupScrollLock-i8D5Dm1d.js +1 -0
- package/assets/editor/assets/useBaseUiId-D2RfU0uY.js +1 -0
- package/assets/editor/assets/useButton-CLQYGhRJ.js +1 -0
- package/assets/editor/assets/useControlled-BE8zdmih.js +1 -0
- package/assets/editor/assets/usePositioner-AtbrPc7w.js +1 -0
- package/assets/editor/assets/useScrollLock-CQpr0n6U.js +1 -0
- package/assets/editor/assets/useValueChanged-SqLfIDi5.js +1 -0
- package/assets/editor/assets/web-controls-CLE9zr7i.js +1 -0
- package/assets/editor/assets/web-embed-dialog-XUNelFFM.js +1 -0
- package/assets/editor/assets/web-html-dialog-BcAyzH5D.js +1 -0
- package/assets/editor/assets/web-shape-C941TGTy.js +1 -0
- package/assets/editor/assets/widget-source-CHujvUeA.js +1 -0
- package/assets/editor/index.html +73 -69
- package/dist/koboyo.js +258 -214
- package/package.json +5 -5
- package/skills/koboyo/SKILL.md +22 -2
- package/skills/koboyo/references/architecture.md +1 -1
- package/skills/koboyo/references/bpmn.md +1 -1
- package/skills/koboyo/references/chart.md +1 -1
- package/skills/koboyo/references/cycle.md +1 -1
- package/skills/koboyo/references/erd.md +1 -1
- package/skills/koboyo/references/flowchart.md +1 -1
- package/skills/koboyo/references/funnel.md +1 -1
- package/skills/koboyo/references/gantt.md +1 -1
- package/skills/koboyo/references/gitgraph.md +1 -1
- package/skills/koboyo/references/journey.md +1 -1
- package/skills/koboyo/references/matrix.md +1 -1
- package/skills/koboyo/references/mindmap.md +1 -1
- package/skills/koboyo/references/orgchart.md +1 -1
- package/skills/koboyo/references/pyramid.md +1 -1
- package/skills/koboyo/references/sankey.md +1 -1
- package/skills/koboyo/references/sequence.md +1 -1
- package/skills/koboyo/references/statemachine.md +1 -1
- package/skills/koboyo/references/timeline.md +1 -1
- package/skills/koboyo/references/venn.md +1 -1
- package/skills/koboyo/references/wireframe.md +1 -1
- package/assets/editor/assets/DialogDescription-ZtZCUsfy.js +0 -1
- package/assets/editor/assets/DialogRoot-mHGRFW9m.js +0 -1
- package/assets/editor/assets/DialogTitle-CFhr-gP9.js +0 -1
- package/assets/editor/assets/FloatingPortalLite-Bf0q6fmL.js +0 -1
- package/assets/editor/assets/IconArrowBackUp-Brd2WpCh.js +0 -1
- package/assets/editor/assets/IconChevronLeft-BR0iwdRI.js +0 -1
- package/assets/editor/assets/IconChevronRight-DBDnxPYT.js +0 -1
- package/assets/editor/assets/IconHelp-DKNacRqS.js +0 -2
- package/assets/editor/assets/IconLoader2-BQaF1LKo.js +0 -1
- package/assets/editor/assets/IconMinus-y4ejub-s.js +0 -1
- package/assets/editor/assets/IconNote-CSELvWzx.js +0 -1
- package/assets/editor/assets/IconPlus-BbmieIBT.js +0 -1
- package/assets/editor/assets/IconX-AlbPkO_g.js +0 -1
- package/assets/editor/assets/MenuSubmenuTrigger-CpN67g09.js +0 -1
- package/assets/editor/assets/PopoverPopup-BqGWd_uB.js +0 -1
- package/assets/editor/assets/billing-C-BNGM3Z.js +0 -1
- package/assets/editor/assets/build-pips-CIaHaEPB.js +0 -1
- package/assets/editor/assets/build-visibility-E1mHeDCW.js +0 -1
- package/assets/editor/assets/builders-DbF28yId.js +0 -1
- package/assets/editor/assets/command-palette-BjFnQHnz.js +0 -1
- package/assets/editor/assets/config-a_lz-57R.js +0 -1
- package/assets/editor/assets/connector-labels-vVnYQJRz.js +0 -2
- package/assets/editor/assets/copy-image-dialog-CCY_6fM4.js +0 -1
- package/assets/editor/assets/createReactComponent-9UsI5fmM.js +0 -1
- package/assets/editor/assets/dialog-B32krrce.js +0 -1
- package/assets/editor/assets/editor-B0tARd79.js +0 -1
- package/assets/editor/assets/export-DEFKKRRi.js +0 -6
- package/assets/editor/assets/export-dialog-DPg1uzX5.js +0 -1
- package/assets/editor/assets/flow-layer-BC35drcK.js +0 -1
- package/assets/editor/assets/flow-panel-D_K9wgZi.js +0 -1
- package/assets/editor/assets/flow-stage-fiF5Nggn.js +0 -1
- package/assets/editor/assets/flow-start-ccYJ2KB9.js +0 -1
- package/assets/editor/assets/frames-CRP8oPP8.js +0 -1
- package/assets/editor/assets/icon-picker-NboB5Fvv.js +0 -1
- package/assets/editor/assets/image-library-Bb6bV6eK.js +0 -1
- package/assets/editor/assets/index-DfNbwHl_.js +0 -24
- package/assets/editor/assets/layout-offthread-BwetpTFH.js +0 -18
- package/assets/editor/assets/menu-BPrc8Ara.js +0 -1
- package/assets/editor/assets/panel-controls-DYZ7QFT5.js +0 -1
- package/assets/editor/assets/presentation-BavfNtxp.js +0 -1
- package/assets/editor/assets/presenter-keys-DVQcBdy1.js +0 -1
- package/assets/editor/assets/reflow-Cv75wPSh.js +0 -1
- package/assets/editor/assets/registry-DCgwH8wI.js +0 -1
- package/assets/editor/assets/renderer-environment-DmWXvuT4.js +0 -1
- package/assets/editor/assets/ride-overlay-DhygYdx1.js +0 -1
- package/assets/editor/assets/selection-overlay-primitives-hWJ1xjF7.js +0 -1
- package/assets/editor/assets/shape-meta-BpwsiB82.js +0 -1
- package/assets/editor/assets/sign-in-dialog-DRooo5xw.js +0 -1
- package/assets/editor/assets/slide-notes-dialog-DLdTmd7_.js +0 -1
- package/assets/editor/assets/slides-D9bnXqtf.js +0 -15
- package/assets/editor/assets/slides-panel-DV-zQJhV.js +0 -26
- package/assets/editor/assets/text-breaks-YU-ymaF9.js +0 -7
- package/assets/editor/assets/tidy-browser-BwodBnAH.js +0 -1
- package/assets/editor/assets/tidy-scope-BgBSUklT.js +0 -1
- package/assets/editor/assets/toast-Nu_fiCd9.js +0 -1
- package/assets/editor/assets/tool-catalog-ChSwaLIq.js +0 -1
- package/assets/editor/assets/tool-drawer-CG7-cnML.js +0 -1
- package/assets/editor/assets/tooltip-DgEojto1.js +0 -1
- package/assets/editor/assets/tree-rq4RTGgw.js +0 -1
- package/assets/editor/assets/upgrade-dialog-DpZeaLDB.js +0 -1
- package/assets/editor/assets/use-drag-reorder-C3h4ZMoZ.js +0 -1
- package/assets/editor/assets/use-export-command-CPc7qug1.js +0 -2
- package/assets/editor/assets/use-grid-keyboard-nav-B88Qw-cQ.js +0 -0
- package/assets/editor/assets/use-icon-node-DJZFjABX.js +0 -1
- package/assets/editor/assets/use-recent-list-BEG0iBIm.js +0 -1
- package/assets/editor/assets/useAnchoredPopupScrollLock-BGKchwpi.js +0 -1
- package/assets/editor/assets/useBaseUiId-C0Zm5sUV.js +0 -1
- package/assets/editor/assets/useButton-D3eS7fh5.js +0 -1
- package/assets/editor/assets/useControlled-C5xhvPXX.js +0 -1
- package/assets/editor/assets/usePositioner-DA3aR0-T.js +0 -1
- package/assets/editor/assets/useScrollLock-B7mQdXyv.js +0 -1
- package/assets/editor/assets/useValueChanged-p8z-93L4.js +0 -1
|
@@ -5,7 +5,7 @@ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=
|
|
|
5
5
|
`)&&(n+=`
|
|
6
6
|
`),n+=Yt(r,i===`ul`||i===`ol`?t+1:t);return}n+=Yt(r,t)}),n}function Xt(e){return e?Ut(e)?Yt(Jt(e)):e:``}function Zt(e){return Ut(e)?e.replace(/\u200B/g,``).replace(/<(?:br|\/li|\/div|\/p|\/ul|\/ol)[^>]*>/gi,`
|
|
7
7
|
`).replace(/<li[^>]*>/gi,`• `).replace(/<[^>]+>/g,``).replace(/&[a-z#0-9]+;/gi,`*`).replace(/\n+/g,`
|
|
8
|
-
`).replace(/^\n|\n$/g,``):e}function Qt(e){return Kt()?Xt(e):Zt(e)}function $t(e){return e>=11904&&e<=42191||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65280&&e<=65376||e>=126976}function F(e,t){let n=0;for(let t of e){let e=t.codePointAt(0)??0;if(e>=32&&e<=126){n+=(`93B[bw]4ABK]0B2IVCVYXUXMVU23]]]OuX_bc]Wec<R[UpefZhbXWcYtTVXBG?PY1TTQUW<US56M4lTTUVAM<SL^KILG3Ga`.charCodeAt(e-32)-32)/100;continue}n+=$t(e)?1:.55}return n*t}const en={rectangle:{geometry:`box`,color:!0,fill:!0,stroke:!0,dash:!0,font:`stored`,arrowEnds:!1,textField:`label`,edit:`text`,search:`label`,hit:`bounds`,animate:`box`,rotatable:!0},arrow:{geometry:`connector`,color:!0,fill:!1,stroke:!0,dash:!0,font:`optional`,arrowEnds:!0,textField:`label`,edit:`text`,search:`label`,hit:`stroke`,animate:`path`,rotatable:!0},text:{geometry:`text`,color:!0,fill:!1,stroke:!1,dash:!1,font:`stored`,arrowEnds:!1,textField:`text-or-delete`,edit:`text`,search:`text`,hit:`bounds`,animate:`text`,rotatable:!0},sticky:{geometry:`box`,color:!1,fill:!0,stroke:!1,dash:!1,font:`stored`,arrowEnds:!1,textField:`text`,edit:`text`,search:`text`,hit:`bounds`,animate:`text`,rotatable:!0},draw:{geometry:`points`,color:!0,fill:!1,stroke:!0,dash:!1,font:`none`,arrowEnds:!1,textField:`text-or-delete`,edit:`none`,search:`none`,hit:`stroke`,animate:`path`,rotatable:!0},polygon:{geometry:`points`,color:!0,fill:!0,stroke:!0,dash:!1,font:`none`,arrowEnds:!1,textField:`text-or-delete`,edit:`vertices`,search:`none`,hit:`bounds`,animate:`box`,rotatable:!0},line:{geometry:`points`,color:!0,fill:!1,stroke:!0,dash:!0,font:`optional`,arrowEnds:!0,textField:`label`,edit:`none`,search:`label`,hit:`stroke`,animate:`path`,rotatable:!0},image:{geometry:`box`,color:!1,fill:!1,stroke:!1,dash:!1,font:`none`,arrowEnds:!1,textField:`text-or-delete`,edit:`crop`,search:`none`,hit:`bounds`,animate:`box`,rotatable:!0},icon:{geometry:`box`,color:!0,fill:!1,stroke:!0,dash:!1,font:`stored`,arrowEnds:!1,textField:`label`,edit:`none`,search:`label-and-name`,hit:`bounds`,animate:`box`,rotatable:!0},figure:{geometry:`box`,color:!0,fill:!1,stroke:!1,dash:!1,font:`none`,arrowEnds:!1,textField:`label`,edit:`none`,search:`label`,hit:`outline`,animate:`box`,rotatable:!1},table:{geometry:`table`,color:!0,fill:!1,stroke:!1,dash:!1,font:`stored`,arrowEnds:!1,textField:`text-or-delete`,edit:`none`,search:`cells`,hit:`bounds`,animate:`box`,rotatable:!1},chart:{geometry:`box`,color:!0,fill:!1,stroke:!1,dash:!1,font:`stored`,arrowEnds:!1,textField:`text-or-delete`,edit:`none`,search:`cells`,hit:`bounds`,animate:`box`,rotatable:!0},control:{geometry:`box`,color:!0,fill:!1,stroke:!1,dash:!1,font:`stored`,arrowEnds:!1,textField:`label`,edit:`none`,search:`label`,hit:`bounds`,animate:`box`,rotatable:!0}};function tn(e){return e.type===`control`&&e.kind===`lifeline`?!1:en[e.type].rotatable}function nn(e){return en[e.type].geometry===`box`}function rn(e){throw Error(`Unhandled shape type: ${e.type??`unknown`}`)}function I(e,t){if(nn(e))return{x:Math.min(e.x,e.x+e.width),y:Math.min(e.y,e.y+e.height),width:Math.abs(e.width),height:Math.abs(e.height)};if(e.type===`arrow`)return Et(e);if(e.type===`draw`||e.type===`polygon`||e.type===`line`)return kt(e.points);if(e.type===`table`)return{x:e.x,y:e.y,width:e.colWidths.reduce((e,t)=>e+t,0),height:e.rowHeights.reduce((e,t)=>e+t,0)};if(e.type===`text`){let n=t?.textBounds(e.id);if(n)return{x:e.x,y:e.y,width:n.width,height:n.height};let r=Zt(e.text).split(`
|
|
8
|
+
`).replace(/^\n|\n$/g,``):e}function Qt(e){return Kt()?Xt(e):Zt(e)}function $t(e){return e>=11904&&e<=42191||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65280&&e<=65376||e>=126976}function F(e,t){let n=0;for(let t of e){let e=t.codePointAt(0)??0;if(e>=32&&e<=126){n+=(`93B[bw]4ABK]0B2IVCVYXUXMVU23]]]OuX_bc]Wec<R[UpefZhbXWcYtTVXBG?PY1TTQUW<US56M4lTTUVAM<SL^KILG3Ga`.charCodeAt(e-32)-32)/100;continue}n+=$t(e)?1:.55}return n*t}const en={rectangle:{geometry:`box`,color:!0,fill:!0,stroke:!0,dash:!0,font:`stored`,arrowEnds:!1,textField:`label`,edit:`text`,search:`label`,hit:`bounds`,animate:`box`,rotatable:!0},arrow:{geometry:`connector`,color:!0,fill:!1,stroke:!0,dash:!0,font:`optional`,arrowEnds:!0,textField:`label`,edit:`text`,search:`label`,hit:`stroke`,animate:`path`,rotatable:!0},text:{geometry:`text`,color:!0,fill:!1,stroke:!1,dash:!1,font:`stored`,arrowEnds:!1,textField:`text-or-delete`,edit:`text`,search:`text`,hit:`bounds`,animate:`text`,rotatable:!0},sticky:{geometry:`box`,color:!1,fill:!0,stroke:!1,dash:!1,font:`stored`,arrowEnds:!1,textField:`text`,edit:`text`,search:`text`,hit:`bounds`,animate:`text`,rotatable:!0},draw:{geometry:`points`,color:!0,fill:!1,stroke:!0,dash:!1,font:`none`,arrowEnds:!1,textField:`text-or-delete`,edit:`none`,search:`none`,hit:`stroke`,animate:`path`,rotatable:!0},polygon:{geometry:`points`,color:!0,fill:!0,stroke:!0,dash:!1,font:`none`,arrowEnds:!1,textField:`text-or-delete`,edit:`vertices`,search:`none`,hit:`bounds`,animate:`box`,rotatable:!0},line:{geometry:`points`,color:!0,fill:!1,stroke:!0,dash:!0,font:`optional`,arrowEnds:!0,textField:`label`,edit:`none`,search:`label`,hit:`stroke`,animate:`path`,rotatable:!0},image:{geometry:`box`,color:!1,fill:!1,stroke:!1,dash:!1,font:`none`,arrowEnds:!1,textField:`text-or-delete`,edit:`crop`,search:`none`,hit:`bounds`,animate:`box`,rotatable:!0},icon:{geometry:`box`,color:!0,fill:!1,stroke:!0,dash:!1,font:`stored`,arrowEnds:!1,textField:`label`,edit:`none`,search:`label-and-name`,hit:`bounds`,animate:`box`,rotatable:!0},figure:{geometry:`box`,color:!0,fill:!1,stroke:!1,dash:!1,font:`none`,arrowEnds:!1,textField:`label`,edit:`none`,search:`label`,hit:`outline`,animate:`box`,rotatable:!1},table:{geometry:`table`,color:!0,fill:!1,stroke:!1,dash:!1,font:`stored`,arrowEnds:!1,textField:`text-or-delete`,edit:`none`,search:`cells`,hit:`bounds`,animate:`box`,rotatable:!1},chart:{geometry:`box`,color:!0,fill:!1,stroke:!1,dash:!1,font:`stored`,arrowEnds:!1,textField:`text-or-delete`,edit:`none`,search:`cells`,hit:`bounds`,animate:`box`,rotatable:!0},control:{geometry:`box`,color:!0,fill:!1,stroke:!1,dash:!1,font:`stored`,arrowEnds:!1,textField:`label`,edit:`none`,search:`label`,hit:`bounds`,animate:`box`,rotatable:!0},web:{geometry:`box`,color:!1,fill:!1,stroke:!1,dash:!1,font:`none`,arrowEnds:!1,textField:`label`,edit:`interact`,search:`label`,hit:`bounds`,animate:`box`,rotatable:!1}};function tn(e){return e.type===`control`&&e.kind===`lifeline`?!1:en[e.type].rotatable}function nn(e){return en[e.type].geometry===`box`}function rn(e){throw Error(`Unhandled shape type: ${e.type??`unknown`}`)}function I(e,t){if(nn(e))return{x:Math.min(e.x,e.x+e.width),y:Math.min(e.y,e.y+e.height),width:Math.abs(e.width),height:Math.abs(e.height)};if(e.type===`arrow`)return Et(e);if(e.type===`draw`||e.type===`polygon`||e.type===`line`)return kt(e.points);if(e.type===`table`)return{x:e.x,y:e.y,width:e.colWidths.reduce((e,t)=>e+t,0),height:e.rowHeights.reduce((e,t)=>e+t,0)};if(e.type===`text`){let n=t?.textBounds(e.id);if(n)return{x:e.x,y:e.y,width:n.width,height:n.height};let r=Zt(e.text).split(`
|
|
9
9
|
`),i=r.reduce((e,t)=>Math.max(e,t.length),0);return{x:e.x,y:e.y,width:e.width??Math.max(i*e.fontSize*.55,e.fontSize),height:Math.max(r.length*e.fontSize*(e.lineHeight??1.15),e.height??0)}}return rn(e)}function an(e,t,n){let r=Math.cos(n),i=Math.sin(n),a=e.x-t.x,o=e.y-t.y;return{x:t.x+a*r-o*i,y:t.y+a*i+o*r}}function on(e){return tn(e)&&(nn(e)||e.type===`text`||e.type===`table`)?e.rotation??0:0}function sn(e){return Math.max(2,Math.round(e*.2))}function cn(e,t){let n=I(e,t);if(e.type===`icon`&&e.label){let r=n.x+n.width/2,i=e.fontSize??36,a,o,s=t?.iconLabelBounds(e.id);if(s)a=s.width,o=s.height;else{let t=Qt(e.label).split(`
|
|
10
10
|
`),n=Math.max(i*.58,...t.map(e=>F(e,i)));a=Math.min(n,200),o=Math.round(i*1.45+(t.length-1)*i*It)}let c=Math.min(n.x,r-a/2),l=Math.max(n.x+n.width,r+a/2),u=n.y+n.height+sn(i)+o;return{x:c,y:n.y,width:l-c,height:u-n.y}}return n}function ln(e,t,n){let r=[{x:e.x,y:e.y},{x:e.x+e.width,y:e.y},{x:e.x+e.width,y:e.y+e.height},{x:e.x,y:e.y+e.height}].map(e=>an(e,t,n)),i=r.map(e=>e.x),a=r.map(e=>e.y),o=Math.min(...i),s=Math.min(...a);return{x:o,y:s,width:Math.max(...i)-o,height:Math.max(...a)-s}}function un(e,t){if(e.type===`arrow`){let n={...e,x:e.x+t.x,y:e.y+t.y,x2:e.x2+t.x,y2:e.y2+t.y};return e.elbowPoints&&(n.elbowPoints=e.elbowPoints.map(e=>({x:e.x+t.x,y:e.y+t.y}))),e.elbowRoute&&(n.elbowRoute=e.elbowRoute.map(e=>({x:e.x+t.x,y:e.y+t.y}))),e.elbowMidHandle&&(n.elbowMidHandle={...e.elbowMidHandle,x:e.elbowMidHandle.x+t.x,y:e.elbowMidHandle.y+t.y}),n}return e.type===`draw`||e.type===`polygon`||e.type===`line`?{...e,points:e.points.map(e=>({x:e.x+t.x,y:e.y+t.y}))}:nn(e)||e.type===`text`||e.type===`table`?{...e,x:e.x+t.x,y:e.y+t.y}:rn(e)}function L(){return typeof crypto<`u`&&`randomUUID`in crypto?crypto.randomUUID():`shape-${Date.now()}-${Math.floor(Math.random()*1e6)}`}const dn=`rectangle.ellipse.circle.diamond.cylinder.queue.callout.hexagon.parallelogram.trapezoid.triangle.cloud.star.speech-bubble.note.sticky.checkbox.crossbox.heart.arrow-up.arrow-down.arrow-left.arrow-right.plus.bolt.document.predefined-process.manual-input.pentagon.chevron.octagon.cube.actor.double-circle.card.delay.fork-join.multi-document.multi-process.package.component.brace`.split(`.`),fn=[`browser`,`phone`,`window`,`tablet`],pn=[`blue`,`green`,`red`,`orange`,`violet`,`teal`,`pink`,`yellow`,`gray`];function mn(e){return Object.fromEntries(e.map(e=>[e,e]))}const hn={...mn(pn),grey:`gray`,purple:`violet`},gn={...mn(dn),box:`rectangle`,oval:`ellipse`,decision:`diamond`,database:`cylinder`,db:`cylinder`,storage:`cylinder`,process:`rectangle`,terminator:`ellipse`,start:`ellipse`,end:`ellipse`,data:`parallelogram`,io:`parallelogram`,prep:`hexagon`,preparation:`hexagon`,crossedbox:`crossbox`,lightning:`bolt`,cross:`plus`,doc:`document`,subroutine:`predefined-process`,offpage:`pentagon`,"off-page":`pentagon`,stop:`octagon`,box3d:`cube`,person:`actor`,activity:`rectangle`,event:`ellipse`,gateway:`diamond`,doublecircle:`double-circle`,ring:`double-circle`,"notched-rectangle":`card`,fork:`fork-join`,join:`fork-join`,"stacked-document":`multi-document`,documents:`multi-document`,"stacked-rectangle":`multi-process`,processes:`multi-process`},_n={app:`app-window`,money:`banknote`};function vn(e){let t=e.replace(`/`,`:`),n=/^(tech|aws|gcp|azure)-(.+)$/.exec(t);return n?`${n[1]}:${n[2]}`:_n[t]??t}const yn=[`pastel`,`bold`,`outline`],bn=[`sharp`,`rounded`],xn=[`arrow`,`circle`,`cross`],Sn=[`right`,`down`,`left`,`up`],Cn=[`loop`,`alt`,`opt`,`par`,`break`],wn=[`public`,`private`,`protected`,`package`],Tn={public:`+`,private:`-`,protected:`#`,package:`~`},En=[`zeroOrOne`,`one`,`zeroOrMany`,`oneOrMany`],Dn=[`inheritance`,`realization`,`composition`,`aggregation`,`dependency`,`association`];function On(e){if(e.fromCard||e.toCard)return{from:e.fromCard??`one`,to:e.toCard??`one`};switch(e.cardinality){case`1:1`:return{from:`one`,to:`one`};case`1:N`:return{from:`one`,to:`oneOrMany`};case`N:M`:return{from:`oneOrMany`,to:`oneOrMany`};default:return null}}const kn=[`full`,`twoThirds`,`half`,`third`],An=[`info`,`success`,`warning`,`error`],jn=[`timeline`,`journey`,`cycle`,`funnel`,`pyramid`,`venn`,`matrix`],Mn={min:0,max:5,default:3},Nn=[`normal`,`reverse`,`highlight`],Pn=[`done`,`active`,`critical`,`milestone`],Fn=new Set(dn),In=new Set(fn),Ln=new Set(pn),Rn=new Set(yn),zn=new Set(bn),Bn=new Set(Sn),R=e=>typeof e==`string`,z=e=>R(e)&&e!==``?e:void 0,Vn=e=>Math.max(-0xe8d4a51000,Math.min(0xe8d4a51000,e)),Hn={cloud:new Set([`cloud`,`cloudy`]),cylinder:new Set([`cylinder`]),heart:new Set([`heart`]),star:new Set([`star`]),diamond:new Set([`diamond`]),hexagon:new Set([`hexagon`]),octagon:new Set([`octagon`]),pentagon:new Set([`pentagon`]),triangle:new Set([`triangle`]),circle:new Set([`circle`]),bolt:new Set([`zap`,`bolt`]),cube:new Set([`box`,`cuboid`])};function Un(e){let t=new Set,n=[];for(let r of e.nodes??[]){if(!r||!R(r.id)||!R(r.label)||r.id.length===0||r.label.length===0||t.has(r.id))continue;t.add(r.id);let e=z(r.icon),i=r.shape&&Fn.has(r.shape)?r.shape:void 0;i===`actor`&&(i=void 0,e??=`user`),i&&e&&!e.includes(`:`)&&Hn[i]?.has(e)&&(e=void 0),n.push({id:r.id,label:r.label,icon:e,shape:i,group:z(r.group),color:r.color&&Ln.has(r.color)?r.color:void 0,fill:r.fill&&Rn.has(r.fill)?r.fill:void 0,corner:r.corner&&zn.has(r.corner)?r.corner:void 0,labelColor:r.labelColor&&Ln.has(r.labelColor)?r.labelColor:void 0,shadow:r.shadow===!0||void 0,link:R(r.link)?Lt(r.link)??void 0:void 0})}let r=(e.groups??[]).filter(e=>!!e&&R(e.id)&&R(e.label)&&e.id.length>0);{let e=new Set([...r.map(e=>e.id),...n.map(e=>e.group).filter(e=>!!e)]),i=new Map;for(let n of e){if(!t.has(n))continue;let r=`${n}-group`;for(;t.has(r)||e.has(r)||i.has(r);)r=`${r}-2`;i.set(n,r)}if(i.size>0){for(let e of n)e.group&&i.has(e.group)&&(e.group=i.get(e.group));r=r.map(e=>({...e,id:i.get(e.id)??e.id,parent:R(e.parent)&&i.has(e.parent)?i.get(e.parent):e.parent}))}}let i=new Set(n.map(e=>e.group).filter(Boolean)),a=new Map(r.map(e=>[e.id,R(e.parent)?e.parent:void 0])),o=new Set;for(let e of i){let t=e??void 0;for(let e=0;t&&e<32&&!o.has(t);e+=1)o.add(t),t=a.get(t)}let s=[],c=new Set;for(let e of r){if(!o.has(e.id)||c.has(e.id))continue;c.add(e.id);let t=R(e.parent)&&o.has(e.parent)&&e.parent!==e.id?e.parent:void 0;s.push({id:e.id,label:e.label,icon:z(e.icon),color:e.color&&Ln.has(e.color)?e.color:void 0,frame:e.frame&&In.has(e.frame)?e.frame:void 0,parent:t})}let l=new Map;for(let e of n)e.group&&l.set(e.group,(l.get(e.group)??0)+1);for(let e of i)e&&!c.has(e)&&(l.get(e)??0)>=2&&s.push({id:e,label:``});let u=new Set(s.map(e=>e.id)),d=e=>t.has(e)||u.has(e),f=[];for(let n of e.edges??[])!n||!R(n.from)||!R(n.to)||!d(n.from)||!d(n.to)||n.from===n.to&&!t.has(n.from)||f.push({from:n.from,to:n.to,label:R(n.label)?n.label:void 0,dashed:n.dashed===!0,bidirectional:n.bidirectional===!0,head:xn.includes(n.head)&&n.head!==`arrow`?n.head:void 0,invisible:n.invisible===!0||void 0,color:n.color&&Ln.has(n.color)?n.color:void 0,back:n.back===!0||void 0,flow:n.flow===!0||void 0});return{kind:`graph`,title:R(e.title)?e.title:``,direction:e.direction&&Bn.has(e.direction)?e.direction:`right`,icons:e.icons===`inside`||e.icons===`badge`?e.icons:void 0,swimlanes:e.swimlanes===!0&&s.length>0||void 0,kanban:e.kanban===!0&&s.length>0||void 0,variant:e.variant===`orgchart`||e.variant===`statemachine`?e.variant:void 0,nodes:n,groups:s,edges:f,legend:Wn(e.legend)}}function Wn(e){if(!e)return;let t=e.filter(e=>!!e&&R(e.swatch)&&e.swatch!==``&&R(e.label));return t.length>0?t:void 0}const Gn=new Set([`pk`,`fk`]),Kn=new Set([`1:1`,`1:N`,`N:M`]),qn=new Set(En),Jn=new Set(Dn),Yn=new Set(wn);function Xn(e){return!e||!R(e.name)||e.name.length===0?null:{name:e.name,type:z(e.type),key:e.key&&Gn.has(e.key)?e.key:void 0,visibility:e.visibility&&Yn.has(e.visibility)?e.visibility:void 0}}function Zn(e){let t=new Set,n=[],r=new Set;for(let t of e.groups??[])!t||!R(t.id)||t.id.length===0||r.has(t.id)||!R(t.label)||t.label.length===0||(r.add(t.id),n.push({id:t.id,label:t.label,color:t.color&&Ln.has(t.color)?t.color:void 0}));let i=[];for(let n of e.entities??[]){if(!n||!R(n.id)||!R(n.label)||n.id.length===0||t.has(n.id))continue;t.add(n.id);let e=(n.fields??[]).map(Xn).filter(e=>e!==null),a=(n.methods??[]).map(Xn).filter(e=>e!==null);i.push({id:n.id,label:n.label,color:n.color&&Ln.has(n.color)?n.color:void 0,fields:e,methods:a.length>0?a:void 0,group:R(n.group)&&r.has(n.group)?n.group:void 0})}let a=[];for(let n of e.relations??[]){if(!n||!R(n.from)||!R(n.to)||!t.has(n.from)||!t.has(n.to))continue;let e=n.fromCard&&qn.has(n.fromCard)?n.fromCard:void 0,r=n.toCard&&qn.has(n.toCard)?n.toCard:void 0;a.push({from:n.from,to:n.to,cardinality:e||r?void 0:n.cardinality&&Kn.has(n.cardinality)?n.cardinality:void 0,fromCard:e,toCard:r,identifying:n.identifying!==!1&&void 0,kind:n.kind&&Jn.has(n.kind)?n.kind:void 0,label:R(n.label)?n.label:void 0})}let o=new Set(i.map(e=>e.group).filter(Boolean)),s=n.filter(e=>o.has(e.id)),c=e.variant===`class`||a.some(e=>e.kind)||i.some(e=>e.methods&&e.methods.length>0);return{kind:`erd`,title:R(e.title)?e.title:``,variant:c?`class`:void 0,entities:i,relations:a,groups:s.length>0?s:void 0,legend:Wn(e.legend)}}const Qn=new Set(Pn),$n=/^\d{4}-\d{2}-\d{2}$/;function er(e){let t=new Set,n=[];for(let r of e.tasks??[]){if(!r||!R(r.label)||r.label.length===0)continue;let e=R(r.id)&&r.id.length>0?r.id:`t${n.length+1}`;if(t.has(e))continue;t.add(e);let i=typeof r.days==`number`&&Number.isFinite(r.days)?Vn(r.days):void 0,a=r.status&&Qn.has(r.status)?r.status:void 0;if(n.push({id:e,label:r.label,section:z(r.section),start:R(r.start)&&$n.test(r.start)?r.start:void 0,after:(Array.isArray(r.after)?r.after:[]).filter(e=>R(e)&&e.length>0),days:a===`milestone`?0:i===void 0?void 0:Math.max(0,i),until:z(r.until),status:a}),n.length>=60)break}for(let e of n){let n=(e.after??[]).filter(n=>n!==e.id&&t.has(n));e.after=n.length>0?n:void 0,e.until&&(e.until===e.id||!t.has(e.until))&&(e.until=void 0)}return{kind:`gantt`,title:R(e.title)?e.title:``,tasks:n,skipWeekends:e.skipWeekends===!0||void 0,legend:Wn(e.legend)}}const tr=new Set(Nn);function nr(e){let t=[];for(let n of e.lanes??[])if(R(n)&&n.length>0&&!t.includes(n)&&t.push(n),t.length>=8)break;let n=new Set,r=[];for(let i of e.commits??[]){if(!i)continue;let e=R(i.id)&&i.id.length>0?i.id:`c${r.length+1}`;if(n.has(e))continue;let a=R(i.branch)&&i.branch.length>0?i.branch:t[0]??`main`;if(!t.includes(a)){if(t.length>=8)continue;t.push(a)}if(n.add(e),r.push({id:e,branch:a,label:z(i.label),tag:z(i.tag),kind:i.kind&&tr.has(i.kind)&&i.kind!==`normal`?i.kind:void 0,mergeFrom:z(i.mergeFrom),branchFrom:z(i.branchFrom),cherryPick:z(i.cherryPick)}),r.length>=60)break}t.length===0&&t.push(`main`);for(let e of r){e.mergeFrom&&(!t.includes(e.mergeFrom)||e.mergeFrom===e.branch)&&(e.mergeFrom=void 0),e.cherryPick&&!n.has(e.cherryPick)&&(e.cherryPick=void 0);let i=r.find(t=>t.branch===e.branch)===e;e.branchFrom&&(!i||!t.includes(e.branchFrom)||e.branchFrom===e.branch)&&(e.branchFrom=void 0)}return{kind:`gitgraph`,title:R(e.title)?e.title:``,lanes:t,commits:r,legend:Wn(e.legend)}}const rr=new Set(jn);function ir(e){return e===`venn`?3:e===`matrix`?4:e===`journey`?40:12}function ar(e){let{min:t,max:n,default:r}=Mn;return typeof e!=`number`||!Number.isFinite(e)?r:Math.min(n,Math.max(t,e))}function or(e){if(!Array.isArray(e))return;let t=e.filter(e=>R(e)&&e.length>0).slice(0,8);return t.length>0?t:void 0}function sr(e){let t=e.variant&&rr.has(e.variant)?e.variant:`timeline`,n=new Set,r=[];for(let i of e.items??[]){if(!i||!R(i.label)||i.label.length===0)continue;let e=R(i.id)&&i.id.length>0?i.id:`i${r.length}`;if(!n.has(e)&&(n.add(e),r.push({id:e,label:i.label,detail:z(i.detail),color:i.color&&Ln.has(i.color)?i.color:void 0,icon:z(i.icon),score:t===`journey`?ar(i.score):void 0,group:t===`journey`||t===`timeline`?z(i.group):void 0,events:t===`timeline`?or(i.events):void 0}),r.length>=ir(t)))break}let i=[];if(t===`venn`)for(let t of e.overlaps??[]){if(!t||!R(t.label)||t.label.length===0)continue;let e=(t.ids??[]).filter(e=>R(e)&&n.has(e));e.length>=2&&i.push({ids:e,label:t.label})}let a=e=>{let t=(e??[]).filter(e=>R(e)&&e.length>0);return t.length>=2?[t[0],t[1]]:void 0},o=t===`matrix`?a(e.axes?.x):void 0,s=t===`matrix`?a(e.axes?.y):void 0;return{kind:`infographic`,variant:t,title:R(e.title)?e.title:``,items:r,overlaps:i.length>0?i:void 0,axes:o||s?{x:o,y:s}:void 0}}function cr(e,t){let n=[];for(let r of Array.isArray(e)?e:[]){if(!r||!R(r.label)||r.label.length===0)continue;let e=t<6?cr(r.children,t+1):[];n.push({label:r.label,icon:z(r.icon),children:e.length>0?e:void 0})}return n}function lr(e){let t=new Set,n=[];for(let r of e.branches??[]){if(!r||!R(r.label)||r.label.length===0)continue;let e=R(r.id)&&r.id.length>0?r.id:`b${n.length}`;if(t.has(e))continue;t.add(e);let i=cr(r.children,2);n.push({id:e,label:r.label,color:r.color&&Ln.has(r.color)?r.color:void 0,icon:z(r.icon),children:i.length>0?i:void 0})}return{kind:`mindmap`,title:R(e.title)?e.title:``,central:R(e.central)&&e.central.length>0?e.central:R(e.title)?e.title:``,branches:n,legend:Wn(e.legend)}}function ur(e){let t=[];for(let n of e.flows??[]){if(!n||!R(n.from)||!R(n.to))continue;let e=n.from.trim(),r=n.to.trim(),i=typeof n.value==`number`&&Number.isFinite(n.value)?Vn(n.value):0;if(!(e.length===0||r.length===0||e===r||i<=0)&&(t.push({from:e,to:r,value:i}),t.length>=60))break}return{kind:`sankey`,title:R(e.title)?e.title:``,flows:t,legend:Wn(e.legend)}}const dr=new Set(Cn);function fr(e){let t=new Set,n=[];for(let r of e.actors??[])!r||!R(r.id)||!R(r.label)||r.id.length===0||t.has(r.id)||(t.add(r.id),n.push({id:r.id,label:r.label,icon:z(r.icon),link:R(r.link)?Lt(r.link)??void 0:void 0}));let r=[];for(let n of e.messages??[])!n||!R(n.from)||!R(n.to)||!R(n.label)||!t.has(n.from)||!t.has(n.to)||r.push({from:n.from,to:n.to,label:n.label,reply:n.reply===!0,bidirectional:n.bidirectional===!0||void 0});let i=[];for(let t of e.frames??[]){if(!t||!R(t.label)||typeof t.from!=`number`||typeof t.to!=`number`||!Number.isFinite(t.from)||!Number.isFinite(t.to)||r.length===0)continue;let e=Math.max(0,Math.min(r.length-1,Math.floor(t.from))),n=Math.max(e,Math.min(r.length-1,Math.floor(t.to)));i.push({kind:t.kind&&dr.has(t.kind)?t.kind:`loop`,label:t.label,from:e,to:n})}i.sort((e,t)=>e.from-t.from);let a=[];for(let n of e.activations??[]){if(!n||!R(n.actor)||!t.has(n.actor)||typeof n.from!=`number`||typeof n.to!=`number`||!Number.isFinite(n.from)||!Number.isFinite(n.to)||r.length===0)continue;let e=Math.max(0,Math.min(r.length-1,Math.floor(n.from))),i=Math.max(e,Math.min(r.length-1,Math.floor(n.to)));a.push({actor:n.actor,from:e,to:i})}let o=new Set([`over`,`left`,`right`]),s=[];for(let n of e.notes??[]){if(!n||!R(n.text)||n.text.length===0)continue;let e=(Array.isArray(n.actors)?n.actors:[]).filter(e=>R(e)&&t.has(e));if(e.length===0)continue;let i=n.placement&&o.has(n.placement)?n.placement:`over`,a=typeof n.after==`number`&&Number.isFinite(n.after)?Math.max(-1,Math.min(r.length-1,Math.floor(n.after))):r.length-1;s.push({text:n.text,actors:i===`over`?e.slice(0,2):e.slice(0,1),placement:i,after:a})}return{kind:`sequence`,title:R(e.title)?e.title:``,actors:n,messages:r,frames:i,activations:a.length>0?a:void 0,notes:s.length>0?s:void 0,legend:Wn(e.legend)}}const pr=new Set(`button.input.search.checkbox.radio.toggle.dropdown.slider.navbar.tabs.image.avatar.heading.paragraph.divider.link.textarea.stepper.badge.progress.breadcrumbs.pagination.rating.card.list.alert.menu.tooltip.accordion.datepicker.sidebar.scrollbar.segmented.tabbar.statusbar.fab.stepbadge`.split(`.`)),mr=new Set([`navbar`,`tabs`,`pagination`,`menu`,`accordion`,`sidebar`,`segmented`,`tabbar`]),hr=new Set(kn);function gr(e){let t=[];for(let n of e.screens??[]){if(!n||!R(n.name))continue;let e=[];for(let t of Array.isArray(n.controls)?n.controls:[])!t||!t.kind||!pr.has(t.kind)||e.push({kind:t.kind,label:z(t.label),width:t.width&&hr.has(t.width)?t.width:void 0,value:typeof t.value!=`number`||!Number.isFinite(t.value)?void 0:mr.has(t.kind)?Vn(Math.max(0,Math.floor(t.value))):t.kind===`rating`?Math.max(0,Math.min(5,Math.round(t.value))):t.kind===`alert`?Math.max(0,Math.min(An.length-1,Math.round(t.value))):Math.max(0,Math.min(1,t.value))});t.push({name:n.name,frame:n.frame&&In.has(n.frame)?n.frame:`phone`,controls:e})}return{kind:`wireframe`,title:R(e.title)?e.title:``,screens:t,legend:Wn(e.legend)}}function _r(e){return e?.kind===`gitgraph`?nr(e):e?.kind===`gantt`?er(e):e?.kind===`sankey`?ur(e):e?.kind===`sequence`?fr(e):e?.kind===`erd`?Zn(e):e?.kind===`wireframe`?gr(e):e?.kind===`mindmap`?lr(e):e?.kind===`infographic`?sr(e):Un(e??{})}function vr(e){return e.kind===`sequence`?e.actors.length===0:e.kind===`erd`?e.entities.length===0:e.kind===`wireframe`?e.screens.every(e=>e.controls.length===0):e.kind===`mindmap`?e.central.length===0&&e.branches.length===0:e.kind===`infographic`?e.items.length===0:e.kind===`gitgraph`?e.commits.length===0:e.kind===`gantt`?e.tasks.length===0:e.kind===`sankey`?e.flows.length===0:e.nodes.length===0}function yr(e,t,n){if(e&&e.length){let[r,i]=t,a=Math.PI/180*n,o=Math.cos(a),s=Math.sin(a);for(let t of e){let[e,n]=t;t[0]=(e-r)*o-(n-i)*s+r,t[1]=(e-r)*s+(n-i)*o+i}}}function br(e,t){return e[0]===t[0]&&e[1]===t[1]}function xr(e,t,n,r=1){let i=n,a=Math.max(t,.1),o=e[0]&&e[0][0]&&typeof e[0][0]==`number`?[e]:e,s=[0,0];if(i)for(let e of o)yr(e,s,i);let c=function(e,t,n){let r=[];for(let t of e){let e=[...t];br(e[0],e[e.length-1])||e.push([e[0][0],e[0][1]]),e.length>2&&r.push(e)}let i=[];t=Math.max(t,.1);let a=[];for(let e of r)for(let t=0;t<e.length-1;t++){let n=e[t],r=e[t+1];if(n[1]!==r[1]){let e=Math.min(n[1],r[1]);a.push({ymin:e,ymax:Math.max(n[1],r[1]),x:e===n[1]?n[0]:r[0],islope:(r[0]-n[0])/(r[1]-n[1])})}}if(a.sort(((e,t)=>e.ymin<t.ymin?-1:e.ymin>t.ymin?1:e.x<t.x?-1:e.x>t.x?1:e.ymax===t.ymax?0:(e.ymax-t.ymax)/Math.abs(e.ymax-t.ymax))),!a.length)return i;let o=[],s=a[0].ymin,c=0;for(;o.length||a.length;){if(a.length){let e=-1;for(let t=0;t<a.length&&!(a[t].ymin>s);t++)e=t;a.splice(0,e+1).forEach((e=>{o.push({s,edge:e})}))}if(o=o.filter((e=>!(e.edge.ymax<=s))),o.sort(((e,t)=>e.edge.x===t.edge.x?0:(e.edge.x-t.edge.x)/Math.abs(e.edge.x-t.edge.x))),(n!==1||c%t==0)&&o.length>1)for(let e=0;e<o.length;e+=2){let t=e+1;if(t>=o.length)break;let n=o[e].edge,r=o[t].edge;i.push([[Math.round(n.x),s],[Math.round(r.x),s]])}s+=n,o.forEach((e=>{e.edge.x=e.edge.x+n*e.edge.islope})),c++}return i}(o,a,r);if(i){for(let e of o)yr(e,s,-i);(function(e,t,n){let r=[];e.forEach((e=>r.push(...e))),yr(r,t,n)})(c,s,-i)}return c}function Sr(e,t){let n=t.hachureAngle+90,r=t.hachureGap;r<0&&(r=4*t.strokeWidth),r=Math.round(Math.max(r,.1));let i=1;return t.roughness>=1&&(t.randomizer?.next()||Math.random())>.7&&(i=r),xr(e,r,n,i||1)}var Cr=class{constructor(e){this.helper=e}fillPolygons(e,t){return this._fillPolygons(e,t)}_fillPolygons(e,t){let n=Sr(e,t);return{type:`fillSketch`,ops:this.renderLines(n,t)}}renderLines(e,t){let n=[];for(let r of e)n.push(...this.helper.doubleLineOps(r[0][0],r[0][1],r[1][0],r[1][1],t));return n}};function wr(e){let t=e[0],n=e[1];return Math.sqrt((t[0]-n[0])**2+(t[1]-n[1])**2)}var Tr=class extends Cr{fillPolygons(e,t){let n=t.hachureGap;n<0&&(n=4*t.strokeWidth),n=Math.max(n,.1);let r=Sr(e,Object.assign({},t,{hachureGap:n})),i=Math.PI/180*t.hachureAngle,a=[],o=.5*n*Math.cos(i),s=.5*n*Math.sin(i);for(let[e,t]of r)wr([e,t])&&a.push([[e[0]-o,e[1]+s],[...t]],[[e[0]+o,e[1]-s],[...t]]);return{type:`fillSketch`,ops:this.renderLines(a,t)}}},Er=class extends Cr{fillPolygons(e,t){let n=this._fillPolygons(e,t),r=Object.assign({},t,{hachureAngle:t.hachureAngle+90}),i=this._fillPolygons(e,r);return n.ops=n.ops.concat(i.ops),n}},Dr=class{constructor(e){this.helper=e}fillPolygons(e,t){let n=Sr(e,t=Object.assign({},t,{hachureAngle:0}));return this.dotsOnLines(n,t)}dotsOnLines(e,t){let n=[],r=t.hachureGap;r<0&&(r=4*t.strokeWidth),r=Math.max(r,.1);let i=t.fillWeight;i<0&&(i=t.strokeWidth/2);let a=r/4;for(let o of e){let e=wr(o),s=e/r,c=Math.ceil(s)-1,l=e-c*r,u=(o[0][0]+o[1][0])/2-r/4,d=Math.min(o[0][1],o[1][1]);for(let e=0;e<c;e++){let o=d+l+e*r,s=u-a+2*Math.random()*a,c=o-a+2*Math.random()*a,f=this.helper.ellipse(s,c,i,i,t);n.push(...f.ops)}}return{type:`fillSketch`,ops:n}}},Or=class{constructor(e){this.helper=e}fillPolygons(e,t){let n=Sr(e,t);return{type:`fillSketch`,ops:this.dashedLine(n,t)}}dashedLine(e,t){let n=t.dashOffset<0?t.hachureGap<0?4*t.strokeWidth:t.hachureGap:t.dashOffset,r=t.dashGap<0?t.hachureGap<0?4*t.strokeWidth:t.hachureGap:t.dashGap,i=[];return e.forEach((e=>{let a=wr(e),o=Math.floor(a/(n+r)),s=(a+r-o*(n+r))/2,c=e[0],l=e[1];c[0]>l[0]&&(c=e[1],l=e[0]);let u=Math.atan((l[1]-c[1])/(l[0]-c[0]));for(let e=0;e<o;e++){let a=e*(n+r),o=a+n,l=[c[0]+a*Math.cos(u)+s*Math.cos(u),c[1]+a*Math.sin(u)+s*Math.sin(u)],d=[c[0]+o*Math.cos(u)+s*Math.cos(u),c[1]+o*Math.sin(u)+s*Math.sin(u)];i.push(...this.helper.doubleLineOps(l[0],l[1],d[0],d[1],t))}})),i}},kr=class{constructor(e){this.helper=e}fillPolygons(e,t){let n=t.hachureGap<0?4*t.strokeWidth:t.hachureGap,r=t.zigzagOffset<0?n:t.zigzagOffset,i=Sr(e,t=Object.assign({},t,{hachureGap:n+r}));return{type:`fillSketch`,ops:this.zigzagLines(i,r,t)}}zigzagLines(e,t,n){let r=[];return e.forEach((e=>{let i=wr(e),a=Math.round(i/(2*t)),o=e[0],s=e[1];o[0]>s[0]&&(o=e[1],s=e[0]);let c=Math.atan((s[1]-o[1])/(s[0]-o[0]));for(let e=0;e<a;e++){let i=2*e*t,a=2*(e+1)*t,s=Math.sqrt(2*t**2),l=[o[0]+i*Math.cos(c),o[1]+i*Math.sin(c)],u=[o[0]+a*Math.cos(c),o[1]+a*Math.sin(c)],d=[l[0]+s*Math.cos(c+Math.PI/4),l[1]+s*Math.sin(c+Math.PI/4)];r.push(...this.helper.doubleLineOps(l[0],l[1],d[0],d[1],n),...this.helper.doubleLineOps(d[0],d[1],u[0],u[1],n))}})),r}};const B={};var Ar=class{constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}};const jr={A:7,a:7,C:6,c:6,H:1,h:1,L:2,l:2,M:2,m:2,Q:4,q:4,S:4,s:4,T:2,t:2,V:1,v:1,Z:0,z:0};function Mr(e,t){return e.type===t}function Nr(e){let t=[],n=function(e){let t=[];for(;e!==``;)if(e.match(/^([ \t\r\n,]+)/))e=e.substr(RegExp.$1.length);else if(e.match(/^([aAcChHlLmMqQsStTvVzZ])/))t[t.length]={type:0,text:RegExp.$1},e=e.substr(RegExp.$1.length);else{if(!e.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];t[t.length]={type:1,text:`${parseFloat(RegExp.$1)}`},e=e.substr(RegExp.$1.length)}return t[t.length]={type:2,text:``},t}(e),r=`BOD`,i=0,a=n[i];for(;!Mr(a,2);){let o=0,s=[];if(r===`BOD`){if(a.text!==`M`&&a.text!==`m`)return Nr(`M0,0`+e);i++,o=jr[a.text],r=a.text}else Mr(a,1)?o=jr[r]:(i++,o=jr[a.text],r=a.text);if(!(i+o<n.length))throw Error(`Path data ended short`);for(let e=i;e<i+o;e++){let t=n[e];if(!Mr(t,1))throw Error(`Param not a number: `+r+`,`+t.text);s[s.length]=+t.text}if(typeof jr[r]!=`number`)throw Error(`Bad segment: `+r);{let e={key:r,data:s};t.push(e),i+=o,a=n[i],r===`M`&&(r=`L`),r===`m`&&(r=`l`)}}return t}function Pr(e){let t=0,n=0,r=0,i=0,a=[];for(let{key:o,data:s}of e)switch(o){case`M`:a.push({key:`M`,data:[...s]}),[t,n]=s,[r,i]=s;break;case`m`:t+=s[0],n+=s[1],a.push({key:`M`,data:[t,n]}),r=t,i=n;break;case`L`:a.push({key:`L`,data:[...s]}),[t,n]=s;break;case`l`:t+=s[0],n+=s[1],a.push({key:`L`,data:[t,n]});break;case`C`:a.push({key:`C`,data:[...s]}),t=s[4],n=s[5];break;case`c`:{let e=s.map(((e,r)=>r%2?e+n:e+t));a.push({key:`C`,data:e}),t=e[4],n=e[5];break}case`Q`:a.push({key:`Q`,data:[...s]}),t=s[2],n=s[3];break;case`q`:{let e=s.map(((e,r)=>r%2?e+n:e+t));a.push({key:`Q`,data:e}),t=e[2],n=e[3];break}case`A`:a.push({key:`A`,data:[...s]}),t=s[5],n=s[6];break;case`a`:t+=s[5],n+=s[6],a.push({key:`A`,data:[s[0],s[1],s[2],s[3],s[4],t,n]});break;case`H`:a.push({key:`H`,data:[...s]}),t=s[0];break;case`h`:t+=s[0],a.push({key:`H`,data:[t]});break;case`V`:a.push({key:`V`,data:[...s]}),n=s[0];break;case`v`:n+=s[0],a.push({key:`V`,data:[n]});break;case`S`:a.push({key:`S`,data:[...s]}),t=s[2],n=s[3];break;case`s`:{let e=s.map(((e,r)=>r%2?e+n:e+t));a.push({key:`S`,data:e}),t=e[2],n=e[3];break}case`T`:a.push({key:`T`,data:[...s]}),t=s[0],n=s[1];break;case`t`:t+=s[0],n+=s[1],a.push({key:`T`,data:[t,n]});break;case`Z`:case`z`:a.push({key:`Z`,data:[]}),t=r,n=i}return a}function Fr(e){let t=[],n=``,r=0,i=0,a=0,o=0,s=0,c=0;for(let{key:l,data:u}of e){switch(l){case`M`:t.push({key:`M`,data:[...u]}),[r,i]=u,[a,o]=u;break;case`C`:t.push({key:`C`,data:[...u]}),r=u[4],i=u[5],s=u[2],c=u[3];break;case`L`:t.push({key:`L`,data:[...u]}),[r,i]=u;break;case`H`:r=u[0],t.push({key:`L`,data:[r,i]});break;case`V`:i=u[0],t.push({key:`L`,data:[r,i]});break;case`S`:{let e=0,a=0;n===`C`||n===`S`?(e=r+(r-s),a=i+(i-c)):(e=r,a=i),t.push({key:`C`,data:[e,a,...u]}),s=u[0],c=u[1],r=u[2],i=u[3];break}case`T`:{let[e,a]=u,o=0,l=0;n===`Q`||n===`T`?(o=r+(r-s),l=i+(i-c)):(o=r,l=i);let d=r+2*(o-r)/3,f=i+2*(l-i)/3,p=e+2*(o-e)/3,m=a+2*(l-a)/3;t.push({key:`C`,data:[d,f,p,m,e,a]}),s=o,c=l,r=e,i=a;break}case`Q`:{let[e,n,a,o]=u,l=r+2*(e-r)/3,d=i+2*(n-i)/3,f=a+2*(e-a)/3,p=o+2*(n-o)/3;t.push({key:`C`,data:[l,d,f,p,a,o]}),s=e,c=n,r=a,i=o;break}case`A`:{let e=Math.abs(u[0]),n=Math.abs(u[1]),a=u[2],o=u[3],s=u[4],c=u[5],l=u[6];e===0||n===0?(t.push({key:`C`,data:[r,i,c,l,c,l]}),r=c,i=l):(r!==c||i!==l)&&(Lr(r,i,c,l,e,n,a,o,s).forEach((function(e){t.push({key:`C`,data:e})})),r=c,i=l);break}case`Z`:t.push({key:`Z`,data:[]}),r=a,i=o}n=l}return t}function Ir(e,t,n){return[e*Math.cos(n)-t*Math.sin(n),e*Math.sin(n)+t*Math.cos(n)]}function Lr(e,t,n,r,i,a,o,s,c,l){let u=(d=o,Math.PI*d/180);var d;let f=[],p=0,m=0,h=0,g=0;if(l)[p,m,h,g]=l;else{[e,t]=Ir(e,t,-u),[n,r]=Ir(n,r,-u);let o=(e-n)/2,l=(t-r)/2,d=o*o/(i*i)+l*l/(a*a);d>1&&(d=Math.sqrt(d),i*=d,a*=d);let f=i*i,_=a*a,v=f*_-f*l*l-_*o*o,y=f*l*l+_*o*o,b=(s===c?-1:1)*Math.sqrt(Math.abs(v/y));h=b*i*l/a+(e+n)/2,g=b*-a*o/i+(t+r)/2,p=Math.asin(parseFloat(((t-g)/a).toFixed(9))),m=Math.asin(parseFloat(((r-g)/a).toFixed(9))),e<h&&(p=Math.PI-p),n<h&&(m=Math.PI-m),p<0&&(p=2*Math.PI+p),m<0&&(m=2*Math.PI+m),c&&p>m&&(p-=2*Math.PI),!c&&m>p&&(m-=2*Math.PI)}let _=m-p;if(Math.abs(_)>120*Math.PI/180){let e=m,t=n,s=r;m=c&&m>p?p+120*Math.PI/180*1:p+120*Math.PI/180*-1,f=Lr(n=h+i*Math.cos(m),r=g+a*Math.sin(m),t,s,i,a,o,0,c,[m,e,h,g])}_=m-p;let v=Math.cos(p),y=Math.sin(p),b=Math.cos(m),x=Math.sin(m),S=Math.tan(_/4),C=4/3*i*S,w=4/3*a*S,T=[e,t],E=[e+C*y,t-w*v],ee=[n+C*x,r-w*b],D=[n,r];if(E[0]=2*T[0]-E[0],E[1]=2*T[1]-E[1],l)return[E,ee,D].concat(f);{f=[E,ee,D].concat(f);let e=[];for(let t=0;t<f.length;t+=3){let n=Ir(f[t][0],f[t][1],u),r=Ir(f[t+1][0],f[t+1][1],u),i=Ir(f[t+2][0],f[t+2][1],u);e.push([n[0],n[1],r[0],r[1],i[0],i[1]])}return e}}const Rr={randOffset:function(e,t){return V(e,t)},randOffsetWithRange:function(e,t,n){return Zr(e,t,n)},ellipse:function(e,t,n,r,i){return Wr(e,t,i,Ur(n,r,i)).opset},doubleLineOps:function(e,t,n,r,i){return Qr(e,t,n,r,i,!0)}};function zr(e,t,n,r,i){return{type:`path`,ops:Qr(e,t,n,r,i)}}function Br(e,t,n){let r=(e||[]).length;if(r>2){let i=[];for(let t=0;t<r-1;t++)i.push(...Qr(e[t][0],e[t][1],e[t+1][0],e[t+1][1],n));return t&&i.push(...Qr(e[r-1][0],e[r-1][1],e[0][0],e[0][1],n)),{type:`path`,ops:i}}return r===2?zr(e[0][0],e[0][1],e[1][0],e[1][1],n):{type:`path`,ops:[]}}function Vr(e,t,n,r,i){return function(e,t){return Br(e,!0,t)}([[e,t],[e+n,t],[e+n,t+r],[e,t+r]],i)}function Hr(e,t){if(e.length){let n=typeof e[0][0]==`number`?[e]:e,r=ei(n[0],1*(1+.2*t.roughness),t),i=t.disableMultiStroke?[]:ei(n[0],1.5*(1+.22*t.roughness),Yr(t));for(let e=1;e<n.length;e++){let a=n[e];if(a.length){let e=ei(a,1*(1+.2*t.roughness),t),n=t.disableMultiStroke?[]:ei(a,1.5*(1+.22*t.roughness),Yr(t));for(let t of e)t.op!==`move`&&r.push(t);for(let e of n)e.op!==`move`&&i.push(e)}}return{type:`path`,ops:r.concat(i)}}return{type:`path`,ops:[]}}function Ur(e,t,n){let r=Math.sqrt(2*Math.PI*Math.sqrt(((e/2)**2+(t/2)**2)/2)),i=Math.ceil(Math.max(n.curveStepCount,n.curveStepCount/Math.sqrt(200)*r)),a=2*Math.PI/i,o=Math.abs(e/2),s=Math.abs(t/2),c=1-n.curveFitting;return o+=V(o*c,n),s+=V(s*c,n),{increment:a,rx:o,ry:s}}function Wr(e,t,n,r){let[i,a]=ni(r.increment,e,t,r.rx,r.ry,1,r.increment*Zr(.1,Zr(.4,1,n),n),n),o=ti(i,null,n);if(!n.disableMultiStroke&&n.roughness!==0){let[i]=ni(r.increment,e,t,r.rx,r.ry,1.5,0,n),a=ti(i,null,n);o=o.concat(a)}return{estimatedPoints:a,opset:{type:`path`,ops:o}}}function Gr(e,t,n,r,i,a,o,s,c){let l=e,u=t,d=Math.abs(n/2),f=Math.abs(r/2);d+=V(.01*d,c),f+=V(.01*f,c);let p=i,m=a;for(;p<0;)p+=2*Math.PI,m+=2*Math.PI;m-p>2*Math.PI&&(p=0,m=2*Math.PI);let h=2*Math.PI/c.curveStepCount,g=Math.min(h/2,(m-p)/2),_=ri(g,l,u,d,f,p,m,1,c);if(!c.disableMultiStroke){let e=ri(g,l,u,d,f,p,m,1.5,c);_.push(...e)}return o&&(s?_.push(...Qr(l,u,l+d*Math.cos(p),u+f*Math.sin(p),c),...Qr(l,u,l+d*Math.cos(m),u+f*Math.sin(m),c)):_.push({op:`lineTo`,data:[l,u]},{op:`lineTo`,data:[l+d*Math.cos(p),u+f*Math.sin(p)]})),{type:`path`,ops:_}}function Kr(e,t){let n=Fr(Pr(Nr(e))),r=[],i=[0,0],a=[0,0];for(let{key:e,data:o}of n)switch(e){case`M`:a=[o[0],o[1]],i=[o[0],o[1]];break;case`L`:r.push(...Qr(a[0],a[1],o[0],o[1],t)),a=[o[0],o[1]];break;case`C`:{let[e,n,i,s,c,l]=o;r.push(...ii(e,n,i,s,c,l,a,t)),a=[c,l];break}case`Z`:r.push(...Qr(a[0],a[1],i[0],i[1],t)),a=[i[0],i[1]]}return{type:`path`,ops:r}}function qr(e,t){let n=[];for(let r of e)if(r.length){let e=t.maxRandomnessOffset||0,i=r.length;if(i>2){n.push({op:`move`,data:[r[0][0]+V(e,t),r[0][1]+V(e,t)]});for(let a=1;a<i;a++)n.push({op:`lineTo`,data:[r[a][0]+V(e,t),r[a][1]+V(e,t)]})}}return{type:`fillPath`,ops:n}}function Jr(e,t){return function(e,t){let n=e.fillStyle||`hachure`;if(!B[n])switch(n){case`zigzag`:B[n]||(B[n]=new Tr(t));break;case`cross-hatch`:B[n]||(B[n]=new Er(t));break;case`dots`:B[n]||(B[n]=new Dr(t));break;case`dashed`:B[n]||(B[n]=new Or(t));break;case`zigzag-line`:B[n]||(B[n]=new kr(t));break;default:n=`hachure`,B[n]||(B[n]=new Cr(t))}return B[n]}(t,Rr).fillPolygons(e,t)}function Yr(e){let t=Object.assign({},e);return t.randomizer=void 0,e.seed&&(t.seed=e.seed+1),t}function Xr(e){return e.randomizer||=new Ar(e.seed||0),e.randomizer.next()}function Zr(e,t,n,r=1){return n.roughness*r*(Xr(n)*(t-e)+e)}function V(e,t,n=1){return Zr(-e,e,t,n)}function Qr(e,t,n,r,i,a=!1){let o=a?i.disableMultiStrokeFill:i.disableMultiStroke,s=$r(e,t,n,r,i,!0,!1);if(o)return s;let c=$r(e,t,n,r,i,!0,!0);return s.concat(c)}function $r(e,t,n,r,i,a,o){let s=(e-n)**2+(t-r)**2,c=Math.sqrt(s),l=1;l=c<200?1:c>500?.4:-.0016668*c+1.233334;let u=i.maxRandomnessOffset||0;u*u*100>s&&(u=c/10);let d=u/2,f=.2+.2*Xr(i),p=i.bowing*i.maxRandomnessOffset*(r-t)/200,m=i.bowing*i.maxRandomnessOffset*(e-n)/200;p=V(p,i,l),m=V(m,i,l);let h=[],g=()=>V(d,i,l),_=()=>V(u,i,l),v=i.preserveVertices;return a&&(o?h.push({op:`move`,data:[e+(v?0:g()),t+(v?0:g())]}):h.push({op:`move`,data:[e+(v?0:V(u,i,l)),t+(v?0:V(u,i,l))]})),o?h.push({op:`bcurveTo`,data:[p+e+(n-e)*f+g(),m+t+(r-t)*f+g(),p+e+2*(n-e)*f+g(),m+t+2*(r-t)*f+g(),n+(v?0:g()),r+(v?0:g())]}):h.push({op:`bcurveTo`,data:[p+e+(n-e)*f+_(),m+t+(r-t)*f+_(),p+e+2*(n-e)*f+_(),m+t+2*(r-t)*f+_(),n+(v?0:_()),r+(v?0:_())]}),h}function ei(e,t,n){if(!e.length)return[];let r=[];r.push([e[0][0]+V(t,n),e[0][1]+V(t,n)]),r.push([e[0][0]+V(t,n),e[0][1]+V(t,n)]);for(let i=1;i<e.length;i++)r.push([e[i][0]+V(t,n),e[i][1]+V(t,n)]),i===e.length-1&&r.push([e[i][0]+V(t,n),e[i][1]+V(t,n)]);return ti(r,null,n)}function ti(e,t,n){let r=e.length,i=[];if(r>3){let a=[],o=1-n.curveTightness;i.push({op:`move`,data:[e[1][0],e[1][1]]});for(let t=1;t+2<r;t++){let n=e[t];a[0]=[n[0],n[1]],a[1]=[n[0]+(o*e[t+1][0]-o*e[t-1][0])/6,n[1]+(o*e[t+1][1]-o*e[t-1][1])/6],a[2]=[e[t+1][0]+(o*e[t][0]-o*e[t+2][0])/6,e[t+1][1]+(o*e[t][1]-o*e[t+2][1])/6],a[3]=[e[t+1][0],e[t+1][1]],i.push({op:`bcurveTo`,data:[a[1][0],a[1][1],a[2][0],a[2][1],a[3][0],a[3][1]]})}if(t&&t.length===2){let e=n.maxRandomnessOffset;i.push({op:`lineTo`,data:[t[0]+V(e,n),t[1]+V(e,n)]})}}else r===3?(i.push({op:`move`,data:[e[1][0],e[1][1]]}),i.push({op:`bcurveTo`,data:[e[1][0],e[1][1],e[2][0],e[2][1],e[2][0],e[2][1]]})):r===2&&i.push(...$r(e[0][0],e[0][1],e[1][0],e[1][1],n,!0,!0));return i}function ni(e,t,n,r,i,a,o,s){let c=[],l=[];if(s.roughness===0){e/=4,l.push([t+r*Math.cos(-e),n+i*Math.sin(-e)]);for(let a=0;a<=2*Math.PI;a+=e){let e=[t+r*Math.cos(a),n+i*Math.sin(a)];c.push(e),l.push(e)}l.push([t+r*Math.cos(0),n+i*Math.sin(0)]),l.push([t+r*Math.cos(e),n+i*Math.sin(e)])}else{let u=V(.5,s)-Math.PI/2;l.push([V(a,s)+t+.9*r*Math.cos(u-e),V(a,s)+n+.9*i*Math.sin(u-e)]);let d=2*Math.PI+u-.01;for(let o=u;o<d;o+=e){let e=[V(a,s)+t+r*Math.cos(o),V(a,s)+n+i*Math.sin(o)];c.push(e),l.push(e)}l.push([V(a,s)+t+r*Math.cos(u+2*Math.PI+.5*o),V(a,s)+n+i*Math.sin(u+2*Math.PI+.5*o)]),l.push([V(a,s)+t+.98*r*Math.cos(u+o),V(a,s)+n+.98*i*Math.sin(u+o)]),l.push([V(a,s)+t+.9*r*Math.cos(u+.5*o),V(a,s)+n+.9*i*Math.sin(u+.5*o)])}return[l,c]}function ri(e,t,n,r,i,a,o,s,c){let l=a+V(.1,c),u=[];u.push([V(s,c)+t+.9*r*Math.cos(l-e),V(s,c)+n+.9*i*Math.sin(l-e)]);for(let a=l;a<=o;a+=e)u.push([V(s,c)+t+r*Math.cos(a),V(s,c)+n+i*Math.sin(a)]);return u.push([t+r*Math.cos(o),n+i*Math.sin(o)]),u.push([t+r*Math.cos(o),n+i*Math.sin(o)]),ti(u,null,c)}function ii(e,t,n,r,i,a,o,s){let c=[],l=[s.maxRandomnessOffset||1,(s.maxRandomnessOffset||1)+.3],u=[0,0],d=s.disableMultiStroke?1:2,f=s.preserveVertices;for(let p=0;p<d;p++)p===0?c.push({op:`move`,data:[o[0],o[1]]}):c.push({op:`move`,data:[o[0]+(f?0:V(l[0],s)),o[1]+(f?0:V(l[0],s))]}),u=f?[i,a]:[i+V(l[p],s),a+V(l[p],s)],c.push({op:`bcurveTo`,data:[e+V(l[p],s),t+V(l[p],s),n+V(l[p],s),r+V(l[p],s),u[0],u[1]]});return c}function ai(e){return[...e]}function oi(e,t=0){let n=e.length;if(n<3)throw Error(`A curve must have at least three points.`);let r=[];if(n===3)r.push(ai(e[0]),ai(e[1]),ai(e[2]),ai(e[2]));else{let n=[];n.push(e[0],e[0]);for(let t=1;t<e.length;t++)n.push(e[t]),t===e.length-1&&n.push(e[t]);let i=[],a=1-t;r.push(ai(n[0]));for(let e=1;e+2<n.length;e++){let t=n[e];i[0]=[t[0],t[1]],i[1]=[t[0]+(a*n[e+1][0]-a*n[e-1][0])/6,t[1]+(a*n[e+1][1]-a*n[e-1][1])/6],i[2]=[n[e+1][0]+(a*n[e][0]-a*n[e+2][0])/6,n[e+1][1]+(a*n[e][1]-a*n[e+2][1])/6],i[3]=[n[e+1][0],n[e+1][1]],r.push(i[1],i[2],i[3])}}return r}function si(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2}function ci(e,t,n){let r=si(t,n);if(r===0)return si(e,t);let i=((e[0]-t[0])*(n[0]-t[0])+(e[1]-t[1])*(n[1]-t[1]))/r;return i=Math.max(0,Math.min(1,i)),si(e,li(t,n,i))}function li(e,t,n){return[e[0]+(t[0]-e[0])*n,e[1]+(t[1]-e[1])*n]}function ui(e,t,n,r){let i=r||[];if(function(e,t){let n=e[t+0],r=e[t+1],i=e[t+2],a=e[t+3],o=3*r[0]-2*n[0]-a[0];o*=o;let s=3*r[1]-2*n[1]-a[1];s*=s;let c=3*i[0]-2*a[0]-n[0];c*=c;let l=3*i[1]-2*a[1]-n[1];return l*=l,o<c&&(o=c),s<l&&(s=l),o+s}(e,t)<n){let n=e[t+0];i.length?(a=i[i.length-1],o=n,Math.sqrt(si(a,o)))>1&&i.push(n):i.push(n),i.push(e[t+3])}else{let r=.5,a=e[t+0],o=e[t+1],s=e[t+2],c=e[t+3],l=li(a,o,r),u=li(o,s,r),d=li(s,c,r),f=li(l,u,r),p=li(u,d,r),m=li(f,p,r);ui([a,l,f,m],0,n,i),ui([m,p,d,c],0,n,i)}var a,o;return i}function di(e,t){return fi(e,0,e.length,t)}function fi(e,t,n,r,i){let a=i||[],o=e[t],s=e[n-1],c=0,l=1;for(let r=t+1;r<n-1;++r){let t=ci(e[r],o,s);t>c&&(c=t,l=r)}return Math.sqrt(c)>r?(fi(e,t,l+1,r,a),fi(e,l,n,r,a)):(a.length||a.push(o),a.push(s)),a}function pi(e,t=.15,n){let r=[],i=(e.length-1)/3;for(let n=0;n<i;n++)ui(e,3*n,t,r);return n&&n>0?fi(r,0,r.length,n):r}const mi=`none`;var hi=class{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:`#000`,strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:`hachure`,fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2**31)}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,t,n){return{shape:e,sets:t||[],options:n||this.defaultOptions}}line(e,t,n,r,i){let a=this._o(i);return this._d(`line`,[zr(e,t,n,r,a)],a)}rectangle(e,t,n,r,i){let a=this._o(i),o=[],s=Vr(e,t,n,r,a);if(a.fill){let i=[[e,t],[e+n,t],[e+n,t+r],[e,t+r]];a.fillStyle===`solid`?o.push(qr([i],a)):o.push(Jr([i],a))}return a.stroke!==mi&&o.push(s),this._d(`rectangle`,o,a)}ellipse(e,t,n,r,i){let a=this._o(i),o=[],s=Ur(n,r,a),c=Wr(e,t,a,s);if(a.fill)if(a.fillStyle===`solid`){let n=Wr(e,t,a,s).opset;n.type=`fillPath`,o.push(n)}else o.push(Jr([c.estimatedPoints],a));return a.stroke!==mi&&o.push(c.opset),this._d(`ellipse`,o,a)}circle(e,t,n,r){let i=this.ellipse(e,t,n,n,r);return i.shape=`circle`,i}linearPath(e,t){let n=this._o(t);return this._d(`linearPath`,[Br(e,!1,n)],n)}arc(e,t,n,r,i,a,o=!1,s){let c=this._o(s),l=[],u=Gr(e,t,n,r,i,a,o,!0,c);if(o&&c.fill)if(c.fillStyle===`solid`){let o=Object.assign({},c);o.disableMultiStroke=!0;let s=Gr(e,t,n,r,i,a,!0,!1,o);s.type=`fillPath`,l.push(s)}else l.push(function(e,t,n,r,i,a,o){let s=e,c=t,l=Math.abs(n/2),u=Math.abs(r/2);l+=V(.01*l,o),u+=V(.01*u,o);let d=i,f=a;for(;d<0;)d+=2*Math.PI,f+=2*Math.PI;f-d>2*Math.PI&&(d=0,f=2*Math.PI);let p=(f-d)/o.curveStepCount,m=[];for(let e=d;e<=f;e+=p)m.push([s+l*Math.cos(e),c+u*Math.sin(e)]);return m.push([s+l*Math.cos(f),c+u*Math.sin(f)]),m.push([s,c]),Jr([m],o)}(e,t,n,r,i,a,c));return c.stroke!==mi&&l.push(u),this._d(`arc`,l,c)}curve(e,t){let n=this._o(t),r=[],i=Hr(e,n);if(n.fill&&n.fill!==mi)if(n.fillStyle===`solid`){let t=Hr(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));r.push({type:`fillPath`,ops:this._mergedShape(t.ops)})}else{let t=[],i=e;if(i.length){let e=typeof i[0][0]==`number`?[i]:i;for(let r of e)r.length<3?t.push(...r):r.length===3?t.push(...pi(oi([r[0],r[0],r[1],r[2]]),10,(1+n.roughness)/2)):t.push(...pi(oi(r),10,(1+n.roughness)/2))}t.length&&r.push(Jr([t],n))}return n.stroke!==mi&&r.push(i),this._d(`curve`,r,n)}polygon(e,t){let n=this._o(t),r=[],i=Br(e,!0,n);return n.fill&&(n.fillStyle===`solid`?r.push(qr([e],n)):r.push(Jr([e],n))),n.stroke!==mi&&r.push(i),this._d(`polygon`,r,n)}path(e,t){let n=this._o(t),r=[];if(!e)return this._d(`path`,r,n);e=(e||``).replace(/\n/g,` `).replace(/(-\s)/g,`-`).replace(`/(ss)/g`,` `);let i=n.fill&&n.fill!==`transparent`&&n.fill!==mi,a=n.stroke!==mi,o=!!(n.simplification&&n.simplification<1),s=function(e,t,n){let r=Fr(Pr(Nr(e))),i=[],a=[],o=[0,0],s=[],c=()=>{s.length>=4&&a.push(...pi(s,t)),s=[]},l=()=>{c(),a.length&&(i.push(a),a=[])};for(let{key:e,data:t}of r)switch(e){case`M`:l(),o=[t[0],t[1]],a.push(o);break;case`L`:c(),a.push([t[0],t[1]]);break;case`C`:if(!s.length){let e=a.length?a[a.length-1]:o;s.push([e[0],e[1]])}s.push([t[0],t[1]]),s.push([t[2],t[3]]),s.push([t[4],t[5]]);break;case`Z`:c(),a.push([o[0],o[1]])}if(l(),!n)return i;let u=[];for(let e of i){let t=di(e,n);t.length&&u.push(t)}return u}(e,1,o?4-4*(n.simplification||1):(1+n.roughness)/2),c=Kr(e,n);if(i)if(n.fillStyle===`solid`)if(s.length===1){let t=Kr(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));r.push({type:`fillPath`,ops:this._mergedShape(t.ops)})}else r.push(qr(s,n));else r.push(Jr(s,n));return a&&(o?s.forEach((e=>{r.push(Br(e,!1,n))})):r.push(c)),this._d(`path`,r,n)}opsToPath(e,t){let n=``;for(let r of e.ops){let e=typeof t==`number`&&t>=0?r.data.map((e=>+e.toFixed(t))):r.data;switch(r.op){case`move`:n+=`M${e[0]} ${e[1]} `;break;case`bcurveTo`:n+=`C${e[0]} ${e[1]}, ${e[2]} ${e[3]}, ${e[4]} ${e[5]} `;break;case`lineTo`:n+=`L${e[0]} ${e[1]} `}}return n.trim()}toPaths(e){let t=e.sets||[],n=e.options||this.defaultOptions,r=[];for(let e of t){let t=null;switch(e.type){case`path`:t={d:this.opsToPath(e),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:mi};break;case`fillPath`:t={d:this.opsToPath(e),stroke:mi,strokeWidth:0,fill:n.fill||mi};break;case`fillSketch`:t=this.fillSketch(e,n)}t&&r.push(t)}return r}fillSketch(e,t){let n=t.fillWeight;return n<0&&(n=t.strokeWidth/2),{d:this.opsToPath(e),stroke:t.fill||mi,strokeWidth:n,fill:mi}}_mergedShape(e){return e.filter(((e,t)=>t===0||e.op!==`move`))}},gi=class{constructor(e,t){this.canvas=e,this.ctx=this.canvas.getContext(`2d`),this.gen=new hi(t)}draw(e){let t=e.sets||[],n=e.options||this.getDefaultOptions(),r=this.ctx,i=e.options.fixedDecimalPlaceDigits;for(let a of t)switch(a.type){case`path`:r.save(),r.strokeStyle=n.stroke===`none`?`transparent`:n.stroke,r.lineWidth=n.strokeWidth,n.strokeLineDash&&r.setLineDash(n.strokeLineDash),n.strokeLineDashOffset&&(r.lineDashOffset=n.strokeLineDashOffset),this._drawToContext(r,a,i),r.restore();break;case`fillPath`:{r.save(),r.fillStyle=n.fill||``;let t=e.shape===`curve`||e.shape===`polygon`||e.shape===`path`?`evenodd`:`nonzero`;this._drawToContext(r,a,i,t),r.restore();break}case`fillSketch`:this.fillSketch(r,a,n)}}fillSketch(e,t,n){let r=n.fillWeight;r<0&&(r=n.strokeWidth/2),e.save(),n.fillLineDash&&e.setLineDash(n.fillLineDash),n.fillLineDashOffset&&(e.lineDashOffset=n.fillLineDashOffset),e.strokeStyle=n.fill||``,e.lineWidth=r,this._drawToContext(e,t,n.fixedDecimalPlaceDigits),e.restore()}_drawToContext(e,t,n,r=`nonzero`){e.beginPath();for(let r of t.ops){let t=typeof n==`number`&&n>=0?r.data.map((e=>+e.toFixed(n))):r.data;switch(r.op){case`move`:e.moveTo(t[0],t[1]);break;case`bcurveTo`:e.bezierCurveTo(t[0],t[1],t[2],t[3],t[4],t[5]);break;case`lineTo`:e.lineTo(t[0],t[1])}}t.type===`fillPath`?e.fill(r):e.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(e,t,n,r,i){let a=this.gen.line(e,t,n,r,i);return this.draw(a),a}rectangle(e,t,n,r,i){let a=this.gen.rectangle(e,t,n,r,i);return this.draw(a),a}ellipse(e,t,n,r,i){let a=this.gen.ellipse(e,t,n,r,i);return this.draw(a),a}circle(e,t,n,r){let i=this.gen.circle(e,t,n,r);return this.draw(i),i}linearPath(e,t){let n=this.gen.linearPath(e,t);return this.draw(n),n}polygon(e,t){let n=this.gen.polygon(e,t);return this.draw(n),n}arc(e,t,n,r,i,a,o=!1,s){let c=this.gen.arc(e,t,n,r,i,a,o,s);return this.draw(c),c}curve(e,t){let n=this.gen.curve(e,t);return this.draw(n),n}path(e,t){let n=this.gen.path(e,t);return this.draw(n),n}};const _i=`http://www.w3.org/2000/svg`;var vi=class{constructor(e,t){this.svg=e,this.gen=new hi(t)}draw(e){let t=e.sets||[],n=e.options||this.getDefaultOptions(),r=this.svg.ownerDocument||window.document,i=r.createElementNS(_i,`g`),a=e.options.fixedDecimalPlaceDigits;for(let o of t){let t=null;switch(o.type){case`path`:t=r.createElementNS(_i,`path`),t.setAttribute(`d`,this.opsToPath(o,a)),t.setAttribute(`stroke`,n.stroke),t.setAttribute(`stroke-width`,n.strokeWidth+``),t.setAttribute(`fill`,`none`),n.strokeLineDash&&t.setAttribute(`stroke-dasharray`,n.strokeLineDash.join(` `).trim()),n.strokeLineDashOffset&&t.setAttribute(`stroke-dashoffset`,`${n.strokeLineDashOffset}`);break;case`fillPath`:t=r.createElementNS(_i,`path`),t.setAttribute(`d`,this.opsToPath(o,a)),t.setAttribute(`stroke`,`none`),t.setAttribute(`stroke-width`,`0`),t.setAttribute(`fill`,n.fill||``),e.shape!==`curve`&&e.shape!==`polygon`||t.setAttribute(`fill-rule`,`evenodd`);break;case`fillSketch`:t=this.fillSketch(r,o,n)}t&&i.appendChild(t)}return i}fillSketch(e,t,n){let r=n.fillWeight;r<0&&(r=n.strokeWidth/2);let i=e.createElementNS(_i,`path`);return i.setAttribute(`d`,this.opsToPath(t,n.fixedDecimalPlaceDigits)),i.setAttribute(`stroke`,n.fill||``),i.setAttribute(`stroke-width`,r+``),i.setAttribute(`fill`,`none`),n.fillLineDash&&i.setAttribute(`stroke-dasharray`,n.fillLineDash.join(` `).trim()),n.fillLineDashOffset&&i.setAttribute(`stroke-dashoffset`,`${n.fillLineDashOffset}`),i}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(e,t){return this.gen.opsToPath(e,t)}line(e,t,n,r,i){let a=this.gen.line(e,t,n,r,i);return this.draw(a)}rectangle(e,t,n,r,i){let a=this.gen.rectangle(e,t,n,r,i);return this.draw(a)}ellipse(e,t,n,r,i){let a=this.gen.ellipse(e,t,n,r,i);return this.draw(a)}circle(e,t,n,r){let i=this.gen.circle(e,t,n,r);return this.draw(i)}linearPath(e,t){let n=this.gen.linearPath(e,t);return this.draw(n)}polygon(e,t){let n=this.gen.polygon(e,t);return this.draw(n)}arc(e,t,n,r,i,a,o=!1,s){let c=this.gen.arc(e,t,n,r,i,a,o,s);return this.draw(c)}curve(e,t){let n=this.gen.curve(e,t);return this.draw(n)}path(e,t){let n=this.gen.path(e,t);return this.draw(n)}};const yi={canvas:(e,t)=>new gi(e,t),svg:(e,t)=>new vi(e,t),generator:e=>new hi(e),newSeed:()=>hi.newSeed()}.generator();function bi(e){let t=0;for(let n=0;n<e.length;n+=1)t=t*31+e.charCodeAt(n)|0;return Math.abs(t)%2**31}const xi=new Map;function Si(e,t){xi.size>=2e3&&xi.delete(xi.keys().next().value),xi.set(e,t)}function Ci(e,t,n,r=1,i=1){let a=`${t}|${n}|${r}|${i}|${e}`,o=xi.get(a);if(o)return o;let s=yi.path(e,{seed:t,roughness:r,bowing:i,disableMultiStroke:!0,preserveVertices:!0,strokeWidth:n}),c=yi.toPaths(s).map(e=>e.d);return Si(a,c),c}function wi(e,t,n,r,i){let a=bi(r.id)+i,o=`disc|${a}|${e.toFixed(1)}|${t.toFixed(1)}|${n.toFixed(1)}`,s=xi.get(o);if(s)return s;let c=yi.circle(e,t,n*2,{seed:a,roughness:1,bowing:1,fill:`#000000`,fillStyle:`solid`,stroke:`none`,disableMultiStroke:!0}),l=yi.toPaths(c).filter(e=>e.fill&&e.fill!==`none`).map(e=>e.d);return Si(o,l),l}function Ti(e,t,n,r){let i=I(t),a=x(Math.min(i.width,i.height)/220,.35,1);return Ci(e,bi(t.id)+n,r,1*a,.3*a)}const H=`#8a8f98`,U=1.5;function W(e,t,n,r=2,i){return Ti(t,e.shape,e.nextSalt(),r).map(e=>({kind:`path`,d:e,stroke:n,width:r,testId:i}))}function Ei(e,t,n,r){return[{kind:`rect`,x:t.x,y:t.y,width:t.width,height:t.height,rx:n,fill:r},...W(e,j(t.x,t.y,t.width,t.height,n),e.ink)]}function G(e,t,n,r,i,a={}){return{kind:`text`,x:t,y:n,text:r,size:a.size??e.shape.fontSize,color:i,family:e.shape.fontFamily,anchor:a.anchor??`start`,baseline:a.baseline??`middle`,testId:a.testId}}function Di(e,t,n){return e.text.measure(t,n??e.shape.fontSize,e.shape.fontFamily)}function K(e){return!e.fill||e.fill===`transparent`?null:e.fill}function Oi(e){return Math.min(7,e.height*.18)}function ki(e){return 12+Oi(e)*2+12}function Ai(e){return Math.min(26,e.height)}function ji(e){return Ai(e)*1.9+10}function Mi(e){return Math.min(e.height,e.width/3)}function Ni(e){return Math.min(e.height*.28,13)}function Pi(e){return Ni(e)*2+24}function Fi(e,t){let n=[],r=``;for(let i of e.split(/\s+/)){let e=r.length===0?i:`${r} ${i}`;e.length>t&&r.length>0?(n.push(r),r=i):r=e}return r.length>0&&n.push(r),n}function Ii(e,t,n){let r=n*.52;return Fi(e,Math.max(4,Math.floor(t/r)))}function Li(e,t,n){return e.split(/\r?\n/).flatMap(e=>e?Ii(e,t,n):[``])}const Ri=`#e7f5ff`;function zi(e,t){let n=K(e.shape);if(!n)return[];let{bounds:r}=e;return[{kind:`rect`,x:r.x,y:r.y,width:r.width,height:r.height,rx:t,fill:n}]}function Bi(e,t){let{bounds:n,ink:r}=e,i=zi(e,t);return i.push(...W(e,j(n.x,n.y,n.width,n.height,t),r)),i}function Vi(e){return e.split(` | `).map(e=>e.trim()).filter(e=>e.length>0)}function Hi(e,t){return t===0?0:Math.max(0,Math.min(t-1,Math.round(e.value??0)))}function Ui(e){return(e.value??0)>=.5}function Wi(e){let{bounds:t,shape:n,ink:r}=e,i=[],a=K(n);if(a&&i.push({kind:`rect`,x:t.x,y:t.y,width:t.width,height:t.height,rx:10,fill:a}),i.push(...W(e,j(t.x,t.y,t.width,t.height,10),r)),n.label){let o=a?m(a):r;i.push(G(e,t.x+t.width/2,t.y+t.height/2,n.label,o,{anchor:`middle`}))}return i}function Gi(e,t=12){let{bounds:n,shape:r,ink:i}=e,a=W(e,j(n.x,n.y,n.width,n.height,6),i);return r.label&&a.push(G(e,n.x+t,n.y+n.height/2,r.label,H)),a}function Ki(e){let{bounds:t,ink:n}=e,r=Oi(t),i=t.x+12+r,a=t.y+t.height/2-r*.4,o=Gi(e,ki(t));return o.push(...W(e,jt(i,a,r),n,U)),o.push(...W(e,M(i+r*.72,a+r*.72,i+r*1.7,a+r*1.7),n,U)),o}function qi(e){let{bounds:t,shape:n,ink:r}=e,i=t.x,a=t.y+t.height/2-22/2,o=W(e,j(i,a,22,22,4),r);if(Ui(n)){let t=`M ${i+22*.22} ${a+22*.55} L ${i+22*.45} ${a+22*.75} L ${i+22*.8} ${a+22*.25}`;o.push(...W(e,t,r,2.2))}return n.label&&o.push(G(e,i+22+10,t.y+t.height/2,n.label,r)),o}function Ji(e){let{bounds:t,shape:n,ink:r}=e,i=t.x+11,a=t.y+t.height/2,o=W(e,jt(i,a,11),r);return Ui(n)&&o.push({kind:`circle`,cx:i,cy:a,r:4.5,fill:r}),n.label&&o.push(G(e,i+11+10,a,n.label,r)),o}function Yi(e){let{bounds:t,shape:n,ink:r}=e,i=Ai(t),a=i*1.9,o=t.x,s=t.y+t.height/2-i/2,c=t.y+t.height/2,l=Ui(n),u=[];l&&u.push({kind:`rect`,x:o,y:s,width:a,height:i,rx:i/2,fill:K(n)??`#4dabf7`}),u.push(...W(e,j(o,s,a,i,i/2),r));let d=i/2-4,f=l?o+a-i/2:o+i/2;return u.push({kind:`circle`,cx:f,cy:c,r:d,fill:P.paper}),u.push(...W(e,jt(f,c,d),r,U)),n.label&&u.push(G(e,t.x+ji(t),c,n.label,r)),u}function Xi(e){let{bounds:t,shape:n,ink:r}=e,i=t.y+t.height/2,a=t.x+t.width,o=W(e,j(t.x,t.y,t.width,t.height,6),r);n.label&&o.push(G(e,t.x+12,i,n.label,r));let s=`M ${a-25} ${i-4} L ${a-18} ${i+4} L ${a-11} ${i-4}`;return o.push(...W(e,s,r,U)),o}function Zi(e){let{bounds:t,shape:n,ink:r}=e,i=S(n.value??.5),a=t.y+t.height/2+(n.label?t.height*.12:0),o=t.x+8,s=t.x+t.width-8,c=o+i*(s-o),l=W(e,M(o,a,s,a),H,U);return l.push({kind:`line`,x1:o,y1:a,x2:c,y2:a,stroke:r,width:3}),l.push({kind:`circle`,cx:c,cy:a,r:8,fill:P.paper}),l.push(...W(e,jt(c,a,8),r,U)),n.label&&l.push(G(e,t.x,t.y+2,n.label,H,{size:n.fontSize*.7,baseline:`hanging`})),l}function Qi(e){let{bounds:t,ink:n}=e,r=t.x+t.width/2,i=t.y+t.height/2,a=Math.min(t.width,t.height)/2-2,o=W(e,jt(r,i,a),n);o.push(...W(e,jt(r,i-a*.3,a*.32),n,U));let s=`M ${r-a*.55} ${i+a*.72} A ${a*.55} ${a*.55} 0 0 1 ${r+a*.55} ${i+a*.72}`;return o.push(...W(e,s,n,U)),o}function $i(e){let{bounds:t,shape:n,ink:r}=e;return n.label?[G(e,t.x,t.y+t.height/2,n.label,r,{size:n.fontSize*1.6})]:[]}function ea(e,t,n,r){let i=(e+t)/2;return`M ${e} ${n} Q ${i} ${n-r} ${t} ${n} Q ${i} ${n+r} ${e} ${n} Z`}function ta(e,t,n,r){return{kind:`path`,d:ea(e,t,n,r),fill:H,stroke:`none`}}function na(e){let{bounds:t,shape:n,ink:r}=e;if(n.label){let i=n.fontSize*.9,a=i*1.4,o=Ii(n.label,t.width,i),s=Math.max(1,Math.floor(t.height/a));return o.slice(0,s).map((n,o)=>G(e,t.x,t.y+a*(o+.6),n,r,{size:i}))}let i=n.fontSize*1.4,a=Math.max(2,Math.floor(t.height/i)),o=[];for(let e=0;e<a;e+=1){let n=t.y+i*(e+.7),r=e===a-1?.6:1;o.push(ta(t.x,t.x+t.width*r,n,3))}return o}function ra(e,t,n){let r=n*.45,i=[];for(let a=0;a<10;a+=1){let o=a%2==0?n:r,s=-Math.PI/2+a*Math.PI/5,c=e+Math.cos(s)*o,l=t+Math.sin(s)*o;i.push(`${a===0?`M`:`L`} ${c} ${l}`)}return`${i.join(` `)} Z`}function ia(e){let{bounds:t}=e,n=t.y+t.height/2;return W(e,M(t.x,n,t.x+t.width,n),H,U)}function aa(e){let{bounds:t,shape:n}=e;if(!n.label)return[];let r=t.x+t.width/2,i=t.y+t.height/2,a=Math.min(t.width,n.label.length*n.fontSize*.55),o=i+n.fontSize*.6;return[G(e,r,i,n.label,g,{anchor:`middle`}),...W(e,M(r-a/2,o,r+a/2,o),g,U)]}function oa(e){let{bounds:t,shape:n,ink:r}=e,i=W(e,j(t.x,t.y,t.width,t.height,6),r),a=n.fontSize*.9,o=a*1.4;if(n.label){let s=Ii(n.label,t.width-24,a),c=Math.max(1,Math.floor((t.height-12)/o));s.slice(0,c).forEach((n,s)=>{i.push(G(e,t.x+12,t.y+12+o*(s+.5),n,r,{size:a}))})}else i.push(G(e,t.x+12,t.y+12+o*.5,`Type here…`,H,{size:a}));let s=t.x+t.width-6,c=t.y+t.height-6;return i.push(...W(e,M(s-6,c,s,c-6),H,U)),i.push(...W(e,M(s-11,c,s,c-11),H,U)),i}function sa(e){let{bounds:t,shape:n,ink:r}=e,i=t.y+t.height/2,a=Mi(t),o=t.x+a,s=t.x+t.width-a,c=W(e,j(t.x,t.y,t.width,t.height,6),r);c.push(...W(e,M(o,t.y,o,t.y+t.height),r,U)),c.push(...W(e,M(s,t.y,s,t.y+t.height),r,U));let l=t.x+a/2,u=t.x+t.width-a/2,d=Math.min(n.fontSize*.42,a*.4,t.height*.3);return c.push(...W(e,M(l-d,i,l+d,i),r,2.2)),c.push(...W(e,M(u-d,i,u+d,i),r,2.2)),c.push(...W(e,M(u,i-d,u,i+d),r,2.2)),n.label&&c.push(G(e,(o+s)/2,i,n.label,r,{anchor:`middle`})),c}function ca(e){let{bounds:t,shape:n,ink:r}=e,i=t.height/2,a=K(n),o=[];return a&&o.push({kind:`rect`,x:t.x,y:t.y,width:t.width,height:t.height,rx:i,fill:a}),o.push(...W(e,j(t.x,t.y,t.width,t.height,i),r)),n.label&&o.push(G(e,t.x+t.width/2,t.y+t.height/2,n.label,r,{anchor:`middle`,size:n.fontSize*.85})),o}function la(e){let{bounds:t,shape:n}=e,r=t.x+t.width/2,i=t.y+t.height/2,a=Math.min(t.width,t.height)/2,o=K(n)??`#ffd43b`,s=wi(r,i,a,n,e.nextSalt()).map(e=>({kind:`path`,d:e,fill:o,stroke:`none`}));return n.label&&s.push(G(e,r,i,n.label,m(o),{anchor:`middle`,size:a*.95})),s}function ua(e){let{bounds:t,shape:n,ink:r}=e,i=S(n.value??.6),a=Math.min(t.height,14),o=t.y+t.height/2-a/2,s=a/2,c=[],l=Math.max(a,t.width*i);return c.push({kind:`rect`,x:t.x,y:o,width:l,height:a,rx:s,fill:K(n)??r}),c.push(...W(e,j(t.x,o,t.width,a,s),r,U)),c}function da(e){let{bounds:t,shape:n,ink:r}=e,i=Math.max(0,Math.min(5,Math.round(n.value??3))),a=t.y+t.height/2,o=t.width/5,s=Math.min(o,t.height)*.42,c=[];for(let l=0;l<5;l+=1){let u=t.x+o*(l+.5);l<i&&c.push({kind:`path`,d:ra(u,a,s),fill:K(n)??r}),c.push(...W(e,ra(u,a,s),r,U))}return c}function fa(e){let{bounds:t,shape:n,ink:r}=e,i=S(n.value??.3),a=t.width/2,o=W(e,j(t.x,t.y,t.width,t.height,a),H,U),s=Math.max(t.width*1.5,t.height*.32),c=t.y+i*(t.height-s);return o.push({kind:`rect`,x:t.x,y:c,width:t.width,height:s,rx:a,fill:K(n)??r}),o.push(...W(e,j(t.x,c,t.width,s,a),r,U)),o}const pa={button:Wi,input:Gi,search:Ki,checkbox:qi,radio:Ji,toggle:Yi,dropdown:Xi,slider:Zi,avatar:Qi,heading:$i,paragraph:na,divider:ia,link:aa,textarea:oa,stepper:sa,badge:ca,progress:ua,rating:da,scrollbar:fa,stepbadge:la};function ma(e){let{bounds:t,shape:n,ink:r}=e,i=t.x+t.width,a=t.y+t.height,o=W(e,j(t.x,t.y,t.width,t.height,4),r);return o.push(...W(e,M(t.x,t.y,i,a),r,U)),o.push(...W(e,M(i,t.y,t.x,a),r,U)),n.label&&o.push(G(e,t.x+t.width/2,t.y+t.height/2+Math.min(t.height*.25,n.fontSize*1.4),n.label,H,{size:n.fontSize*.8,anchor:`middle`})),o}const ha=1.3;function ga(e,t){return Math.min(e.height*.5,Math.max(0,e.height-t*4))}function _a(e){let t=I(e),n=e.fontSize,r=e.fontSize*.85,i=t.x+12,a=t.width-24,o=t.y+ga(t,e.fontSize)+8,s=t.y+t.height-6,c=n*ha,l=Math.max(1,e.label.trim()?Li(e.label.trim(),a,n).length:1),u=Math.min(l*c,s-o),d=Math.min(o+u+4,s);return{title:{field:`label`,x:i,y:o,width:a,height:u,fontSize:n},body:{field:`body`,x:i,y:d,width:a,height:Math.max(r,s-d),fontSize:r}}}function va(e,t,n,r){let i=n.trim();if(!i)return[];let a=t.fontSize*ha,o=Math.max(1,Math.floor(t.height/a));return Li(i,t.width,t.fontSize).slice(0,o).map((n,i)=>G(e,t.x,t.y+a*i+2,n,r,{size:t.fontSize,baseline:`hanging`,testId:t.field===`body`?`card-body`:`card-title`}))}function ya(e){let{bounds:t,shape:n,ink:r}=e,i=t.x+t.width,a=t.y+ga(t,n.fontSize),o=Bi(e,10);o.push(...W(e,M(t.x,a,i,a),r,U)),o.push(...W(e,M(t.x,t.y,i,a),H,U)),o.push(...W(e,M(i,t.y,t.x,a),H,U));let s=_a(n);return o.push(...va(e,s.title,n.label,r)),o.push(...va(e,s.body,n.body??``,H)),o}function ba(e){let{bounds:t,shape:n,ink:r}=e,i=Vi(n.label),a=Bi(e,6);if(i.length===0)return a;let o=t.height/i.length;return i.forEach((n,s)=>{let c=t.y+o*s,l=c+o/2,u=t.x+12;a.push({kind:`circle`,cx:u,cy:l,r:2.4,fill:H}),a.push(G(e,u+12,l,n,r)),s<i.length-1&&a.push(...W(e,M(t.x,c+o,t.x+t.width,c+o),H,1))}),a}const xa={info:{label:`Info`,tint:`#e7f5ff`,ink:`#1971c2`},success:{label:`Success`,tint:`#ebfbee`,ink:`#2f9e44`},warning:{label:`Warning`,tint:`#fff9db`,ink:`#f08c00`},error:{label:`Error`,tint:`#fff5f5`,ink:`#e03131`}},Sa=An.map(e=>({key:e,...xa[e]}));function Ca(e){let t=Math.max(0,Math.min(Sa.length-1,Math.round(e.value??0)));return Sa[t]}function wa(e,t,n,r,i,a){let o=[];return t===`warning`?o.push(...W(e,`M ${n} ${r-i} L ${n+i} ${r+i*.85} L ${n-i} ${r+i*.85} Z`,a,U)):o.push(...W(e,jt(n,r,i),a,U)),t===`success`?(o.push(...W(e,`M ${n-i*.45} ${r} L ${n-i*.1} ${r+i*.4} L ${n+i*.5} ${r-i*.4}`,a,2)),o):t===`info`?(o.push({kind:`circle`,cx:n,cy:r-i*.45,r:1.5,fill:a}),o.push(...W(e,M(n,r-i*.1,n,r+i*.5),a,2)),o):t===`warning`?(o.push(...W(e,M(n,r-i*.08,n,r+i*.28),a,2)),o.push({kind:`circle`,cx:n,cy:r+i*.5,r:1.4,fill:a}),o):(o.push(...W(e,M(n,r-i*.42,n,r+i*.12),a,2)),o.push({kind:`circle`,cx:n,cy:r+i*.42,r:1.4,fill:a}),o)}function Ta(e){let{bounds:t,shape:n}=e,r=Ca(n),i=t.y+t.height/2,a=[{kind:`rect`,x:t.x,y:t.y,width:t.width,height:t.height,rx:8,fill:r.tint}];a.push(...W(e,j(t.x,t.y,t.width,t.height,8),r.ink));let o=Ni(t),s=t.x+o+12;if(a.push(...wa(e,r.key,s,i,o,r.ink)),n.label){let o=t.x+Pi(t);a.push(G(e,o,i,n.label,r.ink,{size:n.fontSize*.92}))}return a}function Ea(e){let{bounds:t,shape:n,ink:r}=e,i=Vi(n.label),a=Bi(e,8);if(i.length===0)return a;let o=t.height/i.length,s=Hi(n,i.length);return i.forEach((n,i)=>{let c=t.y+o*i,l=c+o/2;i===s&&a.push({kind:`rect`,x:t.x+4,y:c+3,width:t.width-8,height:o-6,rx:5,fill:Ri}),a.push(G(e,t.x+12,l,n,r))}),a}function Da(e){let{bounds:t,shape:n,ink:r}=e,i=t.height-8,a=t.x+t.width/2,o=[],s=K(n),c=t.x,l=t.x+t.width,u=t.y,d=t.y+i,f=Math.min(6,i/2,t.width/2),p=`M ${c+f} ${u} H ${l-f} Q ${l} ${u} ${l} ${u+f} V ${d-f} Q ${l} ${d} ${l-f} ${d} H ${a+8} L ${a} ${d+8} L ${a-8} ${d} H ${c+f} Q ${c} ${d} ${c} ${d-f} V ${u+f} Q ${c} ${u} ${c+f} ${u} Z`;if(s&&(o.push({kind:`rect`,x:c,y:u,width:t.width,height:i,rx:f,fill:s}),o.push({kind:`path`,d:`M ${a-8} ${d} L ${a} ${d+8} L ${a+8} ${d} Z`,fill:s,stroke:`none`})),o.push(...W(e,p,r)),n.label){let c=s?m(s):r;o.push(G(e,a,t.y+i/2,n.label,c,{anchor:`middle`,size:n.fontSize*.9}))}return o}function Oa(e){let{bounds:t,shape:n,ink:r}=e,i=Vi(n.label),a=Bi(e,8);if(i.length===0)return a;let o=Hi(n,i.length),s=Math.min(38,t.height/i.length),c=Math.max(0,t.height-s*i.length),l=t.x+t.width,u=t.y;return i.forEach((d,f)=>{let p=u+s/2,m=l-20,h=f===o,g=h?`M ${m-5} ${p-3} L ${m} ${p+3} L ${m+5} ${p-3}`:`M ${m-3} ${p-5} L ${m+3} ${p} L ${m-3} ${p+5}`;if(a.push(G(e,t.x+12,p,d,r)),a.push(...W(e,g,H,U)),u+=s,h&&c>0){let r=Math.max(1,Math.floor(c/(n.fontSize*1.4)));for(let i=0;i<r;i+=1){let o=u+n.fontSize*1.4*(i+.6);if(o>u+c)break;let s=i===r-1?.6:.92;a.push(...W(e,M(t.x+12,o,t.x+t.width*s,o),H,1))}u+=c}f<i.length-1&&a.push(...W(e,M(t.x,u,l,u),H,1))}),a}function ka(e){return Math.min(46,e.height*.24)}function Aa(e){return Math.min(56,e.height*.28)}function ja(e){let t=e.x+e.width,n=e.y+e.height,r=Aa(e),i=n-r,a=Math.min(34,r-14),o=i+(r-a)/2,s=Math.min(88,(e.width-24-10)/2);if(s<=24)return null;let c=t-12-s;return{secondary:{x:c-10-s,y:o,width:s,height:a},primary:{x:c,y:o,width:s,height:a}}}function Ma(e){return e.primaryLabel??`OK`}function Na(e){return e.secondaryLabel??`Cancel`}function Pa(e){let{bounds:t,shape:n,ink:r}=e,i=t.x+t.width,a=t.y+t.height,o=ka(t),s=a-Aa(t),c=Bi(e,12);n.label&&c.push(G(e,t.x+12,t.y+o/2,n.label,r,{testId:`card-title`}));let l=i-12-4,u=t.y+o/2;c.push(...W(e,M(l-5,u-5,l+5,u+5),H,U)),c.push(...W(e,M(l+5,u-5,l-5,u+5),H,U)),c.push(...W(e,M(t.x,t.y+o,i,t.y+o),H,1));let d=n.body??``;if(d){let i=n.fontSize*.92,a=i*1.4,l=t.y+o+10,u=Li(d,t.width-24,i),f=Math.max(1,Math.floor((s-l)/a));u.slice(0,f).forEach((n,o)=>c.push(G(e,t.x+12,l+a*(o+.5),n,r,{size:i,testId:`card-body`})))}c.push(...W(e,M(t.x,s,i,s),H,1));let f=ja(t);if(f){let{secondary:t,primary:i}=f,a=n.fontSize*.82,o=Vt(r)??m(r);c.push({kind:`rect`,x:i.x,y:i.y,width:i.width,height:i.height,rx:8,fill:r}),c.push(...W(e,j(i.x,i.y,i.width,i.height,8),r)),c.push(...W(e,j(t.x,t.y,t.width,t.height,8),r));let s=Ma(n),l=Na(n);s&&c.push(G(e,i.x+i.width/2,i.y+i.height/2,s,o,{anchor:`middle`,size:a,testId:`modal-primary`})),l&&c.push(G(e,t.x+t.width/2,t.y+t.height/2,l,r,{anchor:`middle`,size:a,testId:`modal-secondary`}))}return c}const Fa={image:ma,card:ya,list:ba,alert:Ta,menu:Ea,tooltip:Da,accordion:Oa,modal:Pa},Ia=1.9,La=1.4,Ra=/^-{2,}$/;function za(e){return(e??``).split(/\r?\n/).map(e=>e.trim()).filter(e=>e.length>0)}function Ba(e){return za(e.body).map(e=>({text:e,divider:Ra.test(e)}))}function Va(e){return Ba(e).filter(e=>!e.divider).map(e=>e.text)}function Ha(e){let t=e.fontSize*.9;return{fontSize:t,lineH:t*La}}function Ua(e){let t=I(e),n=Va(e).length===0?t.height:Math.min(t.height,e.fontSize*Ia),r=t.x+12,i=t.width-24,{fontSize:a}=Ha(e),o=t.y+n+4,s=t.y+t.height-4;return{title:{field:`label`,x:t.x,y:t.y,width:t.width,height:n,fontSize:e.fontSize},body:{field:`body`,x:r,y:o,width:i,height:Math.max(a,s-o),fontSize:a}}}function Wa(e,t,n){let r=n*.9,i=r*La,a=n*Ia,o=Math.round(a+4+t.length*i+8),s=(e,t)=>e.length*t*.62,c=Math.max(s(e,n),0,...t.filter(e=>!Ra.test(e)).map(e=>s(e,r)));return{width:Math.max(160,Math.round(c+24+16)),height:o}}function Ga(e){let t=Ua(e),{lineH:n}=Ha(e),r=I(e).y+e.height;return Ba(e).map((e,r)=>({text:e.text,cy:t.body.y+n*(r+.5),divider:e.divider})).filter(e=>e.cy<=r)}function Ka(e){let{bounds:t,shape:n,ink:r}=e,i=Ua(n),a=t.y+i.title.height,o=Va(n).length>0,s=K(n),c=[];s&&c.push({kind:`path`,d:o?At(t.x,t.y,t.width,i.title.height,6):j(t.x,t.y,t.width,t.height,6),fill:s,testId:`entity-header`}),c.push(...W(e,j(t.x,t.y,t.width,t.height,6),r)),o&&c.push(...W(e,M(t.x,a,t.x+t.width,a),r,U));let l=n.label.trim();l&&c.push(G(e,t.x+t.width/2,t.y+i.title.height/2,l,s?m(s):r,{anchor:`middle`,testId:`entity-title`}));for(let{text:a,cy:o,divider:s}of Ga(n)){if(s){c.push(...W(e,M(t.x,o,t.x+t.width,o),r,U,`entity-divider`));continue}c.push(G(e,i.body.x,o,a,r,{size:i.body.fontSize,testId:`entity-row`}))}return c}function qa(e){return Math.min(e.height,Ja(e.fontSize))}function Ja(e){return e*2.4}function Ya(e){if(!e.activations||e.activations.length===0)return[];let t=qa(e),n=e.height;return e.activations.map(r=>{let i=Math.min(Math.max(r.top,t),Math.max(t,n-12)),a=Math.max(12,Math.min(r.height,n-i));return{x:e.x+e.width/2-12/2,y:e.y+i,width:12,height:a}})}function Xa(e,t){for(let n of Ya(e))if(t>=n.y&&t<=n.y+n.height)return n;return null}function Za(e){let t=qa(e);return{x:e.x+e.width/2,y:e.y+t,width:0,height:Math.max(2,e.height-t)}}const Qa=1.5;function $a(e){let t=K(e);return t?m(t):null}function eo(e){let{bounds:t,shape:n,ink:r}=e,i=qa(n),a=t.x+t.width/2,o=K(n)??P.paper,s=Ei(e,{x:t.x,y:t.y,width:t.width,height:i},6,o);n.label.trim()&&s.push(G(e,a,t.y+i/2,n.label.trim(),$a(n)??r,{anchor:`middle`,testId:`lifeline-name`}));let c=t.y+t.height;for(let e=t.y+i;e<c;e+=12)s.push({kind:`line`,x1:a,y1:e,x2:a,y2:Math.min(e+7,c),stroke:r,width:Qa});for(let t of Ya(n))s.push(...Ei(e,t,2,o));return s}function to(e){return Math.min(I(e).height,e.fontSize*1.75)}function no(e,t){let n=I(e),r=e.label.trim()||`opt`,i=Math.min(n.width,t.measure(r,e.fontSize,e.fontFamily)+24);return{x:n.x,y:n.y,width:i,height:to(e)}}function ro(e){let t=Math.min(8,e.width/2,e.height/2);return{tl:Math.min(14,e.width-t,e.height-t),br:t}}function io(e){let{x:t,y:n,width:r,height:i}=e,{tl:a,br:o}=ro(e);return[`M ${t+a} ${n}`,`L ${t+r} ${n}`,`L ${t+r} ${n+i-o}`,`Q ${t+r} ${n+i} ${t+r-o} ${n+i}`,`L ${t} ${n+i}`,`L ${t} ${n+a}`,`Q ${t} ${n} ${t+a} ${n}`,`Z`].join(` `)}function ao(e){let{x:t,y:n,width:r,height:i}=e,{br:a}=ro(e);return`M ${t+r} ${n} L ${t+r} ${n+i-a} Q ${t+r} ${n+i} ${t+r-a} ${n+i} L ${t} ${n+i}`}function oo(e){let{bounds:t,shape:n,ink:r}=e,i=K(n)??`#f3f0ff`,a=no(n,e.text),o=[{kind:`path`,d:io(a),fill:i,testId:`fragment-tab`}];o.push(...W(e,j(t.x,t.y,t.width,t.height,14),r)),o.push(...W(e,ao(a),r,U,`fragment-tab`));let s=n.label.trim();return s&&o.push(G(e,a.x+12,a.y+a.height/2+n.fontSize*.1,s,m(i),{anchor:`start`,testId:`fragment-label`})),o}const so={entity:Ka,lifeline:eo,fragment:oo};function co(e){let{bounds:t,shape:n,ink:r}=e,i=t.y+t.height/2,a=W(e,j(t.x,t.y,t.width,t.height,8),r),o=Vi(n.label),s=Hi(n,o.length);return o.forEach((n,c)=>{let l=t.x+t.width*(c+.5)/o.length;a.push(G(e,l,i,n,c===s?r:H,{anchor:`middle`}))}),a}function lo(e){let{bounds:t,shape:n,ink:r}=e,i=t.y+t.height/2,a=t.y+t.height-1,o=[{kind:`line`,x1:t.x,y1:a,x2:t.x+t.width,y2:a,stroke:H,width:1}],s=Vi(n.label);if(s.length>0){let c=Hi(n,s.length),l=n.fontSize*.55,u=t.x;s.forEach((t,n)=>{let s=t.length*l+28;n===c&&o.push(...W(e,M(u+4,a,u+s-4,a),r,2.5)),o.push(G(e,u+s/2,i,t,n===c?r:H,{anchor:`middle`})),u+=s})}return o}function uo(e){let{bounds:t,shape:n,ink:r}=e,i=t.y+t.height/2,a=Vi(n.label),o=n.fontSize*.4,s=[],c=t.x;return a.forEach((t,n)=>{let l=n===a.length-1;s.push(G(e,c,i,t,l?r:H,{anchor:`start`})),c+=Di(e,t),l||(c+=o,s.push(G(e,c,i,`/`,H,{anchor:`start`})),c+=Di(e,`/`)+o)}),s}function fo(e){let{bounds:t,shape:n,ink:r}=e,i=t.y+t.height/2,a=Vi(n.label),o=t.height*.5,s=[],c=t.x+o*.5;s.push(...W(e,`M ${c+3} ${i-5} L ${c-3} ${i} L ${c+3} ${i+5}`,H,U));let l=t.x+t.width-o*.5;if(s.push(...W(e,`M ${l-3} ${i-5} L ${l+3} ${i} L ${l-3} ${i+5}`,H,U)),a.length>0){let c={x:t.x+o,width:t.width-o*2},l=c.width/a.length,u=Hi(n,a.length),d=Math.min(t.height,l)*.82;a.forEach((t,a)=>{let o=c.x+l*(a+.5);a===u&&s.push(...W(e,j(o-d/2,i-d/2,d,d,5),r,U)),s.push(G(e,o,i,t,a===u?r:H,{anchor:`middle`,size:n.fontSize*.85}))})}return s}function po(e){let{bounds:t,shape:n,ink:r}=e,i=t.x+t.width,a=Math.min(34,t.height*.2),o=W(e,j(t.x,t.y,t.width,t.height,8),r),s=t.y+a/2;o.push(...W(e,`M ${t.x+18} ${s-4} L ${t.x+12} ${s} L ${t.x+18} ${s+4}`,H,U)),o.push(...W(e,`M ${i-18} ${s-4} L ${i-12} ${s} L ${i-18} ${s+4}`,H,U)),o.push(G(e,t.x+t.width/2,s,n.label||`Month`,H,{anchor:`middle`,size:n.fontSize*.85})),o.push(...W(e,M(t.x,t.y+a,i,t.y+a),H,1));let c=t.y+a+8,l=t.y+t.height-c-8,u=t.width/7,d=l/5,f=Math.min(u,d)*.16,p=Math.round((n.value??.4)*34);for(let e=0;e<5;e+=1)for(let i=0;i<7;i+=1){let a=t.x+u*(i+.5),s=c+d*(e+.5);e*7+i===p?o.push({kind:`circle`,cx:a,cy:s,r:f*1.8,fill:K(n)??r}):o.push({kind:`circle`,cx:a,cy:s,r:f,fill:H})}return o}function mo(e){let{bounds:t,shape:n,ink:r}=e,i=Vi(n.label),a=Bi(e,8);if(i.length===0)return a;let o=t.y+12,s=Math.min(40,(t.height-24)/i.length),c=Hi(n,i.length);return i.forEach((i,l)=>{let u=o+s*l,d=u+s/2;l===c&&a.push({kind:`rect`,x:t.x+6,y:u+3,width:t.width-12,height:s-6,rx:6,fill:Ri});let f=t.x+12+2;a.push({kind:`circle`,cx:f,cy:d,r:3,fill:l===c?r:H}),a.push(G(e,f+14,d,i,l===c?r:H,{size:n.fontSize*.9}))}),a}function ho(e){let{bounds:t,shape:n,ink:r}=e,i=Vi(n.label),a=Math.max(i.length,1),o=t.width/a,s=Math.min(8,t.height/2),c=t.y+t.height/2,l=Hi(n,i.length),u=K(n)??`#4dabf7`,d=[];i.length>0&&d.push({kind:`rect`,x:t.x+l*o,y:t.y,width:o,height:t.height,rx:l===0||l===a-1?s:0,fill:u}),d.push(...W(e,j(t.x,t.y,t.width,t.height,s),r));for(let n=1;n<a;n+=1){let i=t.x+n*o;d.push(...W(e,M(i,t.y,i,t.y+t.height),r,U))}return i.forEach((n,r)=>{let i=t.x+(r+.5)*o,a=r===l?m(u):H;d.push(G(e,i,c,n,a,{anchor:`middle`}))}),d}function go(e){let{bounds:t,shape:n,ink:r}=e,i=Vi(n.label),a=Math.max(i.length,1),o=t.width/a,s=Hi(n,i.length),c=W(e,M(t.x,t.y,t.x+t.width,t.y),H,U),l=Math.min(8,t.height*.18),u=t.y+t.height*.4;return i.forEach((i,a)=>{let d=t.x+(a+.5)*o,f=a===s?r:H;c.push(...W(e,jt(d,u,l),f,U)),c.push(G(e,d,t.y+t.height*.8,i,f,{anchor:`middle`,size:n.fontSize*.78}))}),c}function _o(e){let{bounds:t,shape:n,ink:r}=e,i=t.y+t.height/2,a=n.label&&n.label.length>0?n.label:`9:41`,o=[G(e,t.x+8,i,a,r,{size:n.fontSize*.85})],s=t.x+t.width-8,c=Math.min(11,t.height*.5),l=c*2,u=s-l-2,d=i-c/2;o.push(...W(e,j(u,d,l,c,2),r,U)),o.push({kind:`rect`,x:u+l+1.5,y:i-c*.2,width:2,height:c*.4,fill:r}),o.push({kind:`rect`,x:u+1.5,y:d+1.5,width:(l-3)*.6,height:c-3,fill:r});let f=i+5,p=u-30;for(let e=0;e<4;e+=1){let t=3+e*2.2;o.push({kind:`rect`,x:p,y:f-t,width:3,height:t,fill:r}),p+=5}return o}function vo(e){let{bounds:t,shape:n,ink:r}=e,i=t.x+t.width/2,a=t.y+t.height/2,o=Math.min(t.width,t.height)/2-2,s=K(n),c=[];s&&c.push({kind:`circle`,cx:i,cy:a,r:o,fill:s}),c.push(...W(e,jt(i,a,o),r));let l=o*.42,u=s?m(s):r;return c.push(...W(e,M(i-l,a,i+l,a),u,2.5)),c.push(...W(e,M(i,a-l,i,a+l),u,2.5)),c}const yo={navbar:co,tabs:lo,breadcrumbs:uo,pagination:fo,datepicker:po,sidebar:mo,segmented:ho,tabbar:go,statusbar:_o,fab:vo};({...pa,...yo,...Fa,...so});const bo={button:`Button`,input:`Type here…`,search:`Search…`,dropdown:`Select…`,heading:`Heading`,navbar:`Home | About | Contact`,tabs:`First | Second`,checkbox:`Checkbox`,radio:`Option`,toggle:`Toggle`,link:`Link text`,badge:`New`,breadcrumbs:`Home | Library | Item`,pagination:`1 | 2 | 3 | 4`,card:`Card title`,list:`Item one | Item two | Item three`,alert:`Heads up. Something needs attention.`,menu:`New | Open | Save | Close`,tooltip:`Tooltip text`,accordion:`Section one | Section two | Section three`,sidebar:`Dashboard | Projects | Team | Settings`,segmented:`Day | Week | Month`,tabbar:`Home | Search | Profile`,statusbar:`9:41`,modal:`Dialog title`,stepbadge:`1`,entity:`User`,lifeline:`Participant`,fragment:`opt`},xo=[`crowOne`,`crowMany`,`crowOneOrMany`,`crowOnlyOne`,`crowZeroOrOne`,`crowZeroOrMany`],So=[],Co={get(e){for(let t=So.length-1;t>=0;--t)if(So[t].shapes===e)return So[t].index},has(e){return Co.get(e)!==void 0},set(e,t){So.push({shapes:e,index:t}),So.length>8&&So.shift()}};function wo(e){if(e.type===`arrow`){let t=[];return e.startBinding&&t.push(e.startBinding.shapeId),e.endBinding&&t.push(e.endBinding.shapeId),t}return e.type===`polygon`&&e.band?[e.band.from,e.band.to]:[]}function To(e){let t=new Map,n=new Map,r=new Map;for(let i=0;i<e.length;i+=1){let a=e[i];t.has(a.id)||t.set(a.id,i);let o=r.get(a.type);o?o.push(i):r.set(a.type,[i]);for(let e of wo(a)){let t=n.get(e);t?t.push(a.id):n.set(e,[a.id])}}return{position:t,dependents:n,byType:r}}function Eo(e){let t=Co.get(e);if(t)return t;let n=To(e);return Co.set(e,n),n}function Do(e,t,n){if(e===t||Co.has(t))return;let r=Co.get(e);if(!(!r||e.length!==t.length)){for(let r of n){let n=e[r],i=t[r];if(n!==i&&!Oo(n,i))return}Co.set(t,r)}}function Oo(e,t){return e.id===t.id&&e.type===t.type&&ko(e,t)}function ko(e,t){let n=wo(t);if(n.length===0)return!0;let r=wo(e);return n.every(e=>r.includes(e))}function Ao(e){return`kind`in e&&e.kind===`path`}function jo(e){return e.type===`line`?e.points:e.type===`arrow`?[{x:e.x,y:e.y},{x:e.x2,y:e.y2}]:null}function Mo(e,t){let n=jo(e)??[T(I(e))],r=Math.max(0,Math.min(t.seg,n.length-2)),i=n[r],a=n[r+1]??i,o=S(t.t);return{x:i.x+(a.x-i.x)*o,y:i.y+(a.y-i.y)*o}}function No(e,t){return t?Ao(e)?t.type===`line`||t.type===`arrow`:t.type!==`arrow`:!1}function Po(e,t){let n=Math.abs(t.x-e.x),r=Math.abs(t.x-(e.x+e.width)),i=Math.abs(t.y-e.y),a=Math.abs(t.y-(e.y+e.height)),o=Math.min(n,r,i,a);return o===n?{x:-1,y:0}:o===r?{x:1,y:0}:o===i?{x:0,y:-1}:{x:0,y:1}}function Fo(e,t){return e.type===`icon`?cn(e,t):e.type===`control`&&e.kind===`lifeline`?Za(e):I(e,t)}function Io(e,t){return T(I(e,t))}function Lo(e){return e.type===`text`?14:6}const Ro=new Set(xo);function zo(e,t,n){let r=n===`start`?t.startArrow:t.endArrow,i=n===`start`?t.startHead:t.endHead;return r&&i&&Ro.has(i)?0:Lo(e)}function Bo(e){if(e.type!==`rectangle`)return null;let t=e.kind;return t!==`diamond`&&t!==`ellipse`&&t!==`double-circle`?null:t}function Vo(e,t){return e===`diamond`?1-t:Math.sqrt(Math.max(0,1-t*t))}function Ho(e,t,n){let r=Bo(e);if(r===null)return n;let i=Po(t,n),a=t.x+t.width/2,o=t.y+t.height/2,s=i.x!==0,c=s?t.width/2:t.height/2,l=s?t.height/2:t.width/2,u=s?n.y-o:n.x-a,d=Vo(r,l===0?0:Math.min(1,Math.abs(u)/l)),f=s?i.x:i.y;return s?{x:a+f*c*d,y:n.y}:{x:n.x,y:o+f*c*d}}const Uo=.002;function Wo(e,t,n=0,r){let i=Fo(e,r),a=qo(i,t);if(t.x>Uo&&t.x<1-Uo&&t.y>Uo&&t.y<1-Uo)return Ko(e,a,r);let o=Ho(e,i,a),s=e.type===`text`?Math.max(n,14):n;if(s<=0)return Ko(e,o,r);let c=Po(i,a);return Ko(e,{x:o.x+c.x*s,y:o.y+c.y*s},r)}function Go(e,t,n){let r=on(e)*Math.PI/180;return r?an(t,T(I(e,n)),-r):t}function Ko(e,t,n){let r=on(e)*Math.PI/180;return r?an(t,T(I(e,n)),r):t}function qo(e,t){return{x:e.x+t.x*e.width,y:e.y+t.y*e.height}}function Jo(e,t){return{x:e.width===0?.5:(t.x-e.x)/e.width,y:e.height===0?.5:(t.y-e.y)/e.height}}const Yo={n:{x:.5,y:0},s:{x:.5,y:1},e:{x:1,y:.5},w:{x:0,y:.5},ne:{x:1,y:0},nw:{x:0,y:0},se:{x:1,y:1},sw:{x:0,y:1}};function Xo(e){return e.port?Yo[e.port]:e.anchor}function Zo(e,t=6){return E(e,t)}function Qo(e){return e.type===`control`&&e.kind===`lifeline`}function $o(e,t,n,r){let i=Fo(e),a=i.x+i.width/2,o=i.y+S(t)*i.height,s=e.type===`control`?Xa(e,o):null,c=n.x<=a;return{x:(s?c?s.x:s.x+s.width:a)+(c?-r:r),y:o}}function es(e,t,n){if(Ao(t))return Mo(e,t);if(Qo(e)&&t.precise){let n=Fo(e);return{x:n.x+n.width/2,y:n.y+S(t.anchor.y)*n.height}}return t.precise?Wo(e,Xo(t),Lo(e),n):Io(e,n)}function ts(e,t,n,r=Lo(e),i){return Ao(t)?Mo(e,t):Qo(e)&&t.precise?$o(e,t.anchor.y,n,r):t.precise?Wo(e,Xo(t),r,i):Ko(e,ee(Zo(Fo(e,i),r),Io(e,i),Go(e,n,i)),i)}function ns(e,t,n,r,i){let a=Zo(Fo(e,i),r),o=n?1/64:-1/64,s=+!n;for(let n=1;n<=64;n+=1){let n=s+o;if(!O(Go(e,t.pointAt(n),i),a)){let r=s,o=n;for(let n=0;n<16;n+=1){let n=(r+o)/2;O(Go(e,t.pointAt(n),i),a)?r=n:o=n}return r}if(s=n,n<=0||n>=1)break}return+!n}function rs(e,t){let n=Fo(e,t),r=on(e)*Math.PI/180;return r?ln(n,T(I(e,t)),r):n}function is(e,t,n){return e.type===`icon`?Jo(I(e,n),qo(Fo(e,n),t)):t}function as(e,t){let n=e.x-.5,r=e.y-.5;if(t){let e=t*Math.PI/180,i=Math.cos(e),a=Math.sin(e),o=n*i-r*a,s=n*a+r*i;n=o,r=s}return Math.abs(n)<1e-6&&Math.abs(r)<1e-6?null:Math.abs(n)>Math.abs(r)-1e-4?n<0?`left`:`right`:r<0?`top`:`bottom`}function os(e,t){if(on(e)!==0)return;let n=Bo(e);if(n===null)return;let r=I(e),i=r.x+r.width/2,a=r.y+r.height/2,o=r.width/2,s=r.height/2,c=t===`left`||t===`right`,l=t===`right`||t===`bottom`?1:-1;return e=>{let t=c?i:a,r=c?o:s,u=c?a:i,d=c?s:o,f=d===0?0:Math.min(1,Math.abs(e-u)/d),p=Vo(n,f);return t+l*r*p}}function ss(e,t,n,r=Lo(e),i){if(Ao(t))return lt(Mo(e,t),n);let a=t.precise?as(is(e,t.anchor,i),on(e)):null;return{bounds:rs(e,i),target:t.precise?Wo(e,t.anchor,0,i):Io(e,i),gap:r,minEnd:n*se,side:a,outline:a?os(e,a):void 0,isPoint:!1}}function cs(e,t){return{...e,elbowPoints:t,elbowRoute:t,elbowMidHandle:void 0,x:t[0].x,y:t[0].y,x2:t[t.length-1].x,y2:t[t.length-1].y}}const ls=new Set([`ellipse`,`circle`,`double-circle`]);function us(e,t){let n=new Map(e.map(e=>[e,[]])),r=new Map,i=[],a=new Map(e.map(e=>[e,[]]));for(let e of t)a.get(e.from)?.push(e.to);let o=[],s=e=>{for(o.push({node:e,next:0}),r.set(e,`visiting`);o.length>0;){let e=o[o.length-1],t=a.get(e.node)??[];if(e.next>=t.length){r.set(e.node,`done`),o.pop();continue}let n=t[e.next];e.next+=1;let s=r.get(n);s!==`visiting`&&(i.push({from:e.node,to:n}),s||(r.set(n,`visiting`),o.push({node:n,next:0})))}};for(let t of e)r.has(t)||s(t);for(let e of i)n.get(e.from)?.push(e.to);let c=new Map(e.map(e=>[e,0]));for(let e of i)c.set(e.to,(c.get(e.to)??0)+1);let l=new Map(e.map(e=>[e,0])),u=e.filter(e=>(c.get(e)??0)===0);for(let e=0;e<u.length;e+=1){let t=u[e];for(let e of n.get(t)??[]){l.set(e,Math.max(l.get(e)??0,(l.get(t)??0)+1));let n=(c.get(e)??1)-1;c.set(e,n),n===0&&u.push(e)}}return l}function ds(e,t){let n=e.reduce((e,t)=>Math.max(e,t.rank),0)+1,r=Array.from({length:n},()=>[]);for(let t of e)r[t.rank].push(t);let i=new Map;for(let e of t)i.set(e.from,[...i.get(e.from)??[],e.to]),i.set(e.to,[...i.get(e.to)??[],e.from]);let a=new Map,o=()=>{for(let e of r)e.forEach((e,t)=>a.set(e.id,t))};o();let s=e=>{let t=(i.get(e.id)??[]).map(e=>a.get(e)).filter(e=>e!==void 0);return t.length===0?a.get(e.id)??0:t.reduce((e,t)=>e+t,0)/t.length};for(let e=0;e<3;e+=1)for(let e of r){let t=e.map(e=>({cell:e,key:s(e)}));t.sort((e,t)=>e.key-t.key),e.splice(0,e.length,...t.map(e=>e.cell)),o()}return r}function fs(e,t,n,r,i=48){let a=e=>t===`right`?e.width:e.height,o=e=>t===`right`?e.height:e.width,s=0;for(let[r,c]of e.entries()){if(c.length===0)continue;let e=Math.max(...c.map(a)),l=-(c.reduce((e,t)=>e+o(t),0)+(c.length-1)*i)/2;for(let n of c){let r=s+(e-a(n))/2;t===`right`?(n.x=r,n.y=l):(n.x=l,n.y=r),l+=o(n)+i}s+=e+(n?.(r)??110)}r&&r.length>0&&ps(e,t,r,i)}function ps(e,t,n,r){if(e.length<2)return;let i=t===`right`,a=e=>i?e.height:e.width,o=e=>i?e.y:e.x,s=(e,t)=>{i?e.y=t:e.x=t},c=e=>o(e)+a(e)/2,l=new Map(e.flat().map(e=>[e.id,e])),u=new Map;e.forEach((e,t)=>e.forEach(e=>u.set(e.id,t)));let d=new Map;for(let e of n)!l.has(e.from)||!l.has(e.to)||u.get(e.from)!==u.get(e.to)&&(d.set(e.from,[...d.get(e.from)??[],e.to]),d.set(e.to,[...d.get(e.to)??[],e.from]));if(d.size===0)return;let f=(e,t)=>{let n=[...t];for(let t=1;t<e.length;t+=1)n[t]=Math.max(n[t],n[t-1]+a(e[t-1])+r);let i=[...t];for(let t=e.length-2;t>=0;--t)i[t]=Math.min(i[t],i[t+1]-a(e[t])-r);e.forEach((e,t)=>s(e,(n[t]+i[t])/2))};for(let t=0;t<4;t+=1){let n=t%2==0?e:[...e].reverse();for(let e of n)e.length!==0&&f(e,e.map(e=>{let t=(d.get(e.id)??[]).map(e=>c(l.get(e)));return(t.length>0?t.reduce((e,t)=>e+t,0)/t.length:c(e))-a(e)/2}))}for(let[t,n]of e.entries())n.length!==0&&f(n,n.map(e=>{let n=c(e),r=d.get(e.id)??[],i=null;for(let e of r){if((u.get(e)??t)>=t)continue;let r=c(l.get(e));(i===null||Math.abs(r-n)<Math.abs(i-n))&&(i=r)}let o=r.length===1||Math.abs((i??n)-n)<=44;return(i!==null&&o?i:n)-a(e)/2}))}const ms=.001;function hs(e){let t=[];for(let n of e)for(let e=0;e<n.length-1;e++){let r=n[e],i=n[e+1];Math.abs(r.x-i.x)<4?t.push({vertical:!0,c:(r.x+i.x)/2,lo:Math.min(r.y,i.y),hi:Math.max(r.y,i.y)}):Math.abs(r.y-i.y)<4&&t.push({vertical:!1,c:(r.y+i.y)/2,lo:Math.min(r.x,i.x),hi:Math.max(r.x,i.x)})}return t}function gs(e,t,n=8){let r=0;for(let i of t){if(i.vertical!==e.vertical||Math.abs(i.c-e.c)>n)continue;let t=Math.min(e.hi,i.hi)-Math.max(e.lo,i.lo);t>.001&&(r+=t)}return r}function _s(e){let t=e.filter(e=>!e.vertical).sort((e,t)=>e.c-t.c),n=e.filter(e=>e.vertical).sort((e,t)=>e.c-t.c);return{horizontal:t,vertical:n,horizontalCs:t.map(e=>e.c),verticalCs:n.map(e=>e.c)}}function vs(e,t){let n=0,r=e.length;for(;n<r;){let i=n+r>>1;e[i]<t?n=i+1:r=i}return n}function ys(e,t,n){let r=t.vertical?e.vertical:e.horizontal,i=t.vertical?e.verticalCs:e.horizontalCs,a=0;for(let e=vs(i,t.c-n);e<r.length&&i[e]<=t.c+n;e++){let n=r[e],i=Math.min(t.hi,n.hi)-Math.max(t.lo,n.lo);i>.001&&(a+=i)}return a}function bs(e,t){let n=t.vertical?e.horizontal:e.vertical,r=t.vertical?e.horizontalCs:e.verticalCs,i=0;for(let e=vs(r,t.lo+ms);e<n.length&&r[e]<t.hi-.001;e++){let r=n[e];t.c>r.lo+.001&&t.c<r.hi-.001&&(i+=1)}return i}function xs(e,t){let n=0;for(let r of t){if(!(e.vertical?e.c>r.x+.001&&e.c<r.x+r.width-.001:e.c>r.y+.001&&e.c<r.y+r.height-.001))continue;let t=e.vertical?r.y:r.x,i=e.vertical?r.y+r.height:r.x+r.width,a=Math.min(e.hi,i)-Math.max(e.lo,t);a>.001&&(n+=a)}return n}function Ss(e,t,n){let r=0;for(let i of n){let n=Math.min(t,i.hi)-Math.max(e,i.lo);n>.001&&(r+=n)}return r}function Cs(e,t,n){let r=0;for(let i=0;i<n.length;i+=2){let a=Math.min(t,n[i+1])-Math.max(e,n[i]);a>.001&&(r+=a)}return r}function ws(e,t,n,r,i){let a=Math.min(e,n),o=Math.max(e,n),s=Math.min(t,r),c=Math.max(t,r),l=Math.max(i.x-o,a-(i.x+i.width),0),u=Math.max(i.y-c,s-(i.y+i.height),0);return Math.hypot(l,u)}function Ts(e,t){return 1e-5*e*t}function Es(e,t,n,r){return e*4e3+t*40+n*6e4+r*900}function Ds(e,t,n,r,i,a){let o=0;for(let a of e)o+=1/(1+ws(t,n,r,i,a));return Ts(a,o)}function Os(e,t,n,r,i){if(e.occupiedSegments.length===0&&e.marginBoxes.length===0&&e.softBoxes.length===0)return 0;let a=Math.abs(t-r)<ms,o=a?{vertical:a,c:t,lo:Math.min(n,i),hi:Math.max(n,i)}:{vertical:a,c:n,lo:Math.min(t,r),hi:Math.max(t,r)};return Es(ys(e.laneIndex,o,8),ys(e.marginIndex,o,12),bs(e.laneIndex,o),xs(o,e.softBoxes))}function ks(e,t){return e===1?0:e===-1?1:t===1?2:3}var As=class{a=[];b=[];cost=[];dir=[];push(e,t,n,r){this.a.push(e),this.b.push(t),this.cost.push(n),this.dir.push(r)}pack(e){let{a:t,b:n,cost:r,dir:i}=this,a=new Int32Array(e+1);for(let e=0;e<t.length;e++)a[t[e]+1]++,a[n[e]+1]++;for(let t=0;t<e;t++)a[t+1]+=a[t];let o=a.slice(0,e),s=new Int32Array(a[e]),c=new Float64Array(a[e]),l=new Uint8Array(a[e]);for(let e=0;e<t.length;e++){let a=t[e],u=n[e],d=r[e],f=i[e],p=o[a]++;s[p]=u,c[p]=d,l[p]=f,p=o[u]++,s[p]=a,c[p]=d,l[p]=f^1}return{csrStart:a,csrNode:s,csrCost:c,csrDir:l}}},js=class{costs=[];states=[];cost=0;state=0;get size(){return this.costs.length}push(e,t){let n=this.costs,r=this.states;n.push(e),r.push(t);let i=n.length-1;for(;i>0;){let e=i-1>>1;if(n[e]<=n[i])break;let t=n[e];n[e]=n[i],n[i]=t;let a=r[e];r[e]=r[i],r[i]=a,i=e}}pop(){let e=this.costs,t=this.states;this.cost=e[0],this.state=t[0];let n=e.pop(),r=t.pop();if(e.length>0){e[0]=n,t[0]=r;let i=0;for(;;){let n=2*i+1,r=2*i+2,a=i;if(n<e.length&&e[n]<e[a]&&(a=n),r<e.length&&e[r]<e[a]&&(a=r),a===i)break;let o=e[a];e[a]=e[i],e[i]=o;let s=t[a];t[a]=t[i],t[i]=s,i=a}}}};let Ms=new Float64Array,Ns=new Int32Array,Ps=new Uint32Array,Fs=0;function Is(e,t,n){let r=e.csrStart,i=e.csrNode,a=e.csrCost,o=e.csrDir,s=e.xs.length*4;Ms.length<s&&(Ms=new Float64Array(s),Ns=new Int32Array(s),Ps=new Uint32Array(s),Fs=0),Fs++,Fs===4294967295&&(Ps.fill(0),Fs=1);let c=Ms,l=Ns,u=Ps,d=Fs,f=new js;for(let e of t){let t=ks(e.normal[0],e.normal[1]),n=e.anchorId*4+t;(u[n]!==d||e.cost<c[n])&&(c[n]=e.cost,l[n]=-1,u[n]=d,f.push(e.cost,n))}let p=-1,m=1/0,h=new Set;for(;f.size>0;){f.pop();let e=f.cost,t=f.state;if(e>=m)break;if(e>c[t])continue;let s=t>>2,g=t&3;if(!h.has(s)){let r=n.get(s);if(r!==void 0){h.add(s);let i=e+r;if(i<m&&(m=i,p=t),h.size===n.size)break}}let _=r[s+1];for(let n=r[s];n<_;n++){let r=o[n];if(r===(g^1))continue;let s=e+a[n]+(r===g?0:1e5),p=i[n]*4+r;(u[p]!==d||s<c[p])&&(c[p]=s,l[p]=t,u[p]=d,f.push(s,p))}}if(p===-1)return null;let g=[];for(let e=p;e!==-1;e=l[e])g.push(e>>2);return g.reverse(),{cost:m,nodeIds:g}}function Ls(e,t,n){let r=[],i=[];for(let t of e)r.push(t.x,t.x+t.width),i.push(t.y,t.y+t.height);for(let e of n.marginBoxes)r.push(e.x-t,e.x+t,e.x+e.width-t,e.x+e.width+t),i.push(e.y-t,e.y+t,e.y+e.height-t,e.y+e.height+t);for(let e of n.softBoxes)r.push(e.x-t,e.x+e.width+t),i.push(e.y-t,e.y+e.height+t);for(let e of n.occupiedSegments)e.vertical?r.push(e.c-8-4,e.c+8+4):i.push(e.c-8-4,e.c+8+4);return{xs:r,ys:i}}function Rs(e){let t=e.slice().sort((e,t)=>e-t),n=[];for(let e of t)(n.length===0||Math.abs(e-n[n.length-1])>.001)&&n.push(e);return n}function zs(e){let t=[];for(let n=0;n<e.length;n++)t.push(e[n]),n<e.length-1&&t.push((e[n]+e[n+1])/2);return t}function Bs(e,t){let n=Rs(zs(Rs(e))),r=Rs(zs(Rs(t)));return n.length*r.length>4e4?{gx:Rs(e),gy:Rs(t)}:{gx:n,gy:r}}function Vs(e){let t=new Map;for(let n=0;n<e.length;n++){let r=e[n].toFixed(3);t.has(r)||t.set(r,n)}return t}function Hs(e,t){let n=t.length,r=[],i=[];for(let n of e)for(let e of t)r.push(n),i.push(e);let a=Vs(e),o=Vs(t),s=new Map,c=(e,t)=>{let r=a.get(e.toFixed(3)),i=o.get(t.toFixed(3));return r!==void 0&&i!==void 0?r*n+i:s.get(`${e.toFixed(3)},${t.toFixed(3)}`)};return{xs:r,ys:i,lookup:c,add:(e,t)=>{let n=c(e,t);if(n!==void 0)return n;let a=r.length;return r.push(e),i.push(t),s.set(`${e.toFixed(3)},${t.toFixed(3)}`,a),a}}}function Us(e,t,n,r,i){let a=i.x+ms,o=i.x+i.width-ms,s=i.y+ms,c=i.y+i.height-ms;return o<=a||c<=s?!1:Math.abs(e-n)<1e-9?e<=a||e>=o?!1:Math.min(Math.max(t,r),c)>Math.max(Math.min(t,r),s):t<=s||t>=c?!1:Math.min(Math.max(e,n),o)>Math.max(Math.min(e,n),a)}function Ws(e,t,n,r,i,a){for(let o=0;o<e.length;o++)if(o!==a&&Us(t,n,r,i,e[o]))return!1;return!0}function Gs(e,t,n,r,i,a,o){let s=[];for(let n of r){let r=n.x+ms,i=n.x+n.width-ms,a=n.y+ms,o=n.y+n.height-ms;i<=r||o<=a||(e&&t>r&&t<i?s.push(a,o):!e&&t>a&&t<o&&s.push(r,i))}let c=[],l=[],u=[];for(let n of i)e?(c.push(Math.max(n.x-t,t-(n.x+n.width),0)),l.push(n.y),u.push(n.y+n.height)):(c.push(Math.max(n.y-t,t-(n.y+n.height),0)),l.push(n.x),u.push(n.x+n.width));let d=a.occupiedSegments.length>0||a.marginBoxes.length>0||a.softBoxes.length>0,f=[],p=[],m=[],h=[];if(d){let{laneIndex:n,marginIndex:r}=a,i=e?n.verticalCs:n.horizontalCs,o=e?n.vertical:n.horizontal;for(let e=vs(i,t-8);e<o.length&&i[e]<=t+8;e++)f.push(o[e]);let s=e?r.verticalCs:r.horizontalCs,c=e?r.vertical:r.horizontal;for(let e=vs(s,t-12);e<c.length&&s[e]<=t+12;e++)p.push(c[e]);for(let r of e?n.horizontal:n.vertical)t>r.lo+.001&&t<r.hi-.001&&m.push(r.c);for(let n of a.softBoxes)e&&t>n.x+.001&&t<n.x+n.width-.001?h.push(n.y,n.y+n.height):!e&&t>n.y+.001&&t<n.y+n.height-.001&&h.push(n.x,n.x+n.width)}for(let e=0;e<n.length-1;e++){let t=n[e],r=n[e+1],i=!1;for(let e=0;e<s.length;e+=2)if(Math.min(r,s[e+1])>Math.max(t,s[e])){i=!0;break}if(i)continue;let a=Math.abs(t-r),g=0;for(let e=0;e<c.length;e++){let n=Math.max(l[e]-r,t-u[e],0);g+=1/(1+Math.hypot(c[e],n))}let _=0;d&&(_=Es(Ss(t,r,f),Ss(t,r,p),vs(m,r-ms)-vs(m,t+ms),Cs(t,r,h))),o(e,a+Ts(a,g)+_)}}const Ks=[`left`,`right`,`top`,`bottom`],qs={left:[-1,0],right:[1,0],top:[0,-1],bottom:[0,1]};function Js(e,t,n=0){return t===`left`?[e.x,e.y+e.height/2+n]:t===`right`?[e.x+e.width,e.y+e.height/2+n]:t===`top`?[e.x+e.width/2+n,e.y]:[e.x+e.width/2+n,e.y+e.height]}function Ys(e,t,n){if(n<=0)return[0];let r=(e===`top`||e===`bottom`?t.width:t.height)/2-6,i=[0];for(let e of[Math.min(n,Math.max(r,16)),n*2])e<=r&&!i.includes(e)&&i.push(-e,e);return i}function Xs(e,t){let n=t.x+t.width/2-(e.x+e.width/2),r=t.y+t.height/2-(e.y+e.height/2),i=e=>{let t=qs[e];return t[0]*n+t[1]*r};return Ks.slice().sort((e,t)=>i(t)-i(e))}function Zs(e,t){for(let n of e)if(Math.hypot(n.x-t[0],n.y-t[1])<16)return!0;return!1}function Qs(e,t,n,r,i,a,o){let s=[];for(let c of r)for(let r of Ys(c,n,i[c]??0)){let i=Js(n,c,r),l=qs[c],u=[i[0]+l[0]*a,i[1]+l[1]*a],d=Math.abs(r)*2;Zs(o,i)&&(d+=2e5),s.push({terminal:e,boxIndex:t,side:c,anchor:i,stub:u,cost:d})}return s}function $s(e,t,n,r,i,a,o){let s=e.map(e=>E(e,a)),c=Ls(s,a,o),{extent:l}=o,u=c.xs.filter(e=>e>=l.x-.001&&e<=l.x+l.width+.001),d=c.ys.filter(e=>e>=l.y-.001&&e<=l.y+l.height+.001),f=Math.max(a,o.minStub),p=[...Qs(`from`,t,e[t],r,o.fromSpread,f,o.occupiedPorts),...Qs(`to`,n,e[n],i,o.toSpread,f,o.occupiedPorts)];for(let e of p)u.push(e.anchor[0],e.stub[0]),d.push(e.anchor[1],e.stub[1]);let{gx:m,gy:h}=Bs(u,d),g=h.length,_=Hs(m,h),v=new As,y=ks(0,1);for(let t=0;t<m.length;t++){let n=t*g;Gs(!0,m[t],h,s,e,o,(e,t)=>{v.push(n+e,n+e+1,t,y)})}let b=ks(1,0);for(let t=0;t<g;t++)Gs(!1,h[t],m,s,e,o,(e,n)=>{let r=e*g+t;v.push(r,r+g,n,b)});let x={boxIndex:t,anchors:new Map},S={boxIndex:n,anchors:new Map};for(let t of p){let n=_.add(t.anchor[0],t.anchor[1]),r=_.lookup(t.stub[0],t.stub[1]),i=_.xs[n],a=_.ys[n],c=_.xs[r],l=_.ys[r];if(Ws(s,i,a,c,l,t.boxIndex)){let t=Math.abs(i-c)+Math.abs(a-l),s=t+Ds(e,i,a,c,l,t)+Os(o,i,a,c,l);v.push(n,r,s,ks(Math.sign(c-i),Math.sign(l-a)))}let u=t.terminal===`from`?x:S,d=u.anchors.get(t.side)??[];d.push({anchorId:n,normal:qs[t.side],cost:t.cost}),u.anchors.set(t.side,d)}return{xs:_.xs,ys:_.ys,...v.pack(_.xs.length),fromPorts:x,toPorts:S}}function ec(e,t,n=8){return tc(e,hs(t),n)}function tc(e,t,n=8){let r=0;for(let i of hs([e]))r+=gs(i,t,n);return r}function nc(e,t){if(t.length===0)return 0;let n=0;for(let r of hs([e]))n+=xs(r,t);return n}function rc(e,t){return Math.abs(e.x-t.x)<.001&&Math.abs(e.y-t.y)<.001&&Math.abs(e.width-t.width)<.001&&Math.abs(e.height-t.height)<.001}function ic(e){if(e.length<=2)return e;let t=[e[0]];for(let n=1;n<e.length-1;n++){let r=t[t.length-1],i=e[n],a=e[n+1],o=Math.sign(i[0]-r[0]),s=Math.sign(i[1]-r[1]),c=Math.sign(a[0]-i[0]),l=Math.sign(a[1]-i[1]);o===c&&s===l||t.push(i)}return t.push(e[e.length-1]),t}function ac(e){return[{x:e.x,y:e.y},{x:e.x+e.width,y:e.y},{x:e.x+e.width,y:e.y+e.height},{x:e.x,y:e.y+e.height},{x:e.x,y:e.y}]}function oc(e,t,n,r,i,a,o){let s=$s(e,t,n,r,i,a,o),c=new Map;i.forEach((e,t)=>{for(let n of s.toPorts.anchors.get(e)??[])c.set(n.anchorId,n.cost+t*.5)});let l=null;for(let e of r){let t=(s.fromPorts.anchors.get(e)??[]).filter(e=>!c.has(e.anchorId));if(t.length===0)continue;let n=Is(s,t,c);n!==null&&(l===null||n.cost<l.cost)&&(l=n)}return l===null?null:ic(l.nodeIds.map(e=>[s.xs[e],s.ys[e]]))}function sc(e,t,n,r,i,a){if(e.length<4)return e;let o=e[e.length-1],s=e[e.length-2],c=e[e.length-3],l=e[e.length-4],u=null;if(Math.abs(o[1]-t.y)<.001?u=`top`:Math.abs(o[1]-(t.y+t.height))<.001?u=`bottom`:Math.abs(o[0]-t.x)<.001?u=`left`:Math.abs(o[0]-(t.x+t.width))<.001&&(u=`right`),!u)return e;let d=Math.max(6,...Ys(u,t,n[u]??0).map(Math.abs)),f=+(u===`top`||u===`bottom`),p=1-f;if(!(Math.abs(s[p]-o[p])<.001&&Math.abs(c[f]-s[f])<.001&&Math.abs(l[p]-c[p])<.001&&Math.sign(c[f]-l[f])===Math.sign(o[f]-s[f])))return e;let m=f===1?t.x+t.width/2:t.y+t.height/2,h=c[p];if(Math.abs(h-m)>d)return e;let g=f===1?[h,o[1]]:[o[0],h];if(Zs(a.occupiedPorts,g))return e;let _=Math.min(c[f],g[f]),v=Math.max(c[f],g[f]);if(gs(f===1?{vertical:!0,c:h,lo:_,hi:v}:{vertical:!1,c:h,lo:_,hi:v},a.occupiedSegments)>1)return e;for(let t=0;t<i.length;t++)if(t!==r&&(f===1?Us(h,_,h,v,i[t]):Us(_,h,v,h,i[t])))return e;return[...e.slice(0,e.length-3),g]}function cc(e,t,n){let r=Math.min(e.x,t.x),i=Math.min(e.y,t.y),a=Math.max(e.x+e.width,t.x+t.width),o=Math.max(e.y+e.height,t.y+t.height),s=Math.max(240,n*6,.2*Math.max(a-r,o-i));return{x:r-s,y:i-s,width:a-r+s*2,height:o-i+s*2}}function lc(e,t,n){return e.vertical?e.c>t.x-n&&e.c<t.x+t.width+n&&e.hi>t.y&&e.lo<t.y+t.height:e.c>t.y-n&&e.c<t.y+t.height+n&&e.hi>t.x&&e.lo<t.x+t.width}function uc(e,t){for(let n=0;n<e.length;n++)if(rc(e[n],t))return n;return e.push(t),e.length-1}function dc(e,t,n,r=16,i={}){let a=cc(e.bounds,t.bounds,r),o=[],s=uc(o,e.bounds),c=uc(o,t.bounds);for(let e of n)D(e,a)&&uc(o,e);let l=(i.marginBoxes??[]).filter(e=>D(e,a)),u=i.occupiedSegments??hs(i.occupiedPaths??[]),d=u.filter(e=>lc(e,a,8)),f={occupiedSegments:d,laneIndex:_s(d),occupiedPorts:(i.occupiedPorts??[]).filter(e=>e.x>a.x-16&&e.x<a.x+a.width+16&&e.y>a.y-16&&e.y<a.y+a.height+16),fromSpread:i.fromSpread??{},toSpread:i.toSpread??{},marginBoxes:l,marginIndex:_s(hs(l.map(ac))),softBoxes:(i.softBoxes??[]).filter(e=>D(e,a)),minStub:i.minStub??0,extent:a},p=e.side?[e.side]:Xs(e.bounds,t.bounds),m=t.side?[t.side]:Xs(t.bounds,e.bounds),h=[];for(let e of[r,r*.5,r*.25,4,1,.5])e>0&&!h.some(t=>Math.abs(t-e)<1e-6)&&h.push(e);h.sort((e,t)=>t-e);let g=null;for(let n of h){if(g!==null&&n<12)break;let r=oc(o,s,c,p,m,n,f);if(r!==null){r=sc(r,t.bounds,f.toSpread,c,o,f),r=sc(r.slice().reverse(),e.bounds,f.fromSpread,s,o,f).reverse();let n=r.map(e=>({x:e[0],y:e[1]}));if(tc(n,u)>12){g??=n;continue}return n}}return g}const q=`#1e1e1e`,J=`#868e96`,fc=`#adb5bd`,Y=b,X=2.1,Z={blue:u.blue.pastel,green:u.green.pastel,red:u.red.pastel,orange:u.orange.pastel,violet:u.purple.pastel,teal:u.teal.pastel,pink:u.pink.pastel,yellow:u.yellow.pastel,gray:u.gray.pastel},pc=[`#e7f5ff`,`#fff9db`,`#ebfbee`,`#f3f0ff`,`#fff4e6`,`#e6fcf5`,`#fff0f6`],Q=[`blue`,`green`,`orange`,`violet`,`pink`,`teal`,`yellow`,`gray`];function mc(e){let t=e.trim();if(t.length<=14||t.includes(`
|
|
11
11
|
`))return t;let n=t.split(/\s+/);if(n.length===1)return t;let r=Math.min(Math.ceil(t.length/14),n.length),i=[],a=0;for(let e=0;e<n.length-1;e+=1)a+=n[e].length+1,i.push(a);let o=[],s=0;for(let e=1;e<r;e+=1){let n=t.length*e/r,a=-1;for(let t=s;t<i.length-(r-1-e);t+=1)(a===-1||Math.abs(i[t]-n)<Math.abs(i[a]-n))&&(a=t);if(a===-1)break;o.push(a),s=a+1}let c=[],l=0;for(let e of o)c.push(n.slice(l,e+1).join(` `)),l=e+1;return c.push(n.slice(l).join(` `)),c.join(`
|
|
@@ -24,4 +24,4 @@ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=
|
|
|
24
24
|
`).map(e=>F(e,15)))+24,d=c.x+c.width/2,f=c.y+c.height/2,p=d+a*(c.width/2+28+u/2),m=f+s*(c.height/2+30+15);o.push(Ad(p,m-15,l,15,J))}),o.push(...r),o}async function Hd(e,t){let n=e.items,r=Math.max(170,...n.map(e=>F(e.label,18)+48+jd(e))),i=[];for(let a=0;a<n.length;a+=1){let o=n[a],s=n.length>1?a/(n.length-1):0,c=e.variant===`funnel`?1-s:s,l=r+(380-r)*c,u=Od(o,a),d=a*72,f=$({x:-l/2,y:d,width:l,height:60},Z[u],{label:o.label,fontSize:18,color:q,strokeWidth:Y});i.push(await Md(f,o,t)),o.detail&&i.push(Ad(226,d+60/2-15,Nd(o.detail,34),15,J,`left`))}return i}function Ud(e){let t=e.items.slice(0,3),n=t.length>=3?[{x:0,y:0},{x:175,y:0},{x:175/2,y:175*.87}]:[{x:0,y:0},{x:175,y:0}],r=[],i=new Map;t.forEach((e,a)=>{let o=Od(e,a),s=n[a]??n[n.length-1];i.set(e.id,s),r.push($({x:s.x-150,y:s.y-150,width:300,height:300},Z[o],{kind:`ellipse`,color:N[o],strokeWidth:Y,opacity:.65}));let c=t.length>=3&&a===2,l=c?s.y+150+14:s.y-150-14-18*1.4-12;if(r.push(Ad(s.x,l,e.label,18,N[o])),e.detail){let t=c?l+18*1.4+14:l-15*1.4-14;r.push(Ad(s.x,t,Nd(e.detail),15,J))}});let a={x:0,y:0};for(let e of n.slice(0,t.length))a.x+=e.x/t.length,a.y+=e.y/t.length;for(let n of e.overlaps??[]){let e=n.ids.map(e=>i.get(e)).filter(e=>e!==void 0);if(e.length<2)continue;let o=e.reduce((e,t)=>e+t.x,0)/e.length,s=e.reduce((e,t)=>e+t.y,0)/e.length;if(t.length>=3&&e.length===2){let e={x:o-a.x,y:s-a.y},t=Math.hypot(e.x,e.y)||1;o+=e.x/t*46,s+=e.y/t*46}r.push(Ad(o,s-15,Nd(n.label,16),15,q))}return r}function Wd(e){let t=e.split(`
|
|
25
25
|
`).map(e=>e.replace(/^[-•*]\s*/,``).trim()).filter(Boolean);return t.length>1?Gt(t):Nd(e,36)}async function Gd(e,t){let n=e.items.slice(0,4),r=y[1],i=[];for(let e=0;e<n.length;e+=1){let a=n[e],o=Od(a,e),s=e%2,c=Math.floor(e/2),l=s*338,u=c*228,d=$({x:l,y:u,width:320,height:210},Z[o],{label:a.label,fontSize:18,color:N[o],strokeWidth:Y,valign:`top`,textPadding:r});if(i.push(await Md(d,a,t)),a.detail){let e=u+54+(r-6);i.push(Nc({x:l+18,y:e,width:284,height:194-(e-u)},Wd(a.detail),15,{color:q,align:`left`,valign:`top`}))}}let a=e.axes;if(a?.x&&(i.push(Ad(320/2,454,a.x[0],15,J)),i.push(Ad(498,454,a.x[1],15,J))),a?.y){let e=F(a.y[0],15)+24,t=F(a.y[1],15)+24;i.push(Ad(-e-12,318,a.y[0],15,J,`left`)),i.push(Ad(-t-12,210/2-15,a.y[1],15,J,`left`))}return i}async function Kd(e,t){if(e.items.length===0)return[];switch(e.variant){case`journey`:return zd(e,t.icons);case`cycle`:return Vd(e,t.icons);case`funnel`:case`pyramid`:return Hd(e,t.icons);case`venn`:return Ud(e);case`matrix`:return Gd(e,t.icons);default:return Bd(e)}}function qd(e,t){return e+(26-t)/2}function Jd(e){return/^[<>.-]+$/.test(e)}function Yd(e){return Math.min(F(e,14)+16,320)}function Xd(e,t,n){return $({x:e.x,y:e.y,width:n,height:32},`transparent`,{label:t,fontSize:14,align:`left`,valign:`middle`,labelColor:J,color:q,dash:`none`})}async function Zd(e,t,n,r){let i=e.toLowerCase();if(Jd(i)){let e=qd(t,18);return{id:L(),type:`line`,points:[{x:e,y:n},{x:e+18,y:n}],color:q,strokeWidth:2,dash:i.includes(`..`)||i.includes(`--`)?`dashed`:`solid`,startArrow:!1,endArrow:i.includes(`>`)||i.includes(`<`),opacity:1}}if(hn[i])return $({x:qd(t,20),y:n-20/2,width:20,height:20},Z[hn[i]],{fontSize:14,color:q,fillStyle:`bold`});if(gn[i]&&gn[i]!==`sticky`)return $({x:qd(t,26),y:n-20/2,width:26,height:20},`transparent`,{kind:Qc[gn[i]]??`rectangle`,fontSize:14,color:q});let a=await r.resolveIcon(vn(i));return a?{id:L(),type:`icon`,x:qd(t,20),y:n-20/2,width:20,height:20,rotation:0,source:a.source,name:a.name,label:``,fontSize:14,fontFamily:v,color:q,strokeWidth:2,opacity:1}:$({x:qd(t,20),y:n-20/2,width:20,height:20},`#f1f3f5`,{fontSize:14,color:fc})}function Qd(e,t,n){return $({x:e.x,y:e.y,width:t,height:n},`transparent`,{fontSize:14,color:fc})}async function $d(e,t,n){let r=Math.max(...e.map(e=>Yd(e.label)),60),i=[Qd(t,66+r,28+e.length*32)];for(let[a,o]of e.entries()){let e=t.y+14+a*32,s=t.x+14;i.push(await Zd(o.swatch.trim(),s,e+32/2,n)),i.push(Xd({x:s+38,y:e},o.label,r))}return i}async function ef(e,t,n){let r=e.map(e=>Yd(e.label)),i=t.y+14,a=i+32/2,o=[Qd(t,tf(e),60)],s=t.x+14;for(let[t,c]of e.entries())o.push(await Zd(c.swatch.trim(),s,a,n)),o.push(Xd({x:s+26+12,y:i},c.label,r[t])),s+=38+r[t]+16;return o}function tf(e){return 28+e.reduce((e,t)=>e+26+12+Yd(t.label),0)+16*Math.max(0,e.length-1)}async function nf(e,t,n,r){return e.length===0?[]:e.length>=2&&tf(e)<=n?ef(e,t,r.icons):$d(e,t,r.icons)}const rf={font:24,height:66,minW:150,maxW:300,padX:26},af={font:20,height:50,minW:120,maxW:250,padX:24},of={font:16,height:40,minW:96,maxW:230,padX:20};function sf(e,t,n=!1){let r=n?Pt(t.font)+Ft(t.font):0,i=F(e,t.font)+t.padX*2+r;return Math.round(Math.max(t.minW,Math.min(t.maxW,i)))}function cf(e,t,n,r,i){return $(t,r,{label:e,fontSize:n,color:q,fillStyle:i,strokeWidth:Y})}function lf(e,t,n,r){return pd(e,t,{fontSize:16,fontFamily:v,color:n,strokeWidth:r})}function uf(e,t){return e.length===0?0:e.reduce((e,t)=>e+t.blockHeight,0)+(e.length-1)*t}async function df(e,t,n){let r=cf(e.label,{x:0,y:0,width:sf(e.label,of,!!e.icon),height:of.height},of.font,`#ffffff`,`outline`);if(r.color=N[t],e.icon){let t=await n.resolveIcon(e.icon);t&&(r.titleIcon={...t,placement:`inside`})}let i=await Promise.all((e.children??[]).map(e=>df(e,t,n)));return{box:r,children:i,blockHeight:Math.max(of.height,uf(i,16))}}async function ff(e,t,n){let r=e.color??Q[t%Q.length],i=Z[r],a=cf(e.label,{x:0,y:0,width:sf(e.label,af,!!e.icon),height:af.height},af.font,i,`pastel`);if(e.icon){let t=await n.resolveIcon(e.icon);t&&(a.titleIcon={...t,placement:`inside`})}let o=await Promise.all((e.children??[]).map(e=>df(e,r,n)));return{color:r,box:a,children:o,blockHeight:Math.max(af.height,uf(o,16))}}function pf(e,t,n,r,i,a,o){let s=t===1?n.x+n.width:n.x;e.box.x=t===1?s+90:s-90-e.box.width,e.box.y=r+(e.blockHeight-e.box.height)/2,o.push(lf(n,e.box,i,a));let c=r+(e.blockHeight-uf(e.children,16))/2;for(let n of e.children)pf(n,t,e.box,c,i,a,o),c+=n.blockHeight+16;o.push(e.box)}function mf(e,t,n,r){if(e.length===0)return;let i=uf(e,34),a=n.y+n.height/2-i/2;for(let i of e)pf(i,t,n,a,N[i.color],X,r),a+=i.blockHeight+34}async function hf(e,t){let n=await Promise.all(e.branches.map((e,n)=>ff(e,n,t.icons))),r=cf(e.central||e.title||`Topic`,{x:0,y:0,width:sf(e.central||e.title||`Topic`,rf),height:rf.height},rf.font,Z.blue,`bold`);r.x=-r.width/2,r.y=-r.height/2;let i=[],a=[],o=0,s=0;for(let e of n)o<=s?(i.push(e),o+=e.blockHeight+34):(a.push(e),s+=e.blockHeight+34);let c=[];return mf(i,1,r,c),mf(a,-1,r,c),c.push(r),c}function gf(e){return x(F(e.label,20)+36,120,280)}function _f(e){let t=new Map(e.nodes.map(e=>[e.id,e])),n=new Map,r=new Set;for(let i of e.edges){if(!t.has(i.from)||!t.has(i.to)||i.from===i.to)continue;let e=n.get(i.from)??[];e.includes(i.to)||e.push(i.to),n.set(i.from,e),r.add(i.to)}let i=e.nodes.filter(e=>!r.has(e.id)).map(e=>e.id);i.length===0&&e.nodes.length>0&&(i=[e.nodes[0].id]);let a=new Map,o=new Set,s=0;function c(e,r){let i=t.get(e),l=gf(i),u=r*108,d=(n.get(e)??[]).filter(e=>!a.has(e)&&!o.has(e));if(d.length===0){let t=s+l/2;return s+=l+28,a.set(e,{node:i,x:t-l/2,y:u,w:l,cx:t}),t}let f=d.every(e=>(n.get(e)??[]).length===0);if(r>=1&&f&&d.length>=3){let n=d.map(e=>gf(t.get(e))),r=Math.max(l,32+Math.max(...n)),o=s;return d.forEach((e,r)=>{let i=u+70*(r+1)+52/2-14,s=o+32;a.set(e,{node:t.get(e),x:s,y:i,w:n[r],cx:s+n[r]/2,stacked:!0})}),s+=r+28,a.set(e,{node:i,x:o,y:u,w:l,cx:o+l/2}),o+l/2}o.add(e);let p=d.map(e=>c(e,r+1));o.delete(e);let m=(Math.min(...p)+Math.max(...p))/2;return a.set(e,{node:i,x:m-l/2,y:u,w:l,cx:m}),m}for(let e of i)a.has(e)||c(e,0);for(let t of e.nodes)a.has(t.id)||c(t.id,0);let l=[],u=new Map;for(let[e,t]of a){let n=$({x:t.x,y:t.y,width:t.w,height:56},t.node.color?Z[t.node.color]:`#ffffff`,{label:t.node.label,fontSize:20,color:q,fillStyle:t.node.fill??`pastel`,shadow:t.node.shadow,strokeWidth:Y});u.set(e,n.id),l.push(n)}let d=[];for(let t of e.edges){let e=a.get(t.from),n=a.get(t.to);if(!e||!n||e===n)continue;let r=u.get(t.from),i=u.get(t.to);if(!r||!i)continue;let o=e.y+56;if(n.stacked){let a=e.x+32/2,s=n.y+56/2;d.push(fd({x:a,y:o,x2:n.x,y2:s,bendStyle:`elbow`,elbowPoints:[{x:a,y:o},{x:a,y:s},{x:n.x,y:s}],startBinding:{shapeId:r,anchor:{x:32/2/e.w,y:1},precise:!0},endBinding:{shapeId:i,anchor:{x:0,y:.5},precise:!0},color:J,strokeWidth:X,dash:t.dashed?`dashed`:`solid`,label:t.label||void 0}));continue}let s=o+52/2;d.push(fd({x:e.cx,y:o,x2:n.cx,y2:n.y,bendStyle:`elbow`,elbowPoints:[{x:e.cx,y:o},{x:e.cx,y:s},{x:n.cx,y:s},{x:n.cx,y:n.y}],startBinding:{shapeId:r,anchor:{x:.5,y:1},precise:!0},endBinding:{shapeId:i,anchor:{x:.5,y:0},precise:!0},color:J,strokeWidth:X,dash:t.dashed?`dashed`:`solid`,label:t.label||void 0}))}return[...d,...l]}const vf=Ja(18);function yf(e){return e?Math.max(72,F(e,16)/2+20+8):72}function bf(e){let{actors:t}=e,n=Math.max(150,...t.map(e=>Math.min(F(e.label,18)+48,260))),r=n+130;return{headerWidth:n,centerOf:new Map(t.map((e,t)=>[e.id,t*r+n/2]))}}function xf(e){let{messages:t,frames:n}=e,r=e.notes??[],i=new Map,a=[],o=vf+64,s=e=>{for(let t of r)t.after===e&&(i.set(t,o),o+=52)};return s(-1),t.forEach((e,t)=>{o+=n.filter(e=>e.from===t).length*40,a.push(o),o+=64+(e.from===e.to?36:0),o+=n.filter(e=>e.to===t).length*18,s(t)}),{rowY:a,noteY:i,lifelineBottom:o-64/2+28}}function Sf(e,t,n){let{messages:r}=e,i=new Map;for(let a of e.activations??[]){if(!t.centerOf.has(a.actor)||n.rowY.length===0)continue;let e=r[a.to],o=n.rowY[a.from]-10,s=n.rowY[a.to]+(e.from===e.to?60:14),c=i.get(a.actor)??[];c.push({top:o,bottom:s}),i.set(a.actor,c)}for(let[e,t]of i){t.sort((e,t)=>e.top-t.top);let n=[];for(let e of t){let t=n[n.length-1];t&&e.top<=t.bottom?t.bottom=Math.max(t.bottom,e.bottom):n.push({...e})}i.set(e,n)}return i}function Cf(e,t,n,r){let i=new Map;return e.actors.forEach((e,a)=>{let o=t.centerOf.get(e.id),s=r.get(e.id);i.set(e.id,{id:L(),type:`control`,kind:`lifeline`,x:o-t.headerWidth/2,y:0,width:t.headerWidth,height:n.lifelineBottom,rotation:0,label:e.label,fontSize:18,fontFamily:v,color:q,fill:Z[Q[a%Q.length]],opacity:1,activations:s?.map(e=>({top:e.top,height:e.bottom-e.top})),link:e.link})}),i}function wf(e,t,n){let{messages:r,frames:i}=e,a=new Map,o=(e,t)=>e===t||e.from>t.from||e.to<t.to?!1:e.from!==t.from||e.to!==t.to||i.indexOf(e)>i.indexOf(t);for(let e of i){let s=1/0,c=-1/0;for(let n=e.from;n<=e.to;n+=1){let e=r[n],i=t.centerOf.get(e.from)??0,a=t.centerOf.get(e.to)??0;s=Math.min(s,i,a),c=Math.max(c,i,a),e.from===e.to&&(c=Math.max(c,i+yf(e.label)))}let l=i.filter(t=>t.from===e.from).sort((e,t)=>o(e,t)?-1:+!!o(t,e)),u=i.filter(t=>t.to===e.to).sort((e,t)=>o(e,t)?1:o(t,e)?-1:0),d=r[e.to];a.set(e,{left:s-60,right:c+60,top:n.rowY[e.from]-40*(l.length-l.indexOf(e))+4,bottom:n.rowY[e.to]+(d.from===d.to?70:30)+18*u.indexOf(e)})}let s=[...i].sort((e,t)=>e.to-e.from-(t.to-t.from)||i.indexOf(e)-i.indexOf(t));for(let e of s){let t=s.find(t=>o(t,e));if(!t)continue;let n=a.get(e),r=a.get(t);r.left=Math.min(r.left,n.left-14),r.right=Math.max(r.right,n.right+14)}return a}function Tf(e,t){return e.map(e=>{let n=t.get(e),r=e.label?`${e.kind} [${e.label}]`:e.kind;return{id:L(),type:`control`,kind:`fragment`,x:n.left,y:n.top,width:n.right-n.left,height:n.bottom-n.top,rotation:0,label:r,fontSize:13,fontFamily:v,color:q,fill:`#f3f0ff`,opacity:1}})}function Ef(e,t,n,r){let{messages:i}=e,a=[],o=(e,i,a)=>{let o=r.get(e),s=t.centerOf.get(e),c=n.rowY[i],l=Za(o),u=Xa(o,c),d=+(a>s);return{x:u?u.x+d*u.width:s,binding:{shapeId:o.id,anchor:{x:.5,y:(c-l.y)/l.height},precise:!0}}},s=[...t.centerOf.values()],c=(e,t)=>s.filter(n=>n>Math.min(e,t)&&n<Math.max(e,t));return i.forEach((e,i)=>{let s=n.rowY[i],l=t.centerOf.get(e.from),u=t.centerOf.get(e.to);if(e.from===e.to){let t=Xa(r.get(e.from),s),n=l+(t?t.width/2:0),i=yf(e.label),o={id:L(),type:`line`,points:[{x:n,y:s},{x:l+i,y:s},{x:l+i,y:s+48},{x:n+2,y:s+48}],color:q,strokeWidth:Qa,dash:e.reply?`dashed`:`solid`,startArrow:!1,endArrow:!0,label:e.label,fontSize:16,fontFamily:v,opacity:1};a.push(o);return}let d=o(e.from,i,u),f=o(e.to,i,l),p=fd({x:d.x,y:s,x2:f.x,y2:s,startBinding:d.binding,endBinding:f.binding,label:e.label,labelAlong:Df(e.label,d.x,f.x,c(l,u)),fontSize:16,fontFamily:v,color:q,strokeWidth:Qa,dash:e.reply?`dashed`:`solid`,startArrow:e.bidirectional===!0,endArrow:!0});a.push(p)}),a}function Df(e,t,n,r){if(!e||r.length===0||t===n)return;let i=Math.min(t,n),a=Math.max(t,n),o=[i,...r.sort((e,t)=>e-t),a],s=F(e,16)+16,c=(i+a)/2,l=null;for(let e=0;e<o.length-1;e+=1){if(o[e+1]-o[e]<s+16)continue;let t=(o[e]+o[e+1])/2;(l===null||Math.abs(t-c)<Math.abs(l-c))&&(l=t)}if(l!==null)return(l-t)/(n-t)}function Of(e,t,n){let r=[];for(let i of e.notes??[]){let e=n.noteY.get(i);if(e===void 0)continue;let a=i.actors.map(e=>t.centerOf.get(e)).filter(e=>e!==void 0);if(a.length===0)continue;let o=F(i.text,13)+24,s,c;if(i.placement===`left`)c=o,s=a[0]-t.headerWidth/2-18-c;else if(i.placement===`right`)c=o,s=a[0]+t.headerWidth/2+18;else{let e=Math.min(...a),n=Math.max(...a);c=Math.max(o,n-e+t.headerWidth*.7),s=(e+n)/2-c/2}r.push($({x:s,y:e,width:c,height:34},`#fff3bf`,{kind:`note`,label:i.text,fontSize:13,labelColor:q,color:J}))}return r}async function kf(e){let t=bf(e),n=xf(e),r=Cf(e,t,n,Sf(e,t,n)),i=Tf(e.frames,wf(e,t,n));return vl([...r.values(),...Ef(e,t,n,r),...i,...Of(e,t,n)])}const Af={phone:300,tablet:520,browser:720,window:640},jf={navbar:52,tabs:46,heading:46,paragraph:84,image:150,avatar:72,button:46,input:46,search:46,dropdown:46,checkbox:32,radio:32,toggle:36,slider:42,divider:16,link:28,textarea:110,stepper:46,badge:28,progress:20,breadcrumbs:32,pagination:40,rating:32,card:200,list:150,alert:56,menu:150,tooltip:48,accordion:170,datepicker:220,sidebar:280,scrollbar:220,segmented:36,tabbar:56,statusbar:28,fab:56,stepbadge:44},Mf={full:1,twoThirds:2/3,half:1/2,third:1/3},Nf=new Set([`input`,`textarea`,`dropdown`,`datepicker`,`stepper`]),Pf=new Set([`navbar`,`statusbar`,`tabbar`,`sidebar`,`divider`,`breadcrumbs`,`scrollbar`]);function Ff(e){let t=0,n=0;for(let r of e.controls)Nf.has(r.kind)&&(t+=1),r.kind===`button`&&(n+=1);return t>=2||t>=1&&n>=1}function If(e){return e.frame===`browser`?{top:54,side:22,bottom:22}:e.frame===`window`?{top:50,side:22,bottom:22}:e.frame===`tablet`?{top:40,side:28,bottom:44}:{top:48,side:22,bottom:48}}const Lf={toggle:1,checkbox:1,radio:1,slider:.6,progress:.6,scrollbar:.3,rating:3,alert:0,navbar:0,tabs:0,pagination:0,menu:0,accordion:0,sidebar:0,segmented:0,tabbar:0};function Rf(e,t,n,r,i){let a=e.kind,o=e.kind===`button`?Z.blue:e.kind===`toggle`?Z.green:e.kind===`badge`?Z.blue:void 0,s=e.value??Lf[e.kind];return{id:L(),type:`control`,kind:a,x:t,y:n,width:r,height:i,rotation:0,...a===`card`?zf(e.label):{label:e.label??bo[a]??``},fontSize:16,fontFamily:v,color:q,fill:o,opacity:1,value:s}}function zf(e){if(e===void 0)return{label:bo.card??``,body:`Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt.`};let[t=``,...n]=e.split(`
|
|
26
26
|
`);return{label:t.trim(),body:n.join(`
|
|
27
|
-
`).trim()}}function Bf(e){let t=[],n=0;for(let r of e.screens){let e=If(r),i=Af[r.frame],a=n+e.side,o=[],s=[],c=0;for(let e of r.controls){let t=Mf[e.width??`full`];s.length>0&&c+t>1.001&&(o.push(s),s=[],c=0),s.push(e),c+=t}s.length>0&&o.push(s);let l=Ff(r)?Math.min(i,400):i,u=[],d=[],f=e.top;for(let e of o){let t=e.every(e=>Pf.has(e.kind))?i:l,n=a+(i-t)/2,r=e.map(e=>Mf[e.width??`full`]),o=r.reduce((e,t)=>e+t,0),s=t-14*(e.length-1),c=r.map(e=>e/o*s),p=(e,t)=>{if(e.kind!==`paragraph`||!e.label)return jf[e.kind];let n=16*.9,r=Ii(e.label,t,n).length;return Math.ceil(r*n*1.4+8)},m=Math.max(...e.map((e,t)=>p(e,c[t]))),h=n;e.forEach((e,t)=>{let n=c[t],r=p(e,n);if(e.kind===`heading`){let t={id:L(),type:`text`,x:h,y:f+(m-r)/2+6,text:e.label??`Heading`,fontSize:26,fontFamily:v,width:n,rotation:0,color:q,opacity:1};d.push(t)}else u.push(Rf(e,h,f+(m-r)/2,n,r));h+=n+14}),f+=m+14}let p=o.length>0?f-14:e.top,m={id:L(),type:`figure`,kind:r.frame,x:n,y:0,width:i+e.side*2,height:p+e.bottom,rotation:0,label:r.name,fontSize:16,fontFamily:v,color:q,fill:`#ffffff`,opacity:1};t.push(m,...u,...d),n+=m.width+140}return t}async function Vf(e,t){return e.kind===`sequence`?kf(e):e.kind===`erd`?Yl(e):e.kind===`wireframe`?Bf(e):e.kind===`mindmap`?hf(e,t):e.kind===`infographic`?Kd(e,t):e.kind===`gitgraph`?_d(e):e.kind===`gantt`?dd(e):e.kind===`sankey`?Dd(e):e.kind===`graph`&&e.variant===`orgchart`?_f(e):Ku(e,t)}function Hf(e){return e.kind!==`graph`||e.legend||e.nodes.length===0?!1:e.swimlanes&&e.groups.length>0?!0:e.groups.filter(e=>!e.parent).length===1&&e.nodes.every(e=>e.group)}async function Uf(e,t){let n=_r(e);if(vr(n))return null;let r=await Vf(n,t);if(r.length===0)return null;let i={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0},a=e=>{let t=cn(e);C(t)&&(i.minX=Math.min(i.minX,t.x),i.minY=Math.min(i.minY,t.y),i.maxX=Math.max(i.maxX,t.x+t.width),i.maxY=Math.max(i.maxY,t.y+t.height))};for(let e of r)a(e);return{diagram:n,shapes:r,extent:i,grow:a}}function Wf(e,t,n){if(!Number.isFinite(t.minX)||!Number.isFinite(t.minY))return{shapes:e,bounds:{x:n.x,y:n.y,width:0,height:0}};let r={x:n.x-t.minX,y:n.y-t.minY};return{shapes:e.map(e=>un(e,r)),bounds:{x:n.x,y:n.y,width:t.maxX-t.minX,height:t.maxY-t.minY}}}async function Gf(e,t,n,r={}){let i=await Uf(e,n);if(!i)return null;let{diagram:a,shapes:o,extent:s,grow:c}=i;if(a.legend){let e=s.maxX-s.minX,t=await nf(a.legend,{x:s.minX,y:0},e,n),r=t[0];if(r){let e=s.minY-28-I(r).height,n=t.map(t=>un(t,{x:0,y:e}));for(let e of n)c(e);o.push(...n)}}return r.frame===!1||Hf(a)?Wf(o,s,t):Kf(o,s,a.title||`Diagram`,t)}function Kf(e,t,n,r){let i={id:L(),type:`figure`,x:t.minX-36,y:t.minY-36,width:t.maxX-t.minX+72,height:t.maxY-t.minY+72,rotation:0,label:n,fontSize:16,fontFamily:v,color:J,opacity:1};return Wf([i,...e],{minX:i.x,minY:i.y,maxX:i.x+i.width,maxY:i.y+i.height},r)}function qf(e,t){return e.length*t*.6}function Jf(){return{prepare:()=>Promise.resolve(),measure:(e,t)=>qf(e,t)}}function Yf(){return import(`./catalog-module-DAuqzZdT.js`).then(e=>e.default)}const Xf=[{id:`lucide`,kind:`stroke`},{id:`drawnicons`,kind:`asset`,mono:!0,varyingExtent:!0,remote:`https://koboyo.com/icons`},{id:`emoji`,kind:`asset`},{id:`mood`,kind:`asset`},{id:`tech`,kind:`asset`,mono:!0},{id:`aws`,kind:`asset`},{id:`gcp`,kind:`asset`},{id:`azure`,kind:`asset`}],Zf=Xf.filter(e=>e.kind===`asset`).map(e=>e.id);Object.fromEntries(Xf.map(e=>[e.id,e.kind])),new Set(Xf.filter(e=>`mono`in e&&e.mono).map(e=>e.id)),new Set(Xf.filter(e=>`varyingExtent`in e&&e.varyingExtent).map(e=>e.id));const Qf=new Map(Xf.flatMap(e=>`remote`in e?[[e.id,e.remote]]:[]));function $f(e){return Qf.get(e)}const ep=Object.fromEntries(Zf.map(e=>[e,e])),tp=[`tech`,`aws`,`gcp`,`azure`],np={k8s:`kubernetes`,kube:`kubernetes`,postgres:`postgresql`,psql:`postgresql`,mongo:`mongodb`,node:`nodedotjs`,nodejs:`nodedotjs`,"node.js":`nodedotjs`,next:`nextdotjs`,nextjs:`nextdotjs`,"next.js":`nextdotjs`,vue:`vuedotjs`,vuejs:`vuedotjs`,"vue.js":`vuedotjs`,kafka:`apachekafka`,rabbit:`rabbitmq`,es:`elasticsearch`,gha:`githubactions`};function rp(e){return np[e]??e}const ip={s3:`simple-storage-service`,sqs:`simple-queue-service`,sns:`simple-notification-service`,iam:`identity-and-access-management`,vpc:`virtual-private-cloud`,ebs:`elastic-block-store`,elb:`elastic-load-balancing`,alb:`elastic-load-balancing`,nlb:`elastic-load-balancing`,kms:`key-management-service`,ecs:`elastic-container-service`,eks:`elastic-kubernetes-service`,ecr:`elastic-container-registry`};function ap(e,t){return e===`aws`?ip[t]??t:t}function op(e){return e.toLowerCase().replace(/[^a-z0-9]/g,``)}const sp=[[/^(?:aws|amazon web services|amazon)[\s:/-]+/,`aws`],[/^(?:gcp|google)[\s:/-]+/,`gcp`],[/^(?:azure|microsoft azure)[\s:/-]+/,`azure`]];function cp(e){for(let[t,n]of sp)if(t.test(e))return{term:e.replace(t,``).trim(),only:n};return{term:e}}let lp=null;function up(){return lp??=import(`./icon-catalog-CpBWFmwP.js`).then(e=>({names:new Set(e.ICON_NAMES),aliases:e.ICON_ALIASES}),e=>{throw lp=null,e}),lp}async function dp(e){let{names:t,aliases:n}=await up();if(t.has(e))return e;let r=n[e];return r&&t.has(r)?r:null}function fp(e){let t=new Map;async function n(n){let r=t.get(n);if(r)return r;let i=await e.loadAssetIndex(n),a=new Set(i.map(e=>e[1]));return t.set(n,a),a}async function r(e){let t=e.trim().toLowerCase(),r=t.indexOf(`:`);if(r===-1){let e=rp(t),r=await dp(e);if(r)return{source:`lucide`,name:r};for(let t of tp)try{let r=await n(t),i=ap(t,e);if(r.has(i))return{source:t,name:i}}catch{}return null}let i=ep[t.slice(0,r)];if(!i)return null;let a=ap(i,rp(t.slice(r+1)));try{let e=await n(i);if(e.has(a))return{source:i,name:a};let t=op(a);for(let n of e)if(op(n)===t)return{source:i,name:n};return null}catch{return null}}async function i(t,n=12){let{term:r,only:i}=cp(t.trim().toLowerCase());if(r.length===0)return[];let a=op(rp(r));if(a.length===0)return[];let o=[],s=ip[a],c=e=>{let t=op(e);return t===a?0:t.startsWith(a)?1:t.includes(a)?2:-1};for(let e of i?[]:(await up()).names){let t=c(e);t>=0&&o.push({ref:e,label:e,score:t})}for(let t of i?[i]:tp){let n;try{n=await e.loadAssetIndex(t)}catch{continue}for(let e of n){let[n,r,i]=e,a=[r,n.toLowerCase(),...(i??[]).map(e=>e.toLowerCase())].map(c).filter(e=>e>=0);t===`aws`&&s===r&&a.push(-1),a.length!==0&&o.push({ref:`${t}:${r}`,label:`${n} (${t})`,score:Math.min(...a)+.5})}}o.sort((e,t)=>e.score-t.score);let l=new Set,u=[];for(let e of o)if(!l.has(e.ref)&&(l.add(e.ref),u.push({ref:e.ref,label:e.label}),u.length>=n))break;return u}return{resolveIcon:r,searchIcons:i}}function pp(e){let t=e.catalog??null,n=null,r={...e.assetIndexes},i={};function a(){return t?Promise.resolve(t):e.loadCatalog?(n||(n=e.loadCatalog().then(e=>(t=e,t)),n.catch(()=>{n=null})),n):Promise.resolve({})}function o(){return a().then(()=>void 0)}function s(e){return t?.[e]}function c(e){return a().then(t=>t[e]??null)}function l(t,n){let r=$f(t);return r?`${r}/svg/${n}.svg`:`${e.assetBase}icon-sets/${t}/${n}.svg`}function u(t){let n=r[t];if(n)return Promise.resolve(n);if(!e.loadAssetIndex)return Promise.resolve([]);let a=i[t];return a||(a=e.loadAssetIndex(t).then(e=>(r[t]=e,e)),i[t]=a,a.catch(()=>{i[t]===a&&delete i[t]})),a}function d(e){return r[e]}let f={},p={};function m(t){let n=f[t];if(n)return Promise.resolve(n);if(!e.loadLibraryGroups)return Promise.resolve([]);let r=p[t];return r||(r=e.loadLibraryGroups(t).then(e=>(f[t]=e,e)),p[t]=r,r.catch(()=>{p[t]===r&&delete p[t]})),r}function h(e){return f[e]}let g=fp({loadAssetIndex:u});return{ensureCatalog:o,cachedNode:s,loadNode:c,loadAssetIndex:u,cachedAssetIndex:d,loadLibraryGroups:m,cachedLibraryGroups:h,assetIconUrl:l,resolveIcon:g.resolveIcon,searchIcons:g.searchIcons}}const mp={...Bt,bg:`#ffffff`};function hp(e){let t=null;function n(){if(!t){let n=e();t=n,n.catch(()=>{t===n&&(t=null)})}return t}return{async layout(e){return await(await n()).layout(e)}}}async function gp(){let{default:e}=await import(`./elk-in-process-absent-CzI8UVp-.js`);return new e}async function _p(){try{let[{default:e},{default:t}]=await Promise.all([import(`./elk-api-
|
|
27
|
+
`).trim()}}function Bf(e){let t=[],n=0;for(let r of e.screens){let e=If(r),i=Af[r.frame],a=n+e.side,o=[],s=[],c=0;for(let e of r.controls){let t=Mf[e.width??`full`];s.length>0&&c+t>1.001&&(o.push(s),s=[],c=0),s.push(e),c+=t}s.length>0&&o.push(s);let l=Ff(r)?Math.min(i,400):i,u=[],d=[],f=e.top;for(let e of o){let t=e.every(e=>Pf.has(e.kind))?i:l,n=a+(i-t)/2,r=e.map(e=>Mf[e.width??`full`]),o=r.reduce((e,t)=>e+t,0),s=t-14*(e.length-1),c=r.map(e=>e/o*s),p=(e,t)=>{if(e.kind!==`paragraph`||!e.label)return jf[e.kind];let n=16*.9,r=Ii(e.label,t,n).length;return Math.ceil(r*n*1.4+8)},m=Math.max(...e.map((e,t)=>p(e,c[t]))),h=n;e.forEach((e,t)=>{let n=c[t],r=p(e,n);if(e.kind===`heading`){let t={id:L(),type:`text`,x:h,y:f+(m-r)/2+6,text:e.label??`Heading`,fontSize:26,fontFamily:v,width:n,rotation:0,color:q,opacity:1};d.push(t)}else u.push(Rf(e,h,f+(m-r)/2,n,r));h+=n+14}),f+=m+14}let p=o.length>0?f-14:e.top,m={id:L(),type:`figure`,kind:r.frame,x:n,y:0,width:i+e.side*2,height:p+e.bottom,rotation:0,label:r.name,fontSize:16,fontFamily:v,color:q,fill:`#ffffff`,opacity:1};t.push(m,...u,...d),n+=m.width+140}return t}async function Vf(e,t){return e.kind===`sequence`?kf(e):e.kind===`erd`?Yl(e):e.kind===`wireframe`?Bf(e):e.kind===`mindmap`?hf(e,t):e.kind===`infographic`?Kd(e,t):e.kind===`gitgraph`?_d(e):e.kind===`gantt`?dd(e):e.kind===`sankey`?Dd(e):e.kind===`graph`&&e.variant===`orgchart`?_f(e):Ku(e,t)}function Hf(e){return e.kind!==`graph`||e.legend||e.nodes.length===0?!1:e.swimlanes&&e.groups.length>0?!0:e.groups.filter(e=>!e.parent).length===1&&e.nodes.every(e=>e.group)}async function Uf(e,t){let n=_r(e);if(vr(n))return null;let r=await Vf(n,t);if(r.length===0)return null;let i={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0},a=e=>{let t=cn(e);C(t)&&(i.minX=Math.min(i.minX,t.x),i.minY=Math.min(i.minY,t.y),i.maxX=Math.max(i.maxX,t.x+t.width),i.maxY=Math.max(i.maxY,t.y+t.height))};for(let e of r)a(e);return{diagram:n,shapes:r,extent:i,grow:a}}function Wf(e,t,n){if(!Number.isFinite(t.minX)||!Number.isFinite(t.minY))return{shapes:e,bounds:{x:n.x,y:n.y,width:0,height:0}};let r={x:n.x-t.minX,y:n.y-t.minY};return{shapes:e.map(e=>un(e,r)),bounds:{x:n.x,y:n.y,width:t.maxX-t.minX,height:t.maxY-t.minY}}}async function Gf(e,t,n,r={}){let i=await Uf(e,n);if(!i)return null;let{diagram:a,shapes:o,extent:s,grow:c}=i;if(a.legend){let e=s.maxX-s.minX,t=await nf(a.legend,{x:s.minX,y:0},e,n),r=t[0];if(r){let e=s.minY-28-I(r).height,n=t.map(t=>un(t,{x:0,y:e}));for(let e of n)c(e);o.push(...n)}}return r.frame===!1||Hf(a)?Wf(o,s,t):Kf(o,s,a.title||`Diagram`,t)}function Kf(e,t,n,r){let i={id:L(),type:`figure`,x:t.minX-36,y:t.minY-36,width:t.maxX-t.minX+72,height:t.maxY-t.minY+72,rotation:0,label:n,fontSize:16,fontFamily:v,color:J,opacity:1};return Wf([i,...e],{minX:i.x,minY:i.y,maxX:i.x+i.width,maxY:i.y+i.height},r)}function qf(e,t){return e.length*t*.6}function Jf(){return{prepare:()=>Promise.resolve(),measure:(e,t)=>qf(e,t)}}function Yf(){return import(`./catalog-module-DAuqzZdT.js`).then(e=>e.default)}const Xf=[{id:`lucide`,kind:`stroke`},{id:`drawnicons`,kind:`asset`,mono:!0,varyingExtent:!0,remote:`https://koboyo.com/icons`},{id:`emoji`,kind:`asset`},{id:`mood`,kind:`asset`},{id:`tech`,kind:`asset`,mono:!0},{id:`aws`,kind:`asset`},{id:`gcp`,kind:`asset`},{id:`azure`,kind:`asset`}],Zf=Xf.filter(e=>e.kind===`asset`).map(e=>e.id);Object.fromEntries(Xf.map(e=>[e.id,e.kind])),new Set(Xf.filter(e=>`mono`in e&&e.mono).map(e=>e.id)),new Set(Xf.filter(e=>`varyingExtent`in e&&e.varyingExtent).map(e=>e.id));const Qf=new Map(Xf.flatMap(e=>`remote`in e?[[e.id,e.remote]]:[]));function $f(e){return Qf.get(e)}const ep=Object.fromEntries(Zf.map(e=>[e,e])),tp=[`tech`,`aws`,`gcp`,`azure`],np={k8s:`kubernetes`,kube:`kubernetes`,postgres:`postgresql`,psql:`postgresql`,mongo:`mongodb`,node:`nodedotjs`,nodejs:`nodedotjs`,"node.js":`nodedotjs`,next:`nextdotjs`,nextjs:`nextdotjs`,"next.js":`nextdotjs`,vue:`vuedotjs`,vuejs:`vuedotjs`,"vue.js":`vuedotjs`,kafka:`apachekafka`,rabbit:`rabbitmq`,es:`elasticsearch`,gha:`githubactions`};function rp(e){return np[e]??e}const ip={s3:`simple-storage-service`,sqs:`simple-queue-service`,sns:`simple-notification-service`,iam:`identity-and-access-management`,vpc:`virtual-private-cloud`,ebs:`elastic-block-store`,elb:`elastic-load-balancing`,alb:`elastic-load-balancing`,nlb:`elastic-load-balancing`,kms:`key-management-service`,ecs:`elastic-container-service`,eks:`elastic-kubernetes-service`,ecr:`elastic-container-registry`};function ap(e,t){return e===`aws`?ip[t]??t:t}function op(e){return e.toLowerCase().replace(/[^a-z0-9]/g,``)}const sp=[[/^(?:aws|amazon web services|amazon)[\s:/-]+/,`aws`],[/^(?:gcp|google)[\s:/-]+/,`gcp`],[/^(?:azure|microsoft azure)[\s:/-]+/,`azure`]];function cp(e){for(let[t,n]of sp)if(t.test(e))return{term:e.replace(t,``).trim(),only:n};return{term:e}}let lp=null;function up(){return lp??=import(`./icon-catalog-CpBWFmwP.js`).then(e=>({names:new Set(e.ICON_NAMES),aliases:e.ICON_ALIASES}),e=>{throw lp=null,e}),lp}async function dp(e){let{names:t,aliases:n}=await up();if(t.has(e))return e;let r=n[e];return r&&t.has(r)?r:null}function fp(e){let t=new Map;async function n(n){let r=t.get(n);if(r)return r;let i=await e.loadAssetIndex(n),a=new Set(i.map(e=>e[1]));return t.set(n,a),a}async function r(e){let t=e.trim().toLowerCase(),r=t.indexOf(`:`);if(r===-1){let e=rp(t),r=await dp(e);if(r)return{source:`lucide`,name:r};for(let t of tp)try{let r=await n(t),i=ap(t,e);if(r.has(i))return{source:t,name:i}}catch{}return null}let i=ep[t.slice(0,r)];if(!i)return null;let a=ap(i,rp(t.slice(r+1)));try{let e=await n(i);if(e.has(a))return{source:i,name:a};let t=op(a);for(let n of e)if(op(n)===t)return{source:i,name:n};return null}catch{return null}}async function i(t,n=12){let{term:r,only:i}=cp(t.trim().toLowerCase());if(r.length===0)return[];let a=op(rp(r));if(a.length===0)return[];let o=[],s=ip[a],c=e=>{let t=op(e);return t===a?0:t.startsWith(a)?1:t.includes(a)?2:-1};for(let e of i?[]:(await up()).names){let t=c(e);t>=0&&o.push({ref:e,label:e,score:t})}for(let t of i?[i]:tp){let n;try{n=await e.loadAssetIndex(t)}catch{continue}for(let e of n){let[n,r,i]=e,a=[r,n.toLowerCase(),...(i??[]).map(e=>e.toLowerCase())].map(c).filter(e=>e>=0);t===`aws`&&s===r&&a.push(-1),a.length!==0&&o.push({ref:`${t}:${r}`,label:`${n} (${t})`,score:Math.min(...a)+.5})}}o.sort((e,t)=>e.score-t.score);let l=new Set,u=[];for(let e of o)if(!l.has(e.ref)&&(l.add(e.ref),u.push({ref:e.ref,label:e.label}),u.length>=n))break;return u}return{resolveIcon:r,searchIcons:i}}function pp(e){let t=e.catalog??null,n=null,r={...e.assetIndexes},i={};function a(){return t?Promise.resolve(t):e.loadCatalog?(n||(n=e.loadCatalog().then(e=>(t=e,t)),n.catch(()=>{n=null})),n):Promise.resolve({})}function o(){return a().then(()=>void 0)}function s(e){return t?.[e]}function c(e){return a().then(t=>t[e]??null)}function l(t,n){let r=$f(t);return r?`${r}/svg/${n}.svg`:`${e.assetBase}icon-sets/${t}/${n}.svg`}function u(t){let n=r[t];if(n)return Promise.resolve(n);if(!e.loadAssetIndex)return Promise.resolve([]);let a=i[t];return a||(a=e.loadAssetIndex(t).then(e=>(r[t]=e,e)),i[t]=a,a.catch(()=>{i[t]===a&&delete i[t]})),a}function d(e){return r[e]}let f={},p={};function m(t){let n=f[t];if(n)return Promise.resolve(n);if(!e.loadLibraryGroups)return Promise.resolve([]);let r=p[t];return r||(r=e.loadLibraryGroups(t).then(e=>(f[t]=e,e)),p[t]=r,r.catch(()=>{p[t]===r&&delete p[t]})),r}function h(e){return f[e]}let g=fp({loadAssetIndex:u});return{ensureCatalog:o,cachedNode:s,loadNode:c,loadAssetIndex:u,cachedAssetIndex:d,loadLibraryGroups:m,cachedLibraryGroups:h,assetIconUrl:l,resolveIcon:g.resolveIcon,searchIcons:g.searchIcons}}const mp={...Bt,bg:`#ffffff`};function hp(e){let t=null;function n(){if(!t){let n=e();t=n,n.catch(()=>{t===n&&(t=null)})}return t}return{async layout(e){return await(await n()).layout(e)}}}async function gp(){let{default:e}=await import(`./elk-in-process-absent-CzI8UVp-.js`);return new e}async function _p(){try{let[{default:e},{default:t}]=await Promise.all([import(`./elk-api-C4wlHVIw.js`).then(e=>c(e.default,1)),import(`./elk-worker.min-SDxTC6NI.js`)]),n=new e({workerFactory:()=>new t});return await n.layout({id:`__probe__`,children:[{id:`n`,width:1,height:1}]}),n}catch{return gp()}}function vp(e={}){let t=e.assetBase??`/`;return{text:Jf(),fonts:{embed:()=>Promise.resolve(``)},assets:{inline:()=>Promise.resolve(null)},icons:pp({assetBase:t,loadCatalog:e.loadIconCatalog??Yf,loadAssetIndex:e=>fetch(`${t}icon-sets/${e}.json`).then(e=>{if(!e.ok)throw Error(`asset index fetch failed (${e.status})`);return e.json()})}),elk:hp(_p),theme:{palette:()=>({...mp})}}}const yp=vp();self.onmessage=async e=>{let t=e.data,n;try{let e=t.op===`layoutGraph`?await Ku(t.diagram,yp):await Gf(t.diagram,t.origin,yp,t.options);n={id:t.id,ok:!0,out:e}}catch(e){n={id:t.id,ok:!1,error:e instanceof Error?e.message:String(e)}}self.postMessage(n)};export{l as n,o as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{t}from"./react-lCSYwAWP.js";import{$t as n,A as r,An as i,At as a,B as o,Bt as s,Cn as c,Ct as l,D as u,Dn as d,Dt as f,Et as p,F as m,Fn as h,Ft as g,Gt as _,H as v,I as ee,J as y,Jt as b,Kt as x,L as S,Lt as te,M as C,Mn as w,Mt as T,N as ne,Nn as E,Nt as D,On as O,Ot as k,P as re,Pt as A,Qt as j,R as M,St as ie,Tn as N,Tt as P,U as F,Ut as ae,Vt as I,W as L,Wt as R,X as z,Xt as B,Y as oe,Yt as se,Z as ce,_ as le,_n as V,_t as H,b as ue,ct as de,d as U,dt as W,et as G,f as K,ft as q,h as fe,ht as J,in as pe,it as Y,j as me,jn as X,jt as he,kn as ge,kt as _e,l as ve,mn as ye,mt as be,n as xe,nn as Se,o as Ce,p as we,pn as Te,pt as Ee,qt as De,r as Oe,rt as ke,s as Ae,tn as Z,ut as je,v as Me,vn as Ne,vt as Pe,w as Fe,wn as Ie,wt as Le,x as Re,y as ze,yt as Be}from"./useScrollLock-CQpr0n6U.js";import{t as Ve}from"./jsx-runtime-DKdBMi_L.js";import{a as He,i as Ue,n as We,o as Ge,r as Ke,t as qe}from"./usePositioner-AtbrPc7w.js";import{n as Je,t as Ye}from"./useButton-CLQYGhRJ.js";import{a as Xe,i as Ze,r as Qe}from"./tooltip-CyBz17g8.js";import{t as $e}from"./createReactComponent-C51FAx3B.js";import{t as et}from"./useValueChanged-SqLfIDi5.js";import{t as tt}from"./useBaseUiId-D2RfU0uY.js";import{n as nt,t as rt}from"./useAnchoredPopupScrollLock-i8D5Dm1d.js";import{n as it,t as at}from"./surface-Dke4SWpE.js";var Q=e(t(),1);function ot(e,t={}){let{enabled:n=!0,event:r=`click`,toggle:i=!0,ignoreMouse:a=!1,stickIfOpen:o=!0,touchOpenDelay:s=0,reason:c=ke}=t,l=`rootStore`in e?e.rootStore:e,u=l.context.dataRef,d=Q.useRef(void 0),f=Se(),p=Z(),m=Q.useMemo(()=>{function e(e,t,n,r){let i=F(c,t,n);e&&r===`touch`&&s>0?p.start(s,()=>{l.setOpen(!0,i)}):l.setOpen(e,i)}function t(e,t,n){let r=u.current.openEvent,a=l.select(`domReferenceElement`)!==t;return e&&a||!e||!i?!0:r&&o?!n(r.type):!1}return{onPointerDown(e){d.current=e.pointerType},onMouseDown(n){let i=d.current,o=n.nativeEvent,s=l.select(`open`);if(n.button!==0||r===`click`||T(i,!0)&&a)return;let c=t(s,n.currentTarget,e=>e===`click`||e===`mousedown`),u=_(o);if(I(u)){e(c,o,u,i);return}let p=n.currentTarget;f.request(()=>{e(c,o,p,i)})},onClick(n){if(r===`mousedown-only`)return;let i=d.current;if(r===`mousedown`&&i){d.current=void 0;return}T(i,!0)&&a||e(t(l.select(`open`),n.currentTarget,e=>e===`click`||e===`mousedown`||e===`keydown`||e===`keyup`),n.nativeEvent,n.currentTarget,i)},onKeyDown(){d.current=void 0}}},[u,r,a,c,l,o,i,f,p,s]);return Q.useMemo(()=>n?{reference:m}:N,[n,m])}var st=`Escape`;function ct(e,t,n){switch(e){case`vertical`:return t;case`horizontal`:return n;default:return t||n}}function lt(e,t){return ct(t,e===`ArrowUp`||e===`ArrowDown`,e===`ArrowLeft`||e===`ArrowRight`)}function ut(e,t,n){return ct(t,e===`ArrowDown`,n?e===`ArrowLeft`:e===`ArrowRight`)||e===`Enter`||e===` `||e===``}function dt(e,t,n){return ct(t,n?e===De:e===b,e===x)}function ft(e,t,n,r){return t===`both`||t===`horizontal`&&r?e===st:ct(t,n?e===b:e===De,e===se)}function pt(e,t){let{listRef:n,activeIndex:r,onNavigate:i=()=>{},enabled:c=!0,selectedIndex:l=null,allowEscape:u=!1,loopFocus:h=!1,nested:b=!1,rtl:x=!1,virtual:S=!1,focusItemOnOpen:C=`auto`,focusItemOnHover:T=!0,openOnArrowKeyDown:ne=!0,disabledIndices:E=void 0,orientation:O=`vertical`,parentOrientation:re,id:j,resetOnPointerLeave:M=!0,externalTree:ie,grid:N}=t,P=N!=null,I=`rootStore`in e?e.rootStore:e,L=I.useState(`open`),z=I.useState(`floatingElement`),B=I.useState(`domReferenceElement`),oe=I.context.dataRef,se=te(z),le=s(B),H=v(se),ue=m(),de=ee(ie),U=Q.useRef(C),W=Q.useRef(l??-1),G=Q.useRef(null),K=Q.useRef(!0),q=d(e=>{i(W.current===-1?null:W.current,e)}),fe=Q.useRef(!!z),J=Q.useRef(L),Y=Q.useRef(!1),me=Q.useRef(!1),X=Q.useRef(null),he=v(E),ge=v(L),_e=v(l),ve=v(M),ye=Se(),be=Se(),xe=d(()=>{function e(e){S?de?.events.emit(`virtualfocus`,e):X.current=o(e,{sync:Y.current,preventScroll:!0})}let t=n.current[W.current],r=me.current;t&&e(t),(Y.current?e=>e():e=>ye.request(e))(()=>{let i=n.current[W.current]||t;i&&(t||e(i),Oe&&(r||!K.current)&&i.scrollIntoView?.({block:`nearest`,inline:`nearest`}))})});w(()=>{oe.current.orientation=O},[oe,O]),w(()=>{c&&(L&&z?(W.current=l??-1,U.current&&l!=null&&(me.current=!0,q())):fe.current&&(W.current=-1,q()))},[c,L,z,l,q]),w(()=>{if(c){if(!L){Y.current=!1;return}if(z)if(r==null){if(Y.current=!1,_e.current!=null)return;if(fe.current&&(W.current=-1,xe()),(!J.current||!fe.current)&&U.current&&(G.current!=null||U.current===!0&&G.current==null)){let e=0,t=()=>{n.current[0]==null?(e<2&&(e?e=>be.request(e):queueMicrotask)(t),e+=1):(W.current=G.current==null||ut(G.current,O,x)||b?k(n):f(n),G.current=null,q())};t()}}else a(n.current,r)||(W.current=r,xe(),me.current=!1)}},[c,L,z,r,_e,b,n,O,x,q,xe,be]),w(()=>{if(!c||z||!de||S||!fe.current)return;let e=de.nodesRef.current,t=e.find(e=>e.id===ue)?.context?.elements.floating,n=ae(pe(B??t??null)),r=e.some(e=>e.context&&R(e.context.elements.floating,n));t&&!r&&K.current&&t.focus({preventScroll:!0})},[c,z,B,de,ue,S]),w(()=>{J.current=L,fe.current=!!z}),w(()=>{L||(G.current=null,U.current=C)},[L,C]);let Ce=r!=null,we=d(e=>{if(!ge.current)return;let t=n.current.indexOf(e.currentTarget);t!==-1&&(W.current!==t||r!==t)&&(W.current=t,q(e))}),Te=d(()=>re??de?.nodesRef.current.find(e=>e.id===ue)?.context?.dataRef?.current.orientation),Ee=d(()=>k(n,he.current)),De=d(e=>{if(K.current=!1,Y.current=!0,e.which===229||!ge.current&&e.currentTarget===H.current)return;if(b&&ft(e.key,O,x,P)){lt(e.key,Te())||g(e),I.setOpen(!1,F(ce,e.nativeEvent)),V(B)&&(S?de?.events.emit(`virtualfocus`,B):B.focus());return}let t=W.current,r=k(n,E),i=f(n,E);if(le||(e.key===`Home`&&(g(e),W.current=r,q(e)),e.key===`End`&&(g(e),W.current=i,q(e))),N!=null){let t=N(e,W.current,n,O,h,x,E,r,i);if(t!=null&&(W.current=t,q(e)),O===`both`)return}if(lt(e.key,O)){if(g(e),L&&!S&&ae(e.currentTarget.ownerDocument)===e.currentTarget){W.current=ut(e.key,O,x)?r:i,q(e);return}ut(e.key,O,x)?h?t>=i?u&&t!==n.current.length?W.current=-1:(Y.current=!1,W.current=r):W.current=p(n.current,{startingIndex:t,disabledIndices:E}):W.current=Math.min(i,p(n.current,{startingIndex:t,disabledIndices:E})):h?t<=r?u&&t!==-1?W.current=n.current.length:(Y.current=!1,W.current=i):W.current=p(n.current,{startingIndex:t,decrement:!0,disabledIndices:E}):W.current=Math.max(r,p(n.current,{startingIndex:t,decrement:!0,disabledIndices:E})),a(n.current,W.current)&&(W.current=-1),q(e)}}),Oe=Q.useMemo(()=>({onFocus(e){Y.current=!0,we(e)},onClick:({currentTarget:e})=>e.focus({preventScroll:!0}),onMouseMove(e){Y.current=!0,me.current=!1,T&&we(e)},onPointerLeave(e){if(!ge.current||!K.current||e.pointerType===`touch`)return;Y.current=!0;let t=e.relatedTarget;if(!(!T||n.current.includes(t))&&ve.current&&(X.current?.(),X.current=null,W.current=-1,q(e),!S)){let e=H.current,t=ae(pe(e));e&&R(e,t)&&e.focus({preventScroll:!0})}}}),[we,ge,H,T,n,q,ve,S]),ke=Q.useMemo(()=>S&&L&&Ce&&{"aria-activedescendant":`${j}-${r}`},[S,L,Ce,j,r]),Ae=Q.useMemo(()=>({"aria-orientation":O===`both`?void 0:O,...le?{}:ke,onKeyDown(e){if(e.key===`Tab`&&e.shiftKey&&L&&!S){let t=_(e.nativeEvent);if(t&&!R(H.current,t))return;g(e),I.setOpen(!1,F(y,e.nativeEvent)),V(B)&&B.focus();return}De(e)},onPointerMove(){K.current=!0}}),[ke,De,H,O,le,I,L,S,B]),Z=Q.useMemo(()=>{function e(e){I.setOpen(!0,F(ce,e.nativeEvent,e.currentTarget))}function t(e){C===`auto`&&D(e.nativeEvent)&&(U.current=!S)}function n(e){U.current=C,C===`auto`&&A(e.nativeEvent)&&(U.current=!0)}return{onKeyDown(t){let n=I.select(`open`);K.current=!1;let r=t.key.startsWith(`Arrow`),i=dt(t.key,Te(),x),a=lt(t.key,O),o=(b?i:a)||t.key===`Enter`||t.key.trim()===``;if(S&&n)return De(t);if(!(!n&&!ne&&r)){if(o){let e=lt(t.key,Te());G.current=b&&e?null:t.key}if(b){i&&(g(t),n?(W.current=Ee(),q(t)):e(t));return}a&&(_e.current!=null&&(W.current=_e.current),g(t),!n&&ne?e(t):De(t),n&&q(t))}},onFocus(e){I.select(`open`)&&!S&&(W.current=-1,q(e))},onPointerDown:n,onPointerEnter:n,onMouseDown:t,onClick:t}},[De,C,Ee,b,q,I,ne,O,Te,x,_e,S]),je=Q.useMemo(()=>({...ke,...Z}),[ke,Z]);return Q.useMemo(()=>c?{reference:je,floating:Ae,item:Oe,trigger:Z}:{},[c,je,Ae,Z,Oe])}function mt(e,t){let{listRef:n,elementsRef:r,activeIndex:i,onMatch:a,disabledIndices:o,onTyping:s,enabled:c=!0,resetMs:l=750,selectedIndex:u=null}=t,f=`rootStore`in e?e.rootStore:e,p=f.useState(`open`),m=Z(),h=Q.useRef(``),_=Q.useRef(u??i??-1),v=Q.useRef(null),ee=d(e=>{function t(e){let t=r?.current[e];return!t||_e(t)}function c(e){return t(e)?o==null||!he(Ie,e,o):!1}function d(e,t,n=0){if(e.length===0)return-1;let r=(n%e.length+e.length)%e.length,i=t.toLowerCase();for(let t=0;t<e.length;t+=1){let n=(r+t)%e.length;if(!(!e[n]?.toLowerCase().startsWith(i)||!c(n)))return n}return-1}let f=n.current;if(h.current.length>0&&e.key===` `&&(g(e),s?.(!0)),h.current.length>0&&h.current[0]!==` `&&d(f,h.current)===-1&&e.key!==` `&&s?.(!1),f==null||e.key.length!==1||e.ctrlKey||e.metaKey||e.altKey)return;p&&e.key!==` `&&(g(e),s?.(!0));let ee=h.current===``;ee&&(_.current=u??i??-1),f.every((e,t)=>e&&c(t)?e[0]?.toLowerCase()!==e[1]?.toLowerCase():!0)&&h.current===e.key&&(h.current=``,_.current=v.current),h.current+=e.key,m.start(l,()=>{h.current=``,_.current=v.current,s?.(!1)});let y=((ee?u??i??-1:_.current)??0)+1,b=d(f,h.current,y);b===-1?e.key!==` `&&(h.current=``,s?.(!1)):(a?.(b),v.current=b)}),y=d(e=>{let t=e.relatedTarget,n=f.select(`domReferenceElement`),r=f.select(`floatingElement`);R(n,t)||R(r,t)||(m.clear(),h.current=``,_.current=v.current,s?.(!1))});w(()=>{!p&&u!==null||(m.clear(),v.current=null,h.current!==``&&(h.current=``))},[p,u,m]),w(()=>{p&&h.current===``&&(_.current=u??i??-1)},[p,u,i]);let b=Q.useMemo(()=>({onKeyDown:ee,onBlur:y}),[ee,y]);return Q.useMemo(()=>c?{reference:b,floating:b}:{},[c,b])}var ht=$e(`outline`,`chevron-down`,`ChevronDown`,[[`path`,{d:`M6 9l6 6l6 -6`,key:`svg-0`}]]),gt=$e(`outline`,`dots`,`Dots`,[[`path`,{d:`M4 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-0`}],[`path`,{d:`M11 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-1`}],[`path`,{d:`M18 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-2`}]]),_t=$e(`outline`,`player-play`,`PlayerPlay`,[[`path`,{d:`M7 4v16l13 -8l-13 -8`,key:`svg-0`}]]),vt=Q.createContext(void 0);function yt(e=!0){let t=Q.useContext(vt);if(t===void 0&&!e)throw Error(X(25));return t}var bt=Q.createContext(void 0);function xt(e){let t=Q.useContext(bt);if(t===void 0&&!e)throw Error(X(33));return t}var St=Q.createContext(void 0);function Ct(e){let t=Q.useContext(St);if(t===void 0&&!e)throw Error(X(36));return t}function wt(e){let{closeOnClick:t,highlighted:r,id:i,nodeId:a,store:o,typingRef:s,itemRef:c,itemMetadata:l}=e,{events:u}=o.useState(`floatingTreeRoot`),d=o.useState(`open`),f=yt(!0),p=f!==void 0;return Q.useMemo(()=>({id:i,role:`menuitem`,tabIndex:d&&r?0:-1,onKeyDown(e){e.key===` `&&s?.current&&e.preventDefault()},onMouseMove(e){a&&u.emit(`itemhover`,{nodeId:a,target:e.currentTarget})},onClick(e){t&&u.emit(`close`,{domEvent:e,reason:z})},onMouseUp(e){if(f){let t=f.initialCursorPointRef.current;if(f.initialCursorPointRef.current=null,p&&t&&Math.abs(e.clientX-t.x)<=1&&Math.abs(e.clientY-t.y)<=1||p&&!n&&e.button===2)return}c.current&&o.context.allowMouseUpTriggerRef.current&&(!p||e.button===2)&&(!l||l.type===`regular-item`)&&c.current.click()}}),[t,r,i,u,a,d,o,s,c,f,p,l])}var Tt={type:`regular-item`};function Et(e){let{closeOnClick:t,disabled:n=!1,highlighted:r,id:i,store:a,typingRef:o=a.context.typingRef,nativeButton:s,itemMetadata:c,nodeId:l}=e,u=a.useState(`disabled`),d=n||u,f=Q.useRef(null),{getButtonProps:p,buttonRef:m}=Ye({disabled:d,focusableWhenDisabled:!0,native:s,composite:!0}),h=wt({closeOnClick:t,highlighted:r,id:i,nodeId:l,store:a,typingRef:o,itemRef:f,itemMetadata:c}),g=Q.useCallback(e=>H(h,{onMouseEnter(){c.type===`submenu-trigger`&&c.setActive()}},e,p),[h,p,c]),_=Pe(f,m);return Q.useMemo(()=>({getItemProps:g,itemRef:_}),[g,_])}var Dt=Q.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},elementsRef:{current:[]},nextIndexRef:{current:0}});function Ot(){return Q.useContext(Dt)}var kt=function(e){return e[e.None=0]=`None`,e[e.GuessFromOrder=1]=`GuessFromOrder`,e}({});function At(e={}){let{label:t,metadata:n,textRef:r,indexGuessBehavior:i,index:a}=e,{register:o,unregister:s,subscribeMapChange:c,elementsRef:l,labelsRef:u,nextIndexRef:d}=Ot(),f=Q.useRef(-1),[p,m]=Q.useState(a??(i===kt.GuessFromOrder?()=>{if(f.current===-1){let e=d.current;d.current+=1,f.current=e}return f.current}:-1)),h=Q.useRef(null),g=Q.useCallback(e=>{if(h.current=e,p!==-1&&e!==null&&(l.current[p]=e,u)){let n=t!==void 0;u.current[p]=n?t:r?.current?.textContent??e.textContent}},[p,l,u,t,r]);return w(()=>{if(a!=null)return;let e=h.current;if(e)return o(e,n),()=>{s(e)}},[a,o,s,n]),w(()=>{if(a==null)return c(e=>{let t=h.current?e.get(h.current)?.index:null;t!=null&&m(t)})},[a,c,m]),{ref:g,index:p}}var jt=Q.forwardRef(function(e,t){let{render:n,className:r,id:i,label:a,nativeButton:o=!1,disabled:s=!1,closeOnClick:c=!0,style:l,...u}=e,d=At({label:a}),f=xt(!0),p=tt(i),{store:m}=Ct(),h=m.useState(`isActive`,d.index),g=m.useState(`itemProps`),{getItemProps:_,itemRef:v}=Et({closeOnClick:c,disabled:s,highlighted:h,id:p,store:m,nativeButton:o,nodeId:f?.context.nodeId,itemMetadata:Tt});return J(`div`,e,{state:{disabled:s,highlighted:h},props:[g,u,_],ref:[v,t,d.ref]})}),$=Ve(),Mt={...Ce,...Ee},Nt=Q.forwardRef(function(e,t){let{render:n,className:r,style:i,finalFocus:a,...o}=e,{store:s}=Ct(),{side:c,align:l}=xt(),u=nt(!0)!=null,d=s.useState(`open`),f=s.useState(`transitionStatus`),p=s.useState(`popupProps`),m=s.useState(`mounted`),h=s.useState(`instantType`),g=s.useState(`activeTriggerElement`),_=s.useState(`parent`),v=s.useState(`lastOpenChangeReason`),ee=s.useState(`rootId`),y=s.useState(`floatingRootContext`),b=s.useState(`floatingTreeRoot`),x=s.useState(`closeDelay`),S=s.useState(`activeTriggerElement`),te=s.useState(`hoverEnabled`),C=s.useState(`disabled`),w=s.useState(`openMethod`),T=_.type===`context-menu`;W({open:d,ref:s.context.popupRef,onComplete(){d&&s.context.onOpenChangeComplete?.(!0)}}),Q.useEffect(()=>{function e(e){s.setOpen(!1,F(e.reason,e.domEvent))}return b.events.on(`close`,e),()=>{b.events.off(`close`,e)}},[b.events,s]),Ge(y,{enabled:te&&!C&&!T&&_.type!==`menubar`,closeDelay:x});let ne=Q.useCallback(e=>{s.set(`popupElement`,e)},[s]),E=J(`div`,e,{state:{transitionStatus:f,side:c,align:l,open:d,nested:_.type===`menu`,instant:h},ref:[t,s.context.popupRef,ne],stateAttributesMapping:Mt,props:[p,{onKeyDown(e){u&&Oe.has(e.key)&&e.stopPropagation()}},We(f),o,{"data-rootownerid":ee}]}),D=_.type===void 0||T;return(g||_.type===`menubar`&&v!==`outside-press`)&&(D=!0),(0,$.jsx)(me,{context:y,openInteractionType:w,modal:T,disabled:!m,returnFocus:a===void 0?D:a,initialFocus:_.type!==`menu`,restoreFocus:!0,externalTree:_.type===`menubar`?void 0:b,previousFocusableElement:S,nextFocusableElement:_.type===void 0?s.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:_.type===void 0?s.context.beforeContentFocusGuardRef:void 0,children:E})}),Pt=Q.createContext(void 0);function Ft(){let e=Q.useContext(Pt);if(e===void 0)throw Error(X(32));return e}var It=Q.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,{store:i}=Ct();return i.useState(`mounted`)||n?(0,$.jsx)(Pt.Provider,{value:n,children:(0,$.jsx)(M,{ref:t,...r})}):null});function Lt(e){let{children:t,elementsRef:n,labelsRef:r,onMapChange:i}=e,a=d(i),o=Q.useRef(0),s=E(zt).current,c=E(Rt).current,[l,u]=Q.useState(0),f=Q.useRef(l),p=d((e,t)=>{c.set(e,t??null),f.current+=1,u(f.current)}),m=d(e=>{c.delete(e),f.current+=1,u(f.current)}),h=Q.useMemo(()=>{let e=new Map;return Array.from(c.keys()).filter(e=>e.isConnected).sort(Bt).forEach((t,n)=>{let r=c.get(t)??{};e.set(t,{...r,index:n})}),e},[c,l]);w(()=>{if(typeof MutationObserver!=`function`||h.size===0)return;let e=new MutationObserver(e=>{let t=new Set,n=e=>t.has(e)?t.delete(e):t.add(e);e.forEach(e=>{e.removedNodes.forEach(n),e.addedNodes.forEach(n)}),t.size===0&&(f.current+=1,u(f.current))});return h.forEach((t,n)=>{n.parentElement&&e.observe(n.parentElement,{childList:!0})}),()=>{e.disconnect()}},[h]),w(()=>{f.current===l&&(n.current.length!==h.size&&(n.current.length=h.size),r&&r.current.length!==h.size&&(r.current.length=h.size),o.current=h.size),a(h)},[a,h,n,r,l]),w(()=>()=>{n.current=[]},[n]),w(()=>()=>{r&&(r.current=[])},[r]);let g=d(e=>(s.add(e),()=>{s.delete(e)}));w(()=>{s.forEach(e=>e(h))},[s,h]);let _=Q.useMemo(()=>({register:p,unregister:m,subscribeMapChange:g,elementsRef:n,labelsRef:r,nextIndexRef:o}),[p,m,g,n,r,o]);return(0,$.jsx)(Dt.Provider,{value:_,children:t})}function Rt(){return new Map}function zt(){return new Set}function Bt(e,t){let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING||n&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:n&Node.DOCUMENT_POSITION_PRECEDING||n&Node.DOCUMENT_POSITION_CONTAINS?1:0}var Vt=Q.forwardRef(function(e,t){let{anchor:n,positionMethod:r=`absolute`,className:i,render:a,side:o,align:s,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=de,style:g,..._}=e,{store:v}=Ct(),ee=Ft(),y=yt(!0),b=v.useState(`parent`),x=v.useState(`floatingRootContext`),S=v.useState(`floatingTreeRoot`),te=v.useState(`mounted`),T=v.useState(`open`),ne=v.useState(`modal`),E=v.useState(`openMethod`),D=v.useState(`activeTriggerElement`),O=v.useState(`transitionStatus`),k=v.useState(`positionerElement`),re=v.useState(`instantType`),A=v.useState(`hasViewport`),j=v.useState(`lastOpenChangeReason`),M=v.useState(`floatingNodeId`),ie=v.useState(`floatingParentNodeId`),N=x.useState(`domReferenceElement`),P=Q.useRef(null),ae=q(k,!1,!1),I=n,L=c,R=l,z=s,B=h;b.type===`context-menu`&&(I=n??b.context?.anchor,z??=`start`,!o&&z!==`center`&&(R=e.alignOffset??2,L=e.sideOffset??-5));let oe=o,se=z;b.type===`menu`?(oe??=`inline-end`,se??=`start`,B=e.collisionAvoidance??je):b.type===`menubar`&&(oe??=b.context.orientation===`vertical`?`inline-end`:`bottom`,se??=`start`);let ce=b.type===`context-menu`,le=Ke({anchor:I,floatingRootContext:x,positionMethod:y?`fixed`:r,mounted:te,side:oe,sideOffset:L,align:se,alignOffset:R,arrowPadding:ce?0:f,collisionBoundary:u,collisionPadding:d,sticky:p,nodeId:M,keepMounted:ee,disableAnchorTracking:m,collisionAvoidance:B,shiftCrossAxis:ce&&!(`side`in B&&B.side===`flip`),externalTree:S,adaptiveOrigin:A?Ue:void 0});Q.useEffect(()=>{function e(e){e.open&&(e.parentNodeId===M&&v.set(`hoverEnabled`,!1),e.nodeId!==M&&e.parentNodeId===v.select(`floatingParentNodeId`)&&v.setOpen(!1,F(G)))}return S.events.on(`menuopenchange`,e),()=>{S.events.off(`menuopenchange`,e)}},[v,S.events,M]),Q.useEffect(()=>{if(v.select(`floatingParentNodeId`)==null)return;function e(e){if(e.open||e.nodeId!==v.select(`floatingParentNodeId`))return;let t=e.reason??`sibling-open`;v.setOpen(!1,F(t))}return S.events.on(`menuopenchange`,e),()=>{S.events.off(`menuopenchange`,e)}},[S.events,v]);let V=Z();Q.useEffect(()=>{T||V.clear()},[T,V]),Q.useEffect(()=>{function e(e){if(!(!T||e.nodeId!==v.select(`floatingParentNodeId`)))if(e.target&&D&&D!==e.target){let e=v.select(`closeDelay`);e>0?V.isStarted()||V.start(e,()=>{v.setOpen(!1,F(G))}):v.setOpen(!1,F(G))}else V.clear()}return S.events.on(`itemhover`,e),()=>{S.events.off(`itemhover`,e)}},[S.events,T,D,v,V]),Q.useEffect(()=>{let e={open:T,nodeId:M,parentNodeId:ie,reason:v.select(`lastOpenChangeReason`)};S.events.emit(`menuopenchange`,e)},[S.events,T,v,M,ie]),w(()=>{let e=N,t=P.current;if(e&&(P.current=e),t&&e&&e!==t){v.set(`instantType`,void 0);let e=new AbortController;return ae(()=>{v.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[N,ae,v]);let H={open:T,side:le.side,align:le.align,anchorHidden:le.anchorHidden,nested:b.type===`menu`,instant:re},ue=b.type===`menubar`&&b.context.modal;rt(T&&(ue||ne&&j!==`trigger-hover`),E===`touch`,k,D);let U=qe(e,H,{styles:le.positionerStyles,transitionStatus:O,props:_,refs:[t,v.useStateSetter(`positionerElement`)],hidden:!te,inert:!T}),W=te&&b.type!==`menu`&&(b.type!==`menubar`&&ne&&j!==`trigger-hover`||b.type===`menubar`&&b.context.modal),K=null;return b.type===`menubar`?K=b.context.contentElement:b.type===void 0&&(K=D),(0,$.jsxs)(bt.Provider,{value:le,children:[W&&(0,$.jsx)(xe,{ref:b.type===`context-menu`||b.type===`nested-context-menu`?b.context.internalBackdropRef:null,inert:be(!T),cutout:K}),(0,$.jsx)(C,{id:M,children:(0,$.jsx)(Lt,{elementsRef:v.context.itemDomElements,labelsRef:v.context.itemLabels,children:U})})]})}),Ht=Q.createContext(null);function Ut(e){let t=Q.useContext(Ht);if(t===null&&!e)throw Error(X(5));return t}function Wt(e){let t=Q.useRef(``),n=Q.useCallback(n=>{n.defaultPrevented||(t.current=n.pointerType,e(n,n.pointerType))},[e]);return{onClick:Q.useCallback(n=>{if(n.detail===0){e(n,`keyboard`);return}`pointerType`in n?e(n,n.pointerType):e(n,t.current),t.current=``},[e]),onPointerDown:n}}function Gt(e,t){let{onClick:n,onPointerDown:r}=Wt(d((n,r)=>{(typeof e==`function`?e():e)||t(r||(j?`touch`:``))}));return Q.useMemo(()=>({onClick:n,onPointerDown:r}),[n,r])}function Kt(e){let[t,n]=Q.useState(null),r=Gt(e,n);return et(e,t=>{t&&!e&&n(null)}),Q.useMemo(()=>({openMethod:t,triggerProps:r}),[t,r])}var qt={...U,disabled:i(e=>e.parent.type===`menubar`&&e.parent.context.disabled||e.disabled),modal:i(e=>(e.parent.type===void 0||e.parent.type===`context-menu`)&&(e.modal??!0)),openMethod:i(e=>e.openMethod),allowMouseEnter:i(e=>e.allowMouseEnter),highlightItemOnHover:i(e=>e.highlightItemOnHover),stickIfOpen:i(e=>e.stickIfOpen),parent:i(e=>e.parent),rootId:i(e=>e.parent.type===`menu`?e.parent.store.select(`rootId`):e.parent.type===void 0?e.rootId:e.parent.context.rootId),activeIndex:i(e=>e.activeIndex),isActive:i((e,t)=>e.activeIndex===t),hoverEnabled:i(e=>e.hoverEnabled),instantType:i(e=>e.instantType),lastOpenChangeReason:i(e=>e.openChangeReason),floatingTreeRoot:i(e=>e.parent.type===`menu`?e.parent.store.select(`floatingTreeRoot`):e.floatingTreeRoot),floatingNodeId:i(e=>e.floatingNodeId),floatingParentNodeId:i(e=>e.floatingParentNodeId),itemProps:i(e=>e.itemProps),closeDelay:i(e=>e.closeDelay),hasViewport:i(e=>e.hasViewport),keyboardEventRelay:i(e=>{if(e.keyboardEventRelay)return e.keyboardEventRelay;if(e.parent.type===`menu`)return e.parent.store.select(`keyboardEventRelay`)})},Jt=class e extends c{constructor(e){super({...Yt(),...e},{positionerRef:Q.createRef(),popupRef:Q.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:Q.createRef(),beforeContentFocusGuardRef:Q.createRef(),onOpenChangeComplete:void 0,triggerElements:new K},qt),this.unsubscribeParentListener=this.observe(`parent`,e=>{if(this.unsubscribeParentListener?.(),e.type===`menu`){let t=e.store.select(`rootId`),n=e.store.select(`floatingTreeRoot`),r=e.store.select(`keyboardEventRelay`);this.unsubscribeParentListener=e.store.subscribe(()=>{let i=e.store.select(`rootId`),a=e.store.select(`floatingTreeRoot`),o=e.store.select(`keyboardEventRelay`);t===i&&n===a&&r===o||(t=i,n=a,r=o,this.notifyAll())}),this.context.allowMouseUpTriggerRef=e.store.context.allowMouseUpTriggerRef;return}e.type!==void 0&&(this.context.allowMouseUpTriggerRef=e.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(e,t){this.state.floatingRootContext.context.events.emit(`setOpen`,{open:e,eventDetails:t})}static useStore(t,n){let r=E(()=>new e(n)).current;return t??r}unsubscribeParentListener=null};function Yt(){return{...ve(),disabled:!1,modal:!0,openMethod:null,allowMouseEnter:!1,highlightItemOnHover:!0,stickIfOpen:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new S,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:N,keyboardEventRelay:void 0,closeDelay:0,hasViewport:!1}}var Xt=Q.createContext(void 0);function Zt(){return Q.useContext(Xt)}var Qt=O(function(e){let{children:t,open:n,onOpenChange:i,onOpenChangeComplete:a,defaultOpen:o=!1,disabled:s=!1,modal:c,loopFocus:l=!0,orientation:f=`vertical`,actionsRef:p,closeParentOnEsc:h=!1,handle:g,triggerId:_,defaultTriggerId:v=null,highlightItemOnHover:ee=!0}=e,y=yt(!0),b=Ct(!0),x=Ut(!0),S=Zt(),te=Q.useMemo(()=>S&&b?{type:`menu`,store:b.store}:x?{type:`menubar`,context:x}:y&&!b?{type:`context-menu`,context:y}:{type:void 0},[y,b,x,S]),C=Jt.useStore(g?.store,{open:o,openProp:n,activeTriggerId:v,triggerIdProp:_,parent:te});ze(C,n,o,v),C.useControlledProp(`openProp`,n),C.useControlledProp(`triggerIdProp`,_),C.useContextCallback(`onOpenChangeComplete`,a);let T=Y(),E=Y(),D=C.useState(`floatingTreeRoot`),O=re(D),k=m(),A=C.useState(`open`),j=C.useState(`activeTriggerElement`),M=C.useState(`positionerElement`),ie=C.useState(`hoverEnabled`),P=C.useState(`disabled`),ae=C.useState(`lastOpenChangeReason`),I=C.useState(`parent`),L=C.useState(`activeIndex`),R=C.useState(`payload`),z=C.useState(`floatingParentNodeId`),B=Q.useRef(null),se=Q.useRef(I.type!==`context-menu`),ce=Z(),V=Q.useRef(!0),de=Z(),U=z!=null,{openMethod:W,triggerProps:G}=Kt(A);C.useSyncedValues({disabled:s,highlightItemOnHover:ee,modal:I.type===void 0?c:void 0,openMethod:W,rootId:T}),Me(C);let{forceUnmount:K}=ue(A,C,()=>{C.update({allowMouseEnter:!1,stickIfOpen:!0})});w(()=>{y&&!b?C.update({parent:{type:`context-menu`,context:y},floatingNodeId:O,floatingParentNodeId:k}):b&&C.update({floatingNodeId:O,floatingParentNodeId:k})},[y,b,O,k,C]),Q.useEffect(()=>{if(A||(B.current=null),I.type===`context-menu`){if(!A){ce.clear(),se.current=!1;return}ce.start(500,()=>{se.current=!0})}},[ce,A,I.type]),w(()=>{!A&&!ie&&C.set(`hoverEnabled`,!0)},[A,ie,C]);let q=d((e,t)=>{let n=t.reason;if(A===e&&t.trigger===j&&ae===n)return;let r=fe(t);if(!e&&t.trigger==null&&(t.trigger=j??void 0),i?.(e,t),t.isCanceled)return;C.state.floatingRootContext.dispatchOpenChange(e,t);let a=t.event;if(e===!1&&a?.type===`click`&&a.pointerType===`touch`&&!V.current)return;e&&n===`trigger-focus`?(V.current=!1,de.start(300,()=>{V.current=!0})):(V.current=!0,de.clear());let o=(n===`trigger-press`||n===`item-press`)&&a.detail===0&&a?.isTrusted,s=!e&&(n===`escape-key`||n==null),c={open:e,openChangeReason:n};B.current=t.event??null,le(c,e,t.trigger,r()),C.update(c),I.type===`menubar`&&(n===`trigger-focus`||n===`focus-out`||n===`trigger-hover`||n===`list-navigation`||n===`sibling-open`)?C.set(`instantType`,`group`):o||s?C.set(`instantType`,o?`click`:`dismiss`):C.set(`instantType`,void 0)}),J=u({popupStore:C,floatingId:E,nested:k!=null,onOpenChange:q}),pe=J.context.events;Q.useEffect(()=>{let e=({open:e,eventDetails:t})=>q(e,t);return pe.on(`setOpen`,e),()=>{pe?.off(`setOpen`,e)}},[pe,q]);let me=Q.useCallback(()=>{C.setOpen(!1,F(oe))},[C]);Q.useImperativeHandle(p,()=>({unmount:K,close:me}),[K,me]);let X;I.type===`context-menu`&&(X=I.context),Q.useImperativeHandle(X?.positionerRef,()=>M,[M]),Q.useImperativeHandle(X?.actionsRef,()=>({setOpen:q}),[q]);let he=r(J,{enabled:!P,bubbles:{escapeKey:h&&I.type===`menu`},outsidePress(){return I.type!==`context-menu`||B.current?.type===`contextmenu`||se.current},externalTree:U?D:void 0}),ge=He(),_e=Q.useCallback(e=>{C.select(`activeIndex`)!==e&&C.set(`activeIndex`,e)},[C]),ve=pt(J,{enabled:!P,listRef:C.context.itemDomElements,activeIndex:L,nested:I.type!==void 0,loopFocus:l,orientation:f,parentOrientation:I.type===`menubar`?I.context.orientation:void 0,rtl:ge===`rtl`,disabledIndices:Ie,onNavigate:_e,openOnArrowKeyDown:I.type!==`context-menu`,externalTree:U?D:void 0,focusItemOnHover:ee}),ye=Q.useCallback(e=>{C.context.typingRef.current=e},[C]),be=mt(J,{enabled:!P,listRef:C.context.itemLabels,elementsRef:C.context.itemDomElements,activeIndex:L,resetMs:500,onMatch:e=>{A&&e!==L&&C.set(`activeIndex`,e)},onTyping:ye});Re(C,{floatingRootContext:J,activeTriggerProps:Q.useMemo(()=>{let e=H(be.reference,ve.reference,he.reference,{onMouseMove(){C.set(`allowMouseEnter`,!0)}},G);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=A,e},[C,be.reference,ve.reference,he.reference,G,A]),inactiveTriggerProps:Q.useMemo(()=>{let e=H(ve.trigger,he.trigger,G);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=!1,e},[ve.trigger,he.trigger,G]),popupProps:Q.useMemo(()=>H(we,{id:E,role:`menu`,"aria-labelledby":j?.id,onMouseMove(){C.set(`allowMouseEnter`,!0),I.type===`menu`&&C.set(`hoverEnabled`,!1)},onClick(){C.select(`hoverEnabled`)&&C.set(`hoverEnabled`,!1)},onKeyDown(e){let t=C.select(`keyboardEventRelay`);t&&!e.isPropagationStopped()&&t(e)}},be.floating,ve.floating,he.floating),[j,E,I.type,C,be.floating,ve.floating,he.floating]),itemProps:ve.item??N});let xe=Q.useMemo(()=>({store:C,parent:te}),[C,te]),Se=(0,$.jsx)(St.Provider,{value:xe,children:typeof t==`function`?t({payload:R}):t});return I.type===void 0||I.type===`context-menu`?(0,$.jsx)(ne,{externalTree:D,children:Se}):Se});function $t(e){let t=e.getBoundingClientRect(),n=ye(e);if(B)return t;let r=n.getComputedStyle(e,`::before`),i=n.getComputedStyle(e,`::after`);if(!(r.content!==`none`||i.content!==`none`))return t;let a=parseFloat(r.width)||0,o=parseFloat(r.height)||0,s=parseFloat(i.width)||0,c=parseFloat(i.height)||0,l=Math.max(t.width,a,s),u=Math.max(t.height,o,c),d=l-t.width,f=u-t.height;return{left:t.left-d/2,right:t.right+d/2,top:t.top-f/2,bottom:t.bottom+f/2}}function en(e={}){let{highlightItemOnHover:t,highlightedIndex:n,onHighlightedIndexChange:r}=Je(),{ref:i,index:a}=At(e),o=n===a,s=Q.useRef(null),c=Pe(i,s);return{compositeProps:{tabIndex:o?0:-1,onFocus(){r(a)},onMouseMove(){let e=s.current;if(!t||!e)return;let n=e.hasAttribute(`disabled`)||e.ariaDisabled===`true`;!o&&!n&&e.focus()}},compositeRef:c,index:a}}function tn(e){let{render:t,className:n,style:r,state:i=N,props:a=Ie,refs:o=Ie,metadata:s,stateAttributesMapping:c,tag:l=`div`,...u}=e,{compositeProps:d,compositeRef:f}=en({metadata:s});return J(l,e,{state:i,ref:[...o,f],props:[d,...a,u],stateAttributesMapping:c})}function nn(e){if(V(e)&&e.hasAttribute(`data-rootownerid`))return e.getAttribute(`data-rootownerid`)??void 0;if(!Ne(e))return nn(Te(e))}var rn=e(h(),1);function an(e,t){let n=Q.useRef(null);function r(t){rn.flushSync(()=>{e.setOpen(!1,F(y,t.nativeEvent,t.currentTarget))}),Le(n.current)?.focus()}function i(n){let r=e.select(`positionerElement`);if(r&&P(n,r))e.context.beforeContentFocusGuardRef.current?.focus();else{rn.flushSync(()=>{e.setOpen(!1,F(y,n.nativeEvent,n.currentTarget))});let i=l(e.context.triggerFocusTargetRef.current||t.current);for(;i!==null&&R(r,i);){let e=i;if(i=ie(i),i===e)break}i?.focus()}}return{preFocusGuardRef:n,handlePreFocusGuardFocus:r,handleFocusTargetFocus:i}}function on(e){let{enabled:t=!0,mouseDownAction:n,open:r}=e,i=Q.useRef(!1);return Q.useMemo(()=>t?{onMouseDown:e=>{(n===`open`&&!r||n===`close`&&r)&&(i.current=!0,pe(e.currentTarget).addEventListener(`click`,()=>{i.current=!1},{once:!0}))},onClick:e=>{i.current&&(i.current=!1,e.preventBaseUIHandler())}}:N,[t,n,r])}var sn=2,cn=ge(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,id:s,openOnHover:c,delay:l=100,closeDelay:u=0,handle:f,payload:p,...h}=e,g=Ct(!0),_=f?.store??g?.store;if(!_)throw Error(X(85));let v=tt(s),y=_.useState(`isTriggerActive`,v),b=_.useState(`floatingRootContext`),x=_.useState(`isOpenedByTrigger`,v),te=_.useState(`triggerPopupId`,v),C=Q.useRef(null),w=un(),T=Je(!0),ne=ee(),E=Q.useMemo(()=>ne??new S,[ne]),{registerTrigger:D,isMountedByThisTrigger:O}=Fe(v,C,_,{payload:p,closeDelay:u,parent:w,floatingTreeRoot:E,floatingNodeId:re(E),floatingParentNodeId:m(),keyboardEventRelay:T?.relayKeyboardEvent}),k=w.type===`menubar`,A=_.useState(`disabled`),j=a||A||k&&w.context.disabled,{getButtonProps:M,buttonRef:ie}=Ye({disabled:j,native:o});Q.useEffect(()=>{!x&&w.type===void 0&&(_.context.allowMouseUpTriggerRef.current=!1)},[_,x,w.type]);let P=Q.useRef(null),F=Z(),ae=d(e=>{if(!P.current)return;F.clear(),_.context.allowMouseUpTriggerRef.current=!1;let t=e.target;if(R(P.current,t)||R(_.select(`positionerElement`),t)||t===P.current||t!=null&&nn(t)===_.select(`rootId`))return;let n=$t(P.current);e.clientX>=n.left-sn&&e.clientX<=n.right+sn&&e.clientY>=n.top-sn&&e.clientY<=n.bottom+sn||E.events.emit(`close`,{domEvent:e,reason:L})});Q.useEffect(()=>{x&&_.select(`lastOpenChangeReason`)===`trigger-hover`&&pe(P.current).addEventListener(`mouseup`,ae,{once:!0})},[x,ae,_]);let I=k&&w.context.hasSubmenuOpen,z=Ze(b,{enabled:(c??I)&&!j&&w.type!==`context-menu`&&(!k||I&&!O),handleClose:Qe({blockPointerEvents:!k}),mouseOnly:!0,move:!1,restMs:w.type===void 0?l:void 0,delay:{close:u},triggerElementRef:C,externalTree:E,isActiveTrigger:y,isClosing:()=>_.select(`transitionStatus`)===`ending`}),B=ln(x,_.select(`lastOpenChangeReason`)),oe=ot(b,{enabled:!j&&w.type!==`context-menu`,event:x&&k?`click`:`mousedown`,toggle:!0,ignoreMouse:!1,stickIfOpen:w.type===void 0&&B}),se=Xe(b,{enabled:!j&&I}),ce=on({open:x,enabled:k,mouseDownAction:`open`}),le=Q.useMemo(()=>H(se.reference,oe.reference),[se.reference,oe.reference]),V=_.useState(`triggerProps`,O),{preFocusGuardRef:ue,handlePreFocusGuardFocus:de,handleFocusTargetFocus:U}=an(_,C),W={disabled:j,open:x},G=[P,t,ie,D,C],K=[le,z??N,V,{"aria-haspopup":`menu`,"aria-controls":te,id:v,onMouseDown:e=>{_.select(`open`)||(F.start(200,()=>{_.context.allowMouseUpTriggerRef.current=!0}),pe(e.currentTarget).addEventListener(`mouseup`,ae,{once:!0}))}},k?{role:`menuitem`}:{},ce,h,M],q=J(`button`,e,{enabled:!k,stateAttributesMapping:Ae,state:W,ref:G,props:K});return k?(0,$.jsx)(tn,{tag:`button`,render:n,className:r,style:i,state:W,refs:G,props:K,stateAttributesMapping:Ae}):x?(0,$.jsxs)(Q.Fragment,{children:[(0,$.jsx)(Be,{ref:ue,onFocus:de},`${v}-pre-focus-guard`),(0,$.jsx)(Q.Fragment,{children:q},v),(0,$.jsx)(Be,{ref:_.context.triggerFocusTargetRef,onFocus:U},`${v}-post-focus-guard`)]}):(0,$.jsx)(Q.Fragment,{children:q},v)});function ln(e,t){let n=Z(),[r,i]=Q.useState(!1);return w(()=>{e&&t===`trigger-hover`?(i(!0),n.start(500,()=>{i(!1)})):e||(n.clear(),i(!1))},[e,t,n]),r}function un(){let e=yt(!0),t=Ct(!0),n=Ut(!0);return Q.useMemo(()=>n?{type:`menubar`,context:n}:e&&!t?{type:`context-menu`,context:e}:{type:void 0},[e,t,n])}var dn=Q.forwardRef(function(e,t){let{className:n,render:r,orientation:i=`horizontal`,style:a,...o}=e;return J(`div`,e,{state:{orientation:i},ref:t,props:[{role:`separator`,"aria-orientation":i},o]})}),fn=(0,Q.forwardRef)(function(e,t){let{className:n,...r}=e;return(0,$.jsx)(Nt,{ref:t,className:at(it.popup,`outline-none`,n),...r})}),pn=(0,Q.forwardRef)(function(e,t){let{className:n,...r}=e;return(0,$.jsx)(jt,{ref:t,className:at(it.menuItem,n),...r})});function mn(e){return(0,$.jsxs)(jt,{className:it.menuItem,"data-testid":e.testId,disabled:e.disabled,onClick:e.onClick,children:[(0,$.jsx)(`span`,{className:`text-[var(--chrome-fg-400)]`,children:e.icon}),(0,$.jsx)(`span`,{children:e.children})]})}function hn(){return(0,$.jsx)(dn,{className:`mx-1 my-1 h-px bg-[var(--chrome-divider)]`})}export{vt as C,ht as D,gt as E,ot as O,xt as S,_t as T,At as _,dn as a,St as b,nn as c,Zt as d,Gt as f,jt as g,Nt as h,hn as i,Qt as l,It as m,pn as n,cn as o,Vt as p,fn as r,an as s,mn as t,Xt as u,Tt as v,yt as w,Ct as x,Et as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{t}from"./react-lCSYwAWP.js";import{Ft as n,Gt as r,U as i,W as a,Wt as o,c as s,ht as c,in as l,it as u,jn as d,ot as f,rn as p,rt as m,s as h,tn as g,w as _,yt as v}from"./useScrollLock-CQpr0n6U.js";import{r as y}from"./toast-Czv_DJ-4.js";import{t as b}from"./jsx-runtime-DKdBMi_L.js";import{t as ee}from"./useButton-CLQYGhRJ.js";import{i as x,r as te,t as S}from"./tooltip-CyBz17g8.js";import{C,D as w,O as T,b as E,c as D,f as O,l as k,s as A,w as ne,x as j}from"./menu-B9BAk63v.js";import{i as M,n as N}from"./config-D8b1QyEk.js";import{S as P,a as F,b as re,d as I,o as L,x as ie}from"./editor-BeufBV54.js";import{Jn as R}from"./slides-D686obFO.js";import{W as ae,n as oe,z as se}from"./style-BENGW2ZV.js";import{t as z}from"./createReactComponent-C51FAx3B.js";import{n as ce}from"./useValueChanged-SqLfIDi5.js";import{t as le}from"./IconMinus-BcaDLts8.js";import{t as ue}from"./IconPlus-D4tAoi-A.js";import{a as B,i as de,l as fe,o as pe,r as me,t as he}from"./PopoverPopup-B3Y0VRYc.js";import{t as ge}from"./useBaseUiId-D2RfU0uY.js";import{n as _e}from"./surface-Dke4SWpE.js";import{c as ve}from"./chrome-C2RCq3SI.js";var V=e(t(),1),H=b();function ye(){return typeof window>`u`?null:window.EyeDropper??null}function be(){return ye()!==null}async function xe(){let e=ye();if(!e)return null;try{return(await new e().open()).sRGBHex.toLowerCase()}catch{return null}}var Se=z(`outline`,`color-picker`,`ColorPicker`,[[`path`,{d:`M11 7l6 6`,key:`svg-0`}],[`path`,{d:`M4 16l11.7 -11.7a1 1 0 0 1 1.4 0l2.6 2.6a1 1 0 0 1 0 1.4l-11.7 11.7h-4v-4`,key:`svg-1`}]]),Ce=z(`outline`,`copy`,`Copy`,[[`path`,{d:`M7 9.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667l0 -8.666`,key:`svg-0`}],[`path`,{d:`M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1`,key:`svg-1`}]]),we=z(`outline`,`eye-off`,`EyeOff`,[[`path`,{d:`M10.585 10.587a2 2 0 0 0 2.829 2.828`,key:`svg-0`}],[`path`,{d:`M16.681 16.673a8.717 8.717 0 0 1 -4.681 1.327c-3.6 0 -6.6 -2 -9 -6c1.272 -2.12 2.712 -3.678 4.32 -4.674m2.86 -1.146a9.055 9.055 0 0 1 1.82 -.18c3.6 0 6.6 2 9 6c-.666 1.11 -1.379 2.067 -2.138 2.87`,key:`svg-1`}],[`path`,{d:`M3 3l18 18`,key:`svg-2`}]]),Te=z(`outline`,`eye`,`Eye`,[[`path`,{d:`M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0`,key:`svg-0`}],[`path`,{d:`M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6`,key:`svg-1`}]]),Ee=z(`outline`,`file-code`,`FileCode`,[[`path`,{d:`M14 3v4a1 1 0 0 0 1 1h4`,key:`svg-0`}],[`path`,{d:`M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2`,key:`svg-1`}],[`path`,{d:`M10 13l-1 2l1 2`,key:`svg-2`}],[`path`,{d:`M14 13l1 2l-1 2`,key:`svg-3`}]]),De=z(`outline`,`file-type-pdf`,`FileTypePdf`,[[`path`,{d:`M14 3v4a1 1 0 0 0 1 1h4`,key:`svg-0`}],[`path`,{d:`M5 12v-7a2 2 0 0 1 2 -2h7l5 5v4`,key:`svg-1`}],[`path`,{d:`M5 18h1.5a1.5 1.5 0 0 0 0 -3h-1.5v6`,key:`svg-2`}],[`path`,{d:`M17 18h2`,key:`svg-3`}],[`path`,{d:`M20 15h-3v6`,key:`svg-4`}],[`path`,{d:`M11 15v6h1a2 2 0 0 0 2 -2v-2a2 2 0 0 0 -2 -2h-1`,key:`svg-5`}]]),Oe=z(`outline`,`list-numbers`,`ListNumbers`,[[`path`,{d:`M11 6h9`,key:`svg-0`}],[`path`,{d:`M11 12h9`,key:`svg-1`}],[`path`,{d:`M12 18h8`,key:`svg-2`}],[`path`,{d:`M4 16a2 2 0 1 1 4 0c0 .591 -.5 1 -1 1.5l-3 2.5h4`,key:`svg-3`}],[`path`,{d:`M6 10v-6l-2 2`,key:`svg-4`}]]),ke=z(`outline`,`palette`,`Palette`,[[`path`,{d:`M12 21a9 9 0 0 1 0 -18c4.97 0 9 3.582 9 8c0 1.06 -.474 2.078 -1.318 2.828c-.844 .75 -1.989 1.172 -3.182 1.172h-2.5a2 2 0 0 0 -1 3.75a1.3 1.3 0 0 1 -1 2.25`,key:`svg-0`}],[`path`,{d:`M7.5 10.5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-1`}],[`path`,{d:`M11.5 7.5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-2`}],[`path`,{d:`M15.5 10.5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0`,key:`svg-3`}]]),Ae=z(`outline`,`photo-down`,`PhotoDown`,[[`path`,{d:`M15 8h.01`,key:`svg-0`}],[`path`,{d:`M12.5 21h-6.5a3 3 0 0 1 -3 -3v-12a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v6.5`,key:`svg-1`}],[`path`,{d:`M3 16l5 -5c.928 -.893 2.072 -.893 3 0l4 4`,key:`svg-2`}],[`path`,{d:`M14 14l1 -1c.653 -.629 1.413 -.815 2.13 -.559`,key:`svg-3`}],[`path`,{d:`M19 16v6`,key:`svg-4`}],[`path`,{d:`M22 19l-3 3l-3 -3`,key:`svg-5`}]]),je=z(`outline`,`stack-2`,`Stack2`,[[`path`,{d:`M12 4l-8 4l8 4l8 -4l-8 -4`,key:`svg-0`}],[`path`,{d:`M4 12l8 4l8 -4`,key:`svg-1`}],[`path`,{d:`M4 16l8 4l8 -4`,key:`svg-2`}]]);function Me(e){if(typeof window>`u`||typeof window.matchMedia!=`function`)return()=>{};let t=window.matchMedia(re);return t.addEventListener(`change`,e),()=>t.removeEventListener(`change`,e)}function Ne(){return ie(L(e=>e.theme),(0,V.useSyncExternalStore)(Me,P,()=>!1))}function Pe(e){let{onEmbedFrame:t,onSaveCanvas:n,publicShare:r}=M(),i=N(),a=L(e=>e.setEmbedSignInOpen),{notify:o}=y(),s=i.state.status===`authenticated`;return(0,V.useMemo)(()=>t||(!n||r?null:()=>{if(s){o(`Save this canvas to embed a ${e}`);return}a(!0)}),[t,n,r,s,o,a,e])}function Fe(e){let[t,n]=V.useState({getBoundingClientRect(){return DOMRect.fromRect({width:0,height:0,x:0,y:0})}}),r=V.useRef(null),i=V.useRef(null),a=V.useRef(null),o=V.useRef(null),s=V.useRef(!0),c=V.useRef(null),l=u(),d=V.useMemo(()=>({anchor:t,setAnchor:n,actionsRef:a,backdropRef:r,internalBackdropRef:i,positionerRef:o,allowMouseUpTriggerRef:s,initialCursorPointRef:c,rootId:l}),[t,l]);return(0,H.jsx)(C.Provider,{value:d,children:(0,H.jsx)(E.Provider,{value:void 0,children:(0,H.jsx)(k,{...e})})})}var Ie=500,Le=V.forwardRef(function(e,t){let{render:s,className:u,style:d,...f}=e,{setAnchor:_,actionsRef:v,internalBackdropRef:y,backdropRef:b,positionerRef:ee,allowMouseUpTriggerRef:x,initialCursorPointRef:te,rootId:S}=ne(!1),{store:C}=j(!1),w=C.useState(`open`),T=C.useState(`disabled`),E=V.useRef(null),O=V.useRef(null),k=g(),A=g(),M=V.useRef(!1);function N(e,t,n){let r=n.type.startsWith(`touch`);te.current={x:e,y:t},_({getBoundingClientRect(){return DOMRect.fromRect({width:r?10:0,height:r?10:0,x:e,y:t})}}),M.current=!1,v.current?.setOpen(!0,i(m,n)),A.start(Ie,()=>{M.current=!0})}function P(e){T||(x.current=!0,n(e),N(e.clientX,e.clientY,e.nativeEvent),p(l(E.current),`mouseup`,e=>{if(x.current=!1,!M.current)return;A.clear(),M.current=!1;let t=r(e);o(ee.current,t)||S&&t&&D(t)===S||v.current?.setOpen(!1,i(a,e))},{once:!0}))}function F(e){if(!T&&(x.current=!1,e.touches.length===1)){e.stopPropagation();let t=e.touches[0];O.current={x:t.clientX,y:t.clientY},k.start(Ie,()=>{O.current&&N(O.current.x,O.current.y,e.nativeEvent)})}}function re(e){if(k.isStarted()&&O.current&&e.touches.length===1){let t=e.touches[0],n=Math.abs(t.clientX-O.current.x),r=Math.abs(t.clientY-O.current.y);(n>10||r>10)&&k.clear()}}function I(){k.clear(),O.current=null}return V.useEffect(()=>{function e(e){if(T)return;let t=r(e);(o(E.current,t)||o(y.current,t)||o(b.current,t))&&e.preventDefault()}return p(l(E.current),`contextmenu`,e)},[b,T,y]),c(`div`,e,{state:{open:w},ref:[E,t],props:[{onContextMenu:P,onTouchStart:F,onTouchMove:re,onTouchEnd:I,onTouchCancel:I,style:{WebkitTouchCallout:`none`}},f],stateAttributesMapping:h})}),U=V.forwardRef(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,handle:l,payload:u,openOnHover:p=!1,delay:m=300,closeDelay:g=0,id:y,...b}=e,S=pe(!0),C=l?.store??S?.store;if(!C)throw Error(d(74));let w=ge(y),E=C.useState(`isTriggerActive`,w),D=C.useState(`floatingRootContext`),k=C.useState(`isOpenedByTrigger`,w),ne=C.useState(`triggerPopupId`,w),j=V.useRef(null),{registerTrigger:M,isMountedByThisTrigger:N}=_(w,j,C,{payload:u,disabled:a,openOnHover:p,closeDelay:g}),P=C.useState(`openChangeReason`),F=C.useState(`stickIfOpen`),re=C.useState(`openMethod`),I=C.useState(`focusManagerModal`),L=x(D,{enabled:!a&&D!=null&&p&&(re!==`touch`||P!==`trigger-press`),mouseOnly:!0,move:!1,handleClose:te(),restMs:m,delay:{close:g},triggerElementRef:j,isActiveTrigger:E,isClosing:()=>C.select(`transitionStatus`)===`ending`}),ie=T(D,{enabled:D!=null,stickIfOpen:F}),R=O(()=>C.select(`open`),e=>{C.set(`openMethod`,e)}),ae=C.useState(`triggerProps`,N),{getButtonProps:oe,buttonRef:se}=ee({disabled:a,native:o}),z={open(e){return e&&P===`trigger-press`?h.open(e):s.open(e)}},{preFocusGuardRef:ce,handlePreFocusGuardFocus:le,handleFocusTargetFocus:ue}=A(C,j),B=c(`button`,e,{state:{disabled:a,open:k},ref:[se,t,M,j],props:[ie.reference,L,ae,R,{[f]:``,id:w,"aria-haspopup":`dialog`,"aria-expanded":k,"aria-controls":ne},b,oe],stateAttributesMapping:z});return N&&!I?(0,H.jsxs)(V.Fragment,{children:[(0,H.jsx)(v,{ref:ce,onFocus:le}),(0,H.jsx)(V.Fragment,{children:B},w),(0,H.jsx)(v,{ref:C.context.triggerFocusTargetRef,onFocus:ue})]}):(0,H.jsx)(V.Fragment,{children:B},w)});function Re(e){let{label:t,value:n,testId:r,onCommit:i}=e,a=Math.round(n*10)/10,[o,s]=(0,V.useState)(String(a)),c=(0,V.useRef)(!1),l=(0,V.useRef)(!1);(0,V.useEffect)(()=>{c.current||s(String(a))},[a]);function u(){let e=Number(o);Number.isFinite(e)&&e!==a&&i(e),s(String(a))}return(0,H.jsxs)(`label`,{className:`flex items-center gap-1.5 rounded-lg bg-[var(--chrome-rest)] px-2 py-1 ring-1 ring-[var(--chrome-ring)]`,children:[(0,H.jsx)(`span`,{className:`w-3 shrink-0 text-center text-[11px] text-[var(--chrome-fg-400)]`,children:t}),(0,H.jsx)(`input`,{type:`number`,"data-testid":r,value:o,onFocus:e=>{c.current=!0,e.target.select()},onBlur:()=>{if(c.current=!1,l.current){l.current=!1,s(String(a));return}u()},onChange:e=>s(e.target.value),onKeyDown:e=>{e.stopPropagation(),e.key===`Enter`&&e.currentTarget.blur(),e.key===`Escape`&&(l.current=!0,e.currentTarget.blur())},className:`w-16 bg-transparent text-[12px] tabular-nums text-[var(--chrome-fg-900)] outline-none [appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none`})]})}function ze(e,t){let n=10**t;return Math.round(e*n)/n}function Be(e){let{value:t,onChange:n,min:r,max:i,label:a,onMouseDown:o,fullWidth:s,testId:c}=e,{onNudgeStart:l,onNudgeEnd:u}=e,d=e.step??1,f=e.precision??0,[p,m]=(0,V.useState)(null),h=(0,V.useRef)(!1),g=(0,V.useRef)(t);(0,V.useEffect)(()=>{g.current=t},[t]);function _(e){let t=ae(ze(e,f),r,i);m(null),t!==g.current&&(g.current=t,n(t))}function v(e){if(p===null)return;let t=Number(e);if(e.trim()===``||!Number.isFinite(t)){m(null);return}_(t)}function y(){h.current&&(h.current=!1,u?.())}function b(e){h.current||(h.current=!0,l?.()),_(g.current+e)}return(0,H.jsxs)(`div`,{className:`flex items-center justify-between rounded-lg bg-[var(--chrome-rest)] ${s?`w-full`:``}`,children:[(0,H.jsx)(`button`,{type:`button`,"aria-label":`Decrease ${a.toLowerCase()}`,"data-testid":c?`${c}-down`:void 0,"data-keep-open":!0,onMouseDown:o,onClick:()=>{_(g.current-d)},className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-l-lg text-[var(--chrome-fg-900)] transition-colors hover:bg-[var(--chrome-hover)]`,children:(0,H.jsx)(le,{size:14,stroke:2})}),(0,H.jsx)(`input`,{type:`text`,inputMode:`decimal`,"aria-label":a,"data-testid":c?`${c}-value`:void 0,onMouseDown:o,value:p??String(ze(t,f)),onChange:e=>m(e.target.value),onBlur:e=>{y(),v(e.target.value)},onKeyUp:e=>{(e.key===`ArrowUp`||e.key===`ArrowDown`)&&y()},onKeyDown:e=>{if(e.key===`Enter`){v(e.currentTarget.value),e.currentTarget.blur();return}if(e.key===`ArrowUp`){e.preventDefault(),b(d);return}e.key===`ArrowDown`&&(e.preventDefault(),b(-d))},className:`bg-transparent text-center text-[13px] tabular-nums text-[var(--chrome-fg-800)] outline-none ${s?`min-w-0 flex-1`:`w-10`}`}),(0,H.jsx)(`button`,{type:`button`,"aria-label":`Increase ${a.toLowerCase()}`,"data-testid":c?`${c}-up`:void 0,"data-keep-open":!0,onMouseDown:o,onClick:()=>{_(g.current+d)},className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-r-lg text-[var(--chrome-fg-900)] transition-colors hover:bg-[var(--chrome-hover)]`,children:(0,H.jsx)(ue,{size:14,stroke:2})})]})}function Ve(e){let{value:t,onChange:n,onMouseDown:r,onNudgeStart:i,onNudgeEnd:a,testId:o}=e;return(0,H.jsx)(Be,{value:t,onChange:n,min:8,max:240,label:`Font size`,onMouseDown:r,onNudgeStart:i,onNudgeEnd:a,testId:o})}function He(e){return{onPointerDown:e.beginTransaction,onPointerUp:e.endTransaction,onBlur:e.endTransaction}}function W(){return(W=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function G(e,t){if(e==null)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t.indexOf(n=a[r])>=0||(i[n]=e[n]);return i}function K(e){var t=(0,V.useRef)(e),n=(0,V.useRef)(function(e){t.current&&t.current(e)});return t.current=e,n.current}var q=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=1),e>n?n:e<t?t:e},J=function(e){return`touches`in e},Y=function(e){return e&&e.ownerDocument.defaultView||self},Ue=function(e,t,n){var r=e.getBoundingClientRect(),i=J(t)?function(e,t){for(var n=0;n<e.length;n++)if(e[n].identifier===t)return e[n];return e[0]}(t.touches,n):t;return{left:q((i.pageX-(r.left+Y(e).pageXOffset))/r.width),top:q((i.pageY-(r.top+Y(e).pageYOffset))/r.height)}},We=function(e){!J(e)&&e.preventDefault()},Ge=V.memo(function(e){var t=e.onMove,n=e.onKey,r=e.onEnd,i=G(e,[`onMove`,`onKey`,`onEnd`]),a=(0,V.useRef)(null),o=K(t),s=K(n),c=K(r),l=(0,V.useRef)(null),u=(0,V.useRef)(!1),d=(0,V.useMemo)(function(){var e=function(e){We(e),(J(e)?e.touches.length>0:e.buttons>0)&&a.current?o(Ue(a.current,e,l.current)):(n(!1),c())},t=function(){n(!1),c()};function n(n){var r=u.current,i=Y(a.current),o=n?i.addEventListener:i.removeEventListener;o(r?`touchmove`:`mousemove`,e),o(r?`touchend`:`mouseup`,t)}return[function(e){var t=e.nativeEvent,r=a.current;if(r&&(We(t),!function(e,t){return t&&!J(e)}(t,u.current)&&r)){if(J(t)){u.current=!0;var i=t.changedTouches||[];i.length&&(l.current=i[0].identifier)}r.focus(),o(Ue(r,t,l.current)),n(!0)}},function(e){var t=e.which||e.keyCode;t<37||t>40||(e.preventDefault(),s({left:t===39?.05:t===37?-.05:0,top:t===40?.05:t===38?-.05:0}))},function(e){var t=e.which||e.keyCode;t>=37&&t<=40&&c()},n]},[s,o,c]),f=d[0],p=d[1],m=d[2],h=d[3];return(0,V.useEffect)(function(){return h},[h]),V.createElement(`div`,W({},i,{onTouchStart:f,onMouseDown:f,className:`react-colorful__interactive`,ref:a,onKeyDown:p,onKeyUp:m,tabIndex:0,role:`slider`}))}),X=function(e){return e.filter(Boolean).join(` `)},Ke=function(e){var t=e.color,n=e.left,r=e.top,i=r===void 0?.5:r,a=X([`react-colorful__pointer`,e.className]);return V.createElement(`div`,{className:a,style:{top:100*i+`%`,left:100*n+`%`}},V.createElement(`div`,{className:`react-colorful__pointer-fill`,style:{backgroundColor:t}}))},Z=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=10**t),Math.round(n*e)/n};360/(2*Math.PI);var qe=function(e){return et(Je(e))},Je=function(e){return e[0]===`#`&&(e=e.substring(1)),e.length<6?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:e.length===4?Z(parseInt(e[3]+e[3],16)/255,2):1}:{r:parseInt(e.substring(0,2),16),g:parseInt(e.substring(2,4),16),b:parseInt(e.substring(4,6),16),a:e.length===8?Z(parseInt(e.substring(6,8),16)/255,2):1}},Ye=function(e){return $e(Qe(e))},Xe=function(e){var t=e.s,n=e.v,r=e.a,i=(200-t)*n/100;return{h:Z(e.h),s:Z(i>0&&i<200?t*n/100/(i<=100?i:200-i)*100:0),l:Z(i/2),a:Z(r,2)}},Ze=function(e){var t=Xe(e);return`hsl(`+t.h+`, `+t.s+`%, `+t.l+`%)`},Qe=function(e){var t=e.h,n=e.s,r=e.v,i=e.a;t=t/360*6,n/=100,r/=100;var a=Math.floor(t),o=r*(1-n),s=r*(1-(t-a)*n),c=r*(1-(1-t+a)*n),l=a%6;return{r:Z(255*[r,s,o,o,c,r][l]),g:Z(255*[c,r,r,s,o,o][l]),b:Z(255*[o,o,c,r,r,s][l]),a:Z(i,2)}},Q=function(e){var t=e.toString(16);return t.length<2?`0`+t:t},$e=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,a=i<1?Q(Z(255*i)):``;return`#`+Q(t)+Q(n)+Q(r)+a},et=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,a=Math.max(t,n,r),o=a-Math.min(t,n,r),s=o?a===t?(n-r)/o:a===n?2+(r-t)/o:4+(t-n)/o:0;return{h:Z(60*(s<0?s+6:s)),s:Z(a?o/a*100:0),v:Z(a/255*100),a:i}},tt=V.memo(function(e){var t=e.hue,n=e.onChange,r=e.onChangeEnd,i=X([`react-colorful__hue`,e.className]);return V.createElement(`div`,{className:i},V.createElement(Ge,{onMove:function(e){n({h:360*e.left})},onKey:function(e){n({h:q(t+360*e.left,0,360)})},onEnd:r,"aria-label":`Hue`,"aria-valuenow":Z(t),"aria-valuemax":`360`,"aria-valuemin":`0`},V.createElement(Ke,{className:`react-colorful__hue-pointer`,left:t/360,color:Ze({h:t,s:100,v:100,a:1})})))}),nt=V.memo(function(e){var t=e.hsva,n=e.onChange,r=e.onChangeEnd,i={backgroundColor:Ze({h:t.h,s:100,v:100,a:1})};return V.createElement(`div`,{className:`react-colorful__saturation`,style:i},V.createElement(Ge,{onMove:function(e){n({s:100*e.left,v:100-100*e.top})},onKey:function(e){n({s:q(t.s+100*e.left,0,100),v:q(t.v-100*e.top,0,100)})},onEnd:r,"aria-label":`Color`,"aria-valuetext":`Saturation `+Z(t.s)+`%, Brightness `+Z(t.v)+`%`},V.createElement(Ke,{className:`react-colorful__saturation-pointer`,top:1-t.v/100,left:t.s/100,color:Ze(t)})))}),rt=function(e,t){if(e===t)return!0;for(var n in e)if(e[n]!==t[n])return!1;return!0},it=function(e,t){return e.toLowerCase()===t.toLowerCase()||rt(Je(e),Je(t))};function at(e,t,n,r){var i=K(n),a=K(r),o=(0,V.useState)(function(){return e.toHsva(t)}),s=o[0],c=o[1],l=(0,V.useRef)({color:t,hsva:s}),u=(0,V.useRef)(!1);return(0,V.useEffect)(function(){if(!e.equal(t,l.current.color)){var n=e.toHsva(t);l.current={hsva:n,color:t},c(n),u.current=!1}},[t,e]),(0,V.useEffect)(function(){var t;rt(s,l.current.hsva)||e.equal(t=e.fromHsva(s),l.current.color)||(l.current={hsva:s,color:t},i(t),u.current=!0)},[s,e,i]),[s,(0,V.useCallback)(function(e){c(function(t){return Object.assign({},t,e)})},[]),(0,V.useCallback)(function(){u.current&&(u.current=!1,a(l.current.color))},[a])]}var ot,st=typeof window<`u`?V.useLayoutEffect:V.useEffect,ct=function(){return ot||(typeof __webpack_nonce__<`u`?__webpack_nonce__:void 0)},lt=new Map,ut=function(e){st(function(){var t=e.current?e.current.ownerDocument:document;if(t!==void 0&&!lt.has(t)){var n=t.createElement(`style`);n.innerHTML=`.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill-opacity=".05"><path d="M8 0h8v8H8zM0 8h8v8H0z"/></svg>')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}`,lt.set(t,n);var r=ct();r&&n.setAttribute(`nonce`,r),t.head.appendChild(n)}},[])},dt=function(e){var t=e.className,n=e.colorModel,r=e.color,i=r===void 0?n.defaultColor:r,a=e.onChange,o=e.onChangeEnd,s=G(e,[`className`,`colorModel`,`color`,`onChange`,`onChangeEnd`]),c=(0,V.useRef)(null);ut(c);var l=at(n,i,a,o),u=l[0],d=l[1],f=l[2],p=X([`react-colorful`,t]);return V.createElement(`div`,W({},s,{ref:c,className:p}),V.createElement(nt,{hsva:u,onChange:d,onChangeEnd:f}),V.createElement(tt,{hue:u.h,onChange:d,onChangeEnd:f,className:`react-colorful__last-control`}))},ft={defaultColor:`000`,toHsva:qe,fromHsva:function(e){return Ye({h:e.h,s:e.s,v:e.v,a:1})},equal:it},pt=function(e){return V.createElement(dt,W({},e,{colorModel:ft}))},mt=/^#?([0-9A-F]{3,8})$/i,ht=function(e){var t=e.color,n=t===void 0?``:t,r=e.onChange,i=e.onBlur,a=e.escape,o=e.validate,s=e.format,c=e.process,l=G(e,[`color`,`onChange`,`onBlur`,`escape`,`validate`,`format`,`process`]),u=(0,V.useState)(function(){return a(n)}),d=u[0],f=u[1],p=K(r),m=K(i),h=(0,V.useCallback)(function(e){var t=a(e.target.value);f(t),o(t)&&p(c?c(t):t)},[a,c,o,p]),g=(0,V.useCallback)(function(e){o(e.target.value)||f(a(n)),m(e)},[n,a,o,m]);return(0,V.useEffect)(function(){f(a(n))},[n,a]),V.createElement(`input`,W({},l,{value:s?s(d):d,spellCheck:`false`,onChange:h,onBlur:g}))},gt=function(e){return`#`+e},_t=function(e){var t=e.prefixed,n=e.alpha,r=G(e,[`prefixed`,`alpha`]),i=(0,V.useCallback)(function(e){return e.replace(/([^0-9A-F]+)/gi,``).substring(0,n?8:6)},[n]),a=(0,V.useCallback)(function(e){return function(e,t){var n=mt.exec(e),r=n?n[1].length:0;return r===3||r===6||!!t&&r===4||!!t&&r===8}(e,n)},[n]);return V.createElement(ht,W({},r,{escape:i,format:t?gt:void 0,process:gt,validate:a}))};function vt(e){if(!(e instanceof HTMLElement))return!1;let t=e.tagName;return t===`INPUT`||t===`TEXTAREA`||t===`SELECT`||e.isContentEditable}function $(){let{textEditGuard:e}=F(),t=L(e=>I(e.editSession)),n=(0,V.useRef)(null),r=(0,V.useCallback)(()=>{if(!t)return;let r=document.activeElement;if(r instanceof HTMLElement&&r.isContentEditable){let e=window.getSelection(),t=e&&e.rangeCount>0&&r.contains(e.anchorNode)?e.getRangeAt(0).cloneRange():null;n.current={node:r,range:t}}e.guard()},[t,e]),i=(0,V.useCallback)(e=>{!t||vt(e.target)||e.preventDefault()},[t]),a=(0,V.useCallback)(()=>{let r=n.current;if(!(!t||!r||!r.node.isContentEditable)&&document.activeElement!==r.node&&(e.guard(),r.node.focus(),r.range)){let e=window.getSelection();e?.removeAllRanges(),e?.addRange(r.range.cloneRange())}},[t,e]);return{active:t,onPointerDown:r,onMouseDown:i,focusProps:t?{initialFocus:!1,finalFocus:!1}:{},restore:a}}function yt(e){return`repeating-conic-gradient(#e5e7eb 0% 25%, white 0% 50%) 50% / ${e}px ${e}px`}var bt=yt(7);function xt(e){let{background:t,active:n,onClick:r,border:i,opacity:a,testId:o,ariaLabel:s,onMouseDown:c}=e;return(0,H.jsx)(`button`,{type:`button`,"data-testid":o,"aria-label":s,"aria-pressed":s?n:void 0,onMouseDown:c,onClick:r,className:`h-7 w-7 cursor-pointer rounded-lg transition-transform ${n?`ring-2 ring-[var(--chrome-fg-900)] ring-offset-2 ring-offset-[var(--chrome-popup)]`:`hover:scale-110`}`,style:{background:t,opacity:a,border:i??`1px solid var(--chrome-swatch-edge)`}})}function St(e){let{color:t,active:n,onClick:r,onMouseDown:i}=e;return(0,H.jsx)(xt,{background:t===`transparent`?bt:R(t),active:n,onClick:r,onMouseDown:i,testId:`color-${t}`})}var Ct=`linear-gradient(to top right, transparent calc(50% - 1px), #e03131 calc(50% - 1px), #e03131 calc(50% + 1px), transparent calc(50% + 1px)), #ffffff`;function wt(e){let{active:t,onClick:n,testId:r,onMouseDown:i}=e;return(0,H.jsx)(xt,{background:Ct,active:t,onClick:n,onMouseDown:i,testId:r,ariaLabel:`None`})}function Tt(e,t){return(0,H.jsx)(`span`,{className:`flex h-5 w-5 items-center justify-center rounded-full`,style:{background:e===`transparent`?yt(6):R(e),border:`1px solid var(--chrome-swatch-edge)`,boxShadow:`inset 0 0 0 1px rgba(0,0,0,0.04)`},children:t})}function Et(e){let{hue:t,fillStyle:n,active:r,onClick:i,testId:a}=e,o=se(t,n),s=t===`transparent`,c=o.fill;(s||o.fill===`none`)&&(c=bt);let l=n===`outline`?`1.5px solid ${o.stroke}`:`1px solid var(--chrome-swatch-edge)`;return(0,H.jsx)(xt,{background:c,active:r,onClick:i,border:l,opacity:o.fillOpacity,testId:a})}function Dt(e){let{onPick:t}=e;return be()?(0,H.jsx)(S,{label:`Pick colour from screen`,children:(0,H.jsx)(`button`,{type:`button`,"aria-label":`Pick colour from screen`,onClick:()=>{xe().then(e=>{e&&t(e)}).catch(()=>void 0)},className:`shrink-0 cursor-pointer text-[var(--chrome-fg-500)] transition-colors hover:text-[var(--chrome-fg-900)]`,children:(0,H.jsx)(Se,{size:16,stroke:1.75})})}):null}function Ot(e){e.currentTarget.setPointerCapture(e.pointerId)}function kt(e){let{active:t,picked:n,onChange:r,baseTestId:i,onMouseDown:a,onOpenChange:o}=e,s=F(),c=$();function l(e){o?.(e),e||c.restore()}return(0,H.jsxs)(B,{onOpenChange:l,children:[(0,H.jsx)(S,{label:`Custom color`,children:(0,H.jsx)(U,{"aria-label":`Custom color`,"data-testid":`${i}-custom`,onPointerDown:c.onPointerDown,onMouseDown:c.onMouseDown,className:`flex h-7 w-7 cursor-pointer items-center justify-center rounded-lg border border-[var(--chrome-ring)] text-[var(--chrome-fg-900)] transition-transform ${t?`ring-2 ring-[var(--chrome-fg-900)] ring-offset-2 ring-offset-[var(--chrome-popup)]`:`hover:scale-110 data-[popup-open]:scale-110`}`,children:(0,H.jsx)(ke,{size:16,stroke:1.75})})}),(0,H.jsx)(de,{children:(0,H.jsx)(me,{side:`right`,align:`center`,sideOffset:14,collisionPadding:8,className:`outline-none`,children:(0,H.jsxs)(he,{"data-overlay":!0,"data-panel-popup":!0,"data-editor-runtime-id":s.id,"data-testid":`${i}-popover`,"data-caret-safe":!0,...c.focusProps,onPointerDown:c.onPointerDown,onMouseDown:e=>{a?.(e),c.onMouseDown(e)},className:`w-52 space-y-2 p-2.5 ${_e.popup}`,children:[(0,H.jsx)(`div`,{onPointerDown:Ot,children:(0,H.jsx)(pt,{color:n,onChange:r,style:{width:`100%`,height:150}})}),(0,H.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-[var(--chrome-ring)] px-2 py-1.5`,children:[(0,H.jsx)(`span`,{className:`h-5 w-5 shrink-0 rounded border border-[var(--chrome-ring)]`,style:{background:n}}),(0,H.jsx)(_t,{prefixed:!0,"data-testid":`${i}-hex-input`,color:n,onChange:r,className:`w-full bg-transparent text-sm uppercase tracking-wide text-[var(--chrome-fg-700)] outline-none`}),(0,H.jsx)(Dt,{onPick:r})]})]})})})]})}function At(e){let{title:t,value:n,onChange:r,testId:i,customFallback:a=`#1e1e1e`,colors:o=oe,header:s,noneTestId:c,onMouseDown:l,onOpenChange:u}=e,d=n!==`transparent`&&n!==`auto`&&n!==`none`&&!o.includes(n),f=d?n:a;return(0,H.jsxs)(`div`,{className:`space-y-2`,children:[t&&(0,H.jsx)(`div`,{className:`px-1 text-[11px] text-[var(--chrome-fg-500)]`,children:t}),s,(0,H.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[c&&(0,H.jsx)(wt,{active:n===`none`,onClick:()=>r(`none`),testId:c,onMouseDown:l}),o.map(e=>(0,H.jsx)(St,{color:e,active:n===e,onClick:()=>r(e),onMouseDown:l},e)),(0,H.jsx)(kt,{active:d,picked:f,onChange:r,baseTestId:i,onMouseDown:l,onOpenChange:u})]})]})}function jt(e){let{value:t,autoColor:n,noneOption:r,colors:i,customFallback:a,testId:o,ariaLabel:s,onPick:c}=e,l=F(),u=$(),d=t===`none`?`None`:t===`auto`?`Auto`:`Custom`,f=t===`none`?Ct:t===`auto`?n:R(t);function p(){let e=t===`auto`;return(0,H.jsxs)(`button`,{type:`button`,"data-testid":`${o}-auto`,"aria-pressed":e,onClick:()=>c(`auto`),className:`flex w-full items-center rounded-md px-2 py-1.5 text-[12px] transition-colors ${ve(e)}`,children:[(0,H.jsx)(`span`,{className:`flex-1 text-left`,children:`Auto`}),e&&(0,H.jsx)(ce,{size:13,stroke:2})]})}return(0,H.jsxs)(B,{onOpenChange:e=>{e||u.restore()},children:[(0,H.jsxs)(U,{"aria-label":s,"data-testid":`${o}-value`,onPointerDown:u.onPointerDown,onMouseDown:u.onMouseDown,className:`flex w-24 cursor-pointer items-center gap-1.5 rounded-lg border border-[var(--chrome-ring)] px-2 py-1 text-[12px] text-[var(--chrome-fg-900)] transition-colors hover:bg-[var(--chrome-hover)] data-[popup-open]:bg-[var(--chrome-hover)]`,children:[(0,H.jsx)(`span`,{className:`h-3 w-3 shrink-0 rounded-full`,style:{background:f,border:`1px solid rgba(0,0,0,.18)`}}),(0,H.jsx)(`span`,{className:`flex-1 text-left`,children:d}),(0,H.jsx)(w,{size:11,stroke:2,className:`shrink-0 text-[var(--chrome-fg-500)]`})]}),(0,H.jsx)(de,{children:(0,H.jsx)(me,{side:`right`,align:`center`,sideOffset:14,collisionPadding:8,className:`outline-none`,children:(0,H.jsxs)(he,{"data-overlay":!0,"data-panel-popup":!0,"data-editor-runtime-id":l.id,"data-testid":`${o}-menu`,"data-caret-safe":!0,...u.focusProps,onPointerDown:u.onPointerDown,onMouseDown:u.onMouseDown,className:`w-[228px] space-y-2 p-2.5 ${_e.popup}`,children:[p(),(0,H.jsx)(At,{value:t,onChange:c,testId:`${o}-color`,noneTestId:r?`${o}-none`:void 0,customFallback:a,colors:i})]})})})]})}var Mt=`flex h-8 w-8 cursor-pointer items-center justify-center rounded-lg bg-[var(--chrome-rest)] text-[var(--chrome-fg-900)] transition-colors hover:bg-[var(--chrome-hover)]`;function Nt(e){let{active:t,onClick:n,children:r,testId:i,ariaLabel:a}=e;return(0,H.jsx)(`button`,{type:`button`,"data-testid":i,"aria-label":a,"aria-pressed":t,onClick:n,className:`flex h-8 min-w-8 flex-1 items-center justify-center rounded-lg px-2 transition-colors ${ve(t)}`,children:r})}function Pt(){return(0,H.jsx)(`span`,{className:`mx-0.5 h-6 w-px bg-[var(--chrome-divider)]`})}function Ft(e){let{type:t,onAlign:n,Icon:r}=e;return(0,H.jsx)(`button`,{type:`button`,"aria-label":t,onClick:()=>n(t),className:Mt,children:(0,H.jsx)(r,{size:16,stroke:1.75})})}function It(e){let{axis:t,onDistribute:n,Icon:r}=e,i=t===`horizontal`?`Distribute horizontally`:`Distribute vertically`;return(0,H.jsx)(S,{label:i,children:(0,H.jsx)(`button`,{type:`button`,"aria-label":i,onClick:()=>n(t),className:`flex h-8 flex-1 cursor-pointer items-center justify-center rounded-lg bg-[var(--chrome-rest)] text-[var(--chrome-fg-600)] transition-colors hover:bg-[var(--chrome-hover)] hover:text-[var(--chrome-fg-800)]`,children:(0,H.jsx)(r,{size:16,stroke:1.75})})})}function Lt(e){let{action:t,label:n,onReorder:r,Icon:i}=e;return(0,H.jsx)(S,{label:n,children:(0,H.jsx)(`button`,{type:`button`,"aria-label":n,onClick:()=>r(t),className:Mt,children:(0,H.jsx)(i,{size:16,stroke:1.75})})})}function Rt(e){let{trigger:t,label:n,children:r,caret:i,closeOnPick:a,testId:o}=e,s=F(),[c,l]=(0,V.useState)(!1),u=$();function d(e){l(e),e||u.restore()}function f(e){if(!(e.target instanceof Element))return;let t=e.target.closest(`button`);t&&(a||u.active&&!t.hasAttribute(`aria-haspopup`)&&!t.hasAttribute(`data-keep-open`))&&d(!1)}return(0,H.jsxs)(B,{open:c,onOpenChange:d,children:[(0,H.jsx)(S,{label:n,children:(0,H.jsxs)(U,{"aria-label":n,"data-testid":o,onPointerDown:u.onPointerDown,onMouseDown:u.onMouseDown,className:`flex h-8 cursor-pointer items-center justify-center gap-1 rounded-lg px-2 text-[var(--chrome-fg-900)] transition-colors hover:bg-[var(--chrome-hover)] data-[popup-open]:bg-[var(--chrome-hover)]`,children:[t,i&&(0,H.jsx)(fe,{})]})}),(0,H.jsx)(de,{children:(0,H.jsx)(me,{side:`top`,align:`center`,sideOffset:8,collisionPadding:8,children:(0,H.jsx)(he,{"data-overlay":!0,"data-panel-popup":!0,"data-editor-runtime-id":s.id,"data-caret-safe":!0,...u.focusProps,className:`p-2.5 ${_e.popup}`,onPointerDown:u.onPointerDown,onMouseDown:u.onMouseDown,onClick:f,children:r})})})]})}export{Ce as A,Ae as C,Ee as D,De as E,Te as O,je as S,Oe as T,U as _,Lt as a,Pe as b,kt as c,Tt as d,$ as f,He as g,Re as h,Pt as i,xe as j,we as k,jt as l,Be as m,Ft as n,Nt as o,Ve as p,It as r,At as s,Rt as t,Et as u,Le as v,ke as w,Ne as x,Fe as y};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./jsx-runtime-
|
|
1
|
+
import{t as e}from"./jsx-runtime-DKdBMi_L.js";import{i as t,n,r,t as i}from"./DialogRoot-DUeVfNhS.js";import{r as a}from"./chrome-layout-BzPU9far.js";var o=e();function s(e){let{width:s,testId:c,ariaLabel:l,onDismiss:u,children:d}=e,f=a(),p={onPointerDown:e=>e.stopPropagation(),onDoubleClick:e=>e.stopPropagation(),onContextMenu:e=>{e.preventDefault(),e.stopPropagation()}};return f===`sheet`?(0,o.jsx)(i,{open:!0,onOpenChange:e=>!e&&u(),children:(0,o.jsxs)(n,{children:[(0,o.jsx)(t,{className:`fixed inset-0 bg-gray-900/15`}),(0,o.jsxs)(r,{"data-overlay":!0,"data-testid":c,"aria-label":l,className:`fixed inset-x-0 bottom-0 flex h-[85dvh] cursor-auto flex-col rounded-t-2xl bg-[var(--chrome-popup)] pb-[env(safe-area-inset-bottom)] shadow-[0_-8px_40px_rgba(0,0,0,0.18)] outline-none ring-1 ring-[var(--chrome-ring)]`,...p,children:[(0,o.jsx)(`div`,{"aria-hidden":!0,className:`mx-auto mt-2 h-1 w-9 shrink-0 rounded-full bg-[var(--chrome-divider)]`}),d]})]})}):(0,o.jsx)(`div`,{className:`absolute bottom-0 right-0 top-[var(--koboyo-host-inset-top)] flex cursor-auto flex-col border-l border-[var(--chrome-ring)] bg-[var(--chrome-popup)]`,style:{width:s},"data-overlay":!0,"data-testid":c,...p,children:d})}export{s as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{D as e,E as t}from"./reflow-DaYiVkwp.js";import{an as n,fn as r,i,l as a,m as o,vn as s,y as c}from"./slides-D686obFO.js";function l(e){let t=d(e);return`${e.groupId??t.shape.id}@${t.index}`}function u(e){return e.groupId??e.shapes[0].id}function d(e){return e.items[0]}function f(e){return e.withPrevious?`with`:d(e).animation.afterPrevious?`after`:`click`}var p={enter:`rise`,emphasis:`pulse`,exit:`fade`},m={enter:`fade`,emphasis:`pulse`,exit:`fade`};function h(e,t,n=`enter`){let i=r(t,n)?t:p[n];return s(e,i)?i:m[n]}function g(e,t=`enter`){return t===`enter`?s(e,`draw`)?`draw`:p.enter:p[t]}function _(e){return e.animations??[]}function v(e){return _(e).length>0}function y(e,t){let n=a(e,t),r=[];for(let e of n)_(e).forEach((t,n)=>{r.push({shape:e,animation:t,index:n,start:0,row:``})});let i=[...r].sort((e,t)=>e.animation.step-t.animation.step),o=[],s=null;for(let e of i)(s===null||e.animation.step!==s)&&(o.push({index:o.length,items:[],afterPrevious:e.animation.afterPrevious===!0}),s=e.animation.step),o[o.length-1].items.push(e);let c=w(n);for(let e of o){let t=0;for(let n of E(e.items,c)){t+=Math.max(0,d(n).animation.delay??0);let e=l(n);for(let r of n.items)r.start=t,r.row=e}}return o}function b(e){let t=new Map,n=e.filter(v);if(n.length===0)return t;let r=c(e);for(let a of i(e)){let e=new Map;for(let t of n)if(o(a,t,r))for(let n of _(t))e.has(n.step)||e.set(n.step,n.afterPrevious===!0);if(e.size===0)continue;let i=[...e.entries()].sort((e,t)=>e[0]-t[0]).filter(([,e],t)=>t===0||!e);t.set(a.id,i.length)}return t}function x(e,t){return a(e,t).filter(e=>!v(e))}var S=new Set;function C(e,t){return w(a(e,t))}function w(e){let t=new Map;for(let n of e){if(!n.groupId)continue;let e=t.get(n.groupId);if(e){e.push(n);continue}t.set(n.groupId,[n])}let n=new Set;for(let[e,r]of t)r.length<2||new Set(r.map(T)).size===1&&n.add(e);return n}function T(e){return _(e).map(e=>`${e.kind}:${e.step}`).join(`,`)}function E(e,t){let n=[],r=new Map;for(let i of e){let e=i.shape.groupId;if(!e||!t.has(e)){n.push({items:[i]});continue}let a=`${e}@${i.index}`,o=r.get(a);if(o){o.items.push(i);continue}let s={items:[i],groupId:e};r.set(a,s),n.push(s)}return n}function D(e,t){let n=[],r=new Map;for(let i of e){let e=i.groupId;if(!e||!t.has(e)){n.push({shapes:[i]});continue}let a=r.get(e);if(a){a.shapes.push(i);continue}let o={shapes:[i],groupId:e};r.set(e,o),n.push(o)}return n}function O(e,t=S){return e.flatMap(e=>E(e.items,t).map((e,t)=>({...e,withPrevious:t>0})))}function k(e,t,n=S){return I(D(a(e,t),n),t)}function A(e,t,n=S){return I(D(x(e,t),n),t)}function j(e){let t=0;return e.map((e,n)=>((n===0||!e.afterPrevious)&&(t+=1),t))}function M(e,t){let n=new Map,r=new Map;for(let t of e)for(let e of t.items){let i=e.shape.id;if(e.animation.kind===`enter`){n.set(i,Math.min(n.get(i)??t.index,t.index));continue}e.animation.kind===`exit`&&r.set(i,Math.max(r.get(i)??t.index,t.index))}let i=new Set;for(let[e,r]of n)r>t&&i.add(e);for(let[e,n]of r)n<=t&&i.add(e);return i}function N(e){let t=new Map,n=new Map;for(let r of e)for(let e of r.items){let i=e.shape.id;if(e.animation.kind===`enter`){t.set(i,Math.min(t.get(i)??r.index,r.index));continue}e.animation.kind===`exit`&&n.set(i,Math.max(n.get(i)??r.index,r.index))}let r=new Set;for(let i of e)for(let e of i.items){if(e.animation.kind===`enter`)continue;let a=e.shape.id,o=t.get(a),s=n.get(a);(o===void 0||o<=i.index)&&(s??i.index)>=i.index||r.add(`${a}@${e.index}`)}return r}function P(e){return`${e.shape.id}@${e.index}`}function F(n){return e.filter(e=>t.some(t=>r(t,e)&&s(n,t)))}function I(e,t){let n=Math.max(16,t.height*.06),r=e.map(e=>({unit:e,box:L(e)})).sort((e,t)=>e.box.y-t.box.y),i=[];for(let e of r){let t=i[i.length-1];if(t&&e.box.y-t.top<n){t.items.push(e);continue}i.push({top:e.box.y,items:[e]})}return i.flatMap(e=>e.items.sort((e,t)=>e.box.x-t.box.x).map(e=>e.unit))}function L(e){let t=n(e.shapes[0]);for(let r of e.shapes.slice(1)){let e=n(r),i=Math.max(t.x+t.width,e.x+e.width),a=Math.max(t.y+t.height,e.y+e.height),o=Math.min(t.x,e.x),s=Math.min(t.y,e.y);t={x:o,y:s,width:i-o,height:a-s}}return t}export{C as _,h as a,I as b,M as c,b as d,y as f,D as g,g as h,k as i,P as l,A as m,O as n,l as o,f as p,j as r,d as s,_ as t,F as u,u as v,N as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{t}from"./react-lCSYwAWP.js";import{t as n}from"./jsx-runtime-DKdBMi_L.js";import{a as r,o as i}from"./editor-BeufBV54.js";import{T as a,Zn as o,a as s,an as c,i as l,l as u,w as d}from"./slides-D686obFO.js";import{G as f,W as p,z as m}from"./style-BENGW2ZV.js";import{a as h,c as g,i as _,l as v,n as y,r as b,u as x}from"./presenter-keys-Bs3LnmOa.js";import{t as S}from"./IconChevronLeft-D7e7QC0h.js";import{t as C}from"./IconChevronRight-csfMBSUs.js";import{c as w,n as ee,o as T,t as te}from"./build-visibility-DyML9SHt.js";import{t as E}from"./IconX-KrRqxr2j.js";import{n as D}from"./core-CmsJyU_-.js";import{c as O,f as ne}from"./plan-CkgM52Yh.js";import{a as k,o as A}from"./chrome-C2RCq3SI.js";import{a as j,o as M,t as N}from"./flows-Cj7AFMIA.js";import{a as P,t as F}from"./flow-stage-Ba_CAggI.js";var I=e(t(),1),L=450,R=10,re=50,ie=1.5;function ae(e,t){return Math.abs(e)<re||Math.abs(e)<Math.abs(t)*ie?null:e<0?`next`:`previous`}function oe(e){let t=(0,I.useRef)(e);t.current=e;let n=(0,I.useRef)(null),r=(0,I.useRef)(!1);(0,I.useEffect)(()=>()=>{n.current&&clearTimeout(n.current.timer)},[]);function i(){let e=n.current;return e?(clearTimeout(e.timer),n.current=null,e.lasering&&t.current.laser.end(),e):null}function a(e){if(n.current){i(),r.current=!0;return}r.current=!1;let a={x:e.clientX,y:e.clientY},o={id:e.pointerId,start:a,lasering:!1,moved:!1,timer:setTimeout(()=>{o.lasering=!0,t.current.laser.start(a)},L)};n.current=o}function o(e){let r=n.current;if(!r||r.id!==e.pointerId)return;let i={x:e.clientX,y:e.clientY};if(r.lasering){t.current.laser.move(i);return}(Math.abs(i.x-r.start.x)>R||Math.abs(i.y-r.start.y)>R)&&(clearTimeout(r.timer),r.moved=!0)}function s(e){let a=n.current;if(!a||a.id!==e.pointerId)return;if(i(),a.lasering){r.current=!0;return}if(!a.moved)return;r.current=!0;let o=ae(e.clientX-a.start.x,e.clientY-a.start.y);o&&t.current.onSwipe(o)}function c(){i()&&(r.current=!0)}function l(){let e=r.current;return r.current=!1,e}return{down:a,move:o,up:s,cancel:c,consumeClick:l}}function se(){let[e,t]=(0,I.useState)(null),n=(0,I.useRef)(null),r=e=>{n.current=e,t(e)};return{blank:e,toggle:e=>r(n.current===e?null:e),lift:()=>n.current?(r(null),!0):!1}}function ce(e,t){return e[t]?.length??0}function z(e,t){return e.step+1<ce(t,e.position)?{position:e.position,step:e.step+1}:e.position+1>=t.length?`end`:V(e.position+1,`forward`,t)}function B(e,t){let n=t[e.position]??[],r=e.step-1;for(;r>=-1&&n[r+1]===!0;)--r;return r>=-1?{position:e.position,step:r}:e.position===0?e:V(e.position-1,`back`,t)}function le(e,t){return z(e,t)!==`end`}function ue(e,t){let n=B(e,t);return n.position!==e.position||n.step!==e.step}function V(e,t,n){return t===`forward`?{position:e,step:-1}:{position:e,step:ce(n,e)-1}}function de(e){let{shapes:t,slides:n,playable:i,index:a}=e,{store:o}=r(),s=ee(),l=i.length,u=(0,I.useMemo)(()=>i.map(e=>{let r=n[e];return[...ne(t,r).map(e=>e.afterPrevious),...j(t,r).map(()=>!1)]}),[i,t,n]),d=e=>{let t=i.findIndex(t=>t>=e);return t===-1?l-1:t},[f,m]=(0,I.useState)(-1),[h,g]=(0,I.useState)(null),_=(0,I.useRef)(-1),v=(0,I.useRef)(null),y=(0,I.useRef)(!1),b=e=>o.getState().setPresentingIndex(e);function x(e){l!==0&&b(i[p(e,0,l-1)])}function S(e){_.current=e,m(e),g(y.current?e:null)}function C(){return{position:d(o.getState().presentingIndex??0),step:_.current}}function w(){s.finish();let e=C(),t=z(e,u);if(t===`end`){b(null);return}if(t.position===e.position){y.current=!0,S(t.step);return}v.current=t.step,x(t.position)}function te(){s.finish();let e=C(),t=B(e,u);if(t.position===e.position){S(t.step);return}v.current=t.step,x(t.position)}let E=(0,I.useRef)(w);E.current=w;let D=l>0?d(Math.min(a,n.length-1)):-1,k=D>=0?n[i[D]]:void 0,A=(0,I.useMemo)(()=>k?ne(t,k):[],[t,k]),M=(0,I.useMemo)(()=>k?j(t,k):[],[t,k]),N=f>=A.length?M[f-A.length]??null:null,P=(0,I.useMemo)(()=>{let e=h===null?void 0:A[h];return new Set(e?.items.filter(e=>e.animation.kind===`exit`).map(e=>e.shape.id)??[])},[A,h]),F=(0,I.useMemo)(()=>{let e=O(A,f);for(let t of P)e.delete(t);return e},[A,f,P]),L=(0,I.useRef)(null);(0,I.useLayoutEffect)(()=>{if(!k||L.current===k.id)return;L.current=k.id,s.cancel();let e=v.current??-1;v.current=null,y.current=!1,S(e)}),(0,I.useLayoutEffect)(()=>{if(!y.current)return;y.current=!1;let e=A[f];!k||!e||s.play(e,c(k)).then(()=>{g(e=>e===f?null:e)})},[f,A,k,s]);let R=(0,I.useRef)(!1);return(0,I.useEffect)(()=>{if(h!==null){R.current=!0;return}R.current&&(R.current=!1,s.cancel())},[h,s]),(0,I.useEffect)(()=>{let e=A[f+1];if(!e||!e.afterPrevious)return;let t=f>=0?A[f]:void 0,n=t?T(t):0,r=setTimeout(()=>E.current(),n);return()=>clearTimeout(r)},[f,A]),{count:l,deckSteps:u,position:D,slide:k,step:f,pending:F,flowStop:N,next:w,prev:te,goTo:b,goToPosition:x}}function fe(e){let t=(0,I.useRef)({digits:``,timer:null});(0,I.useEffect)(()=>{let n=t.current,r=()=>{n.digits=``,n.timer&&=(clearTimeout(n.timer),null)};function i(t){let i=y(t,n.digits.length>0);if(!i)return;t.preventDefault(),t.stopPropagation();let a=e.current;switch(i.type){case`escape`:a.escape();return;case`notes`:a.toggleNotes();return;case`black`:case`white`:a.toggleBlank(i.type);return;case`digit`:n.digits=(n.digits+i.digit).slice(-4),n.timer&&clearTimeout(n.timer),n.timer=setTimeout(r,1500);return;case`jump`:{let e=Number(n.digits)-1;r(),a.goTo(e);return}case`next`:a.next();return;case`prev`:a.prev();return;case`first`:a.goTo(0);return;case`last`:a.goTo(a.count-1);return}}return window.addEventListener(`keydown`,i,{capture:!0}),()=>window.removeEventListener(`keydown`,i,{capture:!0})},[e])}var H=3;function pe(e){let{overlayRef:t,slideRef:n,view:i}=e,{store:o,viewportAnimation:l}=r(),u=(0,I.useRef)(1),d=e=>{let t=n.current;if(!t)return;let r=s(c(t),i()),l=u.current,d=l<=1?r:a(r,r.zoom*l,e);o.getState().setViewport(d)},f=(e,t)=>{let n=p(u.current*e,1,H);n!==u.current&&(u.current=n,d(t))},m=(0,I.useCallback)(()=>{u.current=1},[]),g=(0,I.useRef)(f);return g.current=f,(0,I.useEffect)(()=>{let e=t.current;if(!e)return;let n=_(e=>{e.anchor&&g.current(e.zoomFactor,e.anchor)}),r=e=>{e.preventDefault(),e.stopPropagation(),!(!e.ctrlKey&&!e.metaKey)&&n.queue(t=>{t.zoomFactor*=h(e.deltaY),t.anchor={x:e.clientX,y:e.clientY}})},i=b(e,e=>{n.queue(t=>{t.zoomFactor*=e.factor,t.anchor={x:e.clientX,y:e.clientY}})});return e.addEventListener(`wheel`,r,{passive:!1}),()=>{e.removeEventListener(`wheel`,r),i.stop(),n.cancel()}},[t]),{isZoomed:()=>u.current>1,zoomToCursor:d,reset:()=>{if(u.current===1)return;u.current=1;let e=n.current;if(!e)return;let t=o.getState();l.animate(t.viewport,s(c(e),i()),e=>o.getState().setViewport(e),t.presentationAnimation?200:0)},clear:m}}var U=`var(--canvas-bg)`,W=`#000000`,G=1;function K(e,t){return e.rotation!==0||e.opacity<1?!1:e.x<=t.x+G&&e.y<=t.y+G&&e.x+e.width>=t.x+t.width-G&&e.y+e.height>=t.y+t.height-G}function me(e,t){if(e.type!==`image`&&e.type!==`rectangle`||!K(e,t))return null;if(e.type===`image`)return W;if(e.kind!==`rectangle`)return null;let n=m(e.fill,e.fillStyle??`pastel`).fill;return n===`none`?null:n}function he(e,t){for(let n=t.length-1;n>=0;--n){let r=me(t[n],e);if(r)return r}return!e.fill||e.fill===`transparent`?U:o(e.fill)}var q=n(),ge=14,J=16,_e=72;function ve(e){let{slide:t,stop:n,shapes:i,viewport:a}=e,o=(0,I.useMemo)(()=>D(i,t),[i,t]),s=n.flow.steps[n.index],c=N(t.flows??[],n.flow.id),l=M(o,[...c,...n.flow.steps],c.length+n.index),u=s?o.find(e=>e.id===s.target):void 0,d=(0,I.useRef)(null),[f,p]=(0,I.useState)(null),{measurement:m}=r(),h=u?P(u,a,10,m):null;return(0,I.useLayoutEffect)(()=>{let e=d.current,t=e?.offsetParent;if(!e||!t||!h){p(null);return}let n=e.offsetWidth,r=e.offsetHeight,i={width:t.clientWidth,height:t.clientHeight-_e},a=h.top+h.height+ge,o=a+r<=i.height?a:Math.max(J,h.top-ge-r),s=h.left+h.width/2,c=Math.min(Math.max(J,s-n/2),i.width-n-J);p({left:c,top:o})},[h?`${h.left},${h.top},${h.width},${h.height}`:``,s?.title,s?.text]),(0,q.jsxs)(`div`,{className:`pointer-events-none absolute inset-0`,"data-testid":`flow-presented`,children:[(0,q.jsx)(F,{frameId:t.id,flow:n.flow,targets:o,index:n.index,viewport:a,lead:c}),s&&(0,q.jsxs)(`div`,{ref:d,"data-testid":`flow-present-caption`,className:`absolute z-10 flex max-w-[min(420px,calc(100%-32px))] items-start gap-3 rounded-2xl bg-[var(--chrome-popup)] px-4 py-3 shadow-[0_8px_32px_rgba(0,0,0,0.18)] ring-1 ring-[var(--chrome-ring)] transition-[left,top] duration-300`,style:f??{left:J,bottom:88,visibility:h?`hidden`:`visible`},children:[(0,q.jsx)(`span`,{className:`mt-0.5 flex h-6 min-w-6 shrink-0 items-center justify-center rounded-full px-1.5 text-[12px] font-medium tabular-nums text-white ${s.fails?`bg-[var(--flow-fail)]`:`bg-[var(--flow-accent)]`}`,children:n.index+1}),(0,q.jsxs)(`div`,{className:`min-w-0`,children:[(0,q.jsx)(`p`,{className:`text-[15px] font-medium leading-snug text-[var(--chrome-fg-900)]`,children:s.title}),s.text&&(0,q.jsx)(`p`,{className:`mt-0.5 text-[13px] leading-relaxed text-[var(--chrome-fg-600)]`,children:s.text}),(s.payload||s.fails||l!==`call`)&&(0,q.jsx)(`p`,{className:`mt-1 text-[11px] text-[var(--chrome-fg-500)]`,children:[s.fails?`Fails here`:``,l===`async`?`Fire and forget`:l===`reply`?`Reply`:``,s.payload?`Carries ${s.payload}`:``].filter(Boolean).join(` · `)})]})]})]})}var ye=2500,be=480,xe={black:`#000000`,white:`#ffffff`};function Se(e,t){let{fromViewport:n,toViewport:r}=e,i=r.x-n.x,a=r.y-n.y,o=r.zoom-n.zoom,s=t.zoom-n.zoom,c=o;return Math.abs(i)>=Math.abs(a)&&Math.abs(i)>=Math.abs(o)?(s=t.x-n.x,c=i):Math.abs(a)>=Math.abs(o)&&(s=t.y-n.y,c=a),c===0?1:f(s/c)}function Ce(e,t,n){return{x:e.x+(t.x-e.x)*n,y:e.y+(t.y-e.y)*n,width:e.width+(t.width-e.width)*n,height:e.height+(t.height-e.height)*n}}var we=0;function Te(e){let t=0,n=()=>we!==e,r=()=>{if(n()){document.removeEventListener(`fullscreenchange`,r);return}document.fullscreenElement&&document.exitFullscreen().catch(()=>{t+=1,t<10&&window.setTimeout(r,50)})};document.addEventListener(`fullscreenchange`,r);let i=()=>{if(!document.fullscreenElement||n()){document.removeEventListener(`fullscreenchange`,r);return}window.setTimeout(i,250)};window.setTimeout(i,250),window.setTimeout(()=>document.removeEventListener(`fullscreenchange`,r),5e3),r()}function Y(e){return i(e=>e.presentingIndex!==null)?(0,q.jsx)(X,{containerRef:e.containerRef}):null}function X(e){let{containerRef:t}=e,{store:n,viewportAnimation:a}=r(),o=(0,I.useRef)(null),f=i(e=>e.presentingIndex)??0,p=i(e=>e.shapes),m=i(e=>e.viewport),h=i(e=>e.presentationAnimation),_=(0,I.useMemo)(()=>l(p),[p]),y=(0,I.useMemo)(()=>_.flatMap((e,t)=>e.slideSkipped?[]:[t]),[_]),[b,ee]=(0,I.useState)(!0),[T,D]=(0,I.useState)(!1),O=(0,I.useRef)(null),ne=(0,I.useRef)(n.getState().viewport),j=v(),M=oe({laser:j,onSwipe:e=>e===`next`?Q.current.next():Q.current.prev()}),N=(0,I.useRef)(`mouse`),P=(0,I.useRef)(null),F=(0,I.useRef)(!1),L=e=>{let t=P.current;return t?Ce(t.fromBounds,t.toBounds,Se(t,e)):null},[R,re]=(0,I.useState)(!1),ie=(0,I.useRef)(Date.now()),[ae,ce]=(0,I.useState)(0);(0,I.useEffect)(()=>{let e=setInterval(()=>ce(Math.floor((Date.now()-ie.current)/1e3)),1e3);return()=>clearInterval(e)},[]);let z=`${String(Math.floor(ae/60)).padStart(2,`0`)}:${String(ae%60).padStart(2,`0`)}`,B=(0,I.useCallback)(()=>{let e=t.current;return{width:e?.clientWidth??window.innerWidth,height:e?.clientHeight??window.innerHeight}},[t]),V=(0,I.useRef)(!1);(0,I.useEffect)(()=>{let e=n.getState(),r=e.selectedIds;e.setSelectedIds(new Set),e.endEdit(),e.setLockRevealId(null),e.setHoveredId(null);let i=t.current,o=()=>D(!0);V.current=!0,we+=1;let s=we;Promise.resolve(i?.requestFullscreen?.()).then(()=>{if(!V.current){Te(s);return}o()},o);let c=!1,l=()=>{if(!document.fullscreenElement){c&&n.getState().setPresentingIndex(null);return}c=!0,o()};document.addEventListener(`fullscreenchange`,l);let u=ne.current;return()=>{V.current=!1,document.removeEventListener(`fullscreenchange`,l),Te(s);let{shapes:e,setSelectedIds:t}=n.getState(),i=new Set(e.map(e=>e.id));t(new Set([...r].filter(e=>i.has(e)))),a.animate(n.getState().viewport,u,e=>n.getState().setViewport(e),0)}},[n,a,t]);let H=de({shapes:p,slides:_,playable:y,index:f}),{count:U,deckSteps:W,position:G,slide:K,step:me,pending:ge,flowStop:J}=H,_e=(0,I.useRef)(K);_e.current=K;let Y=se(),X=Y.blank,Z=pe({overlayRef:o,slideRef:_e,view:B}),Ee=Z.clear;function De(){Y.lift()||H.next()}function Oe(){Y.lift()||H.prev()}function ke(e){Y.lift()||H.goToPosition(e)}let Ae={next:De,prev:Oe,goTo:ke,count:U,toggleNotes:()=>re(e=>!e),toggleBlank:Y.toggle,escape:()=>{if(Z.isZoomed()){Z.reset();return}n.getState().setPresentingIndex(null)}},Q=(0,I.useRef)(Ae);Q.current=Ae,fe(Q),(0,I.useEffect)(()=>{if(!K||!T)return;let e=e=>n.getState().setViewport(e);Ee();let r=n.getState(),i=c(K),o=B(),l=s(i,o);P.current={fromBounds:L(r.viewport)??i,toBounds:i,fromViewport:r.viewport,toViewport:l},a.animate(r.viewport,l,e,r.presentationAnimation?be:0);let u=()=>{let t=B();if(t.width===o.width&&t.height===o.height)return;o=t;let r=s(i,t),c=n.getState().viewport;if(a.isAnimating()){P.current={fromBounds:i,toBounds:i,fromViewport:c,toViewport:r},a.animate(c,r,e,be);return}a.cancel(),P.current={fromBounds:i,toBounds:i,fromViewport:r,toViewport:r},e(r)},d=t.current,f=new ResizeObserver(u);return d&&f.observe(d),()=>f.disconnect()},[K,T,B,n,a,t,Ee]),(0,I.useEffect)(()=>{let e=o.current;if(!e)return;let t=e=>{e.preventDefault(),e.stopPropagation(),N.current!==`touch`&&Q.current.prev()};return e.addEventListener(`contextmenu`,t),()=>e.removeEventListener(`contextmenu`,t)},[]);function $(){ee(!0),O.current&&clearTimeout(O.current),O.current=setTimeout(()=>ee(!1),ye)}(0,I.useEffect)(()=>($(),()=>{O.current&&clearTimeout(O.current)}),[]),(0,I.useEffect)(()=>{U===0&&n.getState().setPresentingIndex(null)},[U,n]);function je(){let e=M.consumeClick(),t=j.consumeMoved();e||t||De()}let Me={position:G,step:me},Ne=b?`opacity-100`:`opacity-0 pointer-events-none`,Pe=(0,I.useMemo)(()=>K?he(K,u(p,K)):`var(--canvas-bg)`,[K,p]),Fe=(()=>{if(!K)return null;let{width:e,height:t}=B(),n=L(m)??c(K),r=d({x:n.x,y:n.y},m),i=d({x:n.x+n.width,y:n.y+n.height},m);return`M0 0H${e}V${t}H0Z M${r.x} ${r.y}H${i.x}V${i.y}H${r.x}Z`})();return(0,q.jsxs)(`div`,{ref:o,"data-testid":`presentation`,"data-overlay":!0,className:`absolute inset-0 z-50`,style:{cursor:x,touchAction:`none`,userSelect:`none`,WebkitTouchCallout:`none`},onPointerDown:e=>{if(e.stopPropagation(),$(),N.current=e.pointerType,e.button===0){if(F.current=!0,e.currentTarget.setPointerCapture(e.pointerId),e.pointerType===`touch`){M.down(e);return}j.start({x:e.clientX,y:e.clientY})}},onPointerMove:e=>{if(e.stopPropagation(),$(),e.pointerType===`touch`){M.move(e);return}j.move({x:e.clientX,y:e.clientY}),Z.isZoomed()&&!F.current&&Z.zoomToCursor({x:e.clientX,y:e.clientY})},onPointerUp:e=>{if(F.current=!1,e.pointerType===`touch`){M.up(e);return}j.end()},onPointerCancel:e=>{if(F.current=!1,e.pointerType===`touch`){M.cancel();return}j.end()},onDoubleClick:e=>e.stopPropagation(),onClick:je,children:[(0,q.jsx)(te,{pending:ge}),Fe&&(0,q.jsx)(`svg`,{className:`absolute inset-0 h-full w-full`,"aria-hidden":!0,children:(0,q.jsx)(`path`,{"data-testid":`presentation-mask`,d:Fe,fillRule:`evenodd`,fill:Pe,style:h?{transition:`fill ${be}ms ease`}:void 0})}),J&&K&&(0,q.jsx)(ve,{slide:K,stop:J,shapes:p,viewport:m}),X&&(0,q.jsx)(`div`,{"data-testid":`presentation-blank`,"data-blank":X,className:`absolute inset-0`,style:{backgroundColor:xe[X]}}),(0,q.jsx)(g,{trail:j.trail}),(0,q.jsx)(`div`,{className:`absolute right-4 top-4 transition-opacity duration-300 ${Ne}`,onClick:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation(),children:(0,q.jsxs)(`div`,{className:`flex items-center gap-0.5 ${A}`,children:[(0,q.jsx)(`button`,{type:`button`,"aria-label":`Toggle speaker notes`,"data-testid":`presentation-notes-toggle`,onClick:()=>re(e=>!e),className:`${k} ${R?`bg-[var(--chrome-hover)]`:``}`,children:(0,q.jsx)(w,{size:16,stroke:1.75})}),(0,q.jsx)(`button`,{type:`button`,"aria-label":`End presentation`,"data-testid":`presentation-exit`,onClick:()=>H.goTo(null),className:k,children:(0,q.jsx)(E,{size:16,stroke:1.75})})]})}),R&&(0,q.jsx)(`div`,{"data-testid":`presentation-notes`,className:`absolute bottom-4 left-4 w-[min(360px,40vw)]`,onClick:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation(),children:(0,q.jsxs)(`div`,{className:`${A} px-3.5 py-3`,children:[(0,q.jsxs)(`div`,{className:`mb-1 flex items-center justify-between text-[11px] uppercase tracking-wide text-[var(--chrome-fg-400)]`,children:[(0,q.jsx)(`span`,{children:`Notes`}),(0,q.jsx)(`span`,{className:`tabular-nums normal-case`,children:z})]}),(0,q.jsx)(`div`,{className:`max-h-[30vh] overflow-y-auto whitespace-pre-wrap text-[13px] leading-relaxed text-[var(--chrome-fg-800)]`,children:K?.notes?.trim()?K.notes:(0,q.jsx)(`span`,{className:`text-[var(--chrome-fg-400)]`,children:`No notes for this slide.`})})]})}),(0,q.jsx)(`div`,{className:`absolute bottom-4 left-1/2 -translate-x-1/2 transition-opacity duration-300 ${Ne}`,onClick:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation(),children:(0,q.jsxs)(`div`,{className:`flex items-center gap-0.5 ${A}`,children:[(0,q.jsx)(`button`,{type:`button`,"aria-label":`Previous slide`,"data-testid":`presentation-prev`,disabled:!ue(Me,W),onClick:Oe,className:`${k} disabled:pointer-events-none disabled:text-[var(--chrome-fg-300)]`,children:(0,q.jsx)(S,{size:16,stroke:1.75})}),(0,q.jsxs)(`span`,{"data-testid":`presentation-counter`,className:`min-w-[52px] px-1 text-center text-[13px] tabular-nums text-[var(--chrome-fg-700)]`,children:[G+1,` / `,U]}),(0,q.jsx)(`span`,{"data-testid":`presentation-clock`,className:`border-l border-[var(--chrome-divider)] px-2 text-[13px] tabular-nums text-[var(--chrome-fg-400)]`,children:z}),(0,q.jsx)(`button`,{type:`button`,"aria-label":`Next slide`,"data-testid":`presentation-next`,disabled:!le(Me,W),onClick:De,className:`${k} disabled:pointer-events-none disabled:text-[var(--chrome-fg-300)]`,children:(0,q.jsx)(C,{size:16,stroke:1.75})})]})})]})}export{Y as Presentation};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{t}from"./react-lCSYwAWP.js";import{t as n}from"./jsx-runtime-DKdBMi_L.js";import{br as r,xr as i}from"./slides-D686obFO.js";import{_ as a}from"./selection-overlay-primitives-BRp854AD.js";var o=`var(--presentation-cursor, default)`,s=e(t(),1),c=6,l=1200,u=500,d=5,f=2;function p(e,t){return e.length<2?``:r(i(e.map(e=>[e.x,e.y]),{size:d,thinning:0,smoothing:.5,streamline:.32,simulatePressure:!1,last:!t}))}function m(){let e=(0,s.useRef)([]),t=(0,s.useRef)([]),n=(0,s.useRef)(null),r=(0,s.useRef)(!1),i=(0,s.useRef)(!1),[a,o]=(0,s.useState)(``);(0,s.useEffect)(()=>{let i=0,a=()=>{let s=performance.now();if(!r.current&&n.current!=null&&e.current.length>0&&s-n.current>=l){let r=e.current;e.current=[],n.current=null,t.current.push({strokes:r,start:s,total:r.reduce((e,t)=>e+t.length,0),removed:0})}for(let e of t.current){let t=Math.min(1,(s-e.start)/u),n=Math.floor(t*t*e.total);for(;e.removed<n&&e.strokes.length>0;){let t=e.strokes[0];t.shift(),e.removed+=1,t.length===0&&e.strokes.shift()}}t.current=t.current.filter(e=>e.strokes.length>0);let c=e.current,d=[];for(let e of t.current)for(let t of e.strokes)d.push(p(t,!1));for(let e=0;e<c.length;e+=1){let t=r.current&&e===c.length-1;d.push(p(c[e],t))}let f=d.filter(Boolean).join(` `);o(e=>f===e?e:f),i=requestAnimationFrame(a)};return i=requestAnimationFrame(a),()=>cancelAnimationFrame(i)},[]);function d(t){r.current=!0,i.current=!1,n.current=null,e.current.push([t])}function m(t){if(!r.current)return;let n=e.current[e.current.length-1],a=n[0];(Math.abs(t.x-a.x)>c||Math.abs(t.y-a.y)>c)&&(i.current=!0);let o=n[n.length-1];(Math.abs(t.x-o.x)>=f||Math.abs(t.y-o.y)>=f)&&n.push(t)}function h(){r.current&&(r.current=!1,i.current||e.current.pop(),n.current=e.current.length>0?performance.now():null)}function g(){let e=i.current;return i.current=!1,e}return{trail:a,start:d,move:m,end:h,consumeMoved:g}}var h=n();function g(e){let{trail:t}=e;return t?(0,h.jsx)(`svg`,{"data-testid":`laser-trail`,className:`pointer-events-none absolute inset-0 h-full w-full`,children:(0,h.jsx)(`path`,{d:t,fill:`#e8590c`,opacity:.8})}):null}function _(e){let{trail:t}=e;return t?(0,h.jsx)(`svg`,{"data-testid":`eraser-trail`,className:`pointer-events-none absolute inset-0 h-full w-full`,children:(0,h.jsx)(`path`,{d:t,fill:`#94a3b8`,opacity:.55})}):null}function v(){let e=m();return(0,h.jsx)(`div`,{"data-testid":`laser-overlay`,className:`absolute inset-0 cursor-crosshair`,onPointerDown:t=>{t.stopPropagation(),t.button===0&&(t.currentTarget.setPointerCapture(t.pointerId),e.start({x:t.clientX,y:t.clientY}))},onPointerMove:t=>{t.stopPropagation(),e.move({x:t.clientX,y:t.clientY})},onPointerUp:()=>e.end(),onPointerCancel:()=>e.end(),onDoubleClick:e=>e.stopPropagation(),children:(0,h.jsx)(g,{trail:e.trail})})}var y=10,b=1;function x(e){return 1+-(Math.abs(e)>y?y*Math.sign(e):e)/100*b}function S(e){let t=null,n=null;function r(){n=null;let r=t;t=null,r&&e(r)}return{queue(e){t||={zoomFactor:1,anchor:null,dx:0,dy:0},e(t),n===null&&(n=requestAnimationFrame(r))},cancel(){t=null,n!==null&&(cancelAnimationFrame(n),n=null)}}}function C(e,t){let n=new Set,r=null,i=null;function o(e){e.pointerType===`touch`&&n.add(e.pointerId)}function s(e){n.delete(e.pointerId)}function c(e){n.size>0||(r=e.scale,i=e.target)}function l(e){if(r===null)return;let n=e,a=r>0?n.scale/r:1;r=n.scale,a!==1&&t({factor:a,clientX:n.clientX,clientY:n.clientY,target:i})}function u(){r=null,i=null}window.addEventListener(`pointerdown`,o,{capture:!0}),window.addEventListener(`pointerup`,s,{capture:!0}),window.addEventListener(`pointercancel`,s,{capture:!0}),e.addEventListener(`gesturestart`,c),e.addEventListener(`gesturechange`,l),e.addEventListener(`gestureend`,u);let d=a(()=>{n.clear(),r=null,i=null});return{isActive:()=>r!==null,stop(){window.removeEventListener(`pointerdown`,o,{capture:!0}),window.removeEventListener(`pointerup`,s,{capture:!0}),window.removeEventListener(`pointercancel`,s,{capture:!0}),e.removeEventListener(`gesturestart`,c),e.removeEventListener(`gesturechange`,l),e.removeEventListener(`gestureend`,u),d()}}}var w=[{help:`→ / Space`,label:`Next slide (presenting)`,bindings:[{keys:[`ArrowRight`,`ArrowDown`,`PageDown`,` `,`Enter`],command:`next`}]},{help:`← / ⌫`,label:`Previous slide (presenting)`,bindings:[{keys:[`ArrowLeft`,`ArrowUp`,`PageUp`,`Backspace`],command:`prev`}]},{help:`Home / End`,label:`First / last slide (presenting)`,bindings:[{keys:[`Home`],command:`first`},{keys:[`End`],command:`last`}]},{help:`1…9 ⏎`,label:`Jump to slide (presenting)`,bindings:[]},{help:`N`,label:`Speaker notes (presenting)`,bindings:[{keys:[`n`,`N`],command:`notes`}]},{help:`B / W`,label:`Black / white screen (presenting)`,bindings:[{keys:[`b`,`B`],command:`black`},{keys:[`w`,`W`],command:`white`}]},{help:`Esc`,label:`End presentation`,bindings:[{keys:[`Escape`],command:`escape`}]}],T=new Map(w.flatMap(e=>e.bindings.flatMap(e=>e.keys.map(t=>[t,e.command]))));function E(e,t){if(e.key===`Escape`)return{type:`escape`};if(e.metaKey||e.ctrlKey||e.altKey)return null;if(/^[0-9]$/.test(e.key))return{type:`digit`,digit:e.key};if(e.key===`Enter`&&t)return{type:`jump`};let n=T.get(e.key);return n?{type:n}:null}export{x as a,g as c,S as i,m as l,E as n,_ as o,C as r,v as s,w as t,o as u};
|