@nubisco/ui 5.4.1 → 5.5.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.
Files changed (151) hide show
  1. package/README.md +4 -3
  2. package/dist/{Blueprint-BgmsyoIu.js → Blueprint-ClU0eIiy.js} +2 -2
  3. package/dist/{Blueprint-CvOpJq_7.cjs → Blueprint-DbehXPR2.cjs} +1 -1
  4. package/dist/{BlueprintCard-BdT657ax.cjs → BlueprintCard-MDfxqPyE.cjs} +1 -1
  5. package/dist/{BlueprintCard-BJlyW5LC.js → BlueprintCard-VfWPpR6_.js} +1 -1
  6. package/dist/{BlueprintControls-DCUQ9LQ7.cjs → BlueprintControls-BR12TLQ1.cjs} +1 -1
  7. package/dist/{BlueprintControls-DwGxskS4.js → BlueprintControls-pnaU1lCY.js} +1 -1
  8. package/dist/Button-Cw4D6w9K.js +121 -0
  9. package/dist/Button-D-XSNjSL.cjs +1 -0
  10. package/dist/{Confirm-bPSArUzM.js → Confirm-BewLtgMD.js} +1 -1
  11. package/dist/{Confirm-Dmhkb56Q.cjs → Confirm-DHWWbfmu.cjs} +1 -1
  12. package/dist/{DataTable-DueT6mHP.js → DataTable-CVih75pn.js} +1 -1
  13. package/dist/{DataTable-CtjSxLmA.cjs → DataTable-DLuSmiTV.cjs} +1 -1
  14. package/dist/{FileUploader-OqfHo3LH.js → FileUploader-Ba0H8UPw.js} +1 -1
  15. package/dist/{FileUploader-DEBpnSuZ.cjs → FileUploader-CN7XPX9n.cjs} +1 -1
  16. package/dist/InfoHint-DX3lgnTX.cjs +1 -0
  17. package/dist/{InfoHint-Dvdnc-vI.js → InfoHint-DjAgTkgL.js} +32 -32
  18. package/dist/Menu-BSbPfsiE.cjs +1 -0
  19. package/dist/{Menu-Dzg_RrG-.js → Menu-Dy1JwMdl.js} +31 -17
  20. package/dist/{MenuBarItem-DyS1SWrP.js → MenuBarItem-CYofbcgq.js} +1 -1
  21. package/dist/{MenuBarItem-ma4XHwRB.cjs → MenuBarItem-Ya88A6xZ.cjs} +1 -1
  22. package/dist/{NotificationCenter-BYQdkoja.cjs → NotificationCenter-DCi4hoKm.cjs} +1 -1
  23. package/dist/{NotificationCenter-_K5ZQ82b.js → NotificationCenter-Yhez667P.js} +1 -1
  24. package/dist/{Pagination-Mu8uhAwJ.js → Pagination-BInZQpJS.js} +1 -1
  25. package/dist/{Pagination-NaWfr8Rs.cjs → Pagination-Dz24gpb7.cjs} +1 -1
  26. package/dist/Submenu-QgPVi2bN.cjs +1 -0
  27. package/dist/Submenu-SQTJc81U.js +148 -0
  28. package/dist/TableOfContents-BD-79w4n.cjs +1 -0
  29. package/dist/TableOfContents-fTZdpn-L.js +253 -0
  30. package/dist/{Tree-DUfjBsuG.js → Tree-DHdPsRXV.js} +1 -1
  31. package/dist/{Tree-CHJvaRgP.cjs → Tree-DI_ouWnv.cjs} +1 -1
  32. package/dist/TreeNode-CME77z98.js +165 -0
  33. package/dist/TreeNode-CpV3GOzv.cjs +1 -0
  34. package/dist/{Walkthrough-DpGi2slp.js → Walkthrough-B4E8LruL.js} +1 -1
  35. package/dist/{Walkthrough-ClLGKPYd.cjs → Walkthrough-DuX31BAz.cjs} +1 -1
  36. package/dist/all.cjs +1 -1
  37. package/dist/all.mjs +58 -56
  38. package/dist/component-styles.json +5 -0
  39. package/dist/components/AiLabel.cjs +1 -1
  40. package/dist/components/AiLabel.mjs +1 -1
  41. package/dist/components/Blueprint.cjs +1 -1
  42. package/dist/components/Blueprint.mjs +1 -1
  43. package/dist/components/BlueprintBackground.cjs +1 -1
  44. package/dist/components/BlueprintBackground.mjs +1 -1
  45. package/dist/components/BlueprintCard.cjs +1 -1
  46. package/dist/components/BlueprintCard.mjs +1 -1
  47. package/dist/components/BlueprintControls.cjs +1 -1
  48. package/dist/components/BlueprintControls.mjs +1 -1
  49. package/dist/components/BlueprintMinimap.cjs +1 -1
  50. package/dist/components/BlueprintMinimap.mjs +1 -1
  51. package/dist/components/BottomPanel.cjs +1 -1
  52. package/dist/components/BottomPanel.mjs +1 -1
  53. package/dist/components/Button.cjs +1 -1
  54. package/dist/components/Button.mjs +1 -1
  55. package/dist/components/Button.vue.d.ts +6 -9
  56. package/dist/components/Button.vue.d.ts.map +1 -1
  57. package/dist/components/Confirm.cjs +1 -1
  58. package/dist/components/Confirm.mjs +1 -1
  59. package/dist/components/DataTable.cjs +1 -1
  60. package/dist/components/DataTable.mjs +1 -1
  61. package/dist/components/FileUploader.cjs +1 -1
  62. package/dist/components/FileUploader.mjs +1 -1
  63. package/dist/components/Form.cjs +1 -1
  64. package/dist/components/Form.mjs +1 -1
  65. package/dist/components/ImageCropper.cjs +1 -1
  66. package/dist/components/ImageCropper.mjs +1 -1
  67. package/dist/components/InfoHint.cjs +1 -1
  68. package/dist/components/InfoHint.mjs +1 -1
  69. package/dist/components/InfoHint.vue.d.ts.map +1 -1
  70. package/dist/components/Menu.cjs +1 -1
  71. package/dist/components/Menu.d.ts +7 -0
  72. package/dist/components/Menu.mjs +1 -1
  73. package/dist/components/Menu.vue.d.ts.map +1 -1
  74. package/dist/components/MenuBarItem.cjs +1 -1
  75. package/dist/components/MenuBarItem.mjs +1 -1
  76. package/dist/components/NotificationCenter.cjs +1 -1
  77. package/dist/components/NotificationCenter.mjs +1 -1
  78. package/dist/components/Pagination.cjs +1 -1
  79. package/dist/components/Pagination.mjs +1 -1
  80. package/dist/components/ShellPanel.cjs +1 -1
  81. package/dist/components/ShellPanel.mjs +1 -1
  82. package/dist/components/Submenu.cjs +1 -1
  83. package/dist/components/Submenu.mjs +1 -1
  84. package/dist/components/Submenu.vue.d.ts.map +1 -1
  85. package/dist/components/TableOfContents.cjs +1 -0
  86. package/dist/components/TableOfContents.d.ts +104 -0
  87. package/dist/components/TableOfContents.mjs +2 -0
  88. package/dist/components/TableOfContents.vue.d.ts +44 -0
  89. package/dist/components/TableOfContents.vue.d.ts.map +1 -0
  90. package/dist/components/TableOfContentsList.vue.d.ts +14 -0
  91. package/dist/components/TableOfContentsList.vue.d.ts.map +1 -0
  92. package/dist/components/Tabs.cjs +1 -1
  93. package/dist/components/Tabs.mjs +1 -1
  94. package/dist/components/Tree.cjs +1 -1
  95. package/dist/components/Tree.d.ts +14 -0
  96. package/dist/components/Tree.mjs +1 -1
  97. package/dist/components/TreeNode.cjs +1 -1
  98. package/dist/components/TreeNode.mjs +1 -1
  99. package/dist/components/TreeNode.vue.d.ts +2 -0
  100. package/dist/components/TreeNode.vue.d.ts.map +1 -1
  101. package/dist/components/Walkthrough.cjs +1 -1
  102. package/dist/components/Walkthrough.mjs +1 -1
  103. package/dist/components/index.d.ts.map +1 -1
  104. package/dist/components/manifest.d.ts +1 -0
  105. package/dist/components/manifest.d.ts.map +1 -1
  106. package/dist/components/manifest.js +1 -0
  107. package/dist/composables/useBlueprint.composable.cjs +1 -1
  108. package/dist/composables/useBlueprint.composable.mjs +1 -1
  109. package/dist/composables/useConfirm.composable.cjs +1 -1
  110. package/dist/composables/useConfirm.composable.mjs +1 -1
  111. package/dist/global.d.ts +4 -0
  112. package/dist/index.cjs +1 -1
  113. package/dist/index.mjs +37 -36
  114. package/dist/main.d.ts +2 -0
  115. package/dist/main.d.ts.map +1 -1
  116. package/dist/styles/Button.css +1 -1
  117. package/dist/styles/InfoHint.css +1 -1
  118. package/dist/styles/TableOfContents.css +1 -0
  119. package/dist/styles/TreeNode.css +1 -1
  120. package/dist/ui.css +4 -3
  121. package/package.json +1 -1
  122. package/dist/Button-B2ngznxj.cjs +0 -1
  123. package/dist/Button-CnwG9SUU.js +0 -99
  124. package/dist/InfoHint-BOYN7Jig.cjs +0 -1
  125. package/dist/Menu-CTCkLSMW.cjs +0 -1
  126. package/dist/Submenu-D5C02DV5.js +0 -123
  127. package/dist/Submenu-DuMYz-uf.cjs +0 -1
  128. package/dist/TreeNode-CyOc2r4y.cjs +0 -1
  129. package/dist/TreeNode-S_qQNbsJ.js +0 -143
  130. /package/dist/{AiLabel-BmUhIOFk.js → AiLabel-BciBQAKB.js} +0 -0
  131. /package/dist/{AiLabel-PATTi5dO.cjs → AiLabel-ClnMVvCl.cjs} +0 -0
  132. /package/dist/{Blueprint.context-BOAtPYlo.js → Blueprint.context-CHfek6nW.js} +0 -0
  133. /package/dist/{Blueprint.context-BUzhZPrF.cjs → Blueprint.context-C_y0TS6a.cjs} +0 -0
  134. /package/dist/{BlueprintBackground-Cd_30GvD.cjs → BlueprintBackground-D58A6eXS.cjs} +0 -0
  135. /package/dist/{BlueprintBackground-1IxGPyUh.js → BlueprintBackground-SJ-ibrkF.js} +0 -0
  136. /package/dist/{BlueprintMinimap-w3Y0VvIx.cjs → BlueprintMinimap-BPqaGiY0.cjs} +0 -0
  137. /package/dist/{BlueprintMinimap-CmFRuqou.js → BlueprintMinimap-De8KVP54.js} +0 -0
  138. /package/dist/{BottomPanel-VNTVAMs3.js → BottomPanel-C7VWbs0V.js} +0 -0
  139. /package/dist/{BottomPanel-CK1NsXtz.cjs → BottomPanel-Di3pv797.cjs} +0 -0
  140. /package/dist/{Form-HC4yg8DG.js → Form-BPHdzd8_.js} +0 -0
  141. /package/dist/{Form-rRMK9twU.cjs → Form-C-l_4RHC.cjs} +0 -0
  142. /package/dist/{ImageCropper-BKKcVuPn.cjs → ImageCropper-BbW7o5mE.cjs} +0 -0
  143. /package/dist/{ImageCropper-CR8HCvg4.js → ImageCropper-DS3QiZ-X.js} +0 -0
  144. /package/dist/{ShellPanel-DnleEQR7.js → ShellPanel-B1byDSRC.js} +0 -0
  145. /package/dist/{ShellPanel-62ajcug-.cjs → ShellPanel-c3FBvVMm.cjs} +0 -0
  146. /package/dist/{Tabs-B2XvVchi.cjs → Tabs-B4r8l7vl.cjs} +0 -0
  147. /package/dist/{Tabs-CSizMNKI.js → Tabs-Cs5i4IGp.js} +0 -0
  148. /package/dist/{TreeContext-XcdJsmjK.cjs → TreeContext-BH2qpPud.cjs} +0 -0
  149. /package/dist/{TreeContext-RyZC10Bs.js → TreeContext-DMADOfuO.js} +0 -0
  150. /package/dist/{pixi-scene-BLuFyySv.cjs → pixi-scene-BmwgRql_.cjs} +0 -0
  151. /package/dist/{pixi-scene-BEkv7XH4.js → pixi-scene-CeviVGrf.js} +0 -0
package/README.md CHANGED
@@ -342,9 +342,10 @@ Most component libraries impose styling opinions that are hard to override. Nubi
342
342
 
343
343
  ### Navigation
344
344
 
345
- | Component | Description |
346
- | :-------- | :-------------------------------------------------------- |
347
- | `NbTabs` | Tab bar with optional panels, line and contained variants |
345
+ | Component | Description |
346
+ | :------------------ | :------------------------------------------------------------------------------------- |
347
+ | `NbTabs` | Tab bar with optional panels, line and contained variants |
348
+ | `NbTableOfContents` | In-page contents: nested section links, scroll-following highlight, docked or floating |
348
349
 
349
350
  ### Onboarding
350
351
 
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
2
- import { n as t, t as n } from "./Blueprint.context-BOAtPYlo.js";
2
+ import { n as t, t as n } from "./Blueprint.context-CHfek6nW.js";
3
3
  import { Fragment as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, defineComponent as l, nextTick as u, normalizeClass as d, normalizeStyle as f, onBeforeUnmount as p, onMounted as m, openBlock as h, provide as g, ref as _, renderList as v, renderSlot as y, unref as b, useSlots as x, vShow as S, watch as C, withCtx as w, withDirectives as T, withModifiers as E } from "vue";
4
4
  //#region src/components/blueprint-port-cache.ts
5
5
  function ee(e) {
@@ -181,7 +181,7 @@ var O = { class: "nb-blueprint__wires" }, k = [
181
181
  async function T() {
182
182
  let e = l.value, t = u.value;
183
183
  if (!(!e || !t)) try {
184
- let [r, { PixiScene: i }] = await Promise.all([import("pixi.js"), import("./pixi-scene-BEkv7XH4.js")]), { width: a, height: o } = w(), s = await i.create(r, {
184
+ let [r, { PixiScene: i }] = await Promise.all([import("pixi.js"), import("./pixi-scene-CeviVGrf.js")]), { width: a, height: o } = w(), s = await i.create(r, {
185
185
  canvas: e,
186
186
  el: t,
187
187
  width: a,
@@ -1 +1 @@
1
- require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Blueprint.context-BUzhZPrF.cjs`);let n=require(`vue`);function r(e){let t=new Map;function n(n,r){let i=`${n}:${r}`,a=t.get(i);if(a&&a.isConnected)return a;a&&t.delete(i);let o=e();if(!o)return null;let s=o.querySelector(`[data-port="${n}:${r}"]`);return s&&t.set(i,s),s}function r(){for(let[e,n]of t)n.isConnected||t.delete(e)}function i(){t.clear()}function a(){return t.size}return{get:n,prune:r,clear:i,size:a}}function i(e){return e instanceof Element?e.parentElement?.classList.contains(`nb-blueprint__canvas`)??!1:!1}var a={class:`nb-blueprint__wires`},o=[`d`,`data-wire-index`,`onMousedown`,`onContextmenu`,`onMousemove`,`onMouseleave`],s=[`d`,`stroke`],c=[`d`,`stroke`],l=[`d`],u=(0,n.defineComponent)({__name:`BlueprintDomRenderer`,props:{panX:{},panY:{},zoom:{},isTransforming:{type:Boolean},wires:{},windowed:{type:Boolean},visibleCards:{},dragWire:{},shouldFlow:{type:Function},levelColoring:{type:Boolean},activityStyle:{},animateConnections:{},background:{},liveData:{}},emits:[`wire-mousedown`,`wire-contextmenu`,`wire-mousemove`,`wire-mouseleave`],setup(e,{emit:t}){let r=e,i=t,u=(0,n.computed)(()=>`translate(${r.panX}px, ${r.panY}px) scale(${r.zoom})`),d=(0,n.computed)(()=>r.isTransforming?`transform`:void 0),f=(0,n.computed)(()=>({transform:u.value,willChange:d.value})),p=(0,n.computed)(()=>({transform:u.value,transformOrigin:`0 0`,willChange:d.value}));return(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,null,[e.background===`none`?(0,n.createCommentVNode)(``,!0):((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:(0,n.normalizeClass)([`nb-blueprint__grid`,`nb-blueprint__grid--${e.background}`]),style:(0,n.normalizeStyle)(f.value)},null,6)),(0,n.createElementVNode)(`div`,{class:`nb-blueprint__canvas`,style:(0,n.normalizeStyle)(p.value)},[((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,a,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`g`,{key:t,class:`nb-blueprint__wire-group`},[(0,n.createElementVNode)(`path`,{d:e.path,fill:`none`,stroke:`transparent`,"stroke-width":`14`,class:`nb-blueprint__wire-hitregion`,"data-wire-index":t,onMousedown:t=>i(`wire-mousedown`,t,e.conn),onContextmenu:(0,n.withModifiers)(t=>i(`wire-contextmenu`,t,e.conn),[`prevent`]),onMousemove:t=>i(`wire-mousemove`,t,e.conn),onMouseleave:t=>i(`wire-mouseleave`,e.conn)},null,40,o),(0,n.createElementVNode)(`path`,{d:e.path,fill:`none`,stroke:e.color,"stroke-width":`1.5`,class:(0,n.normalizeClass)([`nb-blueprint__wire`,{"nb-blueprint__wire--inactive":e.conn.active===!1}]),"pointer-events":`none`},null,10,s)]))),128)),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(t,r)=>(0,n.withDirectives)(((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`flow-${r}`,d:t.path,fill:`none`,stroke:t.color,"stroke-width":`1.5`,"stroke-dasharray":`4 8`,class:`nb-blueprint__wire-flow`,"pointer-events":`none`},null,8,c)),[[n.vShow,e.shouldFlow(t.conn)]])),128)),e.dragWire?((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:0,d:e.dragWire,fill:`none`,stroke:`var(--nb-c-primary)`,"stroke-width":`2`,"stroke-dasharray":`6 3`,opacity:`0.6`},null,8,l)):(0,n.createCommentVNode)(``,!0)])),e.windowed?((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.visibleCards,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.id,class:`nb-blueprint__card-wrapper`,style:(0,n.normalizeStyle)({position:`absolute`,left:`${e.x}px`,top:`${e.y}px`})},[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)],4))),128)):(0,n.renderSlot)(t.$slots,`default`,{key:1},void 0,!0)],4)],64))}}),d=e.t(u,[[`__scopeId`,`data-v-31ed2748`]]),f={class:`nb-blueprint__wires`},p=[`d`,`stroke`],m=[`d`,`data-wire-index`,`onMousedown`,`onContextmenu`,`onMousemove`,`onMouseleave`],h=[`d`],g=(0,n.defineComponent)({__name:`BlueprintPixiRenderer`,props:{panX:{},panY:{},zoom:{},isTransforming:{type:Boolean},wires:{},windowed:{type:Boolean},visibleCards:{},dragWire:{},shouldFlow:{type:Function},levelColoring:{type:Boolean},activityStyle:{},animateConnections:{},background:{},liveData:{}},emits:[`wire-mousedown`,`wire-contextmenu`,`wire-mousemove`,`wire-mouseleave`,`unavailable`],setup(e,{emit:t}){let r=e,i=t,a=(0,n.ref)(),o=(0,n.ref)(),s=(0,n.ref)(!1),c=null,l,u=(0,n.computed)(()=>({transform:`translate(${r.panX}px, ${r.panY}px) scale(${r.zoom})`,transformOrigin:`0 0`,willChange:r.isTransforming?`transform`:`auto`}));function d(){let e=a.value?.parentElement;return{width:e?.clientWidth??0,height:e?.clientHeight??0}}async function g(){let e=a.value,t=o.value;if(!(!e||!t))try{let[n,{PixiScene:i}]=await Promise.all([import(`pixi.js`),Promise.resolve().then(()=>require(`./pixi-scene-BLuFyySv.cjs`))]),{width:o,height:l}=d(),u=await i.create(n,{canvas:e,el:t,width:o,height:l,resolution:window.devicePixelRatio||1,background:r.background,liveData:r.liveData});if(!a.value){u.destroy();return}c=u,_(),s.value=!0,v()}catch(e){i(`unavailable`,e)}}function _(){c&&(c.setCamera(r.panX,r.panY,r.zoom),c.setLevelColoring(r.levelColoring??!1),c.setActivityStyle(r.activityStyle??`flow`),c.setWires(r.wires,r.shouldFlow),c.setMeters(r.visibleCards))}function v(){let e=a.value?.parentElement;e&&(l=new ResizeObserver(()=>{if(!c)return;let{width:e,height:t}=d();c.resize(e,t,window.devicePixelRatio||1)}),l.observe(e))}return(0,n.watch)(()=>[r.panX,r.panY,r.zoom],([e,t,n])=>c?.setCamera(e,t,n)),(0,n.watch)(()=>r.wires,e=>c?.setWires(e,r.shouldFlow)),(0,n.watch)(()=>r.visibleCards,e=>c?.setMeters(e)),(0,n.watch)(()=>r.levelColoring,e=>c?.setLevelColoring(e??!1)),(0,n.watch)(()=>r.activityStyle,e=>c?.setActivityStyle(e??`flow`)),(0,n.watch)(()=>r.animateConnections,()=>c?.setWires(r.wires,r.shouldFlow)),(0,n.watch)(()=>r.background,e=>c?.setBackground(e)),(0,n.onMounted)(g),(0,n.onBeforeUnmount)(()=>{l?.disconnect(),c?.destroy(),c=null}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,null,[(0,n.createElementVNode)(`canvas`,{ref_key:`canvasRef`,ref:a,class:`nb-blueprint-pixi__canvas`},null,512),(0,n.createElementVNode)(`div`,{ref_key:`overlayRef`,ref:o,class:`nb-blueprint__canvas nb-blueprint-pixi__overlay`,style:(0,n.normalizeStyle)(u.value)},[((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,f,[s.value?(0,n.createCommentVNode)(``,!0):((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`w-${t}`,d:e.path,fill:`none`,stroke:e.color,"stroke-width":`1.5`,class:(0,n.normalizeClass)([`nb-blueprint__wire`,{"nb-blueprint__wire--inactive":e.conn.active===!1}]),"pointer-events":`none`},null,10,p))),128)),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`h-${t}`,d:e.path,fill:`none`,stroke:`transparent`,"stroke-width":`14`,class:`nb-blueprint__wire-hitregion`,"data-wire-index":t,onMousedown:t=>i(`wire-mousedown`,t,e.conn),onContextmenu:(0,n.withModifiers)(t=>i(`wire-contextmenu`,t,e.conn),[`prevent`]),onMousemove:t=>i(`wire-mousemove`,t,e.conn),onMouseleave:t=>i(`wire-mouseleave`,e.conn)},null,40,m))),128)),e.dragWire?((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:1,d:e.dragWire,fill:`none`,stroke:`var(--nb-c-primary)`,"stroke-width":`2`,"stroke-dasharray":`6 3`,opacity:`0.6`},null,8,h)):(0,n.createCommentVNode)(``,!0)])),e.windowed?((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.visibleCards,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.id,class:`nb-blueprint__card-wrapper`,style:(0,n.normalizeStyle)({position:`absolute`,left:`${e.x}px`,top:`${e.y}px`})},[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)],4))),128)):(0,n.renderSlot)(t.$slots,`default`,{key:1},void 0,!0)],4)],64))}}),_=e.t(g,[[`__scopeId`,`data-v-6fdf251d`]]),v=class{values=new Map;epoch=0;onChange=void 0;set(e,t){this.values.set(e,t),this.epoch++,this.onChange?.()}setMany(e){for(let t in e)this.values.set(t,e[t]);this.epoch++,this.onChange?.()}replace(e){this.values.clear(),this.setMany(e)}get(e){return this.values.get(e)??0}clear(){this.values.size!==0&&(this.values.clear(),this.epoch++,this.onChange?.())}get size(){return this.values.size}get version(){return this.epoch}};function y(e,t,n={}){let r=n.originX??80,i=n.originY??80,a=n.colGap??420,o=n.rowGap??48,s=n.bandGap??90,c=n.defaultW??220,l=n.defaultH??140,u=new Map;if(!e.length)return u;let d=new Map(e.map(e=>[e.id,e])),f=e=>Math.max(c,d.get(e)?.w||c),p=e=>Math.max(l,d.get(e)?.h||l),m=new Map,h=new Map;for(let t of e)m.set(t.id,new Set),h.set(t.id,new Set);let g=[];for(let e of t)if(!(!d.has(e.from)||!d.has(e.to))&&e.kind!==`ignore`){if(e.kind===`control`){g.push({from:e.from,to:e.to});continue}m.get(e.to).add(e.from),h.get(e.from).add(e.to)}let _=e=>m.get(e).size,v=e=>h.get(e).size,y=e=>_(e)>=2,b=new Map,ee=(e,t=new Set)=>{let n=b.get(e);if(n!==void 0)return n;if(t.has(e))return 0;t.add(e);let r=0;for(let n of m.get(e))r=Math.max(r,ee(n,t)+1);return t.delete(e),b.set(e,r),r};for(let t of e)ee(t.id);let x,S=-1,te=-1;for(let t of e){if(!y(t.id)||v(t.id)===0)continue;let e=b.get(t.id),n=_(t.id);(e>S||e===S&&n>te)&&(S=e,te=n,x=t.id)}let C=new Set;if(x){let e=[x];for(;e.length;){let t=e.pop();if(!C.has(t)){C.add(t);for(let n of h.get(t))e.push(n)}}}let ne=e=>{let t=[...h.get(e)],n=new Set(t);for(;t.length;){let e=t.shift();if(y(e))return e;for(let r of h.get(e))n.has(r)||(n.add(r),t.push(r))}return null},re=e=>y(e)?e:ne(e),w=new Set;for(let t of e){if(_(t.id)!==0||v(t.id)<2)continue;let e=new Set;for(let n of h.get(t.id))e.add(re(n));e.size>1&&w.add(t.id)}let ie=`\0shared`,T=`\0trunk`,E=new Map;for(let t of e){let e=t.id;if(w.has(e)){E.set(e,ie);continue}if(C.has(e)){E.set(e,T);continue}let n=y(e)?e:ne(e);E.set(e,n&&n!==x?n:`direct:${e}`)}let D=e.map(e=>e.id).filter(e=>E.get(e)?.startsWith(`direct:`)),O=new Map(D.map(e=>[e,e])),k=e=>{let t=e;for(;O.get(t)!==t;)t=O.get(t);for(;O.get(e)!==t;){let n=O.get(e);O.set(e,t),e=n}return t};for(let e of t)e.kind===`signal`&&E.get(e.from)?.startsWith(`direct:`)&&E.get(e.to)?.startsWith(`direct:`)&&O.set(k(e.from),k(e.to));for(let e of D)E.set(e,`chain:${k(e)}`);for(let{from:e,to:t}of g){let n=E.get(t);n&&E.has(e)&&E.set(e,n)}for(let t of e)E.has(t.id)||E.set(t.id,`\0orphan`);let A=[...new Set(E.values())].filter(e=>e!==ie&&e!==T),j=t=>e.filter(e=>E.get(e.id)===t);A.sort((e,t)=>j(t).length-j(e).length);let M=new Map;for(let e of A)M.set(e,Math.max(0,...j(e).map(e=>b.get(e.id))));let N=Math.max(0,...M.values()),P=new Map;if(x){P.set(x,0);let e=[x];for(;e.length;){let t=e.shift(),n=P.get(t);for(let r of h.get(t))C.has(r)&&!P.has(r)&&(P.set(r,n+1),e.push(r))}}let F=e=>w.has(e)?-1:C.has(e)?N+1+(P.get(e)??0):N-(M.get(E.get(e))??0)+(b.get(e)??0),I=[...new Set(e.map(e=>F(e.id)))].sort((e,t)=>e-t),L=new Map;for(let t of I)L.set(t,Math.max(c,...e.filter(e=>F(e.id)===t).map(e=>f(e.id))));let ae=new Map,R=r;for(let e of I)ae.set(e,R),R+=L.get(e)+a;let z=new Map,B=e=>e.reduce((e,t)=>e+p(t)+o,0)-o,V=e=>{let t=[...m.get(e),...h.get(e)].map(e=>z.get(e)).filter(e=>e!=null).sort((e,t)=>e-t);return t.length?t[Math.floor(t.length/2)]:0},oe=(e,t)=>{let n=t;for(let t of e)z.set(t,n),n+=p(t)+o},se=e=>{let t=new Map;for(let n of e){let e=F(n);(t.get(e)??t.set(e,[]).get(e)).push(n)}return t},H=i;for(let e of A){let t=se(j(e).map(e=>e.id)),n=l;for(let e of t.values())n=Math.max(n,B(e));for(let[,e]of t)e.sort((e,t)=>V(e)-V(t)),oe(e,H+(n-B(e))/2);H+=n+s}let ce=(i+Math.max(i,H-s))/2;{let e=[...w];oe(e,ce-B(e)/2)}for(let[,e]of se([...C]))oe(e,ce-B(e)/2);for(let t of e)u.set(t.id,{x:ae.get(F(t.id)),y:z.get(t.id)??i});return u}var b={key:0,class:`nb-blueprint__background-slot`,"aria-hidden":`true`},ee={class:`nb-blueprint__chrome`},x=100,S=.2,te=3,C=4,ne=240,re=400,w=1.2,ie=40,T=(0,n.defineComponent)({__name:`Blueprint`,props:{connections:{default:()=>[]},density:{default:`default`},cards:{},cardSizeEstimate:{},animateConnections:{default:`never`},activityStyle:{},wheelMode:{default:`auto`},editable:{type:Boolean,default:!1},renderer:{default:`auto`},background:{default:`dots`},layoutEdgeKind:{}},emits:[`connect`,`disconnect`,`move`,`selection-change`,`focus`,`drop-on-wire`,`wire-hover`,`wire-mouseover`,`wire-mouseout`],setup(e,{expose:a,emit:o}){let s=e,c=(0,n.useSlots)(),l=(0,n.computed)(()=>c.background?`none`:s.background),u=(0,n.ref)(!1),f=(0,n.ref)(!1),p=(0,n.computed)(()=>s.renderer!==`dom`&&u.value&&!f.value?`pixi`:`dom`);function m(){try{let e=document.createElement(`canvas`);return!!(e.getContext(`webgl2`)||e.getContext(`webgl`)||e.getContext(`experimental-webgl`))}catch{return!1}}function h(e){s.renderer===`pixi`&&console.warn(`[NubiscoUI] Blueprint renderer="pixi" unavailable (${e}); using the DOM renderer.`)}(0,n.onMounted)(async()=>{if(!(s.renderer===`dom`||typeof window>`u`)){if(!m()){h(`no WebGL`);return}try{await import(`pixi.js`),u.value=!0}catch{h(`pixi.js not installed`)}}});function g(e){f.value=!0,h(e instanceof Error?e.message:`init failed`)}let T=o,E=(0,n.ref)(),D=(0,n.ref)(0),O=(0,n.ref)(0),k=(0,n.ref)(1),A=(0,n.ref)(0),j=new v,M=(0,n.ref)(!1),N;function P(){M.value=!0,N&&clearTimeout(N),N=setTimeout(()=>{M.value=!1},220)}let F=(0,n.ref)(0),I=(0,n.ref)(0),L=(0,n.ref)(1),ae=0;function R(){F.value=D.value,I.value=O.value,L.value=k.value,ae=performance.now()}(0,n.watch)([D,O,k],()=>{if(!M.value){R();return}performance.now()-ae>=x&&R()}),(0,n.watch)(M,e=>{e||R()});let z=(0,n.ref)({w:0,h:0}),B=r(()=>E.value),V=new Map;function oe(e){for(let[t,n]of V)n.cardId===e&&V.delete(t)}function se(){V.clear()}function H(e,t,n){let r=`${e}:${t}`,i=V.get(r);if(i)return{x:i.x,y:i.y};let a=B.get(e,t);if(!a)return null;let o=a.getBoundingClientRect(),s=(o.left+o.width/2-n.left-D.value)/k.value,c=(o.top+o.height/2-n.top-O.value)/k.value,l=a.closest(`[data-card-id]`)?.getAttribute(`data-card-id`)??``;return V.set(r,{cardId:l,x:s,y:c}),{x:s,y:c}}let ce={width:260,height:200},U=(0,n.ref)(new Set),le=(0,n.ref)(null);function ue(e){le.value=e,T(`focus`,e)}function W(e){U.value=new Set(e),T(`selection-change`,e)}function de(){if(s.cards){W(s.cards.map(e=>e.id));return}if(!E.value)return;let e=[];E.value.querySelectorAll(`[data-card-id]`).forEach(t=>{let n=t.dataset.cardId;n&&e.push(n)}),W(e)}function fe(){W([]),ue(null)}let pe=(0,n.ref)(!1);function me(){let e=document.activeElement;if(!e)return!1;let t=e.tagName;return t===`INPUT`||t===`TEXTAREA`?!0:e.isContentEditable===!0}function he(e){if(e.code===`Space`&&!e.repeat){if(me())return;pe.value=!0,e.preventDefault()}}function ge(e){e.code===`Space`&&(pe.value=!1)}let _e=!1,ve=0,ye=0,be=[`button`,`input`,`select`,`textarea`,`label`,`a[href]`,`[role="button"]`,`[role="slider"]`,`[contenteditable="true"]`,`[data-no-card-drag]`].join(`, `);function xe(e){return!!(e instanceof Element?e:null)?.closest(be)}let Se=[`[role="slider"]`,`[role="spinbutton"]`,`[role="listbox"]`,`[data-canvas-wheel-passthrough]`,`input[type="range"]`,`input[type="number"]`].join(`, `);function Ce(e){let t=e instanceof Element?e:null;if(!t)return!1;if(t.closest(Se))return!0;let n=t;for(;n&&n!==E.value;){let e=window.getComputedStyle(n),t=e.overflowY,r=e.overflowX,i=(t===`auto`||t===`scroll`||t===`overlay`)&&n.scrollHeight>n.clientHeight,a=(r===`auto`||r===`scroll`||r===`overlay`)&&n.scrollWidth>n.clientWidth;if(i||a)return!0;n=n.parentElement}return!1}function we(e){let t=e.target instanceof HTMLElement?e.target:null;if(t?.closest(`.nb-blueprint__chrome`)||t?.closest(`.nb-blueprint-card__port`))return;if(e.button===1){Te(e);return}if(pe.value){Te(e);return}let n=t?.closest(`.nb-blueprint-card`);if(n){Be(e,n,!xe(t));return}Ye(e)}function Te(e){_e=!0,ve=e.clientX-D.value,ye=e.clientY-O.value,document.addEventListener(`mousemove`,Ee),document.addEventListener(`mouseup`,De)}function Ee(e){_e&&(P(),D.value=e.clientX-ve,O.value=e.clientY-ye)}function De(){_e=!1,document.removeEventListener(`mousemove`,Ee),document.removeEventListener(`mouseup`,De)}function Oe(e,t,n){let r=E.value?.getBoundingClientRect();if(!r)return;let i=k.value,a=Math.max(S,Math.min(te,i*n));if(a===i)return;let o=e-r.left,s=t-r.top,c=(o-D.value)/i,l=(s-O.value)/i;D.value=o-c*a,O.value=s-l*a,k.value=a}function ke(e){let t=E.value?.getBoundingClientRect();t&&Oe(t.left+t.width/2,t.top+t.height/2,e)}function Ae(){ke(w)}function je(){ke(1/w)}function Me(e){if(!E.value?.getBoundingClientRect())return;let t=e.ctrlKey;if(!t&&Ce(e.target))return;e.preventDefault(),P();let n;if(n=t||s.wheelMode===`zoom`?`zoom`:(s.wheelMode,`pan`),n===`zoom`){let t=1-e.deltaY*.01;Oe(e.clientX,e.clientY,t)}else D.value-=e.deltaX,O.value-=e.deltaY}let Ne=!1,Pe=null,Fe=0,Ie=0,G=new Map,Le=!1;function Re(e){let t=e;for(;t?.parentElement;){if(t.parentElement.classList.contains(`nb-blueprint__canvas`))return t;t=t.parentElement}return e.parentElement}function K(e){let t=Re(e);if(!t)return{x:0,y:0};let n=parseFloat(t.style.left),r=parseFloat(t.style.top);if(!Number.isNaN(n)&&!Number.isNaN(r))return{x:n,y:r};let i=(t.style.transform||``).match(/translate\(([^,]+)px,\s*([^)]+)px\)/);return i?{x:parseFloat(i[1]),y:parseFloat(i[2])}:{x:t.offsetLeft,y:t.offsetTop}}function ze(e,t,n){let r=Re(e);r&&(r.style.left=`${t}px`,r.style.top=`${n}px`)}function Be(e,t,r=!0){let i=t.dataset.cardId;if(i){if(Fe=e.clientX,Ie=e.clientY,Le=!1,G=new Map,e.shiftKey){let e=new Set(U.value);e.has(i)?e.delete(i):e.add(i),W(Array.from(e))}else U.value.has(i)||W([i]),ue(i);(0,n.nextTick)(()=>{if(E.value)for(let e of U.value){let t=E.value.querySelector(`[data-card-id="${e}"]`);t&&G.set(e,K(t))}}),r&&(document.addEventListener(`mousemove`,He),document.addEventListener(`mouseup`,We))}}function Ve(){if(!E.value)return;let e=[];for(let t of G.keys()){let n=E.value.querySelector(`[data-card-id="${t}"]`);if(n){let r=K(n);e.push({id:t,x:Math.round(r.x),y:Math.round(r.y)})}}e.length&&T(`move`,e)}function He(e){let t=(e.clientX-Fe)/k.value,n=(e.clientY-Ie)/k.value;if(!(!Ne&&Math.abs(t*k.value)<C&&Math.abs(n*k.value)<C)&&(Ne=!0,Le=!0,E.value)){for(let[e,r]of G){let i=E.value.querySelector(`[data-card-id="${e}"]`);i&&ze(i,r.x+t,r.y+n)}if(Ve(),A.value++,G.size===1){let[t]=G.keys();if(t){let n=Ue(e.clientX,e.clientY),r=n?`${n.fromNode}/${n.fromPort}|${n.toNode}/${n.toPort}`:null;r!==Pe&&(Pe=r,T(`wire-hover`,t,n))}}}}function Ue(e,t){if(!E.value)return null;let n=E.value.querySelectorAll(`.nb-blueprint__wire-hitregion`);for(let r of n){let n=r.ownerSVGElement;if(!n)continue;let i=n.getScreenCTM();if(!i)continue;let a=i.inverse(),o=n.createSVGPoint();o.x=e,o.y=t;let s=o.matrixTransform(a);if(r.isPointInStroke(s)){let e=parseInt(r.getAttribute(`data-wire-index`)??`-1`,10),t=e>=0?yt.value[e]:void 0;if(t)return t.conn}}return null}function We(e){if(document.removeEventListener(`mousemove`,He),document.removeEventListener(`mouseup`,We),Le&&(Ve(),e&&G.size===1)){let[t]=G.keys();if(t){let n=Ue(e.clientX,e.clientY);n&&T(`drop-on-wire`,t,n)}}if(Ne=!1,Le=!1,G=new Map,Pe!==null){let[e]=G.keys();e&&T(`wire-hover`,e,null),Pe=null}}let q=(0,n.ref)(null),Ge=!1,Ke=(0,n.computed)(()=>{if(!q.value)return{};let{x1:e,y1:t,x2:n,y2:r}=q.value;return{left:`${Math.min(e,n)}px`,top:`${Math.min(t,r)}px`,width:`${Math.abs(n-e)}px`,height:`${Math.abs(r-t)}px`}}),qe=(0,n.ref)(null);function Je(){if(U.value.size<2||!E.value||q.value)return null;let e=E.value.getBoundingClientRect(),t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of U.value){let o=E.value.querySelector(`[data-card-id="${a}"]`);if(!o)continue;let s=o.getBoundingClientRect(),c=s.left-e.left,l=s.top-e.top;t=Math.min(t,c),n=Math.min(n,l),r=Math.max(r,c+s.width),i=Math.max(i,l+s.height)}return t===1/0?null:{left:`${t-8}px`,top:`${n-8}px`,width:`${r-t+16}px`,height:`${i-n+16}px`}}(0,n.watch)([D,O,k,A,U,q],()=>{qe.value=Je()},{flush:`post`,immediate:!0});function Ye(e){if(!E.value)return;let t=E.value.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;Ge=e.shiftKey,Ge||W([]),q.value={x1:n,y1:r,x2:n,y2:r},document.addEventListener(`mousemove`,Xe),document.addEventListener(`mouseup`,Ze)}function Xe(e){if(!q.value||!E.value)return;let t=E.value.getBoundingClientRect();q.value.x2=e.clientX-t.left,q.value.y2=e.clientY-t.top}function Ze(){if(document.removeEventListener(`mousemove`,Xe),document.removeEventListener(`mouseup`,Ze),!q.value||!E.value){q.value=null;return}let e=E.value.getBoundingClientRect(),{x1:t,y1:n,x2:r,y2:i}=q.value,a=Math.min(t,r),o=Math.min(n,i),s=Math.max(t,r),c=Math.max(n,i);if(Math.abs(r-t)<C&&Math.abs(i-n)<C){Ge||(W([]),ue(null)),q.value=null;return}let l=Ge?[...U.value]:[];E.value.querySelectorAll(`[data-card-id]`).forEach(t=>{let n=t.getBoundingClientRect(),r=n.left-e.left,i=n.top-e.top,u=r+n.width,d=i+n.height;if(r<s&&u>a&&i<c&&d>o){let e=t.dataset.cardId;e&&!l.includes(e)&&l.push(e)}}),W(l),q.value=null}let J=(0,n.ref)(null),Y=(0,n.ref)(null),X=(0,n.ref)(null);function Qe(e){Y.value=e,X.value=null,document.addEventListener(`mousemove`,ft),document.addEventListener(`mouseup`,pt)}function $e(e,t){if(e.button!==0||(e.stopPropagation(),!E.value))return;let n=E.value.getBoundingClientRect(),r=(e.clientX-n.left-D.value)/k.value,i=(e.clientY-n.top-O.value)/k.value,a=ut(t.fromNode,t.fromPort),o=ut(t.toNode,t.toPort);if(!a||!o)return;let s=a.getBoundingClientRect(),c=o.getBoundingClientRect(),l=(s.left+s.width/2-n.left-D.value)/k.value,u=(s.top+s.height/2-n.top-O.value)/k.value,d=(c.left+c.width/2-n.left-D.value)/k.value,f=(c.top+c.height/2-n.top-O.value)/k.value,p=Math.hypot(r-l,i-u),m=Math.hypot(r-d,i-f);if(Math.min(p,m)>ie)return;e.preventDefault();let h=p<m,g=h?o:a;Y.value=h?{nodeId:t.toNode,portId:t.toPort,type:`input`,dataType:dt(g)}:{nodeId:t.fromNode,portId:t.fromPort,type:`output`,dataType:dt(g)},X.value=t,document.addEventListener(`mousemove`,ft),document.addEventListener(`mouseup`,pt)}(0,n.provide)(t.t,{onPortDown:e=>Qe(e),onPortUp:e=>mt(e),dragOrigin:Y,density:(0,n.computed)(()=>s.density),nudge:et,cancelPortDrag:pt});function et(e,t,n){let r=E.value;if(!r)return;let i;if(U.value.has(e))i=Q();else{let t=r.querySelector(`[data-card-id="${e}"]`);if(!t)return;let n=K(t);i=[{id:e,el:t,x:n.x,y:n.y,w:t.offsetWidth,h:t.offsetHeight}]}i.length&&$(i.map(e=>({...e,x:e.x+t,y:e.y+n})))}function tt(e,t){let n=E.value?.getBoundingClientRect(),r=n?.left??0,i=n?.top??0;return{x:(e-r-D.value)/k.value,y:(t-i-O.value)/k.value}}function nt(e,t){let n=E.value?.getBoundingClientRect(),r=n?.left??0,i=n?.top??0;return{clientX:e*k.value+D.value+r,clientY:t*k.value+O.value+i}}(0,n.provide)(t.n,{panX:D,panY:O,zoom:k,selectedIds:U,focusedId:le,selectAll:de,deselectAll:fe,centerView:wt,fitToView:Tt,resetView:Et,getCamera:Dt,setCamera:Ot,zoomIn:Ae,zoomOut:je,alignLeft:kt,alignCenter:At,alignRight:jt,alignTop:Mt,alignMiddle:Nt,alignBottom:Pt,distributeHorizontally:Ft,distributeVertically:It,autoLayout:Lt,screenToCanvas:tt,canvasToScreen:nt,isEditMode:(0,n.computed)(()=>s.editable),viewportSize:z,isTransforming:M,live:j,onPortDown:e=>Qe(e),onPortUp:e=>mt(e)});let Z=(0,n.ref)(null);function rt(e,t){if(!E.value)return;let n=E.value.getBoundingClientRect();Z.value={x:e.clientX-n.left,y:e.clientY-n.top,conn:t}}function it(e,t){T(`wire-mouseover`,t,e.clientX,e.clientY)}function at(e){T(`wire-mouseout`,e)}function ot(){Z.value=null}function st(e){T(`disconnect`,e),ot()}function ct(e){Z.value&&(e.target.closest(`.nb-blueprint__wire-menu`)||ot())}function lt(e){e.key===`Escape`&&Z.value&&ot()}function ut(e,t){return B.get(e,t)}function dt(e){let t=e?.getAttribute(`data-port-data-type`);return t&&t!==`any`?t:void 0}function ft(e){let t=Y.value;if(!t||!E.value)return;let n=E.value.getBoundingClientRect(),r=(e.clientX-n.left-D.value)/k.value,i=(e.clientY-n.top-O.value)/k.value,a=ut(t.nodeId,t.portId);if(!a)return;let o=a.getBoundingClientRect(),s=(o.left+o.width/2-n.left-D.value)/k.value,c=(o.top+o.height/2-n.top-O.value)/k.value,l=Math.abs(r-s)*.5;J.value=`M ${s} ${c} C ${s+l} ${c}, ${r-l} ${i}, ${r} ${i}`}function pt(){Y.value=null,X.value=null,J.value=null,document.removeEventListener(`mousemove`,ft),document.removeEventListener(`mouseup`,pt)}function mt(e){let t=Y.value;if(!t||t.nodeId===e.nodeId||t.type===e.type)return;let n=t.type===`output`?t:e,r=t.type===`output`?e:t,i={fromNode:n.nodeId,fromPort:n.portId,toNode:r.nodeId,toPort:r.portId},a=X.value;a?a.fromNode===i.fromNode&&a.fromPort===i.fromPort&&a.toNode===i.toNode&&a.toPort===i.toPort||(T(`disconnect`,a),T(`connect`,i)):T(`connect`,i),Y.value=null,X.value=null,J.value=null}let ht=new WeakMap;function gt(e){let t=ht.get(e);if(t)return t;let n=e.closest(`.nb-blueprint-card`),r=`var(--nb-c-primary)`;if(n){let e=getComputedStyle(n).getPropertyValue(`--nb-card-color`).trim();e&&!e.startsWith(`var(`)&&(r=e)}return ht.set(e,r),r}function _t(e){let t=e.getAttribute(`data-port-data-type`)??``;return t===`midi`||t.startsWith(`midi:`)}function vt(e){let t=Math.max(0,Math.min(1,e)),n=[34,197,94],r=[250,204,21],i=[239,68,68],a,o,s;t<=.5?(a=n,o=r,s=t*2):(a=r,o=i,s=(t-.5)*2);let c=(e,t)=>Math.round(e+(t-e)*s);return`rgb(${c(a[0],o[0])}, ${c(a[1],o[1])}, ${c(a[2],o[2])})`}let yt=(0,n.computed)(()=>{if(A.value,!E.value)return[];let e=E.value.getBoundingClientRect(),t=L.value,n=ne/t,r=(0-F.value)/t-n,i=(e.width-F.value)/t+n,a=(0-I.value)/t-n,o=(e.height-I.value)/t+n,c=X.value;return s.connections.filter(e=>!c||e.fromNode!==c.fromNode||e.fromPort!==c.fromPort||e.toNode!==c.toNode||e.toPort!==c.toPort).map(t=>{let n=H(t.fromNode,t.fromPort,e),c=H(t.toNode,t.toPort,e);if(!n||!c)return null;let l=n.x,u=n.y,d=c.x,f=c.y,p=Math.abs(d-l)*.4,m=l+p,h=d-p;if(Math.max(l,m,h,d)<r||Math.min(l,m,h,d)>i||(u<f?f:u)<a||(u<f?u:f)>o)return null;let g=ut(t.fromNode,t.fromPort);if(!g)return null;let _=`M ${l} ${u} C ${m} ${u}, ${h} ${f}, ${d} ${f}`,v=gt(g),y=_t(g),b=v;return s.animateConnections===`levels`&&t.active!==!1&&!y&&typeof t.level==`number`&&(b=vt(t.level)),{path:_,conn:t,color:b,isMidi:y}}).filter(Boolean)}),bt=e=>{let t=s.cardSizeEstimate??ce;return{w:e.width??t.width,h:e.height??t.height}},xt=(0,n.computed)(()=>{let e=s.cards;if(!e||e.length===0)return[];let t=L.value,n=re/t,r=(0-F.value)/t-n,i=(z.value.w-F.value)/t+n,a=(0-I.value)/t-n,o=(z.value.h-I.value)/t+n,c=(e,t,n,s)=>n>=r&&e<=i&&s>=a&&t<=o,l=new Map,u=new Set;for(let t of e){l.set(t.id,t);let{w:e,h:n}=bt(t);c(t.x,t.y,t.x+e,t.y+n)&&u.add(t.id)}for(let e of s.connections){let t=l.get(e.fromNode),n=l.get(e.toNode);if(!t||!n||u.has(t.id)&&u.has(n.id))continue;let r=bt(t),i=bt(n),a=t.x+r.w,o=t.y+r.h/2,s=n.x,d=n.y+i.h/2,f=Math.abs(s-a)*.4,p=Math.min(a,a+f,s-f,s),m=Math.max(a,a+f,s-f,s);c(p,o<d?o:d,m,o<d?d:o)&&(u.add(t.id),u.add(n.id))}return e.filter(e=>u.has(e.id))});function St(e){return s.animateConnections===`never`?!1:s.animateConnections===`always`?!0:s.animateConnections===`levels`?!1:e.active!==!1}function Ct(e){let t=1/0,n=1/0,r=-1/0,i=-1/0,a=e&&e.length?new Set(e):null,o=0;if(s.cards){if(s.cards.length===0)return null;for(let e of s.cards){if(a&&!a.has(e.id))continue;let{w:s,h:c}=bt(e);t=Math.min(t,e.x),n=Math.min(n,e.y),r=Math.max(r,e.x+s),i=Math.max(i,e.y+c),o++}return o>0?{minX:t,minY:n,maxX:r,maxY:i}:null}if(!E.value)return null;let c=E.value.querySelectorAll(`[data-card-id]`);return c.length===0?null:(c.forEach(e=>{let s=e;if(a&&!a.has(s.getAttribute(`data-card-id`)??``))return;let c=K(s),l=s.offsetWidth,u=s.offsetHeight;t=Math.min(t,c.x),n=Math.min(n,c.y),r=Math.max(r,c.x+l),i=Math.max(i,c.y+u),o++}),o>0?{minX:t,minY:n,maxX:r,maxY:i}:null)}function wt(){if(k.value=1,!E.value)return;let e=Ct();if(!e){D.value=0,O.value=0;return}let t=E.value.getBoundingClientRect(),n=(e.minX+e.maxX)/2,r=(e.minY+e.maxY)/2;D.value=t.width/2-n,O.value=t.height/2-r}function Tt(e=40,t){if(!E.value)return;let n=Ct(t);if(!n){if(t&&t.length)return;Et();return}let r=E.value.getBoundingClientRect(),i=n.maxX-n.minX,a=n.maxY-n.minY;if(i<=0||a<=0){wt();return}let o=r.width-e*2,s=r.height-e*2,c=o/i,l=s/a,u=Math.max(S,Math.min(te,Math.min(c,l))),d=(n.minX+n.maxX)/2,f=(n.minY+n.maxY)/2;k.value=u,D.value=r.width/2-d*u,O.value=r.height/2-f*u}function Et(){D.value=0,O.value=0,k.value=1}function Dt(){return{panX:D.value,panY:O.value,zoom:k.value}}function Ot(e){typeof e.panX==`number`&&(D.value=e.panX),typeof e.panY==`number`&&(O.value=e.panY),typeof e.zoom==`number`&&(k.value=e.zoom)}function Q(){if(!E.value)return[];let e=[];for(let t of U.value){let n=E.value.querySelector(`[data-card-id="${t}"]`);if(!n)continue;let r=K(n);e.push({id:t,el:n,x:r.x,y:r.y,w:n.offsetWidth,h:n.offsetHeight})}return e}function $(e){let t=[];for(let n of e)n.el&&ze(n.el,n.x,n.y),t.push({id:n.id,x:Math.round(n.x),y:Math.round(n.y)});t.length&&(A.value++,T(`move`,t))}function kt(){let e=Q();if(e.length<2)return;let t=Math.min(...e.map(e=>e.x));e.forEach(e=>e.x=t),$(e)}function At(){let e=Q();if(e.length<2)return;let t=e.map(e=>e.x+e.w/2),n=t.reduce((e,t)=>e+t,0)/t.length;e.forEach(e=>e.x=n-e.w/2),$(e)}function jt(){let e=Q();if(e.length<2)return;let t=Math.max(...e.map(e=>e.x+e.w));e.forEach(e=>e.x=t-e.w),$(e)}function Mt(){let e=Q();if(e.length<2)return;let t=Math.min(...e.map(e=>e.y));e.forEach(e=>e.y=t),$(e)}function Nt(){let e=Q();if(e.length<2)return;let t=e.map(e=>e.y+e.h/2),n=t.reduce((e,t)=>e+t,0)/t.length;e.forEach(e=>e.y=n-e.h/2),$(e)}function Pt(){let e=Q();if(e.length<2)return;let t=Math.max(...e.map(e=>e.y+e.h));e.forEach(e=>e.y=t-e.h),$(e)}function Ft(){let e=Q();if(e.length<3)return;e.sort((e,t)=>e.x-t.x);let t=e[0],n=e[e.length-1],r=e.reduce((e,t)=>e+t.w,0),i=(n.x+n.w-t.x-r)/(e.length-1),a=t.x+t.w+i;for(let t=1;t<e.length-1;t++)e[t].x=a,a+=e[t].w+i;$(e)}function It(){let e=Q();if(e.length<3)return;e.sort((e,t)=>e.y-t.y);let t=e[0],n=e[e.length-1],r=e.reduce((e,t)=>e+t.h,0),i=(n.y+n.h-t.y-r)/(e.length-1),a=t.y+t.h+i;for(let t=1;t<e.length-1;t++)e[t].y=a,a+=e[t].h+i;$(e)}function Lt(e){if(!E.value)return;let t=e?.gapY??40,n=e?.padding??60,r=[];if(s.cards)for(let e of s.cards){let t=E.value.querySelector(`[data-card-id="${e.id}"]`),{w:n,h:i}=bt(e);r.push({id:e.id,el:t,x:e.x,y:e.y,w:e.width??t?.offsetWidth??n,h:e.height??t?.offsetHeight??i})}else E.value.querySelectorAll(`[data-card-id]`).forEach(e=>{let t=e,n=t.dataset.cardId;if(!n)return;let i=K(t);r.push({id:n,el:t,x:i.x,y:i.y,w:t.offsetWidth,h:t.offsetHeight})});if(!r.length)return;let i=new Map(r.map(e=>[e.id,e])),a=r.map(e=>({id:e.id,w:e.w,h:e.h})),o=s.layoutEdgeKind,c=[];for(let e of s.connections)!i.has(e.fromNode)||!i.has(e.toNode)||c.push({from:e.fromNode,to:e.toNode,kind:o?o(e):`signal`});let l=y(a,c,{colGap:e?.gapX,rowGap:t,originX:n,originY:n});for(let e of r){let t=l.get(e.id);t&&(e.x=t.x,e.y=t.y)}$(r)}let Rt=new MutationObserver(e=>{B.prune();let t=!1,n=!1;for(let r of e){if(r.type===`childList`){t=!0;continue}if(!i(r.target))continue;n=!0;let e=r.target.querySelector(`[data-card-id]`)?.getAttribute(`data-card-id`);e&&oe(e)}t&&se(),(t||n)&&A.value++}),zt=null;return(0,n.onMounted)(()=>{if(E.value){let e=E.value.getBoundingClientRect();z.value={w:e.width,h:e.height},typeof ResizeObserver<`u`&&(zt=new ResizeObserver(e=>{let t=e[0]?.contentRect;t&&(z.value={w:t.width,h:t.height})}),zt.observe(E.value)),Rt.observe(E.value,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[`style`]})}window.addEventListener(`keydown`,he),window.addEventListener(`keyup`,ge),document.addEventListener(`mousedown`,ct),document.addEventListener(`keydown`,lt),(0,n.nextTick)(()=>(0,n.nextTick)(Tt))}),(0,n.onBeforeUnmount)(()=>{Rt.disconnect(),zt?.disconnect(),N&&clearTimeout(N),window.removeEventListener(`keydown`,he),window.removeEventListener(`keyup`,ge),document.removeEventListener(`mousedown`,ct),document.removeEventListener(`keydown`,lt)}),a({centerView:wt,fitToView:Tt,resetView:Et,getCamera:Dt,setCamera:Ot,zoomIn:Ae,zoomOut:je,selectedIds:U,focusedId:le,selectAll:de,deselectAll:fe,alignLeft:kt,alignCenter:At,alignRight:jt,alignTop:Mt,alignMiddle:Nt,alignBottom:Pt,distributeHorizontally:Ft,distributeVertically:It,autoLayout:Lt,onPortMouseDown:Qe,onPortMouseUp:mt,panX:D,panY:O,zoom:k,isTransforming:M,live:j}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`containerRef`,ref:E,class:(0,n.normalizeClass)([`nb-blueprint`,{"is-panning":(0,n.unref)(_e),"is-space":pe.value}]),onMousedown:we,onWheel:Me},[r[4]||=(0,n.createElementVNode)(`div`,{class:`nb-blueprint__ambient`},null,-1),t.$slots.background?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,b,[(0,n.renderSlot)(t.$slots,`background`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),p.value===`dom`?((0,n.openBlock)(),(0,n.createBlock)(d,{key:1,"pan-x":D.value,"pan-y":O.value,zoom:k.value,"is-transforming":M.value,wires:yt.value,windowed:!!s.cards,"visible-cards":xt.value,"drag-wire":J.value,"should-flow":St,"level-coloring":e.animateConnections===`levels`,"activity-style":e.activityStyle??`flow`,"animate-connections":e.animateConnections,background:l.value,onWireMousedown:$e,onWireContextmenu:rt,onWireMousemove:it,onWireMouseleave:at},{card:(0,n.withCtx)(({card:e})=>[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)]),default:(0,n.withCtx)(()=>[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)]),_:3},8,[`pan-x`,`pan-y`,`zoom`,`is-transforming`,`wires`,`windowed`,`visible-cards`,`drag-wire`,`level-coloring`,`activity-style`,`animate-connections`,`background`])):((0,n.openBlock)(),(0,n.createBlock)(_,{key:2,"pan-x":D.value,"pan-y":O.value,zoom:k.value,"is-transforming":M.value,wires:yt.value,windowed:!!s.cards,"visible-cards":xt.value,"drag-wire":J.value,"should-flow":St,"level-coloring":e.animateConnections===`levels`,"activity-style":e.activityStyle??`flow`,"animate-connections":e.animateConnections,background:l.value,"live-data":(0,n.unref)(j),onWireMousedown:$e,onWireContextmenu:rt,onWireMousemove:it,onWireMouseleave:at,onUnavailable:g},{card:(0,n.withCtx)(({card:e})=>[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)]),default:(0,n.withCtx)(()=>[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)]),_:3},8,[`pan-x`,`pan-y`,`zoom`,`is-transforming`,`wires`,`windowed`,`visible-cards`,`drag-wire`,`level-coloring`,`activity-style`,`animate-connections`,`background`,`live-data`])),q.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:3,class:`nb-blueprint__marquee nb-blueprint__marquee--dragging`,style:(0,n.normalizeStyle)(Ke.value)},null,4)):(0,n.createCommentVNode)(``,!0),qe.value?((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,{key:4,class:`nb-blueprint__selection-box`,style:(0,n.normalizeStyle)(qe.value)},[...r[3]||=[(0,n.createElementVNode)(`rect`,{x:`0.75`,y:`0.75`,width:`calc(100% - 1.5px)`,height:`calc(100% - 1.5px)`,rx:`4`,ry:`4`,fill:`none`,stroke:`var(--nb-blueprint-marquee-border, var(--nb-c-primary, #6366f1))`,"stroke-width":`1.5`,"stroke-dasharray":`6 4`,class:`nb-blueprint__selection-ants`},null,-1)]],4)):(0,n.createCommentVNode)(``,!0),Z.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:5,class:`nb-blueprint__wire-menu`,style:(0,n.normalizeStyle)({left:`${Z.value.x}px`,top:`${Z.value.y}px`}),role:`menu`,onClick:r[1]||=(0,n.withModifiers)(()=>{},[`stop`]),onContextmenu:r[2]||=(0,n.withModifiers)(()=>{},[`prevent`])},[(0,n.renderSlot)(t.$slots,`wire-menu`,{connection:Z.value.conn,close:ot,disconnect:()=>st(Z.value.conn)},()=>[(0,n.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint__wire-menu-item`,onClick:r[0]||=e=>st(Z.value.conn)},` Disconnect `)],!0)],36)):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`div`,ee,[(0,n.renderSlot)(t.$slots,`chrome`,{},void 0,!0)])],34))}}),E=e.t(T,[[`__scopeId`,`data-v-16839f88`]]);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return E}});
1
+ require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Blueprint.context-C_y0TS6a.cjs`);let n=require(`vue`);function r(e){let t=new Map;function n(n,r){let i=`${n}:${r}`,a=t.get(i);if(a&&a.isConnected)return a;a&&t.delete(i);let o=e();if(!o)return null;let s=o.querySelector(`[data-port="${n}:${r}"]`);return s&&t.set(i,s),s}function r(){for(let[e,n]of t)n.isConnected||t.delete(e)}function i(){t.clear()}function a(){return t.size}return{get:n,prune:r,clear:i,size:a}}function i(e){return e instanceof Element?e.parentElement?.classList.contains(`nb-blueprint__canvas`)??!1:!1}var a={class:`nb-blueprint__wires`},o=[`d`,`data-wire-index`,`onMousedown`,`onContextmenu`,`onMousemove`,`onMouseleave`],s=[`d`,`stroke`],c=[`d`,`stroke`],l=[`d`],u=(0,n.defineComponent)({__name:`BlueprintDomRenderer`,props:{panX:{},panY:{},zoom:{},isTransforming:{type:Boolean},wires:{},windowed:{type:Boolean},visibleCards:{},dragWire:{},shouldFlow:{type:Function},levelColoring:{type:Boolean},activityStyle:{},animateConnections:{},background:{},liveData:{}},emits:[`wire-mousedown`,`wire-contextmenu`,`wire-mousemove`,`wire-mouseleave`],setup(e,{emit:t}){let r=e,i=t,u=(0,n.computed)(()=>`translate(${r.panX}px, ${r.panY}px) scale(${r.zoom})`),d=(0,n.computed)(()=>r.isTransforming?`transform`:void 0),f=(0,n.computed)(()=>({transform:u.value,willChange:d.value})),p=(0,n.computed)(()=>({transform:u.value,transformOrigin:`0 0`,willChange:d.value}));return(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,null,[e.background===`none`?(0,n.createCommentVNode)(``,!0):((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:(0,n.normalizeClass)([`nb-blueprint__grid`,`nb-blueprint__grid--${e.background}`]),style:(0,n.normalizeStyle)(f.value)},null,6)),(0,n.createElementVNode)(`div`,{class:`nb-blueprint__canvas`,style:(0,n.normalizeStyle)(p.value)},[((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,a,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`g`,{key:t,class:`nb-blueprint__wire-group`},[(0,n.createElementVNode)(`path`,{d:e.path,fill:`none`,stroke:`transparent`,"stroke-width":`14`,class:`nb-blueprint__wire-hitregion`,"data-wire-index":t,onMousedown:t=>i(`wire-mousedown`,t,e.conn),onContextmenu:(0,n.withModifiers)(t=>i(`wire-contextmenu`,t,e.conn),[`prevent`]),onMousemove:t=>i(`wire-mousemove`,t,e.conn),onMouseleave:t=>i(`wire-mouseleave`,e.conn)},null,40,o),(0,n.createElementVNode)(`path`,{d:e.path,fill:`none`,stroke:e.color,"stroke-width":`1.5`,class:(0,n.normalizeClass)([`nb-blueprint__wire`,{"nb-blueprint__wire--inactive":e.conn.active===!1}]),"pointer-events":`none`},null,10,s)]))),128)),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(t,r)=>(0,n.withDirectives)(((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`flow-${r}`,d:t.path,fill:`none`,stroke:t.color,"stroke-width":`1.5`,"stroke-dasharray":`4 8`,class:`nb-blueprint__wire-flow`,"pointer-events":`none`},null,8,c)),[[n.vShow,e.shouldFlow(t.conn)]])),128)),e.dragWire?((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:0,d:e.dragWire,fill:`none`,stroke:`var(--nb-c-primary)`,"stroke-width":`2`,"stroke-dasharray":`6 3`,opacity:`0.6`},null,8,l)):(0,n.createCommentVNode)(``,!0)])),e.windowed?((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.visibleCards,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.id,class:`nb-blueprint__card-wrapper`,style:(0,n.normalizeStyle)({position:`absolute`,left:`${e.x}px`,top:`${e.y}px`})},[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)],4))),128)):(0,n.renderSlot)(t.$slots,`default`,{key:1},void 0,!0)],4)],64))}}),d=e.t(u,[[`__scopeId`,`data-v-31ed2748`]]),f={class:`nb-blueprint__wires`},p=[`d`,`stroke`],m=[`d`,`data-wire-index`,`onMousedown`,`onContextmenu`,`onMousemove`,`onMouseleave`],h=[`d`],g=(0,n.defineComponent)({__name:`BlueprintPixiRenderer`,props:{panX:{},panY:{},zoom:{},isTransforming:{type:Boolean},wires:{},windowed:{type:Boolean},visibleCards:{},dragWire:{},shouldFlow:{type:Function},levelColoring:{type:Boolean},activityStyle:{},animateConnections:{},background:{},liveData:{}},emits:[`wire-mousedown`,`wire-contextmenu`,`wire-mousemove`,`wire-mouseleave`,`unavailable`],setup(e,{emit:t}){let r=e,i=t,a=(0,n.ref)(),o=(0,n.ref)(),s=(0,n.ref)(!1),c=null,l,u=(0,n.computed)(()=>({transform:`translate(${r.panX}px, ${r.panY}px) scale(${r.zoom})`,transformOrigin:`0 0`,willChange:r.isTransforming?`transform`:`auto`}));function d(){let e=a.value?.parentElement;return{width:e?.clientWidth??0,height:e?.clientHeight??0}}async function g(){let e=a.value,t=o.value;if(!(!e||!t))try{let[n,{PixiScene:i}]=await Promise.all([import(`pixi.js`),Promise.resolve().then(()=>require(`./pixi-scene-BmwgRql_.cjs`))]),{width:o,height:l}=d(),u=await i.create(n,{canvas:e,el:t,width:o,height:l,resolution:window.devicePixelRatio||1,background:r.background,liveData:r.liveData});if(!a.value){u.destroy();return}c=u,_(),s.value=!0,v()}catch(e){i(`unavailable`,e)}}function _(){c&&(c.setCamera(r.panX,r.panY,r.zoom),c.setLevelColoring(r.levelColoring??!1),c.setActivityStyle(r.activityStyle??`flow`),c.setWires(r.wires,r.shouldFlow),c.setMeters(r.visibleCards))}function v(){let e=a.value?.parentElement;e&&(l=new ResizeObserver(()=>{if(!c)return;let{width:e,height:t}=d();c.resize(e,t,window.devicePixelRatio||1)}),l.observe(e))}return(0,n.watch)(()=>[r.panX,r.panY,r.zoom],([e,t,n])=>c?.setCamera(e,t,n)),(0,n.watch)(()=>r.wires,e=>c?.setWires(e,r.shouldFlow)),(0,n.watch)(()=>r.visibleCards,e=>c?.setMeters(e)),(0,n.watch)(()=>r.levelColoring,e=>c?.setLevelColoring(e??!1)),(0,n.watch)(()=>r.activityStyle,e=>c?.setActivityStyle(e??`flow`)),(0,n.watch)(()=>r.animateConnections,()=>c?.setWires(r.wires,r.shouldFlow)),(0,n.watch)(()=>r.background,e=>c?.setBackground(e)),(0,n.onMounted)(g),(0,n.onBeforeUnmount)(()=>{l?.disconnect(),c?.destroy(),c=null}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,null,[(0,n.createElementVNode)(`canvas`,{ref_key:`canvasRef`,ref:a,class:`nb-blueprint-pixi__canvas`},null,512),(0,n.createElementVNode)(`div`,{ref_key:`overlayRef`,ref:o,class:`nb-blueprint__canvas nb-blueprint-pixi__overlay`,style:(0,n.normalizeStyle)(u.value)},[((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,f,[s.value?(0,n.createCommentVNode)(``,!0):((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`w-${t}`,d:e.path,fill:`none`,stroke:e.color,"stroke-width":`1.5`,class:(0,n.normalizeClass)([`nb-blueprint__wire`,{"nb-blueprint__wire--inactive":e.conn.active===!1}]),"pointer-events":`none`},null,10,p))),128)),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.wires,(e,t)=>((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:`h-${t}`,d:e.path,fill:`none`,stroke:`transparent`,"stroke-width":`14`,class:`nb-blueprint__wire-hitregion`,"data-wire-index":t,onMousedown:t=>i(`wire-mousedown`,t,e.conn),onContextmenu:(0,n.withModifiers)(t=>i(`wire-contextmenu`,t,e.conn),[`prevent`]),onMousemove:t=>i(`wire-mousemove`,t,e.conn),onMouseleave:t=>i(`wire-mouseleave`,e.conn)},null,40,m))),128)),e.dragWire?((0,n.openBlock)(),(0,n.createElementBlock)(`path`,{key:1,d:e.dragWire,fill:`none`,stroke:`var(--nb-c-primary)`,"stroke-width":`2`,"stroke-dasharray":`6 3`,opacity:`0.6`},null,8,h)):(0,n.createCommentVNode)(``,!0)])),e.windowed?((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,{key:0},(0,n.renderList)(e.visibleCards,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.id,class:`nb-blueprint__card-wrapper`,style:(0,n.normalizeStyle)({position:`absolute`,left:`${e.x}px`,top:`${e.y}px`})},[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)],4))),128)):(0,n.renderSlot)(t.$slots,`default`,{key:1},void 0,!0)],4)],64))}}),_=e.t(g,[[`__scopeId`,`data-v-6fdf251d`]]),v=class{values=new Map;epoch=0;onChange=void 0;set(e,t){this.values.set(e,t),this.epoch++,this.onChange?.()}setMany(e){for(let t in e)this.values.set(t,e[t]);this.epoch++,this.onChange?.()}replace(e){this.values.clear(),this.setMany(e)}get(e){return this.values.get(e)??0}clear(){this.values.size!==0&&(this.values.clear(),this.epoch++,this.onChange?.())}get size(){return this.values.size}get version(){return this.epoch}};function y(e,t,n={}){let r=n.originX??80,i=n.originY??80,a=n.colGap??420,o=n.rowGap??48,s=n.bandGap??90,c=n.defaultW??220,l=n.defaultH??140,u=new Map;if(!e.length)return u;let d=new Map(e.map(e=>[e.id,e])),f=e=>Math.max(c,d.get(e)?.w||c),p=e=>Math.max(l,d.get(e)?.h||l),m=new Map,h=new Map;for(let t of e)m.set(t.id,new Set),h.set(t.id,new Set);let g=[];for(let e of t)if(!(!d.has(e.from)||!d.has(e.to))&&e.kind!==`ignore`){if(e.kind===`control`){g.push({from:e.from,to:e.to});continue}m.get(e.to).add(e.from),h.get(e.from).add(e.to)}let _=e=>m.get(e).size,v=e=>h.get(e).size,y=e=>_(e)>=2,b=new Map,ee=(e,t=new Set)=>{let n=b.get(e);if(n!==void 0)return n;if(t.has(e))return 0;t.add(e);let r=0;for(let n of m.get(e))r=Math.max(r,ee(n,t)+1);return t.delete(e),b.set(e,r),r};for(let t of e)ee(t.id);let x,S=-1,te=-1;for(let t of e){if(!y(t.id)||v(t.id)===0)continue;let e=b.get(t.id),n=_(t.id);(e>S||e===S&&n>te)&&(S=e,te=n,x=t.id)}let C=new Set;if(x){let e=[x];for(;e.length;){let t=e.pop();if(!C.has(t)){C.add(t);for(let n of h.get(t))e.push(n)}}}let ne=e=>{let t=[...h.get(e)],n=new Set(t);for(;t.length;){let e=t.shift();if(y(e))return e;for(let r of h.get(e))n.has(r)||(n.add(r),t.push(r))}return null},re=e=>y(e)?e:ne(e),w=new Set;for(let t of e){if(_(t.id)!==0||v(t.id)<2)continue;let e=new Set;for(let n of h.get(t.id))e.add(re(n));e.size>1&&w.add(t.id)}let ie=`\0shared`,T=`\0trunk`,E=new Map;for(let t of e){let e=t.id;if(w.has(e)){E.set(e,ie);continue}if(C.has(e)){E.set(e,T);continue}let n=y(e)?e:ne(e);E.set(e,n&&n!==x?n:`direct:${e}`)}let D=e.map(e=>e.id).filter(e=>E.get(e)?.startsWith(`direct:`)),O=new Map(D.map(e=>[e,e])),k=e=>{let t=e;for(;O.get(t)!==t;)t=O.get(t);for(;O.get(e)!==t;){let n=O.get(e);O.set(e,t),e=n}return t};for(let e of t)e.kind===`signal`&&E.get(e.from)?.startsWith(`direct:`)&&E.get(e.to)?.startsWith(`direct:`)&&O.set(k(e.from),k(e.to));for(let e of D)E.set(e,`chain:${k(e)}`);for(let{from:e,to:t}of g){let n=E.get(t);n&&E.has(e)&&E.set(e,n)}for(let t of e)E.has(t.id)||E.set(t.id,`\0orphan`);let A=[...new Set(E.values())].filter(e=>e!==ie&&e!==T),j=t=>e.filter(e=>E.get(e.id)===t);A.sort((e,t)=>j(t).length-j(e).length);let M=new Map;for(let e of A)M.set(e,Math.max(0,...j(e).map(e=>b.get(e.id))));let N=Math.max(0,...M.values()),P=new Map;if(x){P.set(x,0);let e=[x];for(;e.length;){let t=e.shift(),n=P.get(t);for(let r of h.get(t))C.has(r)&&!P.has(r)&&(P.set(r,n+1),e.push(r))}}let F=e=>w.has(e)?-1:C.has(e)?N+1+(P.get(e)??0):N-(M.get(E.get(e))??0)+(b.get(e)??0),I=[...new Set(e.map(e=>F(e.id)))].sort((e,t)=>e-t),L=new Map;for(let t of I)L.set(t,Math.max(c,...e.filter(e=>F(e.id)===t).map(e=>f(e.id))));let ae=new Map,R=r;for(let e of I)ae.set(e,R),R+=L.get(e)+a;let z=new Map,B=e=>e.reduce((e,t)=>e+p(t)+o,0)-o,V=e=>{let t=[...m.get(e),...h.get(e)].map(e=>z.get(e)).filter(e=>e!=null).sort((e,t)=>e-t);return t.length?t[Math.floor(t.length/2)]:0},oe=(e,t)=>{let n=t;for(let t of e)z.set(t,n),n+=p(t)+o},se=e=>{let t=new Map;for(let n of e){let e=F(n);(t.get(e)??t.set(e,[]).get(e)).push(n)}return t},H=i;for(let e of A){let t=se(j(e).map(e=>e.id)),n=l;for(let e of t.values())n=Math.max(n,B(e));for(let[,e]of t)e.sort((e,t)=>V(e)-V(t)),oe(e,H+(n-B(e))/2);H+=n+s}let ce=(i+Math.max(i,H-s))/2;{let e=[...w];oe(e,ce-B(e)/2)}for(let[,e]of se([...C]))oe(e,ce-B(e)/2);for(let t of e)u.set(t.id,{x:ae.get(F(t.id)),y:z.get(t.id)??i});return u}var b={key:0,class:`nb-blueprint__background-slot`,"aria-hidden":`true`},ee={class:`nb-blueprint__chrome`},x=100,S=.2,te=3,C=4,ne=240,re=400,w=1.2,ie=40,T=(0,n.defineComponent)({__name:`Blueprint`,props:{connections:{default:()=>[]},density:{default:`default`},cards:{},cardSizeEstimate:{},animateConnections:{default:`never`},activityStyle:{},wheelMode:{default:`auto`},editable:{type:Boolean,default:!1},renderer:{default:`auto`},background:{default:`dots`},layoutEdgeKind:{}},emits:[`connect`,`disconnect`,`move`,`selection-change`,`focus`,`drop-on-wire`,`wire-hover`,`wire-mouseover`,`wire-mouseout`],setup(e,{expose:a,emit:o}){let s=e,c=(0,n.useSlots)(),l=(0,n.computed)(()=>c.background?`none`:s.background),u=(0,n.ref)(!1),f=(0,n.ref)(!1),p=(0,n.computed)(()=>s.renderer!==`dom`&&u.value&&!f.value?`pixi`:`dom`);function m(){try{let e=document.createElement(`canvas`);return!!(e.getContext(`webgl2`)||e.getContext(`webgl`)||e.getContext(`experimental-webgl`))}catch{return!1}}function h(e){s.renderer===`pixi`&&console.warn(`[NubiscoUI] Blueprint renderer="pixi" unavailable (${e}); using the DOM renderer.`)}(0,n.onMounted)(async()=>{if(!(s.renderer===`dom`||typeof window>`u`)){if(!m()){h(`no WebGL`);return}try{await import(`pixi.js`),u.value=!0}catch{h(`pixi.js not installed`)}}});function g(e){f.value=!0,h(e instanceof Error?e.message:`init failed`)}let T=o,E=(0,n.ref)(),D=(0,n.ref)(0),O=(0,n.ref)(0),k=(0,n.ref)(1),A=(0,n.ref)(0),j=new v,M=(0,n.ref)(!1),N;function P(){M.value=!0,N&&clearTimeout(N),N=setTimeout(()=>{M.value=!1},220)}let F=(0,n.ref)(0),I=(0,n.ref)(0),L=(0,n.ref)(1),ae=0;function R(){F.value=D.value,I.value=O.value,L.value=k.value,ae=performance.now()}(0,n.watch)([D,O,k],()=>{if(!M.value){R();return}performance.now()-ae>=x&&R()}),(0,n.watch)(M,e=>{e||R()});let z=(0,n.ref)({w:0,h:0}),B=r(()=>E.value),V=new Map;function oe(e){for(let[t,n]of V)n.cardId===e&&V.delete(t)}function se(){V.clear()}function H(e,t,n){let r=`${e}:${t}`,i=V.get(r);if(i)return{x:i.x,y:i.y};let a=B.get(e,t);if(!a)return null;let o=a.getBoundingClientRect(),s=(o.left+o.width/2-n.left-D.value)/k.value,c=(o.top+o.height/2-n.top-O.value)/k.value,l=a.closest(`[data-card-id]`)?.getAttribute(`data-card-id`)??``;return V.set(r,{cardId:l,x:s,y:c}),{x:s,y:c}}let ce={width:260,height:200},U=(0,n.ref)(new Set),le=(0,n.ref)(null);function ue(e){le.value=e,T(`focus`,e)}function W(e){U.value=new Set(e),T(`selection-change`,e)}function de(){if(s.cards){W(s.cards.map(e=>e.id));return}if(!E.value)return;let e=[];E.value.querySelectorAll(`[data-card-id]`).forEach(t=>{let n=t.dataset.cardId;n&&e.push(n)}),W(e)}function fe(){W([]),ue(null)}let pe=(0,n.ref)(!1);function me(){let e=document.activeElement;if(!e)return!1;let t=e.tagName;return t===`INPUT`||t===`TEXTAREA`?!0:e.isContentEditable===!0}function he(e){if(e.code===`Space`&&!e.repeat){if(me())return;pe.value=!0,e.preventDefault()}}function ge(e){e.code===`Space`&&(pe.value=!1)}let _e=!1,ve=0,ye=0,be=[`button`,`input`,`select`,`textarea`,`label`,`a[href]`,`[role="button"]`,`[role="slider"]`,`[contenteditable="true"]`,`[data-no-card-drag]`].join(`, `);function xe(e){return!!(e instanceof Element?e:null)?.closest(be)}let Se=[`[role="slider"]`,`[role="spinbutton"]`,`[role="listbox"]`,`[data-canvas-wheel-passthrough]`,`input[type="range"]`,`input[type="number"]`].join(`, `);function Ce(e){let t=e instanceof Element?e:null;if(!t)return!1;if(t.closest(Se))return!0;let n=t;for(;n&&n!==E.value;){let e=window.getComputedStyle(n),t=e.overflowY,r=e.overflowX,i=(t===`auto`||t===`scroll`||t===`overlay`)&&n.scrollHeight>n.clientHeight,a=(r===`auto`||r===`scroll`||r===`overlay`)&&n.scrollWidth>n.clientWidth;if(i||a)return!0;n=n.parentElement}return!1}function we(e){let t=e.target instanceof HTMLElement?e.target:null;if(t?.closest(`.nb-blueprint__chrome`)||t?.closest(`.nb-blueprint-card__port`))return;if(e.button===1){Te(e);return}if(pe.value){Te(e);return}let n=t?.closest(`.nb-blueprint-card`);if(n){Be(e,n,!xe(t));return}Ye(e)}function Te(e){_e=!0,ve=e.clientX-D.value,ye=e.clientY-O.value,document.addEventListener(`mousemove`,Ee),document.addEventListener(`mouseup`,De)}function Ee(e){_e&&(P(),D.value=e.clientX-ve,O.value=e.clientY-ye)}function De(){_e=!1,document.removeEventListener(`mousemove`,Ee),document.removeEventListener(`mouseup`,De)}function Oe(e,t,n){let r=E.value?.getBoundingClientRect();if(!r)return;let i=k.value,a=Math.max(S,Math.min(te,i*n));if(a===i)return;let o=e-r.left,s=t-r.top,c=(o-D.value)/i,l=(s-O.value)/i;D.value=o-c*a,O.value=s-l*a,k.value=a}function ke(e){let t=E.value?.getBoundingClientRect();t&&Oe(t.left+t.width/2,t.top+t.height/2,e)}function Ae(){ke(w)}function je(){ke(1/w)}function Me(e){if(!E.value?.getBoundingClientRect())return;let t=e.ctrlKey;if(!t&&Ce(e.target))return;e.preventDefault(),P();let n;if(n=t||s.wheelMode===`zoom`?`zoom`:(s.wheelMode,`pan`),n===`zoom`){let t=1-e.deltaY*.01;Oe(e.clientX,e.clientY,t)}else D.value-=e.deltaX,O.value-=e.deltaY}let Ne=!1,Pe=null,Fe=0,Ie=0,G=new Map,Le=!1;function Re(e){let t=e;for(;t?.parentElement;){if(t.parentElement.classList.contains(`nb-blueprint__canvas`))return t;t=t.parentElement}return e.parentElement}function K(e){let t=Re(e);if(!t)return{x:0,y:0};let n=parseFloat(t.style.left),r=parseFloat(t.style.top);if(!Number.isNaN(n)&&!Number.isNaN(r))return{x:n,y:r};let i=(t.style.transform||``).match(/translate\(([^,]+)px,\s*([^)]+)px\)/);return i?{x:parseFloat(i[1]),y:parseFloat(i[2])}:{x:t.offsetLeft,y:t.offsetTop}}function ze(e,t,n){let r=Re(e);r&&(r.style.left=`${t}px`,r.style.top=`${n}px`)}function Be(e,t,r=!0){let i=t.dataset.cardId;if(i){if(Fe=e.clientX,Ie=e.clientY,Le=!1,G=new Map,e.shiftKey){let e=new Set(U.value);e.has(i)?e.delete(i):e.add(i),W(Array.from(e))}else U.value.has(i)||W([i]),ue(i);(0,n.nextTick)(()=>{if(E.value)for(let e of U.value){let t=E.value.querySelector(`[data-card-id="${e}"]`);t&&G.set(e,K(t))}}),r&&(document.addEventListener(`mousemove`,He),document.addEventListener(`mouseup`,We))}}function Ve(){if(!E.value)return;let e=[];for(let t of G.keys()){let n=E.value.querySelector(`[data-card-id="${t}"]`);if(n){let r=K(n);e.push({id:t,x:Math.round(r.x),y:Math.round(r.y)})}}e.length&&T(`move`,e)}function He(e){let t=(e.clientX-Fe)/k.value,n=(e.clientY-Ie)/k.value;if(!(!Ne&&Math.abs(t*k.value)<C&&Math.abs(n*k.value)<C)&&(Ne=!0,Le=!0,E.value)){for(let[e,r]of G){let i=E.value.querySelector(`[data-card-id="${e}"]`);i&&ze(i,r.x+t,r.y+n)}if(Ve(),A.value++,G.size===1){let[t]=G.keys();if(t){let n=Ue(e.clientX,e.clientY),r=n?`${n.fromNode}/${n.fromPort}|${n.toNode}/${n.toPort}`:null;r!==Pe&&(Pe=r,T(`wire-hover`,t,n))}}}}function Ue(e,t){if(!E.value)return null;let n=E.value.querySelectorAll(`.nb-blueprint__wire-hitregion`);for(let r of n){let n=r.ownerSVGElement;if(!n)continue;let i=n.getScreenCTM();if(!i)continue;let a=i.inverse(),o=n.createSVGPoint();o.x=e,o.y=t;let s=o.matrixTransform(a);if(r.isPointInStroke(s)){let e=parseInt(r.getAttribute(`data-wire-index`)??`-1`,10),t=e>=0?yt.value[e]:void 0;if(t)return t.conn}}return null}function We(e){if(document.removeEventListener(`mousemove`,He),document.removeEventListener(`mouseup`,We),Le&&(Ve(),e&&G.size===1)){let[t]=G.keys();if(t){let n=Ue(e.clientX,e.clientY);n&&T(`drop-on-wire`,t,n)}}if(Ne=!1,Le=!1,G=new Map,Pe!==null){let[e]=G.keys();e&&T(`wire-hover`,e,null),Pe=null}}let q=(0,n.ref)(null),Ge=!1,Ke=(0,n.computed)(()=>{if(!q.value)return{};let{x1:e,y1:t,x2:n,y2:r}=q.value;return{left:`${Math.min(e,n)}px`,top:`${Math.min(t,r)}px`,width:`${Math.abs(n-e)}px`,height:`${Math.abs(r-t)}px`}}),qe=(0,n.ref)(null);function Je(){if(U.value.size<2||!E.value||q.value)return null;let e=E.value.getBoundingClientRect(),t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of U.value){let o=E.value.querySelector(`[data-card-id="${a}"]`);if(!o)continue;let s=o.getBoundingClientRect(),c=s.left-e.left,l=s.top-e.top;t=Math.min(t,c),n=Math.min(n,l),r=Math.max(r,c+s.width),i=Math.max(i,l+s.height)}return t===1/0?null:{left:`${t-8}px`,top:`${n-8}px`,width:`${r-t+16}px`,height:`${i-n+16}px`}}(0,n.watch)([D,O,k,A,U,q],()=>{qe.value=Je()},{flush:`post`,immediate:!0});function Ye(e){if(!E.value)return;let t=E.value.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;Ge=e.shiftKey,Ge||W([]),q.value={x1:n,y1:r,x2:n,y2:r},document.addEventListener(`mousemove`,Xe),document.addEventListener(`mouseup`,Ze)}function Xe(e){if(!q.value||!E.value)return;let t=E.value.getBoundingClientRect();q.value.x2=e.clientX-t.left,q.value.y2=e.clientY-t.top}function Ze(){if(document.removeEventListener(`mousemove`,Xe),document.removeEventListener(`mouseup`,Ze),!q.value||!E.value){q.value=null;return}let e=E.value.getBoundingClientRect(),{x1:t,y1:n,x2:r,y2:i}=q.value,a=Math.min(t,r),o=Math.min(n,i),s=Math.max(t,r),c=Math.max(n,i);if(Math.abs(r-t)<C&&Math.abs(i-n)<C){Ge||(W([]),ue(null)),q.value=null;return}let l=Ge?[...U.value]:[];E.value.querySelectorAll(`[data-card-id]`).forEach(t=>{let n=t.getBoundingClientRect(),r=n.left-e.left,i=n.top-e.top,u=r+n.width,d=i+n.height;if(r<s&&u>a&&i<c&&d>o){let e=t.dataset.cardId;e&&!l.includes(e)&&l.push(e)}}),W(l),q.value=null}let J=(0,n.ref)(null),Y=(0,n.ref)(null),X=(0,n.ref)(null);function Qe(e){Y.value=e,X.value=null,document.addEventListener(`mousemove`,ft),document.addEventListener(`mouseup`,pt)}function $e(e,t){if(e.button!==0||(e.stopPropagation(),!E.value))return;let n=E.value.getBoundingClientRect(),r=(e.clientX-n.left-D.value)/k.value,i=(e.clientY-n.top-O.value)/k.value,a=ut(t.fromNode,t.fromPort),o=ut(t.toNode,t.toPort);if(!a||!o)return;let s=a.getBoundingClientRect(),c=o.getBoundingClientRect(),l=(s.left+s.width/2-n.left-D.value)/k.value,u=(s.top+s.height/2-n.top-O.value)/k.value,d=(c.left+c.width/2-n.left-D.value)/k.value,f=(c.top+c.height/2-n.top-O.value)/k.value,p=Math.hypot(r-l,i-u),m=Math.hypot(r-d,i-f);if(Math.min(p,m)>ie)return;e.preventDefault();let h=p<m,g=h?o:a;Y.value=h?{nodeId:t.toNode,portId:t.toPort,type:`input`,dataType:dt(g)}:{nodeId:t.fromNode,portId:t.fromPort,type:`output`,dataType:dt(g)},X.value=t,document.addEventListener(`mousemove`,ft),document.addEventListener(`mouseup`,pt)}(0,n.provide)(t.t,{onPortDown:e=>Qe(e),onPortUp:e=>mt(e),dragOrigin:Y,density:(0,n.computed)(()=>s.density),nudge:et,cancelPortDrag:pt});function et(e,t,n){let r=E.value;if(!r)return;let i;if(U.value.has(e))i=Q();else{let t=r.querySelector(`[data-card-id="${e}"]`);if(!t)return;let n=K(t);i=[{id:e,el:t,x:n.x,y:n.y,w:t.offsetWidth,h:t.offsetHeight}]}i.length&&$(i.map(e=>({...e,x:e.x+t,y:e.y+n})))}function tt(e,t){let n=E.value?.getBoundingClientRect(),r=n?.left??0,i=n?.top??0;return{x:(e-r-D.value)/k.value,y:(t-i-O.value)/k.value}}function nt(e,t){let n=E.value?.getBoundingClientRect(),r=n?.left??0,i=n?.top??0;return{clientX:e*k.value+D.value+r,clientY:t*k.value+O.value+i}}(0,n.provide)(t.n,{panX:D,panY:O,zoom:k,selectedIds:U,focusedId:le,selectAll:de,deselectAll:fe,centerView:wt,fitToView:Tt,resetView:Et,getCamera:Dt,setCamera:Ot,zoomIn:Ae,zoomOut:je,alignLeft:kt,alignCenter:At,alignRight:jt,alignTop:Mt,alignMiddle:Nt,alignBottom:Pt,distributeHorizontally:Ft,distributeVertically:It,autoLayout:Lt,screenToCanvas:tt,canvasToScreen:nt,isEditMode:(0,n.computed)(()=>s.editable),viewportSize:z,isTransforming:M,live:j,onPortDown:e=>Qe(e),onPortUp:e=>mt(e)});let Z=(0,n.ref)(null);function rt(e,t){if(!E.value)return;let n=E.value.getBoundingClientRect();Z.value={x:e.clientX-n.left,y:e.clientY-n.top,conn:t}}function it(e,t){T(`wire-mouseover`,t,e.clientX,e.clientY)}function at(e){T(`wire-mouseout`,e)}function ot(){Z.value=null}function st(e){T(`disconnect`,e),ot()}function ct(e){Z.value&&(e.target.closest(`.nb-blueprint__wire-menu`)||ot())}function lt(e){e.key===`Escape`&&Z.value&&ot()}function ut(e,t){return B.get(e,t)}function dt(e){let t=e?.getAttribute(`data-port-data-type`);return t&&t!==`any`?t:void 0}function ft(e){let t=Y.value;if(!t||!E.value)return;let n=E.value.getBoundingClientRect(),r=(e.clientX-n.left-D.value)/k.value,i=(e.clientY-n.top-O.value)/k.value,a=ut(t.nodeId,t.portId);if(!a)return;let o=a.getBoundingClientRect(),s=(o.left+o.width/2-n.left-D.value)/k.value,c=(o.top+o.height/2-n.top-O.value)/k.value,l=Math.abs(r-s)*.5;J.value=`M ${s} ${c} C ${s+l} ${c}, ${r-l} ${i}, ${r} ${i}`}function pt(){Y.value=null,X.value=null,J.value=null,document.removeEventListener(`mousemove`,ft),document.removeEventListener(`mouseup`,pt)}function mt(e){let t=Y.value;if(!t||t.nodeId===e.nodeId||t.type===e.type)return;let n=t.type===`output`?t:e,r=t.type===`output`?e:t,i={fromNode:n.nodeId,fromPort:n.portId,toNode:r.nodeId,toPort:r.portId},a=X.value;a?a.fromNode===i.fromNode&&a.fromPort===i.fromPort&&a.toNode===i.toNode&&a.toPort===i.toPort||(T(`disconnect`,a),T(`connect`,i)):T(`connect`,i),Y.value=null,X.value=null,J.value=null}let ht=new WeakMap;function gt(e){let t=ht.get(e);if(t)return t;let n=e.closest(`.nb-blueprint-card`),r=`var(--nb-c-primary)`;if(n){let e=getComputedStyle(n).getPropertyValue(`--nb-card-color`).trim();e&&!e.startsWith(`var(`)&&(r=e)}return ht.set(e,r),r}function _t(e){let t=e.getAttribute(`data-port-data-type`)??``;return t===`midi`||t.startsWith(`midi:`)}function vt(e){let t=Math.max(0,Math.min(1,e)),n=[34,197,94],r=[250,204,21],i=[239,68,68],a,o,s;t<=.5?(a=n,o=r,s=t*2):(a=r,o=i,s=(t-.5)*2);let c=(e,t)=>Math.round(e+(t-e)*s);return`rgb(${c(a[0],o[0])}, ${c(a[1],o[1])}, ${c(a[2],o[2])})`}let yt=(0,n.computed)(()=>{if(A.value,!E.value)return[];let e=E.value.getBoundingClientRect(),t=L.value,n=ne/t,r=(0-F.value)/t-n,i=(e.width-F.value)/t+n,a=(0-I.value)/t-n,o=(e.height-I.value)/t+n,c=X.value;return s.connections.filter(e=>!c||e.fromNode!==c.fromNode||e.fromPort!==c.fromPort||e.toNode!==c.toNode||e.toPort!==c.toPort).map(t=>{let n=H(t.fromNode,t.fromPort,e),c=H(t.toNode,t.toPort,e);if(!n||!c)return null;let l=n.x,u=n.y,d=c.x,f=c.y,p=Math.abs(d-l)*.4,m=l+p,h=d-p;if(Math.max(l,m,h,d)<r||Math.min(l,m,h,d)>i||(u<f?f:u)<a||(u<f?u:f)>o)return null;let g=ut(t.fromNode,t.fromPort);if(!g)return null;let _=`M ${l} ${u} C ${m} ${u}, ${h} ${f}, ${d} ${f}`,v=gt(g),y=_t(g),b=v;return s.animateConnections===`levels`&&t.active!==!1&&!y&&typeof t.level==`number`&&(b=vt(t.level)),{path:_,conn:t,color:b,isMidi:y}}).filter(Boolean)}),bt=e=>{let t=s.cardSizeEstimate??ce;return{w:e.width??t.width,h:e.height??t.height}},xt=(0,n.computed)(()=>{let e=s.cards;if(!e||e.length===0)return[];let t=L.value,n=re/t,r=(0-F.value)/t-n,i=(z.value.w-F.value)/t+n,a=(0-I.value)/t-n,o=(z.value.h-I.value)/t+n,c=(e,t,n,s)=>n>=r&&e<=i&&s>=a&&t<=o,l=new Map,u=new Set;for(let t of e){l.set(t.id,t);let{w:e,h:n}=bt(t);c(t.x,t.y,t.x+e,t.y+n)&&u.add(t.id)}for(let e of s.connections){let t=l.get(e.fromNode),n=l.get(e.toNode);if(!t||!n||u.has(t.id)&&u.has(n.id))continue;let r=bt(t),i=bt(n),a=t.x+r.w,o=t.y+r.h/2,s=n.x,d=n.y+i.h/2,f=Math.abs(s-a)*.4,p=Math.min(a,a+f,s-f,s),m=Math.max(a,a+f,s-f,s);c(p,o<d?o:d,m,o<d?d:o)&&(u.add(t.id),u.add(n.id))}return e.filter(e=>u.has(e.id))});function St(e){return s.animateConnections===`never`?!1:s.animateConnections===`always`?!0:s.animateConnections===`levels`?!1:e.active!==!1}function Ct(e){let t=1/0,n=1/0,r=-1/0,i=-1/0,a=e&&e.length?new Set(e):null,o=0;if(s.cards){if(s.cards.length===0)return null;for(let e of s.cards){if(a&&!a.has(e.id))continue;let{w:s,h:c}=bt(e);t=Math.min(t,e.x),n=Math.min(n,e.y),r=Math.max(r,e.x+s),i=Math.max(i,e.y+c),o++}return o>0?{minX:t,minY:n,maxX:r,maxY:i}:null}if(!E.value)return null;let c=E.value.querySelectorAll(`[data-card-id]`);return c.length===0?null:(c.forEach(e=>{let s=e;if(a&&!a.has(s.getAttribute(`data-card-id`)??``))return;let c=K(s),l=s.offsetWidth,u=s.offsetHeight;t=Math.min(t,c.x),n=Math.min(n,c.y),r=Math.max(r,c.x+l),i=Math.max(i,c.y+u),o++}),o>0?{minX:t,minY:n,maxX:r,maxY:i}:null)}function wt(){if(k.value=1,!E.value)return;let e=Ct();if(!e){D.value=0,O.value=0;return}let t=E.value.getBoundingClientRect(),n=(e.minX+e.maxX)/2,r=(e.minY+e.maxY)/2;D.value=t.width/2-n,O.value=t.height/2-r}function Tt(e=40,t){if(!E.value)return;let n=Ct(t);if(!n){if(t&&t.length)return;Et();return}let r=E.value.getBoundingClientRect(),i=n.maxX-n.minX,a=n.maxY-n.minY;if(i<=0||a<=0){wt();return}let o=r.width-e*2,s=r.height-e*2,c=o/i,l=s/a,u=Math.max(S,Math.min(te,Math.min(c,l))),d=(n.minX+n.maxX)/2,f=(n.minY+n.maxY)/2;k.value=u,D.value=r.width/2-d*u,O.value=r.height/2-f*u}function Et(){D.value=0,O.value=0,k.value=1}function Dt(){return{panX:D.value,panY:O.value,zoom:k.value}}function Ot(e){typeof e.panX==`number`&&(D.value=e.panX),typeof e.panY==`number`&&(O.value=e.panY),typeof e.zoom==`number`&&(k.value=e.zoom)}function Q(){if(!E.value)return[];let e=[];for(let t of U.value){let n=E.value.querySelector(`[data-card-id="${t}"]`);if(!n)continue;let r=K(n);e.push({id:t,el:n,x:r.x,y:r.y,w:n.offsetWidth,h:n.offsetHeight})}return e}function $(e){let t=[];for(let n of e)n.el&&ze(n.el,n.x,n.y),t.push({id:n.id,x:Math.round(n.x),y:Math.round(n.y)});t.length&&(A.value++,T(`move`,t))}function kt(){let e=Q();if(e.length<2)return;let t=Math.min(...e.map(e=>e.x));e.forEach(e=>e.x=t),$(e)}function At(){let e=Q();if(e.length<2)return;let t=e.map(e=>e.x+e.w/2),n=t.reduce((e,t)=>e+t,0)/t.length;e.forEach(e=>e.x=n-e.w/2),$(e)}function jt(){let e=Q();if(e.length<2)return;let t=Math.max(...e.map(e=>e.x+e.w));e.forEach(e=>e.x=t-e.w),$(e)}function Mt(){let e=Q();if(e.length<2)return;let t=Math.min(...e.map(e=>e.y));e.forEach(e=>e.y=t),$(e)}function Nt(){let e=Q();if(e.length<2)return;let t=e.map(e=>e.y+e.h/2),n=t.reduce((e,t)=>e+t,0)/t.length;e.forEach(e=>e.y=n-e.h/2),$(e)}function Pt(){let e=Q();if(e.length<2)return;let t=Math.max(...e.map(e=>e.y+e.h));e.forEach(e=>e.y=t-e.h),$(e)}function Ft(){let e=Q();if(e.length<3)return;e.sort((e,t)=>e.x-t.x);let t=e[0],n=e[e.length-1],r=e.reduce((e,t)=>e+t.w,0),i=(n.x+n.w-t.x-r)/(e.length-1),a=t.x+t.w+i;for(let t=1;t<e.length-1;t++)e[t].x=a,a+=e[t].w+i;$(e)}function It(){let e=Q();if(e.length<3)return;e.sort((e,t)=>e.y-t.y);let t=e[0],n=e[e.length-1],r=e.reduce((e,t)=>e+t.h,0),i=(n.y+n.h-t.y-r)/(e.length-1),a=t.y+t.h+i;for(let t=1;t<e.length-1;t++)e[t].y=a,a+=e[t].h+i;$(e)}function Lt(e){if(!E.value)return;let t=e?.gapY??40,n=e?.padding??60,r=[];if(s.cards)for(let e of s.cards){let t=E.value.querySelector(`[data-card-id="${e.id}"]`),{w:n,h:i}=bt(e);r.push({id:e.id,el:t,x:e.x,y:e.y,w:e.width??t?.offsetWidth??n,h:e.height??t?.offsetHeight??i})}else E.value.querySelectorAll(`[data-card-id]`).forEach(e=>{let t=e,n=t.dataset.cardId;if(!n)return;let i=K(t);r.push({id:n,el:t,x:i.x,y:i.y,w:t.offsetWidth,h:t.offsetHeight})});if(!r.length)return;let i=new Map(r.map(e=>[e.id,e])),a=r.map(e=>({id:e.id,w:e.w,h:e.h})),o=s.layoutEdgeKind,c=[];for(let e of s.connections)!i.has(e.fromNode)||!i.has(e.toNode)||c.push({from:e.fromNode,to:e.toNode,kind:o?o(e):`signal`});let l=y(a,c,{colGap:e?.gapX,rowGap:t,originX:n,originY:n});for(let e of r){let t=l.get(e.id);t&&(e.x=t.x,e.y=t.y)}$(r)}let Rt=new MutationObserver(e=>{B.prune();let t=!1,n=!1;for(let r of e){if(r.type===`childList`){t=!0;continue}if(!i(r.target))continue;n=!0;let e=r.target.querySelector(`[data-card-id]`)?.getAttribute(`data-card-id`);e&&oe(e)}t&&se(),(t||n)&&A.value++}),zt=null;return(0,n.onMounted)(()=>{if(E.value){let e=E.value.getBoundingClientRect();z.value={w:e.width,h:e.height},typeof ResizeObserver<`u`&&(zt=new ResizeObserver(e=>{let t=e[0]?.contentRect;t&&(z.value={w:t.width,h:t.height})}),zt.observe(E.value)),Rt.observe(E.value,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[`style`]})}window.addEventListener(`keydown`,he),window.addEventListener(`keyup`,ge),document.addEventListener(`mousedown`,ct),document.addEventListener(`keydown`,lt),(0,n.nextTick)(()=>(0,n.nextTick)(Tt))}),(0,n.onBeforeUnmount)(()=>{Rt.disconnect(),zt?.disconnect(),N&&clearTimeout(N),window.removeEventListener(`keydown`,he),window.removeEventListener(`keyup`,ge),document.removeEventListener(`mousedown`,ct),document.removeEventListener(`keydown`,lt)}),a({centerView:wt,fitToView:Tt,resetView:Et,getCamera:Dt,setCamera:Ot,zoomIn:Ae,zoomOut:je,selectedIds:U,focusedId:le,selectAll:de,deselectAll:fe,alignLeft:kt,alignCenter:At,alignRight:jt,alignTop:Mt,alignMiddle:Nt,alignBottom:Pt,distributeHorizontally:Ft,distributeVertically:It,autoLayout:Lt,onPortMouseDown:Qe,onPortMouseUp:mt,panX:D,panY:O,zoom:k,isTransforming:M,live:j}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`containerRef`,ref:E,class:(0,n.normalizeClass)([`nb-blueprint`,{"is-panning":(0,n.unref)(_e),"is-space":pe.value}]),onMousedown:we,onWheel:Me},[r[4]||=(0,n.createElementVNode)(`div`,{class:`nb-blueprint__ambient`},null,-1),t.$slots.background?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,b,[(0,n.renderSlot)(t.$slots,`background`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),p.value===`dom`?((0,n.openBlock)(),(0,n.createBlock)(d,{key:1,"pan-x":D.value,"pan-y":O.value,zoom:k.value,"is-transforming":M.value,wires:yt.value,windowed:!!s.cards,"visible-cards":xt.value,"drag-wire":J.value,"should-flow":St,"level-coloring":e.animateConnections===`levels`,"activity-style":e.activityStyle??`flow`,"animate-connections":e.animateConnections,background:l.value,onWireMousedown:$e,onWireContextmenu:rt,onWireMousemove:it,onWireMouseleave:at},{card:(0,n.withCtx)(({card:e})=>[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)]),default:(0,n.withCtx)(()=>[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)]),_:3},8,[`pan-x`,`pan-y`,`zoom`,`is-transforming`,`wires`,`windowed`,`visible-cards`,`drag-wire`,`level-coloring`,`activity-style`,`animate-connections`,`background`])):((0,n.openBlock)(),(0,n.createBlock)(_,{key:2,"pan-x":D.value,"pan-y":O.value,zoom:k.value,"is-transforming":M.value,wires:yt.value,windowed:!!s.cards,"visible-cards":xt.value,"drag-wire":J.value,"should-flow":St,"level-coloring":e.animateConnections===`levels`,"activity-style":e.activityStyle??`flow`,"animate-connections":e.animateConnections,background:l.value,"live-data":(0,n.unref)(j),onWireMousedown:$e,onWireContextmenu:rt,onWireMousemove:it,onWireMouseleave:at,onUnavailable:g},{card:(0,n.withCtx)(({card:e})=>[(0,n.renderSlot)(t.$slots,`card`,{card:e},void 0,!0)]),default:(0,n.withCtx)(()=>[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)]),_:3},8,[`pan-x`,`pan-y`,`zoom`,`is-transforming`,`wires`,`windowed`,`visible-cards`,`drag-wire`,`level-coloring`,`activity-style`,`animate-connections`,`background`,`live-data`])),q.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:3,class:`nb-blueprint__marquee nb-blueprint__marquee--dragging`,style:(0,n.normalizeStyle)(Ke.value)},null,4)):(0,n.createCommentVNode)(``,!0),qe.value?((0,n.openBlock)(),(0,n.createElementBlock)(`svg`,{key:4,class:`nb-blueprint__selection-box`,style:(0,n.normalizeStyle)(qe.value)},[...r[3]||=[(0,n.createElementVNode)(`rect`,{x:`0.75`,y:`0.75`,width:`calc(100% - 1.5px)`,height:`calc(100% - 1.5px)`,rx:`4`,ry:`4`,fill:`none`,stroke:`var(--nb-blueprint-marquee-border, var(--nb-c-primary, #6366f1))`,"stroke-width":`1.5`,"stroke-dasharray":`6 4`,class:`nb-blueprint__selection-ants`},null,-1)]],4)):(0,n.createCommentVNode)(``,!0),Z.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:5,class:`nb-blueprint__wire-menu`,style:(0,n.normalizeStyle)({left:`${Z.value.x}px`,top:`${Z.value.y}px`}),role:`menu`,onClick:r[1]||=(0,n.withModifiers)(()=>{},[`stop`]),onContextmenu:r[2]||=(0,n.withModifiers)(()=>{},[`prevent`])},[(0,n.renderSlot)(t.$slots,`wire-menu`,{connection:Z.value.conn,close:ot,disconnect:()=>st(Z.value.conn)},()=>[(0,n.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint__wire-menu-item`,onClick:r[0]||=e=>st(Z.value.conn)},` Disconnect `)],!0)],36)):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`div`,ee,[(0,n.renderSlot)(t.$slots,`chrome`,{},void 0,!0)])],34))}}),E=e.t(T,[[`__scopeId`,`data-v-16839f88`]]);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return E}});
@@ -1 +1 @@
1
- require(`./chunk-D-qHiVGv.cjs`);const e=require(`./composables/useReducedMotion.composable.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Blueprint.context-BUzhZPrF.cjs`);let r=require(`vue`);var i=[`data-card-id`,`aria-label`],a={class:`nb-blueprint-card__ports nb-blueprint-card__ports--left`},o=[`title`],s=[`title`,`aria-label`,`onMousedown`,`onMouseup`,`onKeydown`],c=[`data-port`,`data-port-data-type`],l={key:0,class:`nb-blueprint-card__port-label`},u={class:`nb-blueprint-card__inner`},d={class:`nb-blueprint-card__body`},f={class:`nb-blueprint-card__header`},p=[`title`,`aria-label`,`aria-expanded`],m={class:`nb-blueprint-card__title-group`},h={class:`nb-blueprint-card__name`},g={key:0,class:`nb-blueprint-card__tag`},_=[`aria-label`],v=[`checked`,`aria-label`],ee=[`aria-label`],te={key:0,class:`nb-blueprint-card__preview`},ne={key:1,class:`nb-blueprint-card__params`},re={class:`nb-blueprint-card__row-label`},ie={class:`nb-blueprint-card__row-value`},ae={key:0,class:`nb-blueprint-card__row-unit`},oe={key:2,class:`nb-blueprint-card__content`},se={class:`nb-blueprint-card__ports nb-blueprint-card__ports--right`},ce=[`title`],le=[`title`,`aria-label`,`onMousedown`,`onMouseup`,`onKeydown`],ue=[`data-port`,`data-port-data-type`],de={key:0,class:`nb-blueprint-card__port-label`},fe=320,pe=1,me=10,y=(0,r.defineComponent)({__name:`BlueprintCard`,props:{id:{},title:{},color:{default:void 0},enabled:{type:Boolean,default:!0},selected:{type:Boolean,default:!1},category:{default:``},ports:{default:()=>[]},connectedPorts:{default:()=>[]},activePorts:{default:()=>[]},x:{default:0},y:{default:0},removable:{type:Boolean,default:!1},collapsed:{type:Boolean,default:!1},status:{default:`none`},preview:{default:``},parameters:{default:()=>[]},showPortLabels:{type:[String,Boolean],default:!1},portLevels:{default:()=>({})},density:{default:void 0}},emits:[`select`,`toggle`,`remove`,`toggle-collapse`,`port-mousedown`,`port-mouseup`],setup(t,{emit:y}){let b=t,x=y,S=(0,r.inject)(n.t,null);function C(e){x(`port-mousedown`,e),S?.onPortDown(e)}function w(e){x(`port-mouseup`,e),S?.onPortUp(e)}function T(e){S?.dragOrigin?.value?w(e):C(e)}function E(e,t){if(e.key===`Enter`||e.key===` `){e.preventDefault(),e.stopPropagation(),T(t);return}e.key===`Escape`&&S?.dragOrigin?.value&&(e.preventDefault(),e.stopPropagation(),S.cancelPortDrag?.())}let D=(0,r.computed)(()=>b.density??S?.density?.value??`default`),O=(0,r.computed)(()=>!!S?.dragOrigin?.value);function k(e,t){return!e||!t||e===`any`||t===`any`||e===t?!0:e.split(`:`)[0]===t.split(`:`)[0]}function A(e,t){let n=S?.dragOrigin?.value;return!n||n.nodeId===b.id&&n.portId===e.portId?!1:n.nodeId!==b.id&&n.type!==t&&k(n.dataType,e.port.dataType)?`nb-blueprint-card__port--target-valid`:`nb-blueprint-card__port--target-invalid`}let j=e.useReducedMotion(),M=(0,r.ref)(new Set),N=new Map;(0,r.watch)(()=>b.activePorts,(e,t)=>{if(j.value)return;let n=new Set(t??[]);for(let t of e??[])n.has(t)||(M.value=new Set(M.value).add(t),clearTimeout(N.get(t)),N.set(t,setTimeout(()=>{let e=new Set(M.value);e.delete(t),M.value=e,N.delete(t)},fe)))},{deep:!0}),(0,r.onScopeDispose)(()=>{for(let e of N.values())clearTimeout(e);N.clear()});function P(e){return typeof b.portLevels?.[e]==`number`}function F(e){let t={"--pin-color":Ee(e.port)},n=b.portLevels?.[e.portId];return typeof n==`number`&&(t[`--pin-level`]=`${(Math.max(0,Math.min(1,n))*100).toFixed(1)}%`),t}let I={valid:`Valid`,warning:`Warning`,error:`Error`};function L(e,t){let n=K(e.portId)?`connected`:`not connected`;return`${J(e)}, ${t}, ${n}`}let R=(0,r.computed)(()=>{let e=[b.title];return b.category&&e.push(b.category),b.status&&b.status!==`none`&&e.push(I[b.status]),e.push(b.enabled?`enabled`:`disabled`),e.join(`, `)}),z={ArrowLeft:[-1,0],ArrowRight:[1,0],ArrowUp:[0,-1],ArrowDown:[0,1]};function he(e){let t=z[e.key];if(!t||!S?.nudge)return;e.preventDefault();let n=e.shiftKey?me:pe;S.nudge(b.id,t[0]*n,t[1]*n)}function ge(e){return e.showLabel===void 0?b.showPortLabels===`both`?!0:b.showPortLabels===`left`?e.type===`input`:b.showPortLabels===`right`?e.type===`output`:!1:e.showLabel}function B(e){let t=[];for(let n of b.ports){if(n.type!==e)continue;let r=ge(n);if(n.channels&&n.channels.length>0)for(let e of n.channels)t.push({key:`${n.id}/${e.id}`,port:n,portId:`${n.id}/${e.id}`,channel:e,showLabel:r});else t.push({key:n.id,port:n,portId:n.id,showLabel:r})}return t}let V=(0,r.computed)(()=>B(`input`)),H=(0,r.computed)(()=>B(`output`)),_e=(0,r.computed)(()=>Math.max(V.value.length,H.value.length,1)),U=(0,r.computed)(()=>({left:V.value.some(e=>e.showLabel),right:H.value.some(e=>e.showLabel)})),ve=(0,r.computed)(()=>{let e=b.category||``;return!b.enabled&&e?`${e} · off`:e}),ye=(0,r.computed)(()=>{let e=b.color;if(!e||e.startsWith(`var(`))return`rgba(139, 124, 255, 0.18)`;if(e.startsWith(`#`)&&(e.length===7||e.length===4)){let t=e.length===4?`#${e[1]}${e[1]}${e[2]}${e[2]}${e[3]}${e[3]}`:e;return`rgba(${parseInt(t.slice(1,3),16)}, ${parseInt(t.slice(3,5),16)}, ${parseInt(t.slice(5,7),16)}, 0.18)`}return`rgba(139, 124, 255, 0.18)`}),W=(0,r.computed)(()=>new Set(b.connectedPorts)),G=(0,r.computed)(()=>new Set(b.activePorts));function K(e){return W.value.has(e)}function q(e){return G.value.has(e)}let be=(0,r.computed)(()=>V.value.some(e=>W.value.has(e.portId))),xe=(0,r.computed)(()=>V.value.some(e=>G.value.has(e.portId))),Se=(0,r.computed)(()=>H.value.some(e=>W.value.has(e.portId))),Ce=(0,r.computed)(()=>H.value.some(e=>G.value.has(e.portId)));function J(e){return e.channel?`${e.port.label} . ${e.channel.label}`:e.port.label}function Y(e){return e.channel?e.channel.label:e.port.label}let X={geometry:`#6366f1`,celestial:`#f97316`,lighting:`#f59e0b`,effect:`#a855f7`,surface:`#3b82f6`,audio:`#22c55e`,"audio:mono":`#22c55e`,"audio:stereo":`#10b981`,"audio:bus":`#059669`,midi:`#a855f7`,"midi:rechannelized":`#9333ea`,control:`#94a3b8`,entity:`#ec4899`,number:`#94a3b8`,vector3:`#38bdf8`,color:`#fb923c`,asset:`#a78bfa`,any:`#64748b`},we={geometry:`pill`,celestial:`pill`,lighting:`pill`,effect:`pill`,surface:`pill`,audio:`pill`,"audio:mono":`pill`,"audio:stereo":`pill`,"audio:bus":`pill`,midi:`pill`,"midi:rechannelized":`pill`,control:`pill`,entity:`pill`,number:`pill`,vector3:`pill`,color:`pill`,asset:`pill`,any:`pill`},Te={geometry:`analog`,celestial:`analog`,lighting:`analog`,effect:`analog`,surface:`analog`,audio:`analog`,"audio:mono":`analog`,"audio:stereo":`analog`,"audio:bus":`analog`,midi:`digital`,"midi:rechannelized":`digital`,control:`digital`,entity:`digital`,number:`analog`,vector3:`analog`,color:`digital`,asset:`digital`,any:`analog`};function Ee(e){return e.color??X[e.dataType??`any`]??X.any}function Z(e){return e.shape??we[e.dataType??`any`]??`pill`}function Q(e){return e.size??`md`}function $(e){return e.signal??Te[e.dataType??`any`]??`analog`}return(e,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{class:(0,r.normalizeClass)([`nb-blueprint-card`,[`nb-blueprint-card--density-${D.value}`,{"nb-blueprint-card--selected":t.selected,"nb-blueprint-card--disabled":!t.enabled,"nb-blueprint-card--collapsed":t.collapsed,"nb-blueprint-card--has-category":!!t.category,"nb-blueprint-card--has-port-labels-left":U.value.left,"nb-blueprint-card--has-port-labels-right":U.value.right,"nb-blueprint-card--dragging-wire":O.value}]]),"data-card-id":t.id,style:(0,r.normalizeStyle)({"--nb-card-color":t.color||`var(--nb-c-primary)`,"--nb-card-glow":ye.value,"--nb-blueprint-port-count":_e.value}),tabindex:`0`,role:`group`,"aria-roledescription":`Graph node`,"aria-label":R.value,onMousedown:n[7]||=n=>e.$emit(`select`,t.id),onFocus:n[8]||=n=>e.$emit(`select`,t.id),onKeydown:he},[(0,r.createElementVNode)(`div`,a,[t.collapsed&&V.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__port-combined nb-blueprint-card__port-combined--left`,{"nb-blueprint-card__port-combined--connected":be.value,"nb-blueprint-card__port-combined--active":xe.value}]),title:`${V.value.length} input${V.value.length===1?``:`s`}`},null,10,o)):(0,r.createCommentVNode)(``,!0),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(V.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.key,class:`nb-blueprint-card__port-slot`},[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__port-hit`,title:J(e),"aria-label":L(e,`input`),onMousedown:(0,r.withModifiers)(n=>C({nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType}),[`stop`]),onMouseup:(0,r.withModifiers)(n=>w({nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType}),[`stop`]),onKeydown:n=>E(n,{nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType})},[(0,r.createElementVNode)(`span`,{"data-port":`${t.id}:${e.portId}`,"data-port-data-type":e.port.dataType??`any`,class:(0,r.normalizeClass)([`nb-blueprint-card__port nb-blueprint-card__port--left`,[`nb-blueprint-card__port--${Z(e.port)}`,`nb-blueprint-card__port--size-${Q(e.port)}`,`nb-blueprint-card__port--${$(e.port)}`,e.port.required?`nb-blueprint-card__port--required`:``,e.channel?`nb-blueprint-card__port--channel`:``,K(e.portId)?`nb-blueprint-card__port--connected`:``,q(e.portId)?`nb-blueprint-card__port--active`:``,P(e.portId)?`nb-blueprint-card__port--metered`:``,M.value.has(e.portId)?`nb-blueprint-card__port--ping`:``,A(e,`input`)]]),style:(0,r.normalizeStyle)(F(e))},null,14,c)],40,s),e.showLabel?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,l,(0,r.toDisplayString)(Y(e)),1)):(0,r.createCommentVNode)(``,!0)]))),128))]),(0,r.createElementVNode)(`div`,u,[(0,r.createElementVNode)(`div`,d,[(0,r.createElementVNode)(`div`,f,[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__collapse`,title:t.collapsed?`Expand`:`Collapse`,"aria-label":`${t.collapsed?`Expand`:`Collapse`} ${t.title}`,"aria-expanded":!t.collapsed,onMousedown:n[0]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[1]||=(0,r.withModifiers)(n=>e.$emit(`toggle-collapse`,t.id),[`stop`])},[...n[9]||=[(0,r.createElementVNode)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[(0,r.createElementVNode)(`polyline`,{points:`4 6 8 10 12 6`})],-1)]],40,p),(0,r.createElementVNode)(`div`,m,[(0,r.createElementVNode)(`span`,h,(0,r.toDisplayString)(t.title),1),t.category?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,g,(0,r.toDisplayString)(ve.value),1)):(0,r.createCommentVNode)(``,!0)]),t.status&&t.status!==`none`?((0,r.openBlock)(),(0,r.createElementBlock)(`svg`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__status`,`nb-blueprint-card__status--${t.status}`]),viewBox:`0 0 16 16`,width:`14`,height:`14`,role:`img`,"aria-label":I[t.status]},[(0,r.createElementVNode)(`title`,null,(0,r.toDisplayString)(I[t.status]),1),t.status===`valid`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[n[10]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`8`,r:`7`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1),n[11]||=(0,r.createElementVNode)(`polyline`,{points:`4.5 8.2 7 10.5 11.5 5.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1)],64)):t.status===`warning`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[n[12]||=(0,r.createElementVNode)(`path`,{d:`M8 1.5 15 14.5 1 14.5 Z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linejoin":`round`},null,-1),n[13]||=(0,r.createElementVNode)(`line`,{x1:`8`,y1:`6`,x2:`8`,y2:`10`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1),n[14]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`12.2`,r:`0.9`,fill:`currentColor`},null,-1)],64)):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:2},[n[15]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`8`,r:`7`,fill:`currentColor`},null,-1),n[16]||=(0,r.createElementVNode)(`line`,{x1:`8`,y1:`4.5`,x2:`8`,y2:`9`,stroke:`var(--nb-c-surface)`,"stroke-width":`1.8`},null,-1),n[17]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`11.4`,r:`1`,fill:`var(--nb-c-surface)`},null,-1)],64))],10,_)):(0,r.createCommentVNode)(``,!0),t.enabled===void 0?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(`label`,{key:1,class:`nb-blueprint-card__toggle`,onMousedown:n[3]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[4]||=(0,r.withModifiers)(()=>{},[`stop`])},[(0,r.createElementVNode)(`input`,{type:`checkbox`,checked:t.enabled,"aria-label":`Enable ${t.title}`,onChange:n[2]||=n=>e.$emit(`toggle`,t.id,n.target.checked)},null,40,v),n[18]||=(0,r.createElementVNode)(`span`,{class:`nb-blueprint-card__toggle-track`},null,-1)],32)),t.removable?((0,r.openBlock)(),(0,r.createElementBlock)(`button`,{key:2,type:`button`,class:`nb-blueprint-card__remove`,title:`Remove`,"aria-label":`Remove ${t.title}`,onMousedown:n[5]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[6]||=(0,r.withModifiers)(n=>e.$emit(`remove`,t.id),[`stop`])},` × `,40,ee)):(0,r.createCommentVNode)(``,!0)]),t.collapsed?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[t.preview?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,te,(0,r.toDisplayString)(t.preview),1)):(0,r.createCommentVNode)(``,!0),t.parameters&&t.parameters.length?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,ne,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(t.parameters,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.label,class:`nb-blueprint-card__row`},[(0,r.createElementVNode)(`span`,re,(0,r.toDisplayString)(e.label),1),(0,r.createElementVNode)(`span`,ie,[(0,r.createTextVNode)((0,r.toDisplayString)(e.value)+` `,1),e.unit?((0,r.openBlock)(),(0,r.createElementBlock)(`em`,ae,(0,r.toDisplayString)(e.unit),1)):(0,r.createCommentVNode)(``,!0)]),e.bar===void 0?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:`nb-blueprint-card__row-bar`,style:(0,r.normalizeStyle)({"--bar-progress":`${e.bar}%`})},null,4))]))),128))])):(0,r.createCommentVNode)(``,!0),e.$slots.default?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,oe,[(0,r.renderSlot)(e.$slots,`default`,{},void 0,!0)])):(0,r.createCommentVNode)(``,!0)],64))])]),(0,r.createElementVNode)(`div`,se,[t.collapsed&&H.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__port-combined nb-blueprint-card__port-combined--right`,{"nb-blueprint-card__port-combined--connected":Se.value,"nb-blueprint-card__port-combined--active":Ce.value}]),title:`${H.value.length} output${H.value.length===1?``:`s`}`},null,10,ce)):(0,r.createCommentVNode)(``,!0),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(H.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.key,class:`nb-blueprint-card__port-slot`},[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__port-hit`,title:J(e),"aria-label":L(e,`output`),onMousedown:(0,r.withModifiers)(n=>C({nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType}),[`stop`]),onMouseup:(0,r.withModifiers)(n=>w({nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType}),[`stop`]),onKeydown:n=>E(n,{nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType})},[(0,r.createElementVNode)(`span`,{"data-port":`${t.id}:${e.portId}`,"data-port-data-type":e.port.dataType??`any`,class:(0,r.normalizeClass)([`nb-blueprint-card__port nb-blueprint-card__port--right`,[`nb-blueprint-card__port--${Z(e.port)}`,`nb-blueprint-card__port--size-${Q(e.port)}`,`nb-blueprint-card__port--${$(e.port)}`,e.channel?`nb-blueprint-card__port--channel`:``,K(e.portId)?`nb-blueprint-card__port--connected`:``,q(e.portId)?`nb-blueprint-card__port--active`:``,P(e.portId)?`nb-blueprint-card__port--metered`:``,M.value.has(e.portId)?`nb-blueprint-card__port--ping`:``,A(e,`output`)]]),style:(0,r.normalizeStyle)(F(e))},null,14,ue)],40,le),e.showLabel?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,de,(0,r.toDisplayString)(Y(e)),1)):(0,r.createCommentVNode)(``,!0)]))),128))])],46,i))}}),b=t.t(y,[[`__scopeId`,`data-v-abebdb9e`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return b}});
1
+ require(`./chunk-D-qHiVGv.cjs`);const e=require(`./composables/useReducedMotion.composable.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Blueprint.context-C_y0TS6a.cjs`);let r=require(`vue`);var i=[`data-card-id`,`aria-label`],a={class:`nb-blueprint-card__ports nb-blueprint-card__ports--left`},o=[`title`],s=[`title`,`aria-label`,`onMousedown`,`onMouseup`,`onKeydown`],c=[`data-port`,`data-port-data-type`],l={key:0,class:`nb-blueprint-card__port-label`},u={class:`nb-blueprint-card__inner`},d={class:`nb-blueprint-card__body`},f={class:`nb-blueprint-card__header`},p=[`title`,`aria-label`,`aria-expanded`],m={class:`nb-blueprint-card__title-group`},h={class:`nb-blueprint-card__name`},g={key:0,class:`nb-blueprint-card__tag`},_=[`aria-label`],v=[`checked`,`aria-label`],ee=[`aria-label`],te={key:0,class:`nb-blueprint-card__preview`},ne={key:1,class:`nb-blueprint-card__params`},re={class:`nb-blueprint-card__row-label`},ie={class:`nb-blueprint-card__row-value`},ae={key:0,class:`nb-blueprint-card__row-unit`},oe={key:2,class:`nb-blueprint-card__content`},se={class:`nb-blueprint-card__ports nb-blueprint-card__ports--right`},ce=[`title`],le=[`title`,`aria-label`,`onMousedown`,`onMouseup`,`onKeydown`],ue=[`data-port`,`data-port-data-type`],de={key:0,class:`nb-blueprint-card__port-label`},fe=320,pe=1,me=10,y=(0,r.defineComponent)({__name:`BlueprintCard`,props:{id:{},title:{},color:{default:void 0},enabled:{type:Boolean,default:!0},selected:{type:Boolean,default:!1},category:{default:``},ports:{default:()=>[]},connectedPorts:{default:()=>[]},activePorts:{default:()=>[]},x:{default:0},y:{default:0},removable:{type:Boolean,default:!1},collapsed:{type:Boolean,default:!1},status:{default:`none`},preview:{default:``},parameters:{default:()=>[]},showPortLabels:{type:[String,Boolean],default:!1},portLevels:{default:()=>({})},density:{default:void 0}},emits:[`select`,`toggle`,`remove`,`toggle-collapse`,`port-mousedown`,`port-mouseup`],setup(t,{emit:y}){let b=t,x=y,S=(0,r.inject)(n.t,null);function C(e){x(`port-mousedown`,e),S?.onPortDown(e)}function w(e){x(`port-mouseup`,e),S?.onPortUp(e)}function T(e){S?.dragOrigin?.value?w(e):C(e)}function E(e,t){if(e.key===`Enter`||e.key===` `){e.preventDefault(),e.stopPropagation(),T(t);return}e.key===`Escape`&&S?.dragOrigin?.value&&(e.preventDefault(),e.stopPropagation(),S.cancelPortDrag?.())}let D=(0,r.computed)(()=>b.density??S?.density?.value??`default`),O=(0,r.computed)(()=>!!S?.dragOrigin?.value);function k(e,t){return!e||!t||e===`any`||t===`any`||e===t?!0:e.split(`:`)[0]===t.split(`:`)[0]}function A(e,t){let n=S?.dragOrigin?.value;return!n||n.nodeId===b.id&&n.portId===e.portId?!1:n.nodeId!==b.id&&n.type!==t&&k(n.dataType,e.port.dataType)?`nb-blueprint-card__port--target-valid`:`nb-blueprint-card__port--target-invalid`}let j=e.useReducedMotion(),M=(0,r.ref)(new Set),N=new Map;(0,r.watch)(()=>b.activePorts,(e,t)=>{if(j.value)return;let n=new Set(t??[]);for(let t of e??[])n.has(t)||(M.value=new Set(M.value).add(t),clearTimeout(N.get(t)),N.set(t,setTimeout(()=>{let e=new Set(M.value);e.delete(t),M.value=e,N.delete(t)},fe)))},{deep:!0}),(0,r.onScopeDispose)(()=>{for(let e of N.values())clearTimeout(e);N.clear()});function P(e){return typeof b.portLevels?.[e]==`number`}function F(e){let t={"--pin-color":Ee(e.port)},n=b.portLevels?.[e.portId];return typeof n==`number`&&(t[`--pin-level`]=`${(Math.max(0,Math.min(1,n))*100).toFixed(1)}%`),t}let I={valid:`Valid`,warning:`Warning`,error:`Error`};function L(e,t){let n=K(e.portId)?`connected`:`not connected`;return`${J(e)}, ${t}, ${n}`}let R=(0,r.computed)(()=>{let e=[b.title];return b.category&&e.push(b.category),b.status&&b.status!==`none`&&e.push(I[b.status]),e.push(b.enabled?`enabled`:`disabled`),e.join(`, `)}),z={ArrowLeft:[-1,0],ArrowRight:[1,0],ArrowUp:[0,-1],ArrowDown:[0,1]};function he(e){let t=z[e.key];if(!t||!S?.nudge)return;e.preventDefault();let n=e.shiftKey?me:pe;S.nudge(b.id,t[0]*n,t[1]*n)}function ge(e){return e.showLabel===void 0?b.showPortLabels===`both`?!0:b.showPortLabels===`left`?e.type===`input`:b.showPortLabels===`right`?e.type===`output`:!1:e.showLabel}function B(e){let t=[];for(let n of b.ports){if(n.type!==e)continue;let r=ge(n);if(n.channels&&n.channels.length>0)for(let e of n.channels)t.push({key:`${n.id}/${e.id}`,port:n,portId:`${n.id}/${e.id}`,channel:e,showLabel:r});else t.push({key:n.id,port:n,portId:n.id,showLabel:r})}return t}let V=(0,r.computed)(()=>B(`input`)),H=(0,r.computed)(()=>B(`output`)),_e=(0,r.computed)(()=>Math.max(V.value.length,H.value.length,1)),U=(0,r.computed)(()=>({left:V.value.some(e=>e.showLabel),right:H.value.some(e=>e.showLabel)})),ve=(0,r.computed)(()=>{let e=b.category||``;return!b.enabled&&e?`${e} · off`:e}),ye=(0,r.computed)(()=>{let e=b.color;if(!e||e.startsWith(`var(`))return`rgba(139, 124, 255, 0.18)`;if(e.startsWith(`#`)&&(e.length===7||e.length===4)){let t=e.length===4?`#${e[1]}${e[1]}${e[2]}${e[2]}${e[3]}${e[3]}`:e;return`rgba(${parseInt(t.slice(1,3),16)}, ${parseInt(t.slice(3,5),16)}, ${parseInt(t.slice(5,7),16)}, 0.18)`}return`rgba(139, 124, 255, 0.18)`}),W=(0,r.computed)(()=>new Set(b.connectedPorts)),G=(0,r.computed)(()=>new Set(b.activePorts));function K(e){return W.value.has(e)}function q(e){return G.value.has(e)}let be=(0,r.computed)(()=>V.value.some(e=>W.value.has(e.portId))),xe=(0,r.computed)(()=>V.value.some(e=>G.value.has(e.portId))),Se=(0,r.computed)(()=>H.value.some(e=>W.value.has(e.portId))),Ce=(0,r.computed)(()=>H.value.some(e=>G.value.has(e.portId)));function J(e){return e.channel?`${e.port.label} . ${e.channel.label}`:e.port.label}function Y(e){return e.channel?e.channel.label:e.port.label}let X={geometry:`#6366f1`,celestial:`#f97316`,lighting:`#f59e0b`,effect:`#a855f7`,surface:`#3b82f6`,audio:`#22c55e`,"audio:mono":`#22c55e`,"audio:stereo":`#10b981`,"audio:bus":`#059669`,midi:`#a855f7`,"midi:rechannelized":`#9333ea`,control:`#94a3b8`,entity:`#ec4899`,number:`#94a3b8`,vector3:`#38bdf8`,color:`#fb923c`,asset:`#a78bfa`,any:`#64748b`},we={geometry:`pill`,celestial:`pill`,lighting:`pill`,effect:`pill`,surface:`pill`,audio:`pill`,"audio:mono":`pill`,"audio:stereo":`pill`,"audio:bus":`pill`,midi:`pill`,"midi:rechannelized":`pill`,control:`pill`,entity:`pill`,number:`pill`,vector3:`pill`,color:`pill`,asset:`pill`,any:`pill`},Te={geometry:`analog`,celestial:`analog`,lighting:`analog`,effect:`analog`,surface:`analog`,audio:`analog`,"audio:mono":`analog`,"audio:stereo":`analog`,"audio:bus":`analog`,midi:`digital`,"midi:rechannelized":`digital`,control:`digital`,entity:`digital`,number:`analog`,vector3:`analog`,color:`digital`,asset:`digital`,any:`analog`};function Ee(e){return e.color??X[e.dataType??`any`]??X.any}function Z(e){return e.shape??we[e.dataType??`any`]??`pill`}function Q(e){return e.size??`md`}function $(e){return e.signal??Te[e.dataType??`any`]??`analog`}return(e,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{class:(0,r.normalizeClass)([`nb-blueprint-card`,[`nb-blueprint-card--density-${D.value}`,{"nb-blueprint-card--selected":t.selected,"nb-blueprint-card--disabled":!t.enabled,"nb-blueprint-card--collapsed":t.collapsed,"nb-blueprint-card--has-category":!!t.category,"nb-blueprint-card--has-port-labels-left":U.value.left,"nb-blueprint-card--has-port-labels-right":U.value.right,"nb-blueprint-card--dragging-wire":O.value}]]),"data-card-id":t.id,style:(0,r.normalizeStyle)({"--nb-card-color":t.color||`var(--nb-c-primary)`,"--nb-card-glow":ye.value,"--nb-blueprint-port-count":_e.value}),tabindex:`0`,role:`group`,"aria-roledescription":`Graph node`,"aria-label":R.value,onMousedown:n[7]||=n=>e.$emit(`select`,t.id),onFocus:n[8]||=n=>e.$emit(`select`,t.id),onKeydown:he},[(0,r.createElementVNode)(`div`,a,[t.collapsed&&V.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__port-combined nb-blueprint-card__port-combined--left`,{"nb-blueprint-card__port-combined--connected":be.value,"nb-blueprint-card__port-combined--active":xe.value}]),title:`${V.value.length} input${V.value.length===1?``:`s`}`},null,10,o)):(0,r.createCommentVNode)(``,!0),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(V.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.key,class:`nb-blueprint-card__port-slot`},[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__port-hit`,title:J(e),"aria-label":L(e,`input`),onMousedown:(0,r.withModifiers)(n=>C({nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType}),[`stop`]),onMouseup:(0,r.withModifiers)(n=>w({nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType}),[`stop`]),onKeydown:n=>E(n,{nodeId:t.id,portId:e.portId,type:`input`,dataType:e.port.dataType})},[(0,r.createElementVNode)(`span`,{"data-port":`${t.id}:${e.portId}`,"data-port-data-type":e.port.dataType??`any`,class:(0,r.normalizeClass)([`nb-blueprint-card__port nb-blueprint-card__port--left`,[`nb-blueprint-card__port--${Z(e.port)}`,`nb-blueprint-card__port--size-${Q(e.port)}`,`nb-blueprint-card__port--${$(e.port)}`,e.port.required?`nb-blueprint-card__port--required`:``,e.channel?`nb-blueprint-card__port--channel`:``,K(e.portId)?`nb-blueprint-card__port--connected`:``,q(e.portId)?`nb-blueprint-card__port--active`:``,P(e.portId)?`nb-blueprint-card__port--metered`:``,M.value.has(e.portId)?`nb-blueprint-card__port--ping`:``,A(e,`input`)]]),style:(0,r.normalizeStyle)(F(e))},null,14,c)],40,s),e.showLabel?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,l,(0,r.toDisplayString)(Y(e)),1)):(0,r.createCommentVNode)(``,!0)]))),128))]),(0,r.createElementVNode)(`div`,u,[(0,r.createElementVNode)(`div`,d,[(0,r.createElementVNode)(`div`,f,[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__collapse`,title:t.collapsed?`Expand`:`Collapse`,"aria-label":`${t.collapsed?`Expand`:`Collapse`} ${t.title}`,"aria-expanded":!t.collapsed,onMousedown:n[0]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[1]||=(0,r.withModifiers)(n=>e.$emit(`toggle-collapse`,t.id),[`stop`])},[...n[9]||=[(0,r.createElementVNode)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[(0,r.createElementVNode)(`polyline`,{points:`4 6 8 10 12 6`})],-1)]],40,p),(0,r.createElementVNode)(`div`,m,[(0,r.createElementVNode)(`span`,h,(0,r.toDisplayString)(t.title),1),t.category?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,g,(0,r.toDisplayString)(ve.value),1)):(0,r.createCommentVNode)(``,!0)]),t.status&&t.status!==`none`?((0,r.openBlock)(),(0,r.createElementBlock)(`svg`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__status`,`nb-blueprint-card__status--${t.status}`]),viewBox:`0 0 16 16`,width:`14`,height:`14`,role:`img`,"aria-label":I[t.status]},[(0,r.createElementVNode)(`title`,null,(0,r.toDisplayString)(I[t.status]),1),t.status===`valid`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[n[10]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`8`,r:`7`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1),n[11]||=(0,r.createElementVNode)(`polyline`,{points:`4.5 8.2 7 10.5 11.5 5.5`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1)],64)):t.status===`warning`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[n[12]||=(0,r.createElementVNode)(`path`,{d:`M8 1.5 15 14.5 1 14.5 Z`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linejoin":`round`},null,-1),n[13]||=(0,r.createElementVNode)(`line`,{x1:`8`,y1:`6`,x2:`8`,y2:`10`,stroke:`currentColor`,"stroke-width":`1.5`},null,-1),n[14]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`12.2`,r:`0.9`,fill:`currentColor`},null,-1)],64)):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:2},[n[15]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`8`,r:`7`,fill:`currentColor`},null,-1),n[16]||=(0,r.createElementVNode)(`line`,{x1:`8`,y1:`4.5`,x2:`8`,y2:`9`,stroke:`var(--nb-c-surface)`,"stroke-width":`1.8`},null,-1),n[17]||=(0,r.createElementVNode)(`circle`,{cx:`8`,cy:`11.4`,r:`1`,fill:`var(--nb-c-surface)`},null,-1)],64))],10,_)):(0,r.createCommentVNode)(``,!0),t.enabled===void 0?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(`label`,{key:1,class:`nb-blueprint-card__toggle`,onMousedown:n[3]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[4]||=(0,r.withModifiers)(()=>{},[`stop`])},[(0,r.createElementVNode)(`input`,{type:`checkbox`,checked:t.enabled,"aria-label":`Enable ${t.title}`,onChange:n[2]||=n=>e.$emit(`toggle`,t.id,n.target.checked)},null,40,v),n[18]||=(0,r.createElementVNode)(`span`,{class:`nb-blueprint-card__toggle-track`},null,-1)],32)),t.removable?((0,r.openBlock)(),(0,r.createElementBlock)(`button`,{key:2,type:`button`,class:`nb-blueprint-card__remove`,title:`Remove`,"aria-label":`Remove ${t.title}`,onMousedown:n[5]||=(0,r.withModifiers)(()=>{},[`stop`]),onClick:n[6]||=(0,r.withModifiers)(n=>e.$emit(`remove`,t.id),[`stop`])},` × `,40,ee)):(0,r.createCommentVNode)(``,!0)]),t.collapsed?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[t.preview?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,te,(0,r.toDisplayString)(t.preview),1)):(0,r.createCommentVNode)(``,!0),t.parameters&&t.parameters.length?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,ne,[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(t.parameters,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.label,class:`nb-blueprint-card__row`},[(0,r.createElementVNode)(`span`,re,(0,r.toDisplayString)(e.label),1),(0,r.createElementVNode)(`span`,ie,[(0,r.createTextVNode)((0,r.toDisplayString)(e.value)+` `,1),e.unit?((0,r.openBlock)(),(0,r.createElementBlock)(`em`,ae,(0,r.toDisplayString)(e.unit),1)):(0,r.createCommentVNode)(``,!0)]),e.bar===void 0?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:`nb-blueprint-card__row-bar`,style:(0,r.normalizeStyle)({"--bar-progress":`${e.bar}%`})},null,4))]))),128))])):(0,r.createCommentVNode)(``,!0),e.$slots.default?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,oe,[(0,r.renderSlot)(e.$slots,`default`,{},void 0,!0)])):(0,r.createCommentVNode)(``,!0)],64))])]),(0,r.createElementVNode)(`div`,se,[t.collapsed&&H.value.length>0?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:(0,r.normalizeClass)([`nb-blueprint-card__port-combined nb-blueprint-card__port-combined--right`,{"nb-blueprint-card__port-combined--connected":Se.value,"nb-blueprint-card__port-combined--active":Ce.value}]),title:`${H.value.length} output${H.value.length===1?``:`s`}`},null,10,ce)):(0,r.createCommentVNode)(``,!0),((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(H.value,e=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:e.key,class:`nb-blueprint-card__port-slot`},[(0,r.createElementVNode)(`button`,{type:`button`,class:`nb-blueprint-card__port-hit`,title:J(e),"aria-label":L(e,`output`),onMousedown:(0,r.withModifiers)(n=>C({nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType}),[`stop`]),onMouseup:(0,r.withModifiers)(n=>w({nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType}),[`stop`]),onKeydown:n=>E(n,{nodeId:t.id,portId:e.portId,type:`output`,dataType:e.port.dataType})},[(0,r.createElementVNode)(`span`,{"data-port":`${t.id}:${e.portId}`,"data-port-data-type":e.port.dataType??`any`,class:(0,r.normalizeClass)([`nb-blueprint-card__port nb-blueprint-card__port--right`,[`nb-blueprint-card__port--${Z(e.port)}`,`nb-blueprint-card__port--size-${Q(e.port)}`,`nb-blueprint-card__port--${$(e.port)}`,e.channel?`nb-blueprint-card__port--channel`:``,K(e.portId)?`nb-blueprint-card__port--connected`:``,q(e.portId)?`nb-blueprint-card__port--active`:``,P(e.portId)?`nb-blueprint-card__port--metered`:``,M.value.has(e.portId)?`nb-blueprint-card__port--ping`:``,A(e,`output`)]]),style:(0,r.normalizeStyle)(F(e))},null,14,ue)],40,le),e.showLabel?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,de,(0,r.toDisplayString)(Y(e)),1)):(0,r.createCommentVNode)(``,!0)]))),128))])],46,i))}}),b=t.t(y,[[`__scopeId`,`data-v-abebdb9e`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return b}});
@@ -1,6 +1,6 @@
1
1
  import { useReducedMotion as e } from "./composables/useReducedMotion.composable.mjs";
2
2
  import { t } from "./_plugin-vue_export-helper-O4QQSku4.js";
3
- import { t as n } from "./Blueprint.context-BOAtPYlo.js";
3
+ import { t as n } from "./Blueprint.context-CHfek6nW.js";
4
4
  import { Fragment as r, computed as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createTextVNode as c, defineComponent as l, inject as u, normalizeClass as d, normalizeStyle as f, onScopeDispose as p, openBlock as m, ref as h, renderList as g, renderSlot as _, toDisplayString as v, watch as ee, withModifiers as y } from "vue";
5
5
  //#region src/components/BlueprintCard.vue?vue&type=script&setup=true&lang.ts
6
6
  var te = ["data-card-id", "aria-label"], ne = { class: "nb-blueprint-card__ports nb-blueprint-card__ports--left" }, re = ["title"], ie = [
@@ -1 +1 @@
1
- const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Size.d-GBIblj2D.cjs`),r=require(`./Button-B2ngznxj.cjs`),i=require(`./composables/useBlueprint.composable.cjs`);let a=require(`vue`),o=require(`@nubisco/ui/icons/magnifying-glass-plus`);o=e.n(o);let s=require(`@nubisco/ui/icons/magnifying-glass-minus`);s=e.n(s);let c=require(`@nubisco/ui/icons/frame-corners`);c=e.n(c);let l=require(`@nubisco/ui/icons/crosshair`);l=e.n(l);let u=require(`@nubisco/ui/icons/tree-structure`);u=e.n(u);let d=require(`@nubisco/ui/icons/align-left`);d=e.n(d);let f=require(`@nubisco/ui/icons/align-center-horizontal`);f=e.n(f);let p=require(`@nubisco/ui/icons/align-right`);p=e.n(p);let m=require(`@nubisco/ui/icons/align-top`);m=e.n(m);let h=require(`@nubisco/ui/icons/align-center-vertical`);h=e.n(h);let g=require(`@nubisco/ui/icons/align-bottom`);g=e.n(g);let _=require(`@nubisco/ui/icons/arrows-out-line-horizontal`);_=e.n(_);let v=require(`@nubisco/ui/icons/arrows-out-line-vertical`);v=e.n(v);var y={class:`nb-blueprint-controls__group`},b={key:0,class:`nb-blueprint-controls__group`},x=(0,a.defineComponent)({__name:`BlueprintControls`,props:{position:{default:`bottom-right`},orientation:{default:`vertical`},show:{default:`always`},autoLayout:{type:Boolean,default:!0},alignment:{type:Boolean,default:!0}},setup(e){let t=n.r.Small,x=e,S=i.useBlueprint(),C=(0,a.computed)(()=>x.show===`always`||S.isEditMode.value),w=(0,a.computed)(()=>x.alignment&&S.selectedIds.value.size>=2);return(n,i)=>C.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,class:(0,a.normalizeClass)([`nb-blueprint-controls`,[`nb-blueprint-controls--${e.position}`,`is-${e.orientation}`]]),role:`toolbar`,"aria-label":`Blueprint controls`},[(0,a.createElementVNode)(`div`,y,[(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:o,title:`Zoom in`,"aria-label":`Zoom in`,onClick:i[0]||=e=>(0,a.unref)(S).zoomIn()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:s,title:`Zoom out`,"aria-label":`Zoom out`,onClick:i[1]||=e=>(0,a.unref)(S).zoomOut()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:c,title:`Fit to view`,"aria-label":`Fit to view`,onClick:i[2]||=e=>(0,a.unref)(S).fitToView()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:l,title:`Center`,"aria-label":`Center`,onClick:i[3]||=e=>(0,a.unref)(S).centerView()},null,8,[`size`]),e.autoLayout?((0,a.openBlock)(),(0,a.createBlock)(r.t,{key:0,variant:`ghost`,size:(0,a.unref)(t),icon:u,title:`Auto layout`,"aria-label":`Auto layout`,onClick:i[4]||=e=>(0,a.unref)(S).autoLayout()},null,8,[`size`])):(0,a.createCommentVNode)(``,!0)]),w.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,b,[(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:d,title:`Align left`,"aria-label":`Align left`,onClick:i[5]||=e=>(0,a.unref)(S).alignLeft()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:f,title:`Align horizontal center`,"aria-label":`Align horizontal center`,onClick:i[6]||=e=>(0,a.unref)(S).alignCenter()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:p,title:`Align right`,"aria-label":`Align right`,onClick:i[7]||=e=>(0,a.unref)(S).alignRight()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:m,title:`Align top`,"aria-label":`Align top`,onClick:i[8]||=e=>(0,a.unref)(S).alignTop()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:h,title:`Align vertical center`,"aria-label":`Align vertical center`,onClick:i[9]||=e=>(0,a.unref)(S).alignMiddle()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:g,title:`Align bottom`,"aria-label":`Align bottom`,onClick:i[10]||=e=>(0,a.unref)(S).alignBottom()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:_,title:`Distribute horizontally`,"aria-label":`Distribute horizontally`,onClick:i[11]||=e=>(0,a.unref)(S).distributeHorizontally()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:v,title:`Distribute vertically`,"aria-label":`Distribute vertically`,onClick:i[12]||=e=>(0,a.unref)(S).distributeVertically()},null,8,[`size`])])):(0,a.createCommentVNode)(``,!0)],2)):(0,a.createCommentVNode)(``,!0)}}),S=t.t(x,[[`__scopeId`,`data-v-5b86517c`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return S}});
1
+ const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Size.d-GBIblj2D.cjs`),r=require(`./Button-D-XSNjSL.cjs`),i=require(`./composables/useBlueprint.composable.cjs`);let a=require(`vue`),o=require(`@nubisco/ui/icons/magnifying-glass-plus`);o=e.n(o);let s=require(`@nubisco/ui/icons/magnifying-glass-minus`);s=e.n(s);let c=require(`@nubisco/ui/icons/frame-corners`);c=e.n(c);let l=require(`@nubisco/ui/icons/crosshair`);l=e.n(l);let u=require(`@nubisco/ui/icons/tree-structure`);u=e.n(u);let d=require(`@nubisco/ui/icons/align-left`);d=e.n(d);let f=require(`@nubisco/ui/icons/align-center-horizontal`);f=e.n(f);let p=require(`@nubisco/ui/icons/align-right`);p=e.n(p);let m=require(`@nubisco/ui/icons/align-top`);m=e.n(m);let h=require(`@nubisco/ui/icons/align-center-vertical`);h=e.n(h);let g=require(`@nubisco/ui/icons/align-bottom`);g=e.n(g);let _=require(`@nubisco/ui/icons/arrows-out-line-horizontal`);_=e.n(_);let v=require(`@nubisco/ui/icons/arrows-out-line-vertical`);v=e.n(v);var y={class:`nb-blueprint-controls__group`},b={key:0,class:`nb-blueprint-controls__group`},x=(0,a.defineComponent)({__name:`BlueprintControls`,props:{position:{default:`bottom-right`},orientation:{default:`vertical`},show:{default:`always`},autoLayout:{type:Boolean,default:!0},alignment:{type:Boolean,default:!0}},setup(e){let t=n.r.Small,x=e,S=i.useBlueprint(),C=(0,a.computed)(()=>x.show===`always`||S.isEditMode.value),w=(0,a.computed)(()=>x.alignment&&S.selectedIds.value.size>=2);return(n,i)=>C.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,class:(0,a.normalizeClass)([`nb-blueprint-controls`,[`nb-blueprint-controls--${e.position}`,`is-${e.orientation}`]]),role:`toolbar`,"aria-label":`Blueprint controls`},[(0,a.createElementVNode)(`div`,y,[(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:o,title:`Zoom in`,"aria-label":`Zoom in`,onClick:i[0]||=e=>(0,a.unref)(S).zoomIn()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:s,title:`Zoom out`,"aria-label":`Zoom out`,onClick:i[1]||=e=>(0,a.unref)(S).zoomOut()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:c,title:`Fit to view`,"aria-label":`Fit to view`,onClick:i[2]||=e=>(0,a.unref)(S).fitToView()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:l,title:`Center`,"aria-label":`Center`,onClick:i[3]||=e=>(0,a.unref)(S).centerView()},null,8,[`size`]),e.autoLayout?((0,a.openBlock)(),(0,a.createBlock)(r.t,{key:0,variant:`ghost`,size:(0,a.unref)(t),icon:u,title:`Auto layout`,"aria-label":`Auto layout`,onClick:i[4]||=e=>(0,a.unref)(S).autoLayout()},null,8,[`size`])):(0,a.createCommentVNode)(``,!0)]),w.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,b,[(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:d,title:`Align left`,"aria-label":`Align left`,onClick:i[5]||=e=>(0,a.unref)(S).alignLeft()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:f,title:`Align horizontal center`,"aria-label":`Align horizontal center`,onClick:i[6]||=e=>(0,a.unref)(S).alignCenter()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:p,title:`Align right`,"aria-label":`Align right`,onClick:i[7]||=e=>(0,a.unref)(S).alignRight()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:m,title:`Align top`,"aria-label":`Align top`,onClick:i[8]||=e=>(0,a.unref)(S).alignTop()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:h,title:`Align vertical center`,"aria-label":`Align vertical center`,onClick:i[9]||=e=>(0,a.unref)(S).alignMiddle()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:g,title:`Align bottom`,"aria-label":`Align bottom`,onClick:i[10]||=e=>(0,a.unref)(S).alignBottom()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:_,title:`Distribute horizontally`,"aria-label":`Distribute horizontally`,onClick:i[11]||=e=>(0,a.unref)(S).distributeHorizontally()},null,8,[`size`]),(0,a.createVNode)(r.t,{variant:`ghost`,size:(0,a.unref)(t),icon:v,title:`Distribute vertically`,"aria-label":`Distribute vertically`,onClick:i[12]||=e=>(0,a.unref)(S).distributeVertically()},null,8,[`size`])])):(0,a.createCommentVNode)(``,!0)],2)):(0,a.createCommentVNode)(``,!0)}}),S=t.t(x,[[`__scopeId`,`data-v-5b86517c`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return S}});
@@ -1,6 +1,6 @@
1
1
  import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
2
2
  import { r as t } from "./Size.d-Bah6vMl3.js";
3
- import { t as n } from "./Button-CnwG9SUU.js";
3
+ import { t as n } from "./Button-Cw4D6w9K.js";
4
4
  import { useBlueprint as r } from "./composables/useBlueprint.composable.mjs";
5
5
  import { computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createVNode as l, defineComponent as u, normalizeClass as d, openBlock as f, unref as p } from "vue";
6
6
  import * as m from "@nubisco/ui/icons/magnifying-glass-plus";
@@ -0,0 +1,121 @@
1
+ import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
2
+ import { t } from "./Size.d-Bah6vMl3.js";
3
+ import { t as n } from "./Icon-rREAqsu0.js";
4
+ import { useRouterLink as r } from "./composables/useRouterLink.composable.mjs";
5
+ import { computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, defineComponent as c, getCurrentInstance as l, mergeProps as u, nextTick as d, onMounted as f, openBlock as p, renderSlot as m, resolveDynamicComponent as h, useSlots as g, withCtx as _ } from "vue";
6
+ //#region src/components/Button.d.ts
7
+ var v = /* @__PURE__ */ function(e) {
8
+ return e.Button = "button", e.Submit = "submit", e.Reset = "reset", e;
9
+ }(v || {}), y = {
10
+ key: 0,
11
+ class: "nb-button__decorations"
12
+ }, b = {
13
+ key: 0,
14
+ class: "nb-button__spinner",
15
+ "aria-hidden": "true"
16
+ }, x = /* @__PURE__ */ new Set();
17
+ function S(e) {
18
+ if (typeof e == "string") return e;
19
+ if (e && (typeof e == "object" || typeof e == "function")) {
20
+ let t = e;
21
+ if (typeof t.glyphName == "string") return t.glyphName;
22
+ }
23
+ return "";
24
+ }
25
+ //#endregion
26
+ //#region src/components/Button.vue
27
+ var C = /* @__PURE__ */ e(/* @__PURE__ */ c({
28
+ __name: "Button",
29
+ props: {
30
+ variant: { default: void 0 },
31
+ outlined: {
32
+ type: Boolean,
33
+ default: !1
34
+ },
35
+ size: { default: t.Medium },
36
+ disabled: {
37
+ type: Boolean,
38
+ default: !1
39
+ },
40
+ loading: {
41
+ type: Boolean,
42
+ default: !1
43
+ },
44
+ icon: { default: void 0 },
45
+ type: { default: v.Button },
46
+ href: { default: void 0 },
47
+ target: { default: void 0 },
48
+ rel: { default: void 0 },
49
+ to: { default: void 0 }
50
+ },
51
+ emits: ["click"],
52
+ setup(e) {
53
+ let t = e, c = g(), v = i(() => !c.default && !!(t.icon || t.loading)), C = r(), w = i(() => t.to != null && !!C.value), T = i(() => {
54
+ if (typeof t.to == "string") return t.to;
55
+ if (t.href) return t.href;
56
+ }), E = i(() => w.value ? C.value : T.value ? "a" : "button"), D = i(() => E.value === "a" ? {
57
+ href: T.value,
58
+ target: t.target,
59
+ rel: t.rel
60
+ } : {}), O = {
61
+ xxs: 10,
62
+ xs: 12,
63
+ sm: 12,
64
+ md: 14,
65
+ lg: 16,
66
+ xl: 16,
67
+ xxl: 20
68
+ }, k = {
69
+ xxs: 12,
70
+ xs: 14,
71
+ sm: 16,
72
+ md: 18,
73
+ lg: 20,
74
+ xl: 20,
75
+ xxl: 26
76
+ }, A = i(() => (v.value ? k : O)[t.size ?? "md"] ?? (v.value ? 18 : 14)), j = l();
77
+ return f(() => {
78
+ typeof process < "u" && process.env.NODE_ENV === "production" || v.value && d(() => {
79
+ let e = j?.proxy?.$el;
80
+ if (!e || typeof e.getAttribute != "function" || [
81
+ "aria-label",
82
+ "aria-labelledby",
83
+ "title"
84
+ ].some((t) => (e.getAttribute(t) ?? "").trim().length > 0) || (e.textContent ?? "").trim().length > 0) return;
85
+ let n = S(t.icon);
86
+ x.has(n) || (x.add(n), console.warn(`[NbButton] An icon-only button${n ? ` (icon "${n}")` : ""} has no accessible name, so a screen reader announces it as "button". Add aria-label, or name it with v-nb-tooltip.`, e));
87
+ });
88
+ }), (t, r) => (p(), a(h(E.value), u({
89
+ class: [
90
+ "nb-button",
91
+ e.variant ? `nb-button--${e.variant}` : null,
92
+ `nb-button--${e.size}`,
93
+ { "nb-button--outlined": e.outlined },
94
+ { "nb-button--loading": e.loading },
95
+ { "nb-button--icon-only": v.value }
96
+ ],
97
+ to: w.value ? e.to : void 0
98
+ }, D.value, {
99
+ disabled: E.value === "button" ? e.disabled || e.loading : void 0,
100
+ "aria-disabled": E.value !== "button" && (e.disabled || e.loading) ? !0 : void 0,
101
+ type: E.value === "button" ? e.type : void 0,
102
+ onClick: r[0] ||= (n) => e.disabled || e.loading ? void 0 : t.$emit("click", n)
103
+ }), {
104
+ default: _(() => [m(t.$slots, "default", {}, void 0, !0), e.loading || e.icon ? (p(), s("div", y, [e.loading ? (p(), s("span", b)) : e.icon ? (p(), a(n, {
105
+ key: 1,
106
+ name: e.icon,
107
+ size: A.value,
108
+ class: "nb-button__icon"
109
+ }, null, 8, ["name", "size"])) : o("", !0)])) : o("", !0)]),
110
+ _: 3
111
+ }, 16, [
112
+ "class",
113
+ "to",
114
+ "disabled",
115
+ "aria-disabled",
116
+ "type"
117
+ ]));
118
+ }
119
+ }), [["__scopeId", "data-v-a0e2a085"]]);
120
+ //#endregion
121
+ export { C as t };
@@ -0,0 +1 @@
1
+ require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Size.d-GBIblj2D.cjs`),n=require(`./Icon-C8R_r_In.cjs`),r=require(`./composables/useRouterLink.composable.cjs`);let i=require(`vue`);var a=function(e){return e.Button=`button`,e.Submit=`submit`,e.Reset=`reset`,e}(a||{}),o={key:0,class:`nb-button__decorations`},s={key:0,class:`nb-button__spinner`,"aria-hidden":`true`},c=new Set;function l(e){if(typeof e==`string`)return e;if(e&&(typeof e==`object`||typeof e==`function`)){let t=e;if(typeof t.glyphName==`string`)return t.glyphName}return``}var u=(0,i.defineComponent)({__name:`Button`,props:{variant:{default:void 0},outlined:{type:Boolean,default:!1},size:{default:t.t.Medium},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{default:void 0},type:{default:a.Button},href:{default:void 0},target:{default:void 0},rel:{default:void 0},to:{default:void 0}},emits:[`click`],setup(e){let t=e,a=(0,i.useSlots)(),u=(0,i.computed)(()=>!a.default&&!!(t.icon||t.loading)),d=r.useRouterLink(),f=(0,i.computed)(()=>t.to!=null&&!!d.value),p=(0,i.computed)(()=>{if(typeof t.to==`string`)return t.to;if(t.href)return t.href}),m=(0,i.computed)(()=>f.value?d.value:p.value?`a`:`button`),h=(0,i.computed)(()=>m.value===`a`?{href:p.value,target:t.target,rel:t.rel}:{}),g={xxs:10,xs:12,sm:12,md:14,lg:16,xl:16,xxl:20},_={xxs:12,xs:14,sm:16,md:18,lg:20,xl:20,xxl:26},v=(0,i.computed)(()=>(u.value?_:g)[t.size??`md`]??(u.value?18:14)),y=(0,i.getCurrentInstance)();return(0,i.onMounted)(()=>{typeof process<`u`&&process.env.NODE_ENV===`production`||u.value&&(0,i.nextTick)(()=>{let e=y?.proxy?.$el;if(!e||typeof e.getAttribute!=`function`||[`aria-label`,`aria-labelledby`,`title`].some(t=>(e.getAttribute(t)??``).trim().length>0)||(e.textContent??``).trim().length>0)return;let n=l(t.icon);c.has(n)||(c.add(n),console.warn(`[NbButton] An icon-only button${n?` (icon "${n}")`:``} has no accessible name, so a screen reader announces it as "button". Add aria-label, or name it with v-nb-tooltip.`,e))})}),(t,r)=>((0,i.openBlock)(),(0,i.createBlock)((0,i.resolveDynamicComponent)(m.value),(0,i.mergeProps)({class:[`nb-button`,e.variant?`nb-button--${e.variant}`:null,`nb-button--${e.size}`,{"nb-button--outlined":e.outlined},{"nb-button--loading":e.loading},{"nb-button--icon-only":u.value}],to:f.value?e.to:void 0},h.value,{disabled:m.value===`button`?e.disabled||e.loading:void 0,"aria-disabled":m.value!==`button`&&(e.disabled||e.loading)?!0:void 0,type:m.value===`button`?e.type:void 0,onClick:r[0]||=n=>e.disabled||e.loading?void 0:t.$emit(`click`,n)}),{default:(0,i.withCtx)(()=>[(0,i.renderSlot)(t.$slots,`default`,{},void 0,!0),e.loading||e.icon?((0,i.openBlock)(),(0,i.createElementBlock)(`div`,o,[e.loading?((0,i.openBlock)(),(0,i.createElementBlock)(`span`,s)):e.icon?((0,i.openBlock)(),(0,i.createBlock)(n.t,{key:1,name:e.icon,size:v.value,class:`nb-button__icon`},null,8,[`name`,`size`])):(0,i.createCommentVNode)(``,!0)])):(0,i.createCommentVNode)(``,!0)]),_:3},16,[`class`,`to`,`disabled`,`aria-disabled`,`type`]))}}),d=e.t(u,[[`__scopeId`,`data-v-a0e2a085`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return d}});
@@ -1,7 +1,7 @@
1
1
  import { useReducedMotion as e } from "./composables/useReducedMotion.composable.mjs";
2
2
  import { t } from "./_plugin-vue_export-helper-O4QQSku4.js";
3
3
  import { t as n } from "./Icon-rREAqsu0.js";
4
- import { t as r } from "./Button-CnwG9SUU.js";
4
+ import { t as r } from "./Button-Cw4D6w9K.js";
5
5
  import { t as i } from "./Message-Ciyc2nN6.js";
6
6
  import { i as a, r as ee, t as te } from "./Modal-BsuYzVSB.js";
7
7
  import { t as ne } from "./TextInput-CW0Tj61o.js";
@@ -1 +1 @@
1
- require(`./chunk-D-qHiVGv.cjs`);const e=require(`./composables/useReducedMotion.composable.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Icon-C8R_r_In.cjs`),r=require(`./Button-B2ngznxj.cjs`),i=require(`./Message-D8ZE4uGZ.cjs`),a=require(`./Modal-xl0ku1IX.cjs`),o=require(`./TextInput-DMWj3d3i.cjs`);let s=require(`vue`),c=require(`@nubisco/ui/icons/warning`),ee=require(`@nubisco/ui/icons/check`);var te={key:0,class:`nb-confirm__message`},ne={key:0,class:`nb-confirm__subject-kind`},l={class:`nb-confirm__subject-name`},u={key:1,class:`nb-confirm__gate`},d={class:`nb-confirm__live`},f={key:0,class:`nb-confirm__status`,role:`status`},p={key:1,class:`nb-confirm__status nb-confirm__status--success`,role:`status`},m=(0,s.defineComponent)({__name:`Confirm`,props:{open:{type:Boolean,default:!1},title:{},message:{default:void 0},subject:{default:void 0},subjectLabel:{default:void 0},confirmLabel:{default:`Confirm`},cancelLabel:{default:`Cancel`},tone:{default:`danger`},typeToConfirm:{default:void 0},typeToConfirmLabel:{default:void 0},typeToConfirmHelper:{default:void 0},busy:{type:Boolean,default:!1},busyLabel:{default:`Working...`},succeeded:{type:Boolean,default:!1},successLabel:{default:void 0},error:{default:void 0},size:{default:`sm`},floatingSelectors:{default:()=>[]},contentClass:{default:void 0}},emits:[`confirm`,`cancel`],setup(t,{expose:m,emit:h}){let g=t,_=h,v=(0,s.useId)(),y=`nb-confirm-title-${v}`,b=`nb-confirm-body-${v}`,x=(0,s.useSlots)(),S=(0,s.ref)(null),C=(0,s.ref)(null),w=(0,s.ref)(null),T=(0,s.ref)(``),E=e.useReducedMotion(),D=(0,s.computed)(()=>g.busy||g.succeeded);function O(){return!!g.message||!!g.subject||!!x.default}let k=(0,s.computed)(()=>g.tone===`danger`?`danger`:`primary`),A=(0,s.computed)(()=>g.typeToConfirmLabel??`Type ${g.typeToConfirm} to confirm`),j=(0,s.computed)(()=>!g.typeToConfirm||T.value.trim()===g.typeToConfirm),M=(0,s.computed)(()=>j.value&&!D.value);function N(){M.value&&_(`confirm`)}function P(){let e=w.value?.$el;return e instanceof HTMLElement?e:null}function F(){return S.value?.closest(`[role="dialog"],[role="alertdialog"]`)??null}function re(){return typeof document>`u`?[]:Array.from(document.querySelectorAll(`[aria-modal="true"]`))}function I(){let e=F();if(!e)return!1;let t=re();return t.length===0||t[t.length-1]===e}let L=[`a[href]:not([tabindex="-1"])`,`area[href]:not([tabindex="-1"])`,`button:not([disabled]):not([tabindex="-1"])`,`input:not([disabled]):not([type="hidden"]):not([tabindex="-1"])`,`select:not([disabled]):not([tabindex="-1"])`,`textarea:not([disabled]):not([tabindex="-1"])`,`summary:not([tabindex="-1"])`,`audio[controls]:not([tabindex="-1"])`,`video[controls]:not([tabindex="-1"])`,`iframe:not([tabindex="-1"])`,`[contenteditable]:not([contenteditable="false"]):not([tabindex="-1"])`,`[tabindex]:not([tabindex="-1"])`].map(e=>`${e}:not([hidden]):not([aria-hidden="true"])`).join(`,`);function R(){return a.i(g.floatingSelectors)}function z(e){return e instanceof Element?!!e.closest(R()):!1}function B(e){let t=F();return!!t&&!!e&&t.contains(e)}function V(){let e=F();return e?Array.from(e.querySelectorAll(L)).filter(e=>e.getAttribute(`aria-disabled`)!==`true`):[]}function H(){let e=F();return e?(e.focus(),!0):!1}function U(){let e=V()[0];e?e.focus():H()}let W=null;function G(){let e=W;W=null,e?.isConnected&&e.focus()}function K(){a.r(F(),E.value)}(0,s.watch)(E,()=>{g.open&&K()}),(0,s.watch)(()=>[g.busy,g.error],async(e,t)=>{if(!g.open)return;let[n,r]=e,i=t?.[0]??!1;if(await(0,s.nextTick)(),n){V().length===0&&H();return}if(i&&r){let e=C.value;e?e.focus():U();return}let a=document.activeElement;!B(a)&&!z(a)&&U()}),(0,s.watch)(()=>g.open,async e=>{e?(W=document.activeElement instanceof HTMLElement?document.activeElement:null,T.value=``,await(0,s.nextTick)(),K(),P()?P()?.focus():H()):G()},{immediate:!0});function q(){D.value||_(`cancel`)}let J=!1,Y=!1;function X(e){let t=e.target;J=B(t)||z(t)}function Z(e){Y=B(e.target)}function ie(){let e=J&&!Y;J=!1,!e&&q()}function Q(e){if(!g.open||z(document.activeElement))return;if(e.key===`Escape`){if(!I())return;e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),q();return}if(e.key!==`Tab`||!I())return;let t=V();if(t.length===0){e.preventDefault(),B(document.activeElement)||H();return}let n=t[0],r=t[t.length-1],i=document.activeElement;e.shiftKey&&(i===n||!B(i))?(e.preventDefault(),r.focus()):!e.shiftKey&&i===r?(e.preventDefault(),n.focus()):B(i)||(e.preventDefault(),n.focus())}function $(e){if(!g.open)return;let t=e.relatedTarget;if(t instanceof Element){if(B(t)||z(t))return}else if(t!==null)return;requestAnimationFrame(()=>{if(!g.open)return;let e=document.activeElement;B(e)||z(e)||e&&e!==document.body&&!e.isConnected||I()&&U()})}return typeof document<`u`&&(document.addEventListener(`keydown`,Q,!0),document.addEventListener(`focusout`,$,!0),document.addEventListener(`mousedown`,X,!0),document.addEventListener(`touchstart`,X,!0),document.addEventListener(`click`,Z,!0)),(0,s.onMounted)(()=>{g.open&&(K(),P()?P()?.focus():H())}),(0,s.onUnmounted)(()=>{typeof document<`u`&&(document.removeEventListener(`keydown`,Q,!0),document.removeEventListener(`focusout`,$,!0),document.removeEventListener(`mousedown`,X,!0),document.removeEventListener(`touchstart`,X,!0),document.removeEventListener(`click`,Z,!0)),G()}),m({focusCancel:()=>P()?.focus(),restoreFocus:G,isTopmost:I}),(e,m)=>((0,s.openBlock)(),(0,s.createBlock)(a.t,{open:t.open,size:t.size,role:t.tone===`danger`?`alertdialog`:`dialog`,"labelled-by":y,"described-by":O()?b:void 0,busy:t.busy,"close-on-overlay":!D.value,"close-disabled":D.value,"close-on-escape":!1,"trap-focus":!1,onClose:ie},{header:(0,s.withCtx)(()=>[(0,s.createElementVNode)(`span`,{id:y,class:(0,s.normalizeClass)([`nb-confirm__heading`,`nb-confirm__heading--${t.tone}`])},[t.tone===`danger`?((0,s.openBlock)(),(0,s.createBlock)(n.t,{key:0,name:(0,s.unref)(c.regular),size:16,"aria-hidden":`true`},null,8,[`name`])):(0,s.createCommentVNode)(``,!0),(0,s.createElementVNode)(`span`,null,(0,s.toDisplayString)(t.title),1)],2)]),footer:(0,s.withCtx)(()=>[(0,s.createVNode)(r.t,{ref_key:`cancelRef`,ref:w,class:`nb-confirm__action nb-confirm__action--cancel`,variant:`ghost`,size:`lg`,disabled:D.value,"data-nb-confirm":`cancel`,onClick:q},{default:(0,s.withCtx)(()=>[(0,s.createTextVNode)((0,s.toDisplayString)(t.cancelLabel),1)]),_:1},8,[`disabled`]),(0,s.createVNode)(r.t,{class:`nb-confirm__action nb-confirm__action--confirm`,variant:k.value,size:`lg`,disabled:!M.value,loading:t.busy,"data-nb-confirm":`confirm`,onClick:N},{default:(0,s.withCtx)(()=>[(0,s.createTextVNode)((0,s.toDisplayString)(t.confirmLabel),1)]),_:1},8,[`variant`,`disabled`,`loading`])]),default:(0,s.withCtx)(()=>[(0,s.createElementVNode)(`div`,{ref_key:`rootRef`,ref:S,class:(0,s.normalizeClass)([`nb-confirm`,t.contentClass])},[O()?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:0,id:b,class:`nb-confirm__body`},[(0,s.renderSlot)(e.$slots,`default`,{},()=>[t.message?((0,s.openBlock)(),(0,s.createElementBlock)(`p`,te,(0,s.toDisplayString)(t.message),1)):(0,s.createCommentVNode)(``,!0)],!0),t.subject?((0,s.openBlock)(),(0,s.createElementBlock)(`p`,{key:0,class:(0,s.normalizeClass)([`nb-confirm__subject`,`nb-confirm__subject--${t.tone}`])},[t.subjectLabel?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,ne,(0,s.toDisplayString)(t.subjectLabel),1)):(0,s.createCommentVNode)(``,!0),(0,s.createElementVNode)(`span`,l,(0,s.toDisplayString)(t.subject),1)],2)):(0,s.createCommentVNode)(``,!0)])):(0,s.createCommentVNode)(``,!0),t.typeToConfirm?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,u,[(0,s.createVNode)(o.t,{modelValue:T.value,"onUpdate:modelValue":m[0]||=e=>T.value=e,class:`nb-confirm__gate-field`,label:A.value,helper:t.typeToConfirmHelper,disabled:D.value,autocomplete:`off`,spellcheck:`false`,"data-nb-confirm":`gate`,onKeydown:m[1]||=(0,s.withKeys)((0,s.withModifiers)(()=>{},[`prevent`]),[`enter`])},null,8,[`modelValue`,`label`,`helper`,`disabled`])])):(0,s.createCommentVNode)(``,!0),(0,s.createElementVNode)(`div`,d,[t.busy?((0,s.openBlock)(),(0,s.createElementBlock)(`p`,f,(0,s.toDisplayString)(t.busyLabel),1)):(0,s.createCommentVNode)(``,!0),t.succeeded&&t.successLabel?((0,s.openBlock)(),(0,s.createElementBlock)(`p`,p,[(0,s.createVNode)(n.t,{name:(0,s.unref)(ee.regular),size:14,"aria-hidden":`true`},null,8,[`name`]),(0,s.createElementVNode)(`span`,null,(0,s.toDisplayString)(t.successLabel),1)])):(0,s.createCommentVNode)(``,!0),t.error?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:2,ref_key:`errorRef`,ref:C,class:`nb-confirm__error`,tabindex:`-1`},[(0,s.createVNode)(i.t,{variant:`error`},{default:(0,s.withCtx)(()=>[(0,s.createTextVNode)((0,s.toDisplayString)(t.error),1)]),_:1})],512)):(0,s.createCommentVNode)(``,!0)])],2)]),_:3},8,[`open`,`size`,`role`,`described-by`,`busy`,`close-on-overlay`,`close-disabled`]))}}),h=t.t(m,[[`__scopeId`,`data-v-683eafb1`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return h}});
1
+ require(`./chunk-D-qHiVGv.cjs`);const e=require(`./composables/useReducedMotion.composable.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Icon-C8R_r_In.cjs`),r=require(`./Button-D-XSNjSL.cjs`),i=require(`./Message-D8ZE4uGZ.cjs`),a=require(`./Modal-xl0ku1IX.cjs`),o=require(`./TextInput-DMWj3d3i.cjs`);let s=require(`vue`),c=require(`@nubisco/ui/icons/warning`),ee=require(`@nubisco/ui/icons/check`);var te={key:0,class:`nb-confirm__message`},ne={key:0,class:`nb-confirm__subject-kind`},l={class:`nb-confirm__subject-name`},u={key:1,class:`nb-confirm__gate`},d={class:`nb-confirm__live`},f={key:0,class:`nb-confirm__status`,role:`status`},p={key:1,class:`nb-confirm__status nb-confirm__status--success`,role:`status`},m=(0,s.defineComponent)({__name:`Confirm`,props:{open:{type:Boolean,default:!1},title:{},message:{default:void 0},subject:{default:void 0},subjectLabel:{default:void 0},confirmLabel:{default:`Confirm`},cancelLabel:{default:`Cancel`},tone:{default:`danger`},typeToConfirm:{default:void 0},typeToConfirmLabel:{default:void 0},typeToConfirmHelper:{default:void 0},busy:{type:Boolean,default:!1},busyLabel:{default:`Working...`},succeeded:{type:Boolean,default:!1},successLabel:{default:void 0},error:{default:void 0},size:{default:`sm`},floatingSelectors:{default:()=>[]},contentClass:{default:void 0}},emits:[`confirm`,`cancel`],setup(t,{expose:m,emit:h}){let g=t,_=h,v=(0,s.useId)(),y=`nb-confirm-title-${v}`,b=`nb-confirm-body-${v}`,x=(0,s.useSlots)(),S=(0,s.ref)(null),C=(0,s.ref)(null),w=(0,s.ref)(null),T=(0,s.ref)(``),E=e.useReducedMotion(),D=(0,s.computed)(()=>g.busy||g.succeeded);function O(){return!!g.message||!!g.subject||!!x.default}let k=(0,s.computed)(()=>g.tone===`danger`?`danger`:`primary`),A=(0,s.computed)(()=>g.typeToConfirmLabel??`Type ${g.typeToConfirm} to confirm`),j=(0,s.computed)(()=>!g.typeToConfirm||T.value.trim()===g.typeToConfirm),M=(0,s.computed)(()=>j.value&&!D.value);function N(){M.value&&_(`confirm`)}function P(){let e=w.value?.$el;return e instanceof HTMLElement?e:null}function F(){return S.value?.closest(`[role="dialog"],[role="alertdialog"]`)??null}function re(){return typeof document>`u`?[]:Array.from(document.querySelectorAll(`[aria-modal="true"]`))}function I(){let e=F();if(!e)return!1;let t=re();return t.length===0||t[t.length-1]===e}let L=[`a[href]:not([tabindex="-1"])`,`area[href]:not([tabindex="-1"])`,`button:not([disabled]):not([tabindex="-1"])`,`input:not([disabled]):not([type="hidden"]):not([tabindex="-1"])`,`select:not([disabled]):not([tabindex="-1"])`,`textarea:not([disabled]):not([tabindex="-1"])`,`summary:not([tabindex="-1"])`,`audio[controls]:not([tabindex="-1"])`,`video[controls]:not([tabindex="-1"])`,`iframe:not([tabindex="-1"])`,`[contenteditable]:not([contenteditable="false"]):not([tabindex="-1"])`,`[tabindex]:not([tabindex="-1"])`].map(e=>`${e}:not([hidden]):not([aria-hidden="true"])`).join(`,`);function R(){return a.i(g.floatingSelectors)}function z(e){return e instanceof Element?!!e.closest(R()):!1}function B(e){let t=F();return!!t&&!!e&&t.contains(e)}function V(){let e=F();return e?Array.from(e.querySelectorAll(L)).filter(e=>e.getAttribute(`aria-disabled`)!==`true`):[]}function H(){let e=F();return e?(e.focus(),!0):!1}function U(){let e=V()[0];e?e.focus():H()}let W=null;function G(){let e=W;W=null,e?.isConnected&&e.focus()}function K(){a.r(F(),E.value)}(0,s.watch)(E,()=>{g.open&&K()}),(0,s.watch)(()=>[g.busy,g.error],async(e,t)=>{if(!g.open)return;let[n,r]=e,i=t?.[0]??!1;if(await(0,s.nextTick)(),n){V().length===0&&H();return}if(i&&r){let e=C.value;e?e.focus():U();return}let a=document.activeElement;!B(a)&&!z(a)&&U()}),(0,s.watch)(()=>g.open,async e=>{e?(W=document.activeElement instanceof HTMLElement?document.activeElement:null,T.value=``,await(0,s.nextTick)(),K(),P()?P()?.focus():H()):G()},{immediate:!0});function q(){D.value||_(`cancel`)}let J=!1,Y=!1;function X(e){let t=e.target;J=B(t)||z(t)}function Z(e){Y=B(e.target)}function ie(){let e=J&&!Y;J=!1,!e&&q()}function Q(e){if(!g.open||z(document.activeElement))return;if(e.key===`Escape`){if(!I())return;e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),q();return}if(e.key!==`Tab`||!I())return;let t=V();if(t.length===0){e.preventDefault(),B(document.activeElement)||H();return}let n=t[0],r=t[t.length-1],i=document.activeElement;e.shiftKey&&(i===n||!B(i))?(e.preventDefault(),r.focus()):!e.shiftKey&&i===r?(e.preventDefault(),n.focus()):B(i)||(e.preventDefault(),n.focus())}function $(e){if(!g.open)return;let t=e.relatedTarget;if(t instanceof Element){if(B(t)||z(t))return}else if(t!==null)return;requestAnimationFrame(()=>{if(!g.open)return;let e=document.activeElement;B(e)||z(e)||e&&e!==document.body&&!e.isConnected||I()&&U()})}return typeof document<`u`&&(document.addEventListener(`keydown`,Q,!0),document.addEventListener(`focusout`,$,!0),document.addEventListener(`mousedown`,X,!0),document.addEventListener(`touchstart`,X,!0),document.addEventListener(`click`,Z,!0)),(0,s.onMounted)(()=>{g.open&&(K(),P()?P()?.focus():H())}),(0,s.onUnmounted)(()=>{typeof document<`u`&&(document.removeEventListener(`keydown`,Q,!0),document.removeEventListener(`focusout`,$,!0),document.removeEventListener(`mousedown`,X,!0),document.removeEventListener(`touchstart`,X,!0),document.removeEventListener(`click`,Z,!0)),G()}),m({focusCancel:()=>P()?.focus(),restoreFocus:G,isTopmost:I}),(e,m)=>((0,s.openBlock)(),(0,s.createBlock)(a.t,{open:t.open,size:t.size,role:t.tone===`danger`?`alertdialog`:`dialog`,"labelled-by":y,"described-by":O()?b:void 0,busy:t.busy,"close-on-overlay":!D.value,"close-disabled":D.value,"close-on-escape":!1,"trap-focus":!1,onClose:ie},{header:(0,s.withCtx)(()=>[(0,s.createElementVNode)(`span`,{id:y,class:(0,s.normalizeClass)([`nb-confirm__heading`,`nb-confirm__heading--${t.tone}`])},[t.tone===`danger`?((0,s.openBlock)(),(0,s.createBlock)(n.t,{key:0,name:(0,s.unref)(c.regular),size:16,"aria-hidden":`true`},null,8,[`name`])):(0,s.createCommentVNode)(``,!0),(0,s.createElementVNode)(`span`,null,(0,s.toDisplayString)(t.title),1)],2)]),footer:(0,s.withCtx)(()=>[(0,s.createVNode)(r.t,{ref_key:`cancelRef`,ref:w,class:`nb-confirm__action nb-confirm__action--cancel`,variant:`ghost`,size:`lg`,disabled:D.value,"data-nb-confirm":`cancel`,onClick:q},{default:(0,s.withCtx)(()=>[(0,s.createTextVNode)((0,s.toDisplayString)(t.cancelLabel),1)]),_:1},8,[`disabled`]),(0,s.createVNode)(r.t,{class:`nb-confirm__action nb-confirm__action--confirm`,variant:k.value,size:`lg`,disabled:!M.value,loading:t.busy,"data-nb-confirm":`confirm`,onClick:N},{default:(0,s.withCtx)(()=>[(0,s.createTextVNode)((0,s.toDisplayString)(t.confirmLabel),1)]),_:1},8,[`variant`,`disabled`,`loading`])]),default:(0,s.withCtx)(()=>[(0,s.createElementVNode)(`div`,{ref_key:`rootRef`,ref:S,class:(0,s.normalizeClass)([`nb-confirm`,t.contentClass])},[O()?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:0,id:b,class:`nb-confirm__body`},[(0,s.renderSlot)(e.$slots,`default`,{},()=>[t.message?((0,s.openBlock)(),(0,s.createElementBlock)(`p`,te,(0,s.toDisplayString)(t.message),1)):(0,s.createCommentVNode)(``,!0)],!0),t.subject?((0,s.openBlock)(),(0,s.createElementBlock)(`p`,{key:0,class:(0,s.normalizeClass)([`nb-confirm__subject`,`nb-confirm__subject--${t.tone}`])},[t.subjectLabel?((0,s.openBlock)(),(0,s.createElementBlock)(`span`,ne,(0,s.toDisplayString)(t.subjectLabel),1)):(0,s.createCommentVNode)(``,!0),(0,s.createElementVNode)(`span`,l,(0,s.toDisplayString)(t.subject),1)],2)):(0,s.createCommentVNode)(``,!0)])):(0,s.createCommentVNode)(``,!0),t.typeToConfirm?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,u,[(0,s.createVNode)(o.t,{modelValue:T.value,"onUpdate:modelValue":m[0]||=e=>T.value=e,class:`nb-confirm__gate-field`,label:A.value,helper:t.typeToConfirmHelper,disabled:D.value,autocomplete:`off`,spellcheck:`false`,"data-nb-confirm":`gate`,onKeydown:m[1]||=(0,s.withKeys)((0,s.withModifiers)(()=>{},[`prevent`]),[`enter`])},null,8,[`modelValue`,`label`,`helper`,`disabled`])])):(0,s.createCommentVNode)(``,!0),(0,s.createElementVNode)(`div`,d,[t.busy?((0,s.openBlock)(),(0,s.createElementBlock)(`p`,f,(0,s.toDisplayString)(t.busyLabel),1)):(0,s.createCommentVNode)(``,!0),t.succeeded&&t.successLabel?((0,s.openBlock)(),(0,s.createElementBlock)(`p`,p,[(0,s.createVNode)(n.t,{name:(0,s.unref)(ee.regular),size:14,"aria-hidden":`true`},null,8,[`name`]),(0,s.createElementVNode)(`span`,null,(0,s.toDisplayString)(t.successLabel),1)])):(0,s.createCommentVNode)(``,!0),t.error?((0,s.openBlock)(),(0,s.createElementBlock)(`div`,{key:2,ref_key:`errorRef`,ref:C,class:`nb-confirm__error`,tabindex:`-1`},[(0,s.createVNode)(i.t,{variant:`error`},{default:(0,s.withCtx)(()=>[(0,s.createTextVNode)((0,s.toDisplayString)(t.error),1)]),_:1})],512)):(0,s.createCommentVNode)(``,!0)])],2)]),_:3},8,[`open`,`size`,`role`,`described-by`,`busy`,`close-on-overlay`,`close-disabled`]))}}),h=t.t(m,[[`__scopeId`,`data-v-683eafb1`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return h}});
@@ -2,7 +2,7 @@ import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
2
2
  import { r as t } from "./Size.d-Bah6vMl3.js";
3
3
  import { t as n } from "./Icon-rREAqsu0.js";
4
4
  import { useSurfaceLayer as r } from "./composables/useSurfaceLayer.composable.mjs";
5
- import { t as i } from "./Button-CnwG9SUU.js";
5
+ import { t as i } from "./Button-Cw4D6w9K.js";
6
6
  import { t as a } from "./Grid-CgUyhsw4.js";
7
7
  import { t as o } from "./Checkbox-Iu2e_Ob7.js";
8
8
  import { Fragment as s, computed as c, createBlock as l, createCommentVNode as u, createElementBlock as d, createElementVNode as f, createTextVNode as p, createVNode as m, defineComponent as h, getCurrentInstance as ee, mergeProps as te, normalizeClass as g, normalizeStyle as ne, openBlock as _, ref as re, renderList as v, renderSlot as y, toDisplayString as b, unref as ie, useId as ae, useSlots as oe, watch as se, withCtx as x, withModifiers as S } from "vue";
@@ -1 +1 @@
1
- const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Size.d-GBIblj2D.cjs`),r=require(`./Icon-C8R_r_In.cjs`),i=require(`./composables/useSurfaceLayer.composable.cjs`),a=require(`./Button-B2ngznxj.cjs`),o=require(`./Grid-DTZTlxd_.cjs`),s=require(`./Checkbox-9bxwFy5R.cjs`);let c=require(`vue`),l=require(`@nubisco/ui/icons/arrows-down-up`);l=e.n(l);let u=require(`@nubisco/ui/icons/arrow-up`);u=e.n(u);let d=require(`@nubisco/ui/icons/arrow-down`);d=e.n(d);var f={key:0,class:`nb-data-table__toolbar`},p=[`inert`,`aria-hidden`],m={key:0},h={key:0,class:`nb-data-table__title`},g={key:1,class:`nb-data-table__description`},_=[`inert`,`aria-hidden`],v={key:1,class:`nb-data-table__batch`,role:`region`,"aria-label":`Table batch actions`},y={class:`nb-data-table__batch-count`},b={class:`nb-data-table__batch-actions`},x={class:`nb-data-table__scroll`},ee=[`aria-label`,`aria-busy`],te={key:0,class:`nb-data-table__col-select`},ne={key:1,class:`nb-data-table__col-actions`},re={class:`nb-data-table__head`},ie={key:0,scope:`col`,class:`nb-data-table__th nb-data-table__select-cell`},ae=[`aria-sort`],oe=[`onClick`],se={class:`nb-data-table__th-label`},ce={key:1,class:`nb-data-table__th-label`},le={key:1,scope:`col`,class:`nb-data-table__th nb-data-table__actions-cell`},ue={class:`nb-data-table__body`},de={key:0,class:`nb-data-table__td`},fe={key:1,class:`nb-data-table__td`},pe={key:1,class:`nb-data-table__state-row`},S=[`colspan`],C={key:2,class:`nb-data-table__state-row`},w=[`colspan`],T=[`aria-selected`,`onClick`],E=[`checked`,`aria-label`,`onChange`],D={key:1,class:`nb-data-table__footer`},O=(0,c.defineComponent)({__name:`DataTable`,props:{columns:{},rows:{},rowKey:{},size:{default:n.r.Medium},sortState:{default:null},selectable:{default:`none`},selected:{default:()=>[]},loading:{type:Boolean,default:!1},skeletonRows:{default:5},error:{default:void 0},emptyMessage:{default:void 0},stickyHeader:{type:Boolean,default:!0},zebra:{type:Boolean,default:!1},fill:{type:Boolean,default:!1},title:{default:void 0},description:{default:void 0},ariaLabel:{default:void 0}},emits:[`sort`,`update:selected`,`row-click`],setup(e,{emit:t}){let n=e,{layerProps:O}=i.useSurfaceLayer(),k=t,A=(0,c.useSlots)(),j=`nb-data-table-select-${(0,c.useId)()}`,M=(0,c.computed)(()=>n.size),N=(0,c.computed)(()=>n.columns.filter(e=>!e.hidden)),P=(0,c.computed)(()=>n.selectable!==`none`),F=(0,c.computed)(()=>!!A[`row-actions`]),I=(0,c.computed)(()=>N.value.length+(P.value?1:0)+(F.value?1:0));function L(e){if(e.width!=null)return{width:typeof e.width==`number`?`${e.width}px`:e.width}}function R(e,t){return t[e.key]}function z(e){return e==null?``:String(e)}let B=e=>e.column.render?.(e.row,R(e.column,e.row),e.rowIndex)??null;B.props=[`column`,`row`,`rowIndex`];function V(e){let t=n.rowKey;return typeof t==`function`?t(e):e[t]}let H=(0,c.computed)(()=>new Set(n.selected)),me=(0,c.computed)(()=>n.selected),U=(0,c.computed)(()=>n.selected.length);function W(e){return H.value.has(V(e))}let G=(0,c.computed)(()=>n.rows.map(e=>V(e))),K=(0,c.computed)(()=>G.value.length>0&&G.value.every(e=>H.value.has(e))),he=(0,c.computed)(()=>!K.value&&G.value.some(e=>H.value.has(e))),q=(0,c.ref)(null),J=!1;function Y(e){J=e.shiftKey}(0,c.watch)(G,()=>{q.value=null});function ge(e,t){let r=V(e),i=new Set(n.selected),a=!i.has(r),o=q.value,s=e=>{a?i.add(e):i.delete(e)};if(J&&o!==null&&o!==t){let e=Math.min(o,t),r=Math.max(o,t);for(let t=e;t<=r;t++){let e=n.rows[t];e&&s(V(e))}}else s(r),q.value=t;J=!1,k(`update:selected`,[...i])}function _e(e){k(`update:selected`,[V(e)])}function ve(){let e=new Set(n.selected);K.value?G.value.forEach(t=>e.delete(t)):G.value.forEach(t=>e.add(t)),k(`update:selected`,[...e])}function X(){k(`update:selected`,[])}let Z=(0,c.computed)(()=>n.selectable!==`none`&&!!A[`batch-actions`]),Q=(0,c.computed)(()=>Z.value&&U.value>0),ye=(0,c.computed)(()=>!!n.title||!!n.description||!!A.toolbar||!!A.search||!!A[`toolbar-actions`]),be=(0,c.computed)(()=>ye.value||Z.value);function $(e){return!!n.sortState&&n.sortState.key===e.key&&n.sortState.direction!==`none`}function xe(e){return $(e)?n.sortState.direction===`asc`?`ascending`:`descending`:`none`}function Se(e){return $(e)?n.sortState.direction===`asc`?u:d:l}function Ce(e){return e===`asc`?`desc`:e===`desc`?`none`:`asc`}function we(e){let t=n.sortState&&n.sortState.key===e.key?n.sortState.direction:`none`;k(`sort`,{key:e.key,direction:Ce(t)})}let Te=(0,c.getCurrentInstance)(),Ee=(0,c.computed)(()=>!!Te?.vnode.props?.onRowClick);function De(e,t){k(`row-click`,e,t)}return(t,n)=>((0,c.openBlock)(),(0,c.createElementBlock)(`div`,(0,c.mergeProps)({class:[`nb-data-table`,`nb-data-table--${e.size}`,{"nb-data-table--zebra":e.zebra},{"nb-data-table--sticky":e.stickyHeader},{"nb-data-table--fill":e.fill}]},(0,c.unref)(O)),[be.value?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,f,[(0,c.createElementVNode)(`div`,{class:`nb-data-table__toolbar-heading`,inert:Q.value||void 0,"aria-hidden":Q.value||void 0},[(0,c.renderSlot)(t.$slots,`toolbar`,{selectedCount:U.value},()=>[e.title||e.description?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,m,[e.title?((0,c.openBlock)(),(0,c.createElementBlock)(`h2`,h,(0,c.toDisplayString)(e.title),1)):(0,c.createCommentVNode)(``,!0),e.description?((0,c.openBlock)(),(0,c.createElementBlock)(`p`,g,(0,c.toDisplayString)(e.description),1)):(0,c.createCommentVNode)(``,!0)])):(0,c.createCommentVNode)(``,!0)],!0)],8,p),t.$slots.search||t.$slots[`toolbar-actions`]?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,{key:0,class:`nb-data-table__toolbar-tools`,inert:Q.value||void 0,"aria-hidden":Q.value||void 0},[(0,c.renderSlot)(t.$slots,`search`,{},void 0,!0),(0,c.renderSlot)(t.$slots,`toolbar-actions`,{},void 0,!0)],8,_)):(0,c.createCommentVNode)(``,!0),Q.value?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,v,[(0,c.createElementVNode)(`span`,y,(0,c.toDisplayString)(U.value)+` selected `,1),(0,c.createElementVNode)(`div`,b,[(0,c.renderSlot)(t.$slots,`batch-actions`,{selectedKeys:me.value,clear:X},void 0,!0)]),(0,c.createVNode)(a.t,{class:`nb-data-table__batch-cancel`,variant:`ghost`,size:M.value,onClick:X},{default:(0,c.withCtx)(()=>[...n[2]||=[(0,c.createTextVNode)(` Cancel `,-1)]]),_:1},8,[`size`])])):(0,c.createCommentVNode)(``,!0)])):(0,c.createCommentVNode)(``,!0),(0,c.createElementVNode)(`div`,x,[(0,c.createElementVNode)(`table`,{class:`nb-data-table__table`,"aria-label":e.ariaLabel||e.title||void 0,"aria-busy":e.loading||void 0},[(0,c.createElementVNode)(`colgroup`,null,[P.value?((0,c.openBlock)(),(0,c.createElementBlock)(`col`,te)):(0,c.createCommentVNode)(``,!0),((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,null,(0,c.renderList)(N.value,e=>((0,c.openBlock)(),(0,c.createElementBlock)(`col`,{key:`col-${e.key}`,style:(0,c.normalizeStyle)(L(e))},null,4))),128)),F.value?((0,c.openBlock)(),(0,c.createElementBlock)(`col`,ne)):(0,c.createCommentVNode)(``,!0)]),(0,c.createElementVNode)(`thead`,re,[(0,c.createElementVNode)(`tr`,null,[P.value?((0,c.openBlock)(),(0,c.createElementBlock)(`th`,ie,[e.selectable===`multiple`?((0,c.openBlock)(),(0,c.createBlock)(s.t,{key:0,"model-value":K.value,indeterminate:he.value,"aria-label":`Select all rows`,"onUpdate:modelValue":ve},null,8,[`model-value`,`indeterminate`])):(0,c.createCommentVNode)(``,!0)])):(0,c.createCommentVNode)(``,!0),((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,null,(0,c.renderList)(N.value,e=>((0,c.openBlock)(),(0,c.createElementBlock)(`th`,{key:`th-${e.key}`,scope:`col`,class:(0,c.normalizeClass)([`nb-data-table__th`,`nb-data-table__th--${e.align||`left`}`,{"nb-data-table__th--sortable":e.sortable},{"nb-data-table__th--sorted":$(e)}]),"aria-sort":e.sortable?xe(e):void 0},[e.sortable?((0,c.openBlock)(),(0,c.createElementBlock)(`button`,{key:0,type:`button`,class:`nb-data-table__sort`,onClick:t=>we(e)},[(0,c.createElementVNode)(`span`,se,[(0,c.renderSlot)(t.$slots,`header-${e.key}`,{column:e},()=>[(0,c.createTextVNode)((0,c.toDisplayString)(e.header),1)],!0)]),(0,c.createVNode)(r.t,{name:Se(e),class:`nb-data-table__sort-icon`,"aria-hidden":`true`},null,8,[`name`])],8,oe)):((0,c.openBlock)(),(0,c.createElementBlock)(`span`,ce,[(0,c.renderSlot)(t.$slots,`header-${e.key}`,{column:e},()=>[(0,c.createTextVNode)((0,c.toDisplayString)(e.header),1)],!0)]))],10,ae))),128)),F.value?((0,c.openBlock)(),(0,c.createElementBlock)(`th`,le,[...n[3]||=[(0,c.createElementVNode)(`span`,{class:`nb-sr-only`},`Row actions`,-1)]])):(0,c.createCommentVNode)(``,!0)])]),(0,c.createElementVNode)(`tbody`,ue,[e.loading?((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,{key:0},(0,c.renderList)(e.skeletonRows,e=>((0,c.openBlock)(),(0,c.createElementBlock)(`tr`,{key:`skeleton-${e}`,class:`nb-data-table__row nb-data-table__row--skeleton`},[P.value?((0,c.openBlock)(),(0,c.createElementBlock)(`td`,de,[...n[4]||=[(0,c.createElementVNode)(`span`,{class:`nb-data-table__skeleton nb-data-table__skeleton--box`},null,-1)]])):(0,c.createCommentVNode)(``,!0),((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,null,(0,c.renderList)(N.value,t=>((0,c.openBlock)(),(0,c.createElementBlock)(`td`,{key:`sk-${e}-${t.key}`,class:`nb-data-table__td`},[...n[5]||=[(0,c.createElementVNode)(`span`,{class:`nb-data-table__skeleton`},null,-1)]]))),128)),F.value?((0,c.openBlock)(),(0,c.createElementBlock)(`td`,fe,[...n[6]||=[(0,c.createElementVNode)(`span`,{class:`nb-data-table__skeleton nb-data-table__skeleton--box`},null,-1)]])):(0,c.createCommentVNode)(``,!0)]))),128)):e.error?((0,c.openBlock)(),(0,c.createElementBlock)(`tr`,pe,[(0,c.createElementVNode)(`td`,{colspan:I.value,class:`nb-data-table__state nb-data-table__state--error`},[(0,c.renderSlot)(t.$slots,`error`,{error:e.error},()=>[(0,c.createVNode)(o.t,{is:`span`,align:`center`,justify:`center`,gap:`xs`,class:`nb-data-table__state-inner`},{default:(0,c.withCtx)(()=>[(0,c.createVNode)(r.t,{name:`warning-circle-fill`,"aria-hidden":`true`}),(0,c.createElementVNode)(`span`,null,(0,c.toDisplayString)(e.error),1)]),_:1})],!0)],8,S)])):e.rows.length?((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,{key:3},(0,c.renderList)(e.rows,(r,i)=>((0,c.openBlock)(),(0,c.createElementBlock)(`tr`,{key:V(r),class:(0,c.normalizeClass)([`nb-data-table__row`,{"nb-data-table__row--selected":W(r)},{"nb-data-table__row--clickable":Ee.value}]),"aria-selected":e.selectable===`none`?void 0:W(r),onClick:e=>De(r,i)},[P.value?((0,c.openBlock)(),(0,c.createElementBlock)(`td`,{key:0,class:`nb-data-table__td nb-data-table__select-cell`,onClick:n[0]||=(0,c.withModifiers)(()=>{},[`stop`]),onMousedown:Y,onKeydown:Y},[e.selectable===`multiple`?((0,c.openBlock)(),(0,c.createBlock)(s.t,{key:0,"model-value":W(r),"aria-label":`Select row ${i+1}`,"onUpdate:modelValue":e=>ge(r,i)},null,8,[`model-value`,`aria-label`,`onUpdate:modelValue`])):((0,c.openBlock)(),(0,c.createElementBlock)(`input`,{key:1,type:`radio`,class:`nb-data-table__radio`,name:j,checked:W(r),"aria-label":`Select row ${i+1}`,onChange:e=>_e(r)},null,40,E))],32)):(0,c.createCommentVNode)(``,!0),((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,null,(0,c.renderList)(N.value,e=>((0,c.openBlock)(),(0,c.createElementBlock)(`td`,{key:`td-${V(r)}-${e.key}`,class:(0,c.normalizeClass)([`nb-data-table__td`,`nb-data-table__td--${e.align||`left`}`,e.cellClass])},[(0,c.renderSlot)(t.$slots,`cell-${e.key}`,{row:r,value:R(e,r),column:e,rowIndex:i},()=>[e.render?((0,c.openBlock)(),(0,c.createBlock)(B,{key:0,column:e,row:r,"row-index":i},null,8,[`column`,`row`,`row-index`])):((0,c.openBlock)(),(0,c.createElementBlock)(c.Fragment,{key:1},[(0,c.createTextVNode)((0,c.toDisplayString)(z(R(e,r))),1)],64))],!0)],2))),128)),F.value?((0,c.openBlock)(),(0,c.createElementBlock)(`td`,{key:1,class:`nb-data-table__td nb-data-table__actions-cell`,onClick:n[1]||=(0,c.withModifiers)(()=>{},[`stop`])},[(0,c.renderSlot)(t.$slots,`row-actions`,{row:r,rowIndex:i},void 0,!0)])):(0,c.createCommentVNode)(``,!0)],10,T))),128)):((0,c.openBlock)(),(0,c.createElementBlock)(`tr`,C,[(0,c.createElementVNode)(`td`,{colspan:I.value,class:`nb-data-table__state nb-data-table__state--empty`},[(0,c.renderSlot)(t.$slots,`empty`,{},()=>[(0,c.createElementVNode)(`span`,null,(0,c.toDisplayString)(e.emptyMessage||`No data to display`),1)],!0)],8,w)]))])],8,ee)]),t.$slots.footer?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,D,[(0,c.renderSlot)(t.$slots,`footer`,{},void 0,!0)])):(0,c.createCommentVNode)(``,!0)],16))}}),k=t.t(O,[[`__scopeId`,`data-v-e2562ae7`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return k}});
1
+ const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Size.d-GBIblj2D.cjs`),r=require(`./Icon-C8R_r_In.cjs`),i=require(`./composables/useSurfaceLayer.composable.cjs`),a=require(`./Button-D-XSNjSL.cjs`),o=require(`./Grid-DTZTlxd_.cjs`),s=require(`./Checkbox-9bxwFy5R.cjs`);let c=require(`vue`),l=require(`@nubisco/ui/icons/arrows-down-up`);l=e.n(l);let u=require(`@nubisco/ui/icons/arrow-up`);u=e.n(u);let d=require(`@nubisco/ui/icons/arrow-down`);d=e.n(d);var f={key:0,class:`nb-data-table__toolbar`},p=[`inert`,`aria-hidden`],m={key:0},h={key:0,class:`nb-data-table__title`},g={key:1,class:`nb-data-table__description`},_=[`inert`,`aria-hidden`],v={key:1,class:`nb-data-table__batch`,role:`region`,"aria-label":`Table batch actions`},y={class:`nb-data-table__batch-count`},b={class:`nb-data-table__batch-actions`},x={class:`nb-data-table__scroll`},ee=[`aria-label`,`aria-busy`],te={key:0,class:`nb-data-table__col-select`},ne={key:1,class:`nb-data-table__col-actions`},re={class:`nb-data-table__head`},ie={key:0,scope:`col`,class:`nb-data-table__th nb-data-table__select-cell`},ae=[`aria-sort`],oe=[`onClick`],se={class:`nb-data-table__th-label`},ce={key:1,class:`nb-data-table__th-label`},le={key:1,scope:`col`,class:`nb-data-table__th nb-data-table__actions-cell`},ue={class:`nb-data-table__body`},de={key:0,class:`nb-data-table__td`},fe={key:1,class:`nb-data-table__td`},pe={key:1,class:`nb-data-table__state-row`},S=[`colspan`],C={key:2,class:`nb-data-table__state-row`},w=[`colspan`],T=[`aria-selected`,`onClick`],E=[`checked`,`aria-label`,`onChange`],D={key:1,class:`nb-data-table__footer`},O=(0,c.defineComponent)({__name:`DataTable`,props:{columns:{},rows:{},rowKey:{},size:{default:n.r.Medium},sortState:{default:null},selectable:{default:`none`},selected:{default:()=>[]},loading:{type:Boolean,default:!1},skeletonRows:{default:5},error:{default:void 0},emptyMessage:{default:void 0},stickyHeader:{type:Boolean,default:!0},zebra:{type:Boolean,default:!1},fill:{type:Boolean,default:!1},title:{default:void 0},description:{default:void 0},ariaLabel:{default:void 0}},emits:[`sort`,`update:selected`,`row-click`],setup(e,{emit:t}){let n=e,{layerProps:O}=i.useSurfaceLayer(),k=t,A=(0,c.useSlots)(),j=`nb-data-table-select-${(0,c.useId)()}`,M=(0,c.computed)(()=>n.size),N=(0,c.computed)(()=>n.columns.filter(e=>!e.hidden)),P=(0,c.computed)(()=>n.selectable!==`none`),F=(0,c.computed)(()=>!!A[`row-actions`]),I=(0,c.computed)(()=>N.value.length+(P.value?1:0)+(F.value?1:0));function L(e){if(e.width!=null)return{width:typeof e.width==`number`?`${e.width}px`:e.width}}function R(e,t){return t[e.key]}function z(e){return e==null?``:String(e)}let B=e=>e.column.render?.(e.row,R(e.column,e.row),e.rowIndex)??null;B.props=[`column`,`row`,`rowIndex`];function V(e){let t=n.rowKey;return typeof t==`function`?t(e):e[t]}let H=(0,c.computed)(()=>new Set(n.selected)),me=(0,c.computed)(()=>n.selected),U=(0,c.computed)(()=>n.selected.length);function W(e){return H.value.has(V(e))}let G=(0,c.computed)(()=>n.rows.map(e=>V(e))),K=(0,c.computed)(()=>G.value.length>0&&G.value.every(e=>H.value.has(e))),he=(0,c.computed)(()=>!K.value&&G.value.some(e=>H.value.has(e))),q=(0,c.ref)(null),J=!1;function Y(e){J=e.shiftKey}(0,c.watch)(G,()=>{q.value=null});function ge(e,t){let r=V(e),i=new Set(n.selected),a=!i.has(r),o=q.value,s=e=>{a?i.add(e):i.delete(e)};if(J&&o!==null&&o!==t){let e=Math.min(o,t),r=Math.max(o,t);for(let t=e;t<=r;t++){let e=n.rows[t];e&&s(V(e))}}else s(r),q.value=t;J=!1,k(`update:selected`,[...i])}function _e(e){k(`update:selected`,[V(e)])}function ve(){let e=new Set(n.selected);K.value?G.value.forEach(t=>e.delete(t)):G.value.forEach(t=>e.add(t)),k(`update:selected`,[...e])}function X(){k(`update:selected`,[])}let Z=(0,c.computed)(()=>n.selectable!==`none`&&!!A[`batch-actions`]),Q=(0,c.computed)(()=>Z.value&&U.value>0),ye=(0,c.computed)(()=>!!n.title||!!n.description||!!A.toolbar||!!A.search||!!A[`toolbar-actions`]),be=(0,c.computed)(()=>ye.value||Z.value);function $(e){return!!n.sortState&&n.sortState.key===e.key&&n.sortState.direction!==`none`}function xe(e){return $(e)?n.sortState.direction===`asc`?`ascending`:`descending`:`none`}function Se(e){return $(e)?n.sortState.direction===`asc`?u:d:l}function Ce(e){return e===`asc`?`desc`:e===`desc`?`none`:`asc`}function we(e){let t=n.sortState&&n.sortState.key===e.key?n.sortState.direction:`none`;k(`sort`,{key:e.key,direction:Ce(t)})}let Te=(0,c.getCurrentInstance)(),Ee=(0,c.computed)(()=>!!Te?.vnode.props?.onRowClick);function De(e,t){k(`row-click`,e,t)}return(t,n)=>((0,c.openBlock)(),(0,c.createElementBlock)(`div`,(0,c.mergeProps)({class:[`nb-data-table`,`nb-data-table--${e.size}`,{"nb-data-table--zebra":e.zebra},{"nb-data-table--sticky":e.stickyHeader},{"nb-data-table--fill":e.fill}]},(0,c.unref)(O)),[be.value?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,f,[(0,c.createElementVNode)(`div`,{class:`nb-data-table__toolbar-heading`,inert:Q.value||void 0,"aria-hidden":Q.value||void 0},[(0,c.renderSlot)(t.$slots,`toolbar`,{selectedCount:U.value},()=>[e.title||e.description?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,m,[e.title?((0,c.openBlock)(),(0,c.createElementBlock)(`h2`,h,(0,c.toDisplayString)(e.title),1)):(0,c.createCommentVNode)(``,!0),e.description?((0,c.openBlock)(),(0,c.createElementBlock)(`p`,g,(0,c.toDisplayString)(e.description),1)):(0,c.createCommentVNode)(``,!0)])):(0,c.createCommentVNode)(``,!0)],!0)],8,p),t.$slots.search||t.$slots[`toolbar-actions`]?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,{key:0,class:`nb-data-table__toolbar-tools`,inert:Q.value||void 0,"aria-hidden":Q.value||void 0},[(0,c.renderSlot)(t.$slots,`search`,{},void 0,!0),(0,c.renderSlot)(t.$slots,`toolbar-actions`,{},void 0,!0)],8,_)):(0,c.createCommentVNode)(``,!0),Q.value?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,v,[(0,c.createElementVNode)(`span`,y,(0,c.toDisplayString)(U.value)+` selected `,1),(0,c.createElementVNode)(`div`,b,[(0,c.renderSlot)(t.$slots,`batch-actions`,{selectedKeys:me.value,clear:X},void 0,!0)]),(0,c.createVNode)(a.t,{class:`nb-data-table__batch-cancel`,variant:`ghost`,size:M.value,onClick:X},{default:(0,c.withCtx)(()=>[...n[2]||=[(0,c.createTextVNode)(` Cancel `,-1)]]),_:1},8,[`size`])])):(0,c.createCommentVNode)(``,!0)])):(0,c.createCommentVNode)(``,!0),(0,c.createElementVNode)(`div`,x,[(0,c.createElementVNode)(`table`,{class:`nb-data-table__table`,"aria-label":e.ariaLabel||e.title||void 0,"aria-busy":e.loading||void 0},[(0,c.createElementVNode)(`colgroup`,null,[P.value?((0,c.openBlock)(),(0,c.createElementBlock)(`col`,te)):(0,c.createCommentVNode)(``,!0),((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,null,(0,c.renderList)(N.value,e=>((0,c.openBlock)(),(0,c.createElementBlock)(`col`,{key:`col-${e.key}`,style:(0,c.normalizeStyle)(L(e))},null,4))),128)),F.value?((0,c.openBlock)(),(0,c.createElementBlock)(`col`,ne)):(0,c.createCommentVNode)(``,!0)]),(0,c.createElementVNode)(`thead`,re,[(0,c.createElementVNode)(`tr`,null,[P.value?((0,c.openBlock)(),(0,c.createElementBlock)(`th`,ie,[e.selectable===`multiple`?((0,c.openBlock)(),(0,c.createBlock)(s.t,{key:0,"model-value":K.value,indeterminate:he.value,"aria-label":`Select all rows`,"onUpdate:modelValue":ve},null,8,[`model-value`,`indeterminate`])):(0,c.createCommentVNode)(``,!0)])):(0,c.createCommentVNode)(``,!0),((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,null,(0,c.renderList)(N.value,e=>((0,c.openBlock)(),(0,c.createElementBlock)(`th`,{key:`th-${e.key}`,scope:`col`,class:(0,c.normalizeClass)([`nb-data-table__th`,`nb-data-table__th--${e.align||`left`}`,{"nb-data-table__th--sortable":e.sortable},{"nb-data-table__th--sorted":$(e)}]),"aria-sort":e.sortable?xe(e):void 0},[e.sortable?((0,c.openBlock)(),(0,c.createElementBlock)(`button`,{key:0,type:`button`,class:`nb-data-table__sort`,onClick:t=>we(e)},[(0,c.createElementVNode)(`span`,se,[(0,c.renderSlot)(t.$slots,`header-${e.key}`,{column:e},()=>[(0,c.createTextVNode)((0,c.toDisplayString)(e.header),1)],!0)]),(0,c.createVNode)(r.t,{name:Se(e),class:`nb-data-table__sort-icon`,"aria-hidden":`true`},null,8,[`name`])],8,oe)):((0,c.openBlock)(),(0,c.createElementBlock)(`span`,ce,[(0,c.renderSlot)(t.$slots,`header-${e.key}`,{column:e},()=>[(0,c.createTextVNode)((0,c.toDisplayString)(e.header),1)],!0)]))],10,ae))),128)),F.value?((0,c.openBlock)(),(0,c.createElementBlock)(`th`,le,[...n[3]||=[(0,c.createElementVNode)(`span`,{class:`nb-sr-only`},`Row actions`,-1)]])):(0,c.createCommentVNode)(``,!0)])]),(0,c.createElementVNode)(`tbody`,ue,[e.loading?((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,{key:0},(0,c.renderList)(e.skeletonRows,e=>((0,c.openBlock)(),(0,c.createElementBlock)(`tr`,{key:`skeleton-${e}`,class:`nb-data-table__row nb-data-table__row--skeleton`},[P.value?((0,c.openBlock)(),(0,c.createElementBlock)(`td`,de,[...n[4]||=[(0,c.createElementVNode)(`span`,{class:`nb-data-table__skeleton nb-data-table__skeleton--box`},null,-1)]])):(0,c.createCommentVNode)(``,!0),((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,null,(0,c.renderList)(N.value,t=>((0,c.openBlock)(),(0,c.createElementBlock)(`td`,{key:`sk-${e}-${t.key}`,class:`nb-data-table__td`},[...n[5]||=[(0,c.createElementVNode)(`span`,{class:`nb-data-table__skeleton`},null,-1)]]))),128)),F.value?((0,c.openBlock)(),(0,c.createElementBlock)(`td`,fe,[...n[6]||=[(0,c.createElementVNode)(`span`,{class:`nb-data-table__skeleton nb-data-table__skeleton--box`},null,-1)]])):(0,c.createCommentVNode)(``,!0)]))),128)):e.error?((0,c.openBlock)(),(0,c.createElementBlock)(`tr`,pe,[(0,c.createElementVNode)(`td`,{colspan:I.value,class:`nb-data-table__state nb-data-table__state--error`},[(0,c.renderSlot)(t.$slots,`error`,{error:e.error},()=>[(0,c.createVNode)(o.t,{is:`span`,align:`center`,justify:`center`,gap:`xs`,class:`nb-data-table__state-inner`},{default:(0,c.withCtx)(()=>[(0,c.createVNode)(r.t,{name:`warning-circle-fill`,"aria-hidden":`true`}),(0,c.createElementVNode)(`span`,null,(0,c.toDisplayString)(e.error),1)]),_:1})],!0)],8,S)])):e.rows.length?((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,{key:3},(0,c.renderList)(e.rows,(r,i)=>((0,c.openBlock)(),(0,c.createElementBlock)(`tr`,{key:V(r),class:(0,c.normalizeClass)([`nb-data-table__row`,{"nb-data-table__row--selected":W(r)},{"nb-data-table__row--clickable":Ee.value}]),"aria-selected":e.selectable===`none`?void 0:W(r),onClick:e=>De(r,i)},[P.value?((0,c.openBlock)(),(0,c.createElementBlock)(`td`,{key:0,class:`nb-data-table__td nb-data-table__select-cell`,onClick:n[0]||=(0,c.withModifiers)(()=>{},[`stop`]),onMousedown:Y,onKeydown:Y},[e.selectable===`multiple`?((0,c.openBlock)(),(0,c.createBlock)(s.t,{key:0,"model-value":W(r),"aria-label":`Select row ${i+1}`,"onUpdate:modelValue":e=>ge(r,i)},null,8,[`model-value`,`aria-label`,`onUpdate:modelValue`])):((0,c.openBlock)(),(0,c.createElementBlock)(`input`,{key:1,type:`radio`,class:`nb-data-table__radio`,name:j,checked:W(r),"aria-label":`Select row ${i+1}`,onChange:e=>_e(r)},null,40,E))],32)):(0,c.createCommentVNode)(``,!0),((0,c.openBlock)(!0),(0,c.createElementBlock)(c.Fragment,null,(0,c.renderList)(N.value,e=>((0,c.openBlock)(),(0,c.createElementBlock)(`td`,{key:`td-${V(r)}-${e.key}`,class:(0,c.normalizeClass)([`nb-data-table__td`,`nb-data-table__td--${e.align||`left`}`,e.cellClass])},[(0,c.renderSlot)(t.$slots,`cell-${e.key}`,{row:r,value:R(e,r),column:e,rowIndex:i},()=>[e.render?((0,c.openBlock)(),(0,c.createBlock)(B,{key:0,column:e,row:r,"row-index":i},null,8,[`column`,`row`,`row-index`])):((0,c.openBlock)(),(0,c.createElementBlock)(c.Fragment,{key:1},[(0,c.createTextVNode)((0,c.toDisplayString)(z(R(e,r))),1)],64))],!0)],2))),128)),F.value?((0,c.openBlock)(),(0,c.createElementBlock)(`td`,{key:1,class:`nb-data-table__td nb-data-table__actions-cell`,onClick:n[1]||=(0,c.withModifiers)(()=>{},[`stop`])},[(0,c.renderSlot)(t.$slots,`row-actions`,{row:r,rowIndex:i},void 0,!0)])):(0,c.createCommentVNode)(``,!0)],10,T))),128)):((0,c.openBlock)(),(0,c.createElementBlock)(`tr`,C,[(0,c.createElementVNode)(`td`,{colspan:I.value,class:`nb-data-table__state nb-data-table__state--empty`},[(0,c.renderSlot)(t.$slots,`empty`,{},()=>[(0,c.createElementVNode)(`span`,null,(0,c.toDisplayString)(e.emptyMessage||`No data to display`),1)],!0)],8,w)]))])],8,ee)]),t.$slots.footer?((0,c.openBlock)(),(0,c.createElementBlock)(`div`,D,[(0,c.renderSlot)(t.$slots,`footer`,{},void 0,!0)])):(0,c.createCommentVNode)(``,!0)],16))}}),k=t.t(O,[[`__scopeId`,`data-v-e2562ae7`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return k}});