@nubisco/ui 5.31.0 → 5.32.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 (480) hide show
  1. package/dist/{ActionGroup-BepLbLUB.js → ActionGroup-BTCKhtoQ.js} +1 -1
  2. package/dist/{ActionGroup-CPJcdC_x.cjs → ActionGroup-Bke1hEXW.cjs} +1 -1
  3. package/dist/{AiLabel-CGxUTm-X.js → AiLabel--bFL3RGP.js} +1 -1
  4. package/dist/{AiLabel-BMeJMSLm.cjs → AiLabel-oCXAwOV7.cjs} +1 -1
  5. package/dist/{AiProvider-ueSRHZ4d.cjs → AiProvider-Hcn5HI7d.cjs} +1 -1
  6. package/dist/{AiProvider-CkzXTd_m.js → AiProvider-e52qwD9B.js} +6 -6
  7. package/dist/{AiUsage-CCMQdmZv.cjs → AiUsage-62kxTT8F.cjs} +1 -1
  8. package/dist/{AiUsage-q_WU2toP.js → AiUsage-D1xgxa2C.js} +2 -2
  9. package/dist/{BackToTop-Bep47dq4.cjs → BackToTop-BekeNBkd.cjs} +1 -1
  10. package/dist/{BackToTop-DwInsaIf.js → BackToTop-CgJdrehl.js} +1 -1
  11. package/dist/{BarChart-CV1GzXgj.cjs → BarChart-Ci0qaOZm.cjs} +1 -1
  12. package/dist/{BarChart-DWH40Q0_.js → BarChart-DF9C-09O.js} +4 -4
  13. package/dist/{Blueprint-ZklSOKvo.cjs → Blueprint-CrscH3bU.cjs} +1 -1
  14. package/dist/{Blueprint-CztF1C7M.js → Blueprint-DGqjK9oB.js} +2 -2
  15. package/dist/{BlueprintCard-DfbiDxaX.cjs → BlueprintCard-CRcMUcbC.cjs} +1 -1
  16. package/dist/{BlueprintCard-DeQe5F9O.js → BlueprintCard-CrLvovri.js} +1 -1
  17. package/dist/{BlueprintControls-DqzA7vVR.cjs → BlueprintControls-CSuknRl_.cjs} +1 -1
  18. package/dist/{BlueprintControls-OPbXEOlE.js → BlueprintControls-CoI6YQ95.js} +1 -1
  19. package/dist/{Board-CoxZg27T.cjs → Board-C4pvwydQ.cjs} +1 -1
  20. package/dist/{Board-CTjk-pTy.js → Board-Dnk3Sn93.js} +1 -1
  21. package/dist/{Briefing-Ce2nPMi-.js → Briefing-B3DkTnx2.js} +3 -3
  22. package/dist/{Briefing-B_D0X4pk.cjs → Briefing-j9BVOjgG.cjs} +1 -1
  23. package/dist/{BriefingDestination-D_IHVo71.js → BriefingDestination-BSjBDX-4.js} +1 -1
  24. package/dist/{BriefingDestination-Md4A2sPI.cjs → BriefingDestination-Bjo062E8.cjs} +1 -1
  25. package/dist/{Button-Cq9dEeHz.js → Button-BHlNXmBr.js} +1 -1
  26. package/dist/{Button-CbQyG-jg.cjs → Button-bQHEUhzc.cjs} +1 -1
  27. package/dist/Card-4l_DbIKC.cjs +1 -0
  28. package/dist/Card-BBXSjH58.js +74 -0
  29. package/dist/Card.link-CPtMC-Hu.cjs +1 -0
  30. package/dist/Card.link-CfeswzHY.js +37 -0
  31. package/dist/{Checkbox-Cj70wwUV.js → Checkbox-ColjurT5.js} +1 -1
  32. package/dist/{Checkbox-B0VPSJBY.cjs → Checkbox-hoojePrb.cjs} +1 -1
  33. package/dist/{CheckboxGroup-CzpbYjaA.js → CheckboxGroup-B6UmmUpN.js} +3 -3
  34. package/dist/{CheckboxGroup-CzhomyRH.cjs → CheckboxGroup-DRTRfYnm.cjs} +1 -1
  35. package/dist/{ColorStrip-C6KK7RMa.js → ColorStrip-BU-ulOHD.js} +2 -2
  36. package/dist/{ColorStrip-CjNDptlR.cjs → ColorStrip-BYyRIRcm.cjs} +1 -1
  37. package/dist/{Confirm-CpufclnJ.js → Confirm-D4efGS9N.js} +4 -4
  38. package/dist/{Confirm-9xk3l58e.cjs → Confirm-dbr67RaT.cjs} +1 -1
  39. package/dist/{CopyButton-rEPzSx4v.cjs → CopyButton-BRRmpFuP.cjs} +1 -1
  40. package/dist/{CopyButton-DRpVCGXL.js → CopyButton-fbE_I72_.js} +1 -1
  41. package/dist/{DataTable-OfThpfks.cjs → DataTable-CEn_t_gK.cjs} +1 -1
  42. package/dist/{DataTable-7mjrUxT9.js → DataTable-Crff50H9.js} +3 -3
  43. package/dist/{DatePicker-DIdEzzsG.cjs → DatePicker-BE8UNh5e.cjs} +1 -1
  44. package/dist/{DatePicker-ZiWlM0Ee.js → DatePicker-DdC1K_r4.js} +3 -3
  45. package/dist/{FileUploader-C9UH-Z55.js → FileUploader-83cZPW3H.js} +2 -2
  46. package/dist/{FileUploader-CBymiita.cjs → FileUploader-DwuQVCjI.cjs} +1 -1
  47. package/dist/{Form-BPVpxTZQ.js → Form-C6D7J3uE.js} +1 -1
  48. package/dist/{Form-BeYswpJM.cjs → Form-CCIMliw5.cjs} +1 -1
  49. package/dist/{GanttChart-DSiFcLIL.cjs → GanttChart-C2ql59iv.cjs} +1 -1
  50. package/dist/{GanttChart-CBNjVceP.js → GanttChart-tHaks3Qu.js} +3 -3
  51. package/dist/{ImageCropper-BC4pRMRj.js → ImageCropper-BdB5u2KL.js} +2 -2
  52. package/dist/{ImageCropper-BIDxE4N-.cjs → ImageCropper-ujxFwNFt.cjs} +1 -1
  53. package/dist/{InlineLoading-C06ETzoT.js → InlineLoading-Cs5QZd9l.js} +1 -1
  54. package/dist/{InlineLoading-DdgaHvhk.cjs → InlineLoading-DTni8I9v.cjs} +1 -1
  55. package/dist/{InterpolationChart-CW6jsxbG.cjs → InterpolationChart-CezKg7nG.cjs} +1 -1
  56. package/dist/{InterpolationChart-B5c9PPgm.js → InterpolationChart-x2yvZUFf.js} +3 -3
  57. package/dist/{LineChart-DrEv3pAe.js → LineChart-A2so8GBH.js} +4 -4
  58. package/dist/{LineChart-BceHLI2r.cjs → LineChart-DnYgeNPe.cjs} +1 -1
  59. package/dist/{Modal-Dffb6fJW.cjs → Modal-B5o-iCST.cjs} +1 -1
  60. package/dist/{Modal-BrnJwgh5.js → Modal-DmNuqKOf.js} +2 -2
  61. package/dist/{NotificationCenter-DMIqGkxv.js → NotificationCenter-3a6Ka6f0.js} +5 -5
  62. package/dist/{NotificationCenter-_v_X9zLG.cjs → NotificationCenter-BdQvSMWC.cjs} +1 -1
  63. package/dist/{NumberInput-BwiFF9bx.js → NumberInput-DgjZDq0n.js} +2 -2
  64. package/dist/{NumberInput-BooE-zqh.cjs → NumberInput-DpPVxENr.cjs} +1 -1
  65. package/dist/{Pagination-DX4XgQZM.cjs → Pagination-DC0orqR2.cjs} +1 -1
  66. package/dist/{Pagination-D5By9-m3.js → Pagination-R0xsDurI.js} +2 -2
  67. package/dist/{PieChart-njhwQKaO.cjs → PieChart-C3MInQWP.cjs} +1 -1
  68. package/dist/{PieChart-DaskwoU5.js → PieChart-DnGl86Lc.js} +3 -3
  69. package/dist/ProgressBar-CnVdi3l4.cjs +1 -0
  70. package/dist/{ProgressBar-ClKgPiWo.js → ProgressBar-DFtOp3I-.js} +8 -4
  71. package/dist/{Radio-CFAdCHBt.js → Radio-CgsnwzDy.js} +3 -3
  72. package/dist/{Radio-D7vxGglR.cjs → Radio-DYXyO8tN.cjs} +1 -1
  73. package/dist/{Select-CHuZfqLt.cjs → Select-CjkBXtFi.cjs} +1 -1
  74. package/dist/{Select-CwO5aX8j.js → Select-Rt3Y2VD4.js} +3 -3
  75. package/dist/{Shell-qpPhxpqT.js → Shell-BUqkz67b.js} +1 -1
  76. package/dist/{Shell-CxZZhH9l.cjs → Shell-CixU-_Lh.cjs} +1 -1
  77. package/dist/{SidebarCollapseToggle-xbeMvxja.js → SidebarCollapseToggle-1Od8XvzB.js} +2 -2
  78. package/dist/{SidebarCollapseToggle-CcxDjKZU.cjs → SidebarCollapseToggle-D3upA4VD.cjs} +1 -1
  79. package/dist/{SidebarHeaderToggle-B5QC_zBy.js → SidebarHeaderToggle-BFxmHAl9.js} +1 -1
  80. package/dist/{SidebarHeaderToggle-CuYM063E.cjs → SidebarHeaderToggle-CHkcVjY7.cjs} +1 -1
  81. package/dist/{Skeleton-Bc9jsinl.cjs → Skeleton-CSRjBPVt.cjs} +1 -1
  82. package/dist/{Skeleton-C3VaNLNl.js → Skeleton-TgkyQXSq.js} +1 -1
  83. package/dist/{Slider-Ci5TU4P4.cjs → Slider-NUU1SB6V.cjs} +1 -1
  84. package/dist/{Slider-BtsElA6K.js → Slider-YLBEViRc.js} +4 -4
  85. package/dist/{Spinner-JayAXEyd.cjs → Spinner-BPC4GV2R.cjs} +1 -1
  86. package/dist/{Spinner-C5ouuwn-.js → Spinner-DT8nD53U.js} +1 -1
  87. package/dist/Stat-CHBimwPd.cjs +1 -0
  88. package/dist/Stat-DqRpuO4B.js +101 -0
  89. package/dist/{Stepper-C9eHMZ8V.cjs → Stepper-CHRsH26g.cjs} +1 -1
  90. package/dist/{Stepper-BFdO3sQI.js → Stepper-Do9WOdhu.js} +1 -1
  91. package/dist/{StepperStep-Byw4EBRA.cjs → StepperStep-8Z1ERb7I.cjs} +1 -1
  92. package/dist/{StepperStep-DSr3MyH5.js → StepperStep-AGFO5cKL.js} +1 -1
  93. package/dist/SuggestionList-BdFhF0fM.cjs +1 -0
  94. package/dist/SuggestionList-CTJEWb2x.js +170 -0
  95. package/dist/{Switch-a73y1wiu.cjs → Switch-BNIi6Xxq.cjs} +1 -1
  96. package/dist/{Switch-DS297b1b.js → Switch-CZUy_hrg.js} +2 -2
  97. package/dist/{TableOfContents-DigLeDNO.cjs → TableOfContents-BKRPPea4.cjs} +1 -1
  98. package/dist/{TableOfContents-VZjSntV4.js → TableOfContents-DP9O7w7I.js} +1 -1
  99. package/dist/{Tabs-DEq0xEZB.js → Tabs-C-vp8-s1.js} +1 -1
  100. package/dist/{Tabs-DYtk5VC-.cjs → Tabs-CNZ3LlV1.cjs} +1 -1
  101. package/dist/TextInput-BaRumauo.js +293 -0
  102. package/dist/TextInput-bj61DMdd.cjs +2 -0
  103. package/dist/TextInput.context-kCqQ5HWv.cjs +1 -0
  104. package/dist/TextInput.context-qkmg5Mpm.js +4 -0
  105. package/dist/{Toaster-uheAMTLu.js → Toaster-BHcDHheK.js} +1 -1
  106. package/dist/{Toaster-tkwHvYWX.cjs → Toaster-BkxXz6XR.cjs} +1 -1
  107. package/dist/{Tree-948eRw61.js → Tree-B0-bRZLF.js} +1 -1
  108. package/dist/{Tree-r1tGxoQV.cjs → Tree-DHLVF8eV.cjs} +1 -1
  109. package/dist/{TreeNode-C-APuzeJ.js → TreeNode-CjXf_kJH.js} +1 -1
  110. package/dist/{TreeNode-CXIk7R6w.cjs → TreeNode-ixiFKZpi.cjs} +1 -1
  111. package/dist/{UserMenu-4X_d62Uo.cjs → UserMenu-1BiJ1Q6k.cjs} +1 -1
  112. package/dist/{UserMenu-B9WJ5t5y.js → UserMenu-D09PImNx.js} +3 -3
  113. package/dist/{Video-C6KUqrBg.js → Video-C8s9kdCW.js} +1 -1
  114. package/dist/{Video-B-RuZL-9.cjs → Video-D1sAapY7.cjs} +1 -1
  115. package/dist/{Walkthrough-BO9mRfuC.cjs → Walkthrough-B5MWEfO0.cjs} +1 -1
  116. package/dist/{Walkthrough-BA-MrcaO.js → Walkthrough-BMiPIGlt.js} +1 -1
  117. package/dist/all.cjs +1 -1
  118. package/dist/all.mjs +146 -142
  119. package/dist/component-styles.json +8 -0
  120. package/dist/components/ActionGroup.cjs +1 -1
  121. package/dist/components/ActionGroup.mjs +1 -1
  122. package/dist/components/AiLabel.cjs +1 -1
  123. package/dist/components/AiLabel.mjs +1 -1
  124. package/dist/components/AiProvider.cjs +1 -1
  125. package/dist/components/AiProvider.mjs +1 -1
  126. package/dist/components/AiUsage.cjs +1 -1
  127. package/dist/components/AiUsage.mjs +1 -1
  128. package/dist/components/Avatar.cjs +1 -1
  129. package/dist/components/Avatar.mjs +1 -1
  130. package/dist/components/BackToTop.cjs +1 -1
  131. package/dist/components/BackToTop.mjs +1 -1
  132. package/dist/components/Badge.cjs +1 -1
  133. package/dist/components/Badge.mjs +1 -1
  134. package/dist/components/Banner.cjs +1 -1
  135. package/dist/components/Banner.mjs +1 -1
  136. package/dist/components/Blueprint.cjs +1 -1
  137. package/dist/components/Blueprint.mjs +1 -1
  138. package/dist/components/BlueprintBackground.cjs +1 -1
  139. package/dist/components/BlueprintBackground.mjs +1 -1
  140. package/dist/components/BlueprintCard.cjs +1 -1
  141. package/dist/components/BlueprintCard.mjs +1 -1
  142. package/dist/components/BlueprintControls.cjs +1 -1
  143. package/dist/components/BlueprintControls.mjs +1 -1
  144. package/dist/components/BlueprintMinimap.cjs +1 -1
  145. package/dist/components/BlueprintMinimap.mjs +1 -1
  146. package/dist/components/Board.cjs +1 -1
  147. package/dist/components/Board.mjs +1 -1
  148. package/dist/components/BottomPanel.cjs +1 -1
  149. package/dist/components/BottomPanel.mjs +1 -1
  150. package/dist/components/Breadcrumbs.cjs +1 -1
  151. package/dist/components/Breadcrumbs.mjs +1 -1
  152. package/dist/components/Briefing.cjs +1 -1
  153. package/dist/components/Briefing.mjs +1 -1
  154. package/dist/components/BriefingDestination.cjs +1 -1
  155. package/dist/components/BriefingDestination.mjs +1 -1
  156. package/dist/components/Button.cjs +1 -1
  157. package/dist/components/Button.mjs +1 -1
  158. package/dist/components/Button.vue.d.ts.map +1 -1
  159. package/dist/components/Calendar.cjs +1 -1
  160. package/dist/components/Calendar.mjs +1 -1
  161. package/dist/components/Card.cjs +1 -1
  162. package/dist/components/Card.link.d.ts +38 -0
  163. package/dist/components/Card.link.d.ts.map +1 -0
  164. package/dist/components/Card.mjs +1 -1
  165. package/dist/components/Card.vue.d.ts +1 -0
  166. package/dist/components/Card.vue.d.ts.map +1 -1
  167. package/dist/components/CardGrid.cjs +1 -1
  168. package/dist/components/CardGrid.d.ts +10 -2
  169. package/dist/components/CardGrid.mjs +1 -1
  170. package/dist/components/Charts/BarChart.cjs +1 -1
  171. package/dist/components/Charts/BarChart.mjs +1 -1
  172. package/dist/components/Charts/GanttChart.cjs +1 -1
  173. package/dist/components/Charts/GanttChart.mjs +1 -1
  174. package/dist/components/Charts/InterpolationChart.cjs +1 -1
  175. package/dist/components/Charts/InterpolationChart.mjs +1 -1
  176. package/dist/components/Charts/LineChart.cjs +1 -1
  177. package/dist/components/Charts/LineChart.mjs +1 -1
  178. package/dist/components/Charts/PieChart.cjs +1 -1
  179. package/dist/components/Charts/PieChart.mjs +1 -1
  180. package/dist/components/Charts/Sparkline.cjs +1 -1
  181. package/dist/components/Charts/Sparkline.mjs +1 -1
  182. package/dist/components/Checkbox.cjs +1 -1
  183. package/dist/components/Checkbox.mjs +1 -1
  184. package/dist/components/CheckboxGroup.cjs +1 -1
  185. package/dist/components/CheckboxGroup.mjs +1 -1
  186. package/dist/components/ColorStrip.cjs +1 -1
  187. package/dist/components/ColorStrip.mjs +1 -1
  188. package/dist/components/CommandPalette.cjs +1 -1
  189. package/dist/components/CommandPalette.mjs +1 -1
  190. package/dist/components/Confirm.cjs +1 -1
  191. package/dist/components/Confirm.mjs +1 -1
  192. package/dist/components/CopyButton.cjs +1 -1
  193. package/dist/components/CopyButton.mjs +1 -1
  194. package/dist/components/DataTable.cjs +1 -1
  195. package/dist/components/DataTable.mjs +1 -1
  196. package/dist/components/DatePicker.cjs +1 -1
  197. package/dist/components/DatePicker.mjs +1 -1
  198. package/dist/components/DefinitionList.cjs +1 -1
  199. package/dist/components/DefinitionList.mjs +1 -1
  200. package/dist/components/DefinitionListItem.cjs +1 -1
  201. package/dist/components/DefinitionListItem.mjs +1 -1
  202. package/dist/components/DragHandle.cjs +1 -1
  203. package/dist/components/DragHandle.mjs +1 -1
  204. package/dist/components/EmptyState.cjs +1 -1
  205. package/dist/components/EmptyState.mjs +1 -1
  206. package/dist/components/Field.cjs +1 -1
  207. package/dist/components/Field.mjs +1 -1
  208. package/dist/components/FileUploader.cjs +1 -1
  209. package/dist/components/FileUploader.mjs +1 -1
  210. package/dist/components/FileUploader.vue.d.ts.map +1 -1
  211. package/dist/components/Flag.cjs +1 -1
  212. package/dist/components/Flag.mjs +1 -1
  213. package/dist/components/FloatingToolbar.cjs +1 -1
  214. package/dist/components/FloatingToolbar.mjs +1 -1
  215. package/dist/components/Form.cjs +1 -1
  216. package/dist/components/Form.mjs +1 -1
  217. package/dist/components/Grid.cjs +1 -1
  218. package/dist/components/Grid.mjs +1 -1
  219. package/dist/components/ImageCropper.cjs +1 -1
  220. package/dist/components/ImageCropper.mjs +1 -1
  221. package/dist/components/InlineEdit.cjs +1 -1
  222. package/dist/components/InlineEdit.mjs +1 -1
  223. package/dist/components/InlineLoading.cjs +1 -1
  224. package/dist/components/InlineLoading.mjs +1 -1
  225. package/dist/components/JsonTree.cjs +1 -1
  226. package/dist/components/JsonTree.mjs +1 -1
  227. package/dist/components/Label.cjs +1 -1
  228. package/dist/components/Label.mjs +1 -1
  229. package/dist/components/Layer.cjs +1 -1
  230. package/dist/components/Layer.mjs +1 -1
  231. package/dist/components/MenuBar.cjs +1 -1
  232. package/dist/components/MenuBar.mjs +1 -1
  233. package/dist/components/MenuBarItem.cjs +1 -1
  234. package/dist/components/MenuBarItem.mjs +1 -1
  235. package/dist/components/MenuDivider.cjs +1 -1
  236. package/dist/components/MenuDivider.mjs +1 -1
  237. package/dist/components/Message.cjs +1 -1
  238. package/dist/components/Message.mjs +1 -1
  239. package/dist/components/Modal.cjs +1 -1
  240. package/dist/components/Modal.mjs +1 -1
  241. package/dist/components/NotificationCenter.cjs +1 -1
  242. package/dist/components/NotificationCenter.mjs +1 -1
  243. package/dist/components/NotificationCenterItem.cjs +1 -1
  244. package/dist/components/NotificationCenterItem.mjs +1 -1
  245. package/dist/components/NubiscoMark.cjs +1 -1
  246. package/dist/components/NubiscoMark.mjs +1 -1
  247. package/dist/components/NubiscoPlatformMark.cjs +1 -1
  248. package/dist/components/NubiscoPlatformMark.mjs +1 -1
  249. package/dist/components/NumberInput.cjs +1 -1
  250. package/dist/components/NumberInput.mjs +1 -1
  251. package/dist/components/Pagination.cjs +1 -1
  252. package/dist/components/Pagination.mjs +1 -1
  253. package/dist/components/Panel.cjs +1 -1
  254. package/dist/components/Panel.mjs +1 -1
  255. package/dist/components/ProgressBar.cjs +1 -1
  256. package/dist/components/ProgressBar.d.ts +7 -0
  257. package/dist/components/ProgressBar.mjs +1 -1
  258. package/dist/components/ProgressBar.vue.d.ts +1 -0
  259. package/dist/components/ProgressBar.vue.d.ts.map +1 -1
  260. package/dist/components/Radio.cjs +1 -1
  261. package/dist/components/Radio.mjs +1 -1
  262. package/dist/components/Radio.vue.d.ts.map +1 -1
  263. package/dist/components/ReorderList.cjs +1 -1
  264. package/dist/components/ReorderList.mjs +1 -1
  265. package/dist/components/Select.cjs +1 -1
  266. package/dist/components/Select.mjs +1 -1
  267. package/dist/components/Shell.cjs +1 -1
  268. package/dist/components/Shell.mjs +1 -1
  269. package/dist/components/Shell.vue.d.ts.map +1 -1
  270. package/dist/components/ShellPanel.cjs +1 -1
  271. package/dist/components/ShellPanel.mjs +1 -1
  272. package/dist/components/SidebarBrand.cjs +1 -1
  273. package/dist/components/SidebarBrand.mjs +1 -1
  274. package/dist/components/SidebarCollapseToggle.cjs +1 -1
  275. package/dist/components/SidebarCollapseToggle.mjs +1 -1
  276. package/dist/components/SidebarHeaderToggle.cjs +1 -1
  277. package/dist/components/SidebarHeaderToggle.mjs +1 -1
  278. package/dist/components/SidebarLink.cjs +1 -1
  279. package/dist/components/SidebarLink.mjs +1 -1
  280. package/dist/components/SidebarMenu.cjs +1 -1
  281. package/dist/components/SidebarMenu.mjs +1 -1
  282. package/dist/components/SidebarMenuGroup.cjs +1 -1
  283. package/dist/components/SidebarMenuGroup.mjs +1 -1
  284. package/dist/components/SidebarMenuItem.cjs +1 -1
  285. package/dist/components/SidebarMenuItem.mjs +1 -1
  286. package/dist/components/SidebarStatus.cjs +1 -1
  287. package/dist/components/SidebarStatus.mjs +1 -1
  288. package/dist/components/Skeleton.cjs +1 -1
  289. package/dist/components/Skeleton.mjs +1 -1
  290. package/dist/components/Slider.cjs +1 -1
  291. package/dist/components/Slider.mjs +1 -1
  292. package/dist/components/Spinner.cjs +1 -1
  293. package/dist/components/Spinner.mjs +1 -1
  294. package/dist/components/Stat.cjs +1 -0
  295. package/dist/components/Stat.d.ts +57 -0
  296. package/dist/components/Stat.mjs +2 -0
  297. package/dist/components/Stat.vue.d.ts +38 -0
  298. package/dist/components/Stat.vue.d.ts.map +1 -0
  299. package/dist/components/Stepper.cjs +1 -1
  300. package/dist/components/Stepper.mjs +1 -1
  301. package/dist/components/StepperStep.cjs +1 -1
  302. package/dist/components/StepperStep.mjs +1 -1
  303. package/dist/components/Submenu.cjs +1 -1
  304. package/dist/components/Submenu.mjs +1 -1
  305. package/dist/components/SuggestionList.cjs +1 -0
  306. package/dist/components/SuggestionList.d.ts +37 -0
  307. package/dist/components/SuggestionList.mjs +2 -0
  308. package/dist/components/SuggestionList.vue.d.ts +35 -0
  309. package/dist/components/SuggestionList.vue.d.ts.map +1 -0
  310. package/dist/components/Switch.cjs +1 -1
  311. package/dist/components/Switch.mjs +1 -1
  312. package/dist/components/TableOfContents.cjs +1 -1
  313. package/dist/components/TableOfContents.mjs +1 -1
  314. package/dist/components/Tabs.cjs +1 -1
  315. package/dist/components/Tabs.mjs +1 -1
  316. package/dist/components/TextInput.cjs +1 -1
  317. package/dist/components/TextInput.context.d.ts +13 -0
  318. package/dist/components/TextInput.context.d.ts.map +1 -0
  319. package/dist/components/TextInput.mjs +1 -1
  320. package/dist/components/TextInput.vue.d.ts +3 -1
  321. package/dist/components/TextInput.vue.d.ts.map +1 -1
  322. package/dist/components/Toast.cjs +1 -1
  323. package/dist/components/Toast.mjs +1 -1
  324. package/dist/components/Toaster.cjs +1 -1
  325. package/dist/components/Toaster.mjs +1 -1
  326. package/dist/components/Tree.cjs +1 -1
  327. package/dist/components/Tree.mjs +1 -1
  328. package/dist/components/TreeNode.cjs +1 -1
  329. package/dist/components/TreeNode.mjs +1 -1
  330. package/dist/components/UserMenu.cjs +1 -1
  331. package/dist/components/UserMenu.mjs +1 -1
  332. package/dist/components/Video.cjs +1 -1
  333. package/dist/components/Video.mjs +1 -1
  334. package/dist/components/Walkthrough.cjs +1 -1
  335. package/dist/components/Walkthrough.mjs +1 -1
  336. package/dist/components/Wireframe.cjs +1 -1
  337. package/dist/components/Wireframe.mjs +1 -1
  338. package/dist/components/index.d.ts.map +1 -1
  339. package/dist/components/manifest.d.ts +2 -0
  340. package/dist/components/manifest.d.ts.map +1 -1
  341. package/dist/components/manifest.js +2 -0
  342. package/dist/composables/useBlueprint.composable.cjs +1 -1
  343. package/dist/composables/useBlueprint.composable.mjs +1 -1
  344. package/dist/composables/useConfirm.composable.cjs +1 -1
  345. package/dist/composables/useConfirm.composable.mjs +3 -3
  346. package/dist/composables/useInlineLoading.composable.cjs +1 -1
  347. package/dist/composables/useInlineLoading.composable.mjs +1 -1
  348. package/dist/composables/useLoadingAnnouncer.composable.cjs +1 -1
  349. package/dist/composables/useLoadingAnnouncer.composable.mjs +1 -1
  350. package/dist/global.d.ts +4 -0
  351. package/dist/index.cjs +1 -1
  352. package/dist/index.mjs +113 -111
  353. package/dist/main.d.ts +4 -0
  354. package/dist/main.d.ts.map +1 -1
  355. package/dist/styles/Button.css +1 -1
  356. package/dist/styles/Card.css +1 -1
  357. package/dist/styles/FileUploader.css +1 -1
  358. package/dist/styles/ProgressBar.css +1 -1
  359. package/dist/styles/Radio.css +1 -1
  360. package/dist/styles/Shell.css +1 -1
  361. package/dist/styles/Stat.css +1 -0
  362. package/dist/styles/SuggestionList.css +1 -0
  363. package/dist/styles/TextInput.css +1 -1
  364. package/dist/ui.css +9 -7
  365. package/package.json +1 -1
  366. package/src/styles/_reset.scss +6 -1
  367. package/src/styles/_theme-api.scss +21 -0
  368. package/src/styles/_theme.scss +43 -3
  369. package/src/styles/logic/_ink.scss +34 -0
  370. package/dist/Card-BqIF-svL.js +0 -78
  371. package/dist/Card-Xmv6oz9a.cjs +0 -1
  372. package/dist/ProgressBar-DPMCRM1f.cjs +0 -1
  373. package/dist/TextInput-DmCYZgG0.cjs +0 -2
  374. package/dist/TextInput-HwIhSOJD.js +0 -295
  375. /package/dist/{Avatar-BpPczEa8.cjs → Avatar-DMTs2BnK.cjs} +0 -0
  376. /package/dist/{Avatar-BibgBZuN.js → Avatar-EkPppXcU.js} +0 -0
  377. /package/dist/{Badge-D6nlcs4F.cjs → Badge-Ce3NRrp_.cjs} +0 -0
  378. /package/dist/{Badge-DJx3RZxk.js → Badge-D37sr-14.js} +0 -0
  379. /package/dist/{Banner-r_cdQAMp.js → Banner-Czz07yca.js} +0 -0
  380. /package/dist/{Banner-DQyHNDEP.cjs → Banner-S8WqTTYP.cjs} +0 -0
  381. /package/dist/{Blueprint.context-C-rwu3ut.js → Blueprint.context-BOP7aLQl.js} +0 -0
  382. /package/dist/{Blueprint.context-BJFr4pG6.cjs → Blueprint.context-C0sg1sbm.cjs} +0 -0
  383. /package/dist/{BlueprintBackground-oSRK8gQO.cjs → BlueprintBackground-BpkT_8A8.cjs} +0 -0
  384. /package/dist/{BlueprintBackground-EPvpMCXy.js → BlueprintBackground-Ez4ICRal.js} +0 -0
  385. /package/dist/{BlueprintMinimap-CG62ddGj.cjs → BlueprintMinimap-CWmys37d.cjs} +0 -0
  386. /package/dist/{BlueprintMinimap-CQ_fY0-L.js → BlueprintMinimap-zXf1g5UN.js} +0 -0
  387. /package/dist/{BottomPanel-YpR9NTLe.cjs → BottomPanel-D8z92-SS.cjs} +0 -0
  388. /package/dist/{BottomPanel-woivIctS.js → BottomPanel-xfSCWeN2.js} +0 -0
  389. /package/dist/{Breadcrumbs-B0nEpUik.js → Breadcrumbs-DGcdCThx.js} +0 -0
  390. /package/dist/{Breadcrumbs-B8zyUzRM.cjs → Breadcrumbs-vjfN-lDP.cjs} +0 -0
  391. /package/dist/{Calendar-C2KlJvo5.js → Calendar-BdPVR00d.js} +0 -0
  392. /package/dist/{Calendar-BPYKfErK.cjs → Calendar-Dg3g3h7z.cjs} +0 -0
  393. /package/dist/{CardGrid-BbGLqQmb.cjs → CardGrid-DYF5LaKh.cjs} +0 -0
  394. /package/dist/{CardGrid-CphjVIvE.js → CardGrid-MzpKRH7W.js} +0 -0
  395. /package/dist/{ChartLegend-BtBKVnH3.js → ChartLegend-BythwRMJ.js} +0 -0
  396. /package/dist/{ChartLegend-ndpGucTZ.cjs → ChartLegend-DGUo_MYi.cjs} +0 -0
  397. /package/dist/{CheckboxGroup.context-BWseGFxY.js → CheckboxGroup.context-BXBbxCqM.js} +0 -0
  398. /package/dist/{CheckboxGroup.context-DPq5hmH0.cjs → CheckboxGroup.context-Cq9keYoj.cjs} +0 -0
  399. /package/dist/{CommandPalette-iMOtCNQy.cjs → CommandPalette-CsFZYJBG.cjs} +0 -0
  400. /package/dist/{CommandPalette-DfWRSIQ7.js → CommandPalette-DTl9rvF0.js} +0 -0
  401. /package/dist/{DefinitionList-COgbbyRS.cjs → DefinitionList-DQja72sQ.cjs} +0 -0
  402. /package/dist/{DefinitionList-Xn-f_QhT.js → DefinitionList-DbIcRjHH.js} +0 -0
  403. /package/dist/{DefinitionListItem-ZRjLrhaI.js → DefinitionListItem-Ci0YYnKM.js} +0 -0
  404. /package/dist/{DefinitionListItem-B4bGJJJj.cjs → DefinitionListItem-Cre5iJWK.cjs} +0 -0
  405. /package/dist/{DragHandle-DCm6Mtv9.js → DragHandle-CBfcSRsL.js} +0 -0
  406. /package/dist/{DragHandle-_bikrb5H.cjs → DragHandle-DX3qexW0.cjs} +0 -0
  407. /package/dist/{EmptyState-63UqLFX6.js → EmptyState-CpRnEfbE.js} +0 -0
  408. /package/dist/{EmptyState-CV-UfKR6.cjs → EmptyState-DmBAVLu8.cjs} +0 -0
  409. /package/dist/{Field-DCEukL3E.js → Field-6haRtm1-.js} +0 -0
  410. /package/dist/{Field-M289tArC.cjs → Field-C7JxGz6g.cjs} +0 -0
  411. /package/dist/{Flag-Dc0DtID0.js → Flag-B5E4tHa2.js} +0 -0
  412. /package/dist/{Flag-B5EaQ5Dl.cjs → Flag-Mpl1_r4m.cjs} +0 -0
  413. /package/dist/{FloatingToolbar-Cqx8LnTK.cjs → FloatingToolbar-Bdwzxebh.cjs} +0 -0
  414. /package/dist/{FloatingToolbar-DBC-2FlB.js → FloatingToolbar-Bfe38At4.js} +0 -0
  415. /package/dist/{Grid-D8c0StGs.cjs → Grid-CDrItyQ7.cjs} +0 -0
  416. /package/dist/{Grid-XtnH-vr_.js → Grid-Hbvbu16k.js} +0 -0
  417. /package/dist/{InlineEdit-xdCv1gWm.js → InlineEdit-CBeh3e_w.js} +0 -0
  418. /package/dist/{InlineEdit-_QMSc24F.cjs → InlineEdit-_fLd4ZNk.cjs} +0 -0
  419. /package/dist/{JsonTree-CB1TWqPT.cjs → JsonTree-CjeK5gqm.cjs} +0 -0
  420. /package/dist/{JsonTree-CJ3tk08k.js → JsonTree-DbyC2G2G.js} +0 -0
  421. /package/dist/{Label-CVCNXFn1.cjs → Label-71QAuWf4.cjs} +0 -0
  422. /package/dist/{Label-ciCAG21-.js → Label-BEW_5nYq.js} +0 -0
  423. /package/dist/{Layer-CKmhBz7s.js → Layer-BLOx5Oh8.js} +0 -0
  424. /package/dist/{Layer-rgAWsfwJ.cjs → Layer-DOnWnKYV.cjs} +0 -0
  425. /package/dist/{MenuBar-C4j3ytQu.cjs → MenuBar-Bdz7lk2r.cjs} +0 -0
  426. /package/dist/{MenuBar-Dx_v4ZPi.js → MenuBar-BrOsK3Qa.js} +0 -0
  427. /package/dist/{MenuBarItem-DMY6OdWn.js → MenuBarItem-BlRZXDnm.js} +0 -0
  428. /package/dist/{MenuBarItem-BvWV59vi.cjs → MenuBarItem-DCArqyTW.cjs} +0 -0
  429. /package/dist/{MenuDivider-CRvC2uO4.cjs → MenuDivider-Bz7uGAPE.cjs} +0 -0
  430. /package/dist/{MenuDivider-BYKt84Gz.js → MenuDivider-CEeFfvpa.js} +0 -0
  431. /package/dist/{Message-Cecz48PA.js → Message-DPv6St5M.js} +0 -0
  432. /package/dist/{Message-VfpaGblO.cjs → Message-vFr_gB2V.cjs} +0 -0
  433. /package/dist/{NotificationCenterItem-DD5LnGg8.js → NotificationCenterItem-DOEvOsiy.js} +0 -0
  434. /package/dist/{NotificationCenterItem-NKH3y8HB.cjs → NotificationCenterItem-hSxc82yG.cjs} +0 -0
  435. /package/dist/{NubiscoMark-DgzvBHAd.js → NubiscoMark-BGi9b3YU.js} +0 -0
  436. /package/dist/{NubiscoMark-D4-pm2EX.cjs → NubiscoMark-DH9Ngmod.cjs} +0 -0
  437. /package/dist/{NubiscoPlatformMark-CayXaZGB.js → NubiscoPlatformMark-C6WbipA4.js} +0 -0
  438. /package/dist/{NubiscoPlatformMark-DV2XeqiT.cjs → NubiscoPlatformMark-ddkDJ0AU.cjs} +0 -0
  439. /package/dist/{Panel-Drfi9pqS.js → Panel-B3kJkm_w.js} +0 -0
  440. /package/dist/{Panel-valtWFWI.cjs → Panel-DKp-aPUn.cjs} +0 -0
  441. /package/dist/{ReorderList-BdHgEL4G.cjs → ReorderList-BpJaGDDA.cjs} +0 -0
  442. /package/dist/{ReorderList-BDLxDc6t.js → ReorderList-DvPkvpFU.js} +0 -0
  443. /package/dist/{ShellPanel-Hpm-eBqt.js → ShellPanel-6slzyDrP.js} +0 -0
  444. /package/dist/{ShellPanel-CQaXYB20.cjs → ShellPanel-7EmMevry.cjs} +0 -0
  445. /package/dist/{SidebarBrand-BThjow9_.js → SidebarBrand-Bvfoqveo.js} +0 -0
  446. /package/dist/{SidebarBrand-UfpenlDY.cjs → SidebarBrand-DgGfdnZE.cjs} +0 -0
  447. /package/dist/{SidebarLink-Bl-Sj2nx.js → SidebarLink-CXCdVrWM.js} +0 -0
  448. /package/dist/{SidebarLink-CwmNyhlK.cjs → SidebarLink-DaZrlrLZ.cjs} +0 -0
  449. /package/dist/{SidebarMenu-CWFsKG2j.cjs → SidebarMenu-N9opcSs0.cjs} +0 -0
  450. /package/dist/{SidebarMenu-D8-2usxB.js → SidebarMenu-ippvct70.js} +0 -0
  451. /package/dist/{SidebarMenuGroup-DDW1MQYi.cjs → SidebarMenuGroup-BTE6pzU7.cjs} +0 -0
  452. /package/dist/{SidebarMenuGroup-CxsPzWRO.js → SidebarMenuGroup-BWjJE_SN.js} +0 -0
  453. /package/dist/{SidebarMenuItem-C_JHC7Yt.cjs → SidebarMenuItem-BebyqOzN.cjs} +0 -0
  454. /package/dist/{SidebarMenuItem-Bz7iZxp4.js → SidebarMenuItem-CjtylCV1.js} +0 -0
  455. /package/dist/{SidebarStatus-DS2lYq12.cjs → SidebarStatus-8xHtWS22.cjs} +0 -0
  456. /package/dist/{SidebarStatus-dCli4_vh.js → SidebarStatus-DxJwYk3n.js} +0 -0
  457. /package/dist/{Sparkline-DAtjfUpM.cjs → Sparkline-DgmOYz7G.cjs} +0 -0
  458. /package/dist/{Sparkline-ebQVLVhY.js → Sparkline-TptJc3Gp.js} +0 -0
  459. /package/dist/{Stepper.context-D6ZX2zXY.js → Stepper.context-BaKuMRsu.js} +0 -0
  460. /package/dist/{Stepper.context-D56VQS_Q.cjs → Stepper.context-vC_Cctnn.cjs} +0 -0
  461. /package/dist/{Submenu-mUsq51XV.js → Submenu-DS2s0NYW.js} +0 -0
  462. /package/dist/{Submenu-DxxFiGqt.cjs → Submenu-Dqgk6Bu2.cjs} +0 -0
  463. /package/dist/{Toast-D666KPCk.cjs → Toast-DJ4m7ct6.cjs} +0 -0
  464. /package/dist/{Toast-Bv4CvhFI.js → Toast-WMeps0Sy.js} +0 -0
  465. /package/dist/{TreeContext-DNHT9WiK.cjs → TreeContext-B73gZjHy.cjs} +0 -0
  466. /package/dist/{TreeContext-BRFV85x7.js → TreeContext-dgGdNVcW.js} +0 -0
  467. /package/dist/{Wireframe-DSvovZjf.js → Wireframe-CT2d4yey.js} +0 -0
  468. /package/dist/{Wireframe-DY1c_O26.cjs → Wireframe-YFaVOmuO.cjs} +0 -0
  469. /package/dist/{palette-BoABA-De.cjs → palette-9NBcW3rl.cjs} +0 -0
  470. /package/dist/{palette-VMXxKICH.js → palette-Cq2Mb9QH.js} +0 -0
  471. /package/dist/{pixi-scene-mdr13T3c.cjs → pixi-scene-DdcmrtpA.cjs} +0 -0
  472. /package/dist/{pixi-scene-CBmqhUr4.js → pixi-scene-tM_RIArI.js} +0 -0
  473. /package/dist/{scales-BWtB8m5D.cjs → scales-Bdgv87s2.cjs} +0 -0
  474. /package/dist/{scales-DVJzRU1F.js → scales-CzvC8OOZ.js} +0 -0
  475. /package/dist/{useChartSize-Dyh37PYP.js → useChartSize-BXgOzSCU.js} +0 -0
  476. /package/dist/{useChartSize-D9UxUkiU.cjs → useChartSize-ByPUvppp.cjs} +0 -0
  477. /package/dist/{useLoadingAnnouncer.composable-BknuRv_m.js → useLoadingAnnouncer.composable-DQEzOEt_.js} +0 -0
  478. /package/dist/{useLoadingAnnouncer.composable-DcBmMSBO.cjs → useLoadingAnnouncer.composable-pW7VKY0k.cjs} +0 -0
  479. /package/dist/{vue-i18n-Dzm-MDw4.js → vue-i18n-BERFm5iG.js} +0 -0
  480. /package/dist/{vue-i18n-B_5xehV9.cjs → vue-i18n-CNxAi_sd.cjs} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { usePhoneLayout as e } from "./composables/usePhoneLayout.composable.mjs";
2
- import { t } from "./Button-Cq9dEeHz.js";
2
+ import { t } from "./Button-BHlNXmBr.js";
3
3
  import { t as n } from "./Menu-2Se8F81Q.js";
4
4
  import { t as r } from "./MenuItem-BDLX2QWw.js";
5
5
  import { hasSlotContent as i } from "./utils/slotContent.helper.mjs";
@@ -1 +1 @@
1
- const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./composables/usePhoneLayout.composable.cjs`),n=require(`./Button-CbQyG-jg.cjs`),r=require(`./Menu-CAZmNx60.cjs`),i=require(`./MenuItem-ZQcFYe4m.cjs`),a=require(`./utils/slotContent.helper.cjs`);let o=require(`vue`),s=require(`@nubisco/ui/icons/dots-three`);s=e.n(s);var c={class:`nb-action-group`},l=(0,o.defineComponent)({__name:`ActionGroup`,props:{items:{},size:{default:`sm`},overflow:{default:`never`},overflowLabel:{default:`More actions`},phoneVisible:{default:1}},emits:[`select`],setup(e,{emit:l}){let u=e,d=l,f=(0,o.useSlots)(),{phone:p}=t.usePhoneLayout(),m=(0,o.computed)(()=>u.overflow===`never`?!1:u.overflow===`always`?!0:p.value),h=(0,o.computed)(()=>{let e=Math.max(0,u.phoneVisible),t=u.items.filter(e=>e.priority===`primary`);return(t.length?t:u.items).slice(0,e)}),g=(0,o.computed)(()=>u.items.filter(e=>!h.value.includes(e))),_=(0,o.computed)(()=>g.value.length>0||a.hasSlotContent(f,`menu`));function v(e){return p.value&&!!e.icon}function y(e){return e.variant??(e.danger?`danger`:void 0)}function b(e){e.disabled||e.loading||(e.onSelect?.(),d(`select`,e.id))}let x=(0,o.ref)(!1),S=(0,o.ref)(null),C=(0,o.ref)(null);function w(){return C.value?.$el??null}let T=!1;function E(){T=x.value}function D(){if(T||x.value){T=!1,x.value=!1;return}let e=w()?.getBoundingClientRect();e&&S.value?.setPosition(e),x.value=!0}function O(e){if(x.value=e,e)return;let t=document.activeElement;(!t||t===document.body||!t.isConnected)&&(0,o.nextTick)(()=>w()?.focus())}return(t,a)=>((0,o.openBlock)(),(0,o.createElementBlock)(`div`,c,[m.value?((0,o.openBlock)(),(0,o.createElementBlock)(o.Fragment,{key:1},[((0,o.openBlock)(!0),(0,o.createElementBlock)(o.Fragment,null,(0,o.renderList)(h.value,t=>((0,o.openBlock)(),(0,o.createElementBlock)(o.Fragment,{key:t.id},[v(t)?((0,o.openBlock)(),(0,o.createBlock)(n.t,{key:0,variant:y(t),outlined:t.outlined,size:e.size,disabled:t.disabled,loading:t.loading,icon:t.icon,"aria-label":t.label,"aria-pressed":t.pressed,onClick:e=>b(t)},null,8,[`variant`,`outlined`,`size`,`disabled`,`loading`,`icon`,`aria-label`,`aria-pressed`,`onClick`])):((0,o.openBlock)(),(0,o.createBlock)(n.t,{key:1,variant:y(t),outlined:t.outlined,size:e.size,disabled:t.disabled,loading:t.loading,icon:t.icon,"aria-pressed":t.pressed,onClick:e=>b(t)},{default:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(t.label),1)]),_:2},1032,[`variant`,`outlined`,`size`,`disabled`,`loading`,`icon`,`aria-pressed`,`onClick`]))],64))),128)),_.value?((0,o.openBlock)(),(0,o.createBlock)(n.t,{key:0,ref_key:`triggerRef`,ref:C,class:`nb-action-group__more`,variant:`ghost`,size:e.size,icon:s,"aria-label":e.overflowLabel,"aria-haspopup":`menu`,"aria-expanded":x.value,onMousedown:E,onClick:D},null,8,[`size`,`aria-label`,`aria-expanded`])):(0,o.createCommentVNode)(``,!0),_.value?((0,o.openBlock)(),(0,o.createBlock)(r.t,{key:1,ref_key:`menuRef`,ref:S,open:x.value,"onUpdate:open":O},{default:(0,o.withCtx)(()=>[((0,o.openBlock)(!0),(0,o.createElementBlock)(o.Fragment,null,(0,o.renderList)(g.value,e=>((0,o.openBlock)(),(0,o.createBlock)(i.t,{key:e.id,label:e.label,icon:e.icon,disabled:e.disabled||e.loading,danger:e.danger,selectable:e.pressed!==void 0,selected:e.pressed,onSelect:t=>b(e)},null,8,[`label`,`icon`,`disabled`,`danger`,`selectable`,`selected`,`onSelect`]))),128)),(0,o.renderSlot)(t.$slots,`menu`)]),_:3},8,[`open`])):(0,o.createCommentVNode)(``,!0)],64)):((0,o.openBlock)(!0),(0,o.createElementBlock)(o.Fragment,{key:0},(0,o.renderList)(e.items,t=>((0,o.openBlock)(),(0,o.createBlock)(n.t,{key:t.id,variant:y(t),outlined:t.outlined,size:e.size,disabled:t.disabled,loading:t.loading,icon:t.icon,"aria-pressed":t.pressed,onClick:e=>b(t)},{default:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(t.label),1)]),_:2},1032,[`variant`,`outlined`,`size`,`disabled`,`loading`,`icon`,`aria-pressed`,`onClick`]))),128))]))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return l}});
1
+ const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./composables/usePhoneLayout.composable.cjs`),n=require(`./Button-bQHEUhzc.cjs`),r=require(`./Menu-CAZmNx60.cjs`),i=require(`./MenuItem-ZQcFYe4m.cjs`),a=require(`./utils/slotContent.helper.cjs`);let o=require(`vue`),s=require(`@nubisco/ui/icons/dots-three`);s=e.n(s);var c={class:`nb-action-group`},l=(0,o.defineComponent)({__name:`ActionGroup`,props:{items:{},size:{default:`sm`},overflow:{default:`never`},overflowLabel:{default:`More actions`},phoneVisible:{default:1}},emits:[`select`],setup(e,{emit:l}){let u=e,d=l,f=(0,o.useSlots)(),{phone:p}=t.usePhoneLayout(),m=(0,o.computed)(()=>u.overflow===`never`?!1:u.overflow===`always`?!0:p.value),h=(0,o.computed)(()=>{let e=Math.max(0,u.phoneVisible),t=u.items.filter(e=>e.priority===`primary`);return(t.length?t:u.items).slice(0,e)}),g=(0,o.computed)(()=>u.items.filter(e=>!h.value.includes(e))),_=(0,o.computed)(()=>g.value.length>0||a.hasSlotContent(f,`menu`));function v(e){return p.value&&!!e.icon}function y(e){return e.variant??(e.danger?`danger`:void 0)}function b(e){e.disabled||e.loading||(e.onSelect?.(),d(`select`,e.id))}let x=(0,o.ref)(!1),S=(0,o.ref)(null),C=(0,o.ref)(null);function w(){return C.value?.$el??null}let T=!1;function E(){T=x.value}function D(){if(T||x.value){T=!1,x.value=!1;return}let e=w()?.getBoundingClientRect();e&&S.value?.setPosition(e),x.value=!0}function O(e){if(x.value=e,e)return;let t=document.activeElement;(!t||t===document.body||!t.isConnected)&&(0,o.nextTick)(()=>w()?.focus())}return(t,a)=>((0,o.openBlock)(),(0,o.createElementBlock)(`div`,c,[m.value?((0,o.openBlock)(),(0,o.createElementBlock)(o.Fragment,{key:1},[((0,o.openBlock)(!0),(0,o.createElementBlock)(o.Fragment,null,(0,o.renderList)(h.value,t=>((0,o.openBlock)(),(0,o.createElementBlock)(o.Fragment,{key:t.id},[v(t)?((0,o.openBlock)(),(0,o.createBlock)(n.t,{key:0,variant:y(t),outlined:t.outlined,size:e.size,disabled:t.disabled,loading:t.loading,icon:t.icon,"aria-label":t.label,"aria-pressed":t.pressed,onClick:e=>b(t)},null,8,[`variant`,`outlined`,`size`,`disabled`,`loading`,`icon`,`aria-label`,`aria-pressed`,`onClick`])):((0,o.openBlock)(),(0,o.createBlock)(n.t,{key:1,variant:y(t),outlined:t.outlined,size:e.size,disabled:t.disabled,loading:t.loading,icon:t.icon,"aria-pressed":t.pressed,onClick:e=>b(t)},{default:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(t.label),1)]),_:2},1032,[`variant`,`outlined`,`size`,`disabled`,`loading`,`icon`,`aria-pressed`,`onClick`]))],64))),128)),_.value?((0,o.openBlock)(),(0,o.createBlock)(n.t,{key:0,ref_key:`triggerRef`,ref:C,class:`nb-action-group__more`,variant:`ghost`,size:e.size,icon:s,"aria-label":e.overflowLabel,"aria-haspopup":`menu`,"aria-expanded":x.value,onMousedown:E,onClick:D},null,8,[`size`,`aria-label`,`aria-expanded`])):(0,o.createCommentVNode)(``,!0),_.value?((0,o.openBlock)(),(0,o.createBlock)(r.t,{key:1,ref_key:`menuRef`,ref:S,open:x.value,"onUpdate:open":O},{default:(0,o.withCtx)(()=>[((0,o.openBlock)(!0),(0,o.createElementBlock)(o.Fragment,null,(0,o.renderList)(g.value,e=>((0,o.openBlock)(),(0,o.createBlock)(i.t,{key:e.id,label:e.label,icon:e.icon,disabled:e.disabled||e.loading,danger:e.danger,selectable:e.pressed!==void 0,selected:e.pressed,onSelect:t=>b(e)},null,8,[`label`,`icon`,`disabled`,`danger`,`selectable`,`selected`,`onSelect`]))),128)),(0,o.renderSlot)(t.$slots,`menu`)]),_:3},8,[`open`])):(0,o.createCommentVNode)(``,!0)],64)):((0,o.openBlock)(!0),(0,o.createElementBlock)(o.Fragment,{key:0},(0,o.renderList)(e.items,t=>((0,o.openBlock)(),(0,o.createBlock)(n.t,{key:t.id,variant:y(t),outlined:t.outlined,size:e.size,disabled:t.disabled,loading:t.loading,icon:t.icon,"aria-pressed":t.pressed,onClick:e=>b(t)},{default:(0,o.withCtx)(()=>[(0,o.createTextVNode)((0,o.toDisplayString)(t.label),1)]),_:2},1032,[`variant`,`outlined`,`size`,`disabled`,`loading`,`icon`,`aria-pressed`,`onClick`]))),128))]))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return l}});
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
2
- import { t } from "./Grid-XtnH-vr_.js";
2
+ import { t } from "./Grid-Hbvbu16k.js";
3
3
  import { computed as n, createBlock as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, defineComponent as s, mergeProps as c, openBlock as l, unref as u, withCtx as d } from "vue";
4
4
  //#region src/components/AiLabel.d.ts
5
5
  var f = /* @__PURE__ */ function(e) {
@@ -1 +1 @@
1
- require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Grid-D8c0StGs.cjs`);let n=require(`vue`);var r=function(e){return e.Default=`default`,e.Inline=`inline`,e}(r||{}),i=function(e){return e.Small=`sm`,e.Medium=`md`,e.Large=`lg`,e}(i||{}),a={key:0,class:`nb-ai-label--dot`},o=(0,n.defineComponent)({__name:`AiLabel`,props:{variant:{default:r.Default},size:{default:i.Medium},static:{type:Boolean,default:!1},label:{default:`Written by AI`}},setup(e){let i=e,o=(0,n.computed)(()=>({"nb-ai-label":!0,[`nb-ai-label__${i.variant}`]:!0,[`nb-ai-label__${i.size}`]:!0,"nb-ai-label__static":i.static}));return(s,c)=>((0,n.openBlock)(),(0,n.createBlock)(t.t,(0,n.mergeProps)({is:i.static?`span`:`button`,align:`center`},{...e.variant===(0,n.unref)(r).Inline&&{gap:`sm`},...i.static&&{role:`img`,"aria-label":e.label}},{justify:`center`,class:o.value}),{default:(0,n.withCtx)(()=>[e.variant===(0,n.unref)(r).Inline?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,a)):(0,n.createCommentVNode)(``,!0),c[0]||=(0,n.createElementVNode)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 256 256`,"aria-hidden":`true`},[(0,n.createElementVNode)(`path`,{d:`M 104.301 197.8 L 94.501 162.4 L 53.101 162.4 L 43.501 197.8 L 17.101 197.8 L 56.301 58.2 L 92.701 58.2 L 132.101 197.8 L 104.301 197.8 Z M 74.701 84 L 73.101 84 L 57.701 141 L 90.101 141 L 74.701 84 Z M 150.099 197.8 L 150.099 178.2 L 181.499 178.2 L 181.499 77.8 L 150.099 77.8 L 150.099 58.2 L 238.899 58.2 L 238.899 77.8 L 207.499 77.8 L 207.499 178.2 L 238.899 178.2 L 238.899 197.8 L 150.099 197.8 Z`,fill:`currentColor`})],-1)]),_:1},16,[`is`,`class`]))}}),s=e.t(o,[[`__scopeId`,`data-v-7134baab`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
1
+ require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Grid-CDrItyQ7.cjs`);let n=require(`vue`);var r=function(e){return e.Default=`default`,e.Inline=`inline`,e}(r||{}),i=function(e){return e.Small=`sm`,e.Medium=`md`,e.Large=`lg`,e}(i||{}),a={key:0,class:`nb-ai-label--dot`},o=(0,n.defineComponent)({__name:`AiLabel`,props:{variant:{default:r.Default},size:{default:i.Medium},static:{type:Boolean,default:!1},label:{default:`Written by AI`}},setup(e){let i=e,o=(0,n.computed)(()=>({"nb-ai-label":!0,[`nb-ai-label__${i.variant}`]:!0,[`nb-ai-label__${i.size}`]:!0,"nb-ai-label__static":i.static}));return(s,c)=>((0,n.openBlock)(),(0,n.createBlock)(t.t,(0,n.mergeProps)({is:i.static?`span`:`button`,align:`center`},{...e.variant===(0,n.unref)(r).Inline&&{gap:`sm`},...i.static&&{role:`img`,"aria-label":e.label}},{justify:`center`,class:o.value}),{default:(0,n.withCtx)(()=>[e.variant===(0,n.unref)(r).Inline?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,a)):(0,n.createCommentVNode)(``,!0),c[0]||=(0,n.createElementVNode)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 256 256`,"aria-hidden":`true`},[(0,n.createElementVNode)(`path`,{d:`M 104.301 197.8 L 94.501 162.4 L 53.101 162.4 L 43.501 197.8 L 17.101 197.8 L 56.301 58.2 L 92.701 58.2 L 132.101 197.8 L 104.301 197.8 Z M 74.701 84 L 73.101 84 L 57.701 141 L 90.101 141 L 74.701 84 Z M 150.099 197.8 L 150.099 178.2 L 181.499 178.2 L 181.499 77.8 L 150.099 77.8 L 150.099 58.2 L 238.899 58.2 L 238.899 77.8 L 207.499 77.8 L 207.499 178.2 L 238.899 178.2 L 238.899 197.8 L 150.099 197.8 Z`,fill:`currentColor`})],-1)]),_:1},16,[`is`,`class`]))}}),s=e.t(o,[[`__scopeId`,`data-v-7134baab`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return s}});
@@ -1 +1 @@
1
- require(`./chunk-D-qHiVGv.cjs`);const e=require(`./Button-CbQyG-jg.cjs`),t=require(`./AiLabel-BMeJMSLm.cjs`),n=require(`./Field-M289tArC.cjs`),r=require(`./Panel-valtWFWI.cjs`),i=require(`./Select-CHuZfqLt.cjs`),a=require(`./TextInput-DmCYZgG0.cjs`);let o=require(`vue`);var s={class:`nb-ai-provider__header`},c={class:`nb-ai-provider__title`},l={key:0,class:`nb-ai-provider__description`},u={class:`nb-ai-provider__row`},d={class:`nb-ai-provider__actions`},f=(0,o.defineComponent)({__name:`AiProvider`,props:{title:{default:`AI briefings`},providers:{default:()=>[{label:`Anthropic (Claude)`,value:`anthropic`},{label:`OpenAI`,value:`openai`},{label:`Google Gemini`,value:`gemini`}]},provider:{default:`anthropic`},model:{default:``},apiKey:{default:``},defaultModels:{default:()=>({})},hasKey:{type:Boolean,default:!1},busy:{type:Boolean,default:!1}},emits:[`update:provider`,`update:model`,`update:apiKey`,`save`,`remove`],setup(f,{emit:p}){let m=p;return(p,h)=>((0,o.openBlock)(),(0,o.createBlock)(r.t,{class:`nb-ai-provider`},{default:(0,o.withCtx)(()=>[(0,o.createElementVNode)(`header`,s,[(0,o.createElementVNode)(`h2`,c,[(0,o.createTextVNode)((0,o.toDisplayString)(f.title)+` `,1),(0,o.createVNode)(t.t,{static:``,size:`sm`})]),p.$slots.default?((0,o.openBlock)(),(0,o.createElementBlock)(`div`,l,[(0,o.renderSlot)(p.$slots,`default`)])):(0,o.createCommentVNode)(``,!0)]),(0,o.createElementVNode)(`div`,u,[(0,o.createVNode)(n.t,{label:`Provider`,orientation:`stack`},{default:(0,o.withCtx)(({id:e})=>[(0,o.createVNode)(i.t,{id:e,"model-value":f.provider,options:f.providers,disabled:f.busy,"onUpdate:modelValue":h[0]||=e=>m(`update:provider`,String(e))},null,8,[`id`,`model-value`,`options`,`disabled`])]),_:1}),(0,o.createVNode)(n.t,{label:`Model`,hint:`Empty uses the provider's default.`,orientation:`stack`},{default:(0,o.withCtx)(({id:e})=>[(0,o.createVNode)(a.t,{id:e,"model-value":f.model,placeholder:f.defaultModels[f.provider]??``,disabled:f.busy,"onUpdate:modelValue":h[1]||=e=>m(`update:model`,String(e??``))},null,8,[`id`,`model-value`,`placeholder`,`disabled`])]),_:1})]),(0,o.createVNode)(n.t,{label:`API key`,hint:`Encrypted at rest and never sent back to the browser, so this field is always empty when the page loads.`,orientation:`stack`},{default:(0,o.withCtx)(({id:e})=>[(0,o.createVNode)(a.t,{id:e,"model-value":f.apiKey,type:`password`,autocomplete:`off`,placeholder:f.hasKey?`Stored. Type a new key to replace it.`:`sk-...`,disabled:f.busy,"onUpdate:modelValue":h[2]||=e=>m(`update:apiKey`,String(e??``))},null,8,[`id`,`model-value`,`placeholder`,`disabled`])]),_:1}),(0,o.createElementVNode)(`div`,d,[(0,o.createVNode)(e.t,{variant:`primary`,loading:f.busy,onClick:h[3]||=e=>m(`save`)},{default:(0,o.withCtx)(()=>[...h[5]||=[(0,o.createTextVNode)(` Save AI settings `,-1)]]),_:1},8,[`loading`]),f.hasKey?((0,o.openBlock)(),(0,o.createBlock)(e.t,{key:0,variant:`ghost`,disabled:f.busy,onClick:h[4]||=e=>m(`remove`)},{default:(0,o.withCtx)(()=>[...h[6]||=[(0,o.createTextVNode)(` Remove key `,-1)]]),_:1},8,[`disabled`])):(0,o.createCommentVNode)(``,!0)])]),_:3}))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return f}});
1
+ require(`./chunk-D-qHiVGv.cjs`);const e=require(`./Button-bQHEUhzc.cjs`),t=require(`./AiLabel-oCXAwOV7.cjs`),n=require(`./Field-C7JxGz6g.cjs`),r=require(`./Panel-DKp-aPUn.cjs`),i=require(`./Select-CjkBXtFi.cjs`),a=require(`./TextInput-bj61DMdd.cjs`);let o=require(`vue`);var s={class:`nb-ai-provider__header`},c={class:`nb-ai-provider__title`},l={key:0,class:`nb-ai-provider__description`},u={class:`nb-ai-provider__row`},d={class:`nb-ai-provider__actions`},f=(0,o.defineComponent)({__name:`AiProvider`,props:{title:{default:`AI briefings`},providers:{default:()=>[{label:`Anthropic (Claude)`,value:`anthropic`},{label:`OpenAI`,value:`openai`},{label:`Google Gemini`,value:`gemini`}]},provider:{default:`anthropic`},model:{default:``},apiKey:{default:``},defaultModels:{default:()=>({})},hasKey:{type:Boolean,default:!1},busy:{type:Boolean,default:!1}},emits:[`update:provider`,`update:model`,`update:apiKey`,`save`,`remove`],setup(f,{emit:p}){let m=p;return(p,h)=>((0,o.openBlock)(),(0,o.createBlock)(r.t,{class:`nb-ai-provider`},{default:(0,o.withCtx)(()=>[(0,o.createElementVNode)(`header`,s,[(0,o.createElementVNode)(`h2`,c,[(0,o.createTextVNode)((0,o.toDisplayString)(f.title)+` `,1),(0,o.createVNode)(t.t,{static:``,size:`sm`})]),p.$slots.default?((0,o.openBlock)(),(0,o.createElementBlock)(`div`,l,[(0,o.renderSlot)(p.$slots,`default`)])):(0,o.createCommentVNode)(``,!0)]),(0,o.createElementVNode)(`div`,u,[(0,o.createVNode)(n.t,{label:`Provider`,orientation:`stack`},{default:(0,o.withCtx)(({id:e})=>[(0,o.createVNode)(i.t,{id:e,"model-value":f.provider,options:f.providers,disabled:f.busy,"onUpdate:modelValue":h[0]||=e=>m(`update:provider`,String(e))},null,8,[`id`,`model-value`,`options`,`disabled`])]),_:1}),(0,o.createVNode)(n.t,{label:`Model`,hint:`Empty uses the provider's default.`,orientation:`stack`},{default:(0,o.withCtx)(({id:e})=>[(0,o.createVNode)(a.t,{id:e,"model-value":f.model,placeholder:f.defaultModels[f.provider]??``,disabled:f.busy,"onUpdate:modelValue":h[1]||=e=>m(`update:model`,String(e??``))},null,8,[`id`,`model-value`,`placeholder`,`disabled`])]),_:1})]),(0,o.createVNode)(n.t,{label:`API key`,hint:`Encrypted at rest and never sent back to the browser, so this field is always empty when the page loads.`,orientation:`stack`},{default:(0,o.withCtx)(({id:e})=>[(0,o.createVNode)(a.t,{id:e,"model-value":f.apiKey,type:`password`,autocomplete:`off`,placeholder:f.hasKey?`Stored. Type a new key to replace it.`:`sk-...`,disabled:f.busy,"onUpdate:modelValue":h[2]||=e=>m(`update:apiKey`,String(e??``))},null,8,[`id`,`model-value`,`placeholder`,`disabled`])]),_:1}),(0,o.createElementVNode)(`div`,d,[(0,o.createVNode)(e.t,{variant:`primary`,loading:f.busy,onClick:h[3]||=e=>m(`save`)},{default:(0,o.withCtx)(()=>[...h[5]||=[(0,o.createTextVNode)(` Save AI settings `,-1)]]),_:1},8,[`loading`]),f.hasKey?((0,o.openBlock)(),(0,o.createBlock)(e.t,{key:0,variant:`ghost`,disabled:f.busy,onClick:h[4]||=e=>m(`remove`)},{default:(0,o.withCtx)(()=>[...h[6]||=[(0,o.createTextVNode)(` Remove key `,-1)]]),_:1},8,[`disabled`])):(0,o.createCommentVNode)(``,!0)])]),_:3}))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return f}});
@@ -1,9 +1,9 @@
1
- import { t as e } from "./Button-Cq9dEeHz.js";
2
- import { t } from "./AiLabel-CGxUTm-X.js";
3
- import { t as n } from "./Field-DCEukL3E.js";
4
- import { t as r } from "./Panel-Drfi9pqS.js";
5
- import { t as i } from "./Select-CwO5aX8j.js";
6
- import { t as a } from "./TextInput-HwIhSOJD.js";
1
+ import { t as e } from "./Button-BHlNXmBr.js";
2
+ import { t } from "./AiLabel--bFL3RGP.js";
3
+ import { t as n } from "./Field-6haRtm1-.js";
4
+ import { t as r } from "./Panel-B3kJkm_w.js";
5
+ import { t as i } from "./Select-Rt3Y2VD4.js";
6
+ import { t as a } from "./TextInput-BaRumauo.js";
7
7
  import { createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createTextVNode as u, createVNode as d, defineComponent as f, openBlock as p, renderSlot as m, toDisplayString as h, withCtx as g } from "vue";
8
8
  //#region src/components/AiProvider.vue?vue&type=script&setup=true&lang.ts
9
9
  var _ = { class: "nb-ai-provider__header" }, v = { class: "nb-ai-provider__title" }, y = {
@@ -1 +1 @@
1
- require(`./chunk-D-qHiVGv.cjs`);const e=require(`./Panel-valtWFWI.cjs`),t=require(`./DefinitionList-COgbbyRS.cjs`);let n=require(`vue`);var r={class:`nb-ai-usage__header`},i={class:`nb-ai-usage__title`},a={class:`nb-ai-usage__description`},o={key:0,class:`nb-ai-usage__empty`},s={key:1,class:`nb-ai-usage__empty`},c=(0,n.defineComponent)({__name:`AiUsage`,props:{title:{default:`Usage and cost`},days:{default:30},hasKey:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},requests:{default:0},requestsLabel:{default:`Requests`},cacheHits:{default:null},inputTokens:{default:0},outputTokens:{default:0},estimatedCostUsd:{default:null},unpricedModels:{default:()=>[]},pricingVerifiedOn:{default:``}},setup(c){let l=c;function u(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function d(e){return e>0&&e<.01?`<$0.01`:`$${e.toFixed(2)}`}let f=(0,n.computed)(()=>[{term:l.requestsLabel,value:`${l.requests.toLocaleString()} (requests that reached your provider)`},...l.cacheHits===null?[]:[{term:`Served from cache`,value:`${l.cacheHits.toLocaleString()} (free: a question already answered)`}],{term:`Tokens`,value:`${u(l.inputTokens+l.outputTokens)} (${u(l.inputTokens)} in, ${u(l.outputTokens)} out)`},{term:`Estimated cost`,value:l.estimatedCostUsd===null?`n/a: no published price on file for ${l.unpricedModels.join(`, `)||`this model`}`:`${d(l.estimatedCostUsd)} at list prices${l.pricingVerifiedOn?` as of ${l.pricingVerifiedOn}`:``}`}]);return(l,u)=>((0,n.openBlock)(),(0,n.createBlock)(e.t,{class:`nb-ai-usage`},{default:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`header`,r,[(0,n.createElementVNode)(`h2`,i,(0,n.toDisplayString)(c.title),1),(0,n.createElementVNode)(`p`,a,` What has been asked of your provider over the last `+(0,n.toDisplayString)(c.days)+` days. Your provider bills you directly, so these are our records, not an invoice: check the provider console for the authoritative figure. `,1)]),c.hasKey?c.loading?((0,n.openBlock)(),(0,n.createElementBlock)(`p`,s,`Loading usage...`)):((0,n.openBlock)(),(0,n.createBlock)(t.t,{key:2,items:f.value,dividers:``},null,8,[`items`])):((0,n.openBlock)(),(0,n.createElementBlock)(`p`,o,` No key yet, so nothing has been sent to a provider. `)),(0,n.renderSlot)(l.$slots,`default`)]),_:3}))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return c}});
1
+ require(`./chunk-D-qHiVGv.cjs`);const e=require(`./Panel-DKp-aPUn.cjs`),t=require(`./DefinitionList-DQja72sQ.cjs`);let n=require(`vue`);var r={class:`nb-ai-usage__header`},i={class:`nb-ai-usage__title`},a={class:`nb-ai-usage__description`},o={key:0,class:`nb-ai-usage__empty`},s={key:1,class:`nb-ai-usage__empty`},c=(0,n.defineComponent)({__name:`AiUsage`,props:{title:{default:`Usage and cost`},days:{default:30},hasKey:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},requests:{default:0},requestsLabel:{default:`Requests`},cacheHits:{default:null},inputTokens:{default:0},outputTokens:{default:0},estimatedCostUsd:{default:null},unpricedModels:{default:()=>[]},pricingVerifiedOn:{default:``}},setup(c){let l=c;function u(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function d(e){return e>0&&e<.01?`<$0.01`:`$${e.toFixed(2)}`}let f=(0,n.computed)(()=>[{term:l.requestsLabel,value:`${l.requests.toLocaleString()} (requests that reached your provider)`},...l.cacheHits===null?[]:[{term:`Served from cache`,value:`${l.cacheHits.toLocaleString()} (free: a question already answered)`}],{term:`Tokens`,value:`${u(l.inputTokens+l.outputTokens)} (${u(l.inputTokens)} in, ${u(l.outputTokens)} out)`},{term:`Estimated cost`,value:l.estimatedCostUsd===null?`n/a: no published price on file for ${l.unpricedModels.join(`, `)||`this model`}`:`${d(l.estimatedCostUsd)} at list prices${l.pricingVerifiedOn?` as of ${l.pricingVerifiedOn}`:``}`}]);return(l,u)=>((0,n.openBlock)(),(0,n.createBlock)(e.t,{class:`nb-ai-usage`},{default:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`header`,r,[(0,n.createElementVNode)(`h2`,i,(0,n.toDisplayString)(c.title),1),(0,n.createElementVNode)(`p`,a,` What has been asked of your provider over the last `+(0,n.toDisplayString)(c.days)+` days. Your provider bills you directly, so these are our records, not an invoice: check the provider console for the authoritative figure. `,1)]),c.hasKey?c.loading?((0,n.openBlock)(),(0,n.createElementBlock)(`p`,s,`Loading usage...`)):((0,n.openBlock)(),(0,n.createBlock)(t.t,{key:2,items:f.value,dividers:``},null,8,[`items`])):((0,n.openBlock)(),(0,n.createElementBlock)(`p`,o,` No key yet, so nothing has been sent to a provider. `)),(0,n.renderSlot)(l.$slots,`default`)]),_:3}))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return c}});
@@ -1,5 +1,5 @@
1
- import { t as e } from "./Panel-Drfi9pqS.js";
2
- import { t } from "./DefinitionList-Xn-f_QhT.js";
1
+ import { t as e } from "./Panel-B3kJkm_w.js";
2
+ import { t } from "./DefinitionList-DbIcRjHH.js";
3
3
  import { computed as n, createBlock as r, createElementBlock as i, createElementVNode as a, defineComponent as o, openBlock as s, renderSlot as c, toDisplayString as l, withCtx as u } from "vue";
4
4
  //#region src/components/AiUsage.vue?vue&type=script&setup=true&lang.ts
5
5
  var d = { class: "nb-ai-usage__header" }, f = { class: "nb-ai-usage__title" }, p = { class: "nb-ai-usage__description" }, m = {
@@ -1 +1 @@
1
- const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./Button-CbQyG-jg.cjs`);let n=require(`vue`),r=require(`@nubisco/ui/icons/arrow-up`);r=e.n(r);var i={key:0,class:`nb-back-to-top`},a=(0,n.defineComponent)({__name:`BackToTop`,props:{threshold:{default:void 0},label:{default:`Back to top`}},setup(e){let a=e,o=(0,n.ref)(!1),s=0;function c(){s=0;let e=a.threshold??window.innerHeight;o.value=window.scrollY>e}function l(){s||=requestAnimationFrame(c)}function u(e){let t=window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches;window.scrollTo({top:0,behavior:t?`instant`:`smooth`}),e.detail===0&&document.querySelector(`a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])`)?.focus({preventScroll:!0})}return(0,n.onMounted)(()=>{c(),window.addEventListener(`scroll`,l,{passive:!0}),window.addEventListener(`resize`,l,{passive:!0})}),(0,n.onBeforeUnmount)(()=>{window.removeEventListener(`scroll`,l),window.removeEventListener(`resize`,l),s&&cancelAnimationFrame(s)}),(a,s)=>{let c=(0,n.resolveDirective)(`nb-tooltip`);return(0,n.openBlock)(),(0,n.createBlock)(n.Transition,{name:`nb-back-to-top`},{default:(0,n.withCtx)(()=>[o.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,i,[(0,n.withDirectives)((0,n.createVNode)(t.t,{"aria-label":e.label,class:`nb-back-to-top__button`,variant:`secondary`,icon:r,onClick:u},null,8,[`aria-label`]),[[c,{body:e.label,aria:`none`,position:`left`}]])])):(0,n.createCommentVNode)(``,!0)]),_:1})}}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
1
+ const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./Button-bQHEUhzc.cjs`);let n=require(`vue`),r=require(`@nubisco/ui/icons/arrow-up`);r=e.n(r);var i={key:0,class:`nb-back-to-top`},a=(0,n.defineComponent)({__name:`BackToTop`,props:{threshold:{default:void 0},label:{default:`Back to top`}},setup(e){let a=e,o=(0,n.ref)(!1),s=0;function c(){s=0;let e=a.threshold??window.innerHeight;o.value=window.scrollY>e}function l(){s||=requestAnimationFrame(c)}function u(e){let t=window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches;window.scrollTo({top:0,behavior:t?`instant`:`smooth`}),e.detail===0&&document.querySelector(`a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])`)?.focus({preventScroll:!0})}return(0,n.onMounted)(()=>{c(),window.addEventListener(`scroll`,l,{passive:!0}),window.addEventListener(`resize`,l,{passive:!0})}),(0,n.onBeforeUnmount)(()=>{window.removeEventListener(`scroll`,l),window.removeEventListener(`resize`,l),s&&cancelAnimationFrame(s)}),(a,s)=>{let c=(0,n.resolveDirective)(`nb-tooltip`);return(0,n.openBlock)(),(0,n.createBlock)(n.Transition,{name:`nb-back-to-top`},{default:(0,n.withCtx)(()=>[o.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,i,[(0,n.withDirectives)((0,n.createVNode)(t.t,{"aria-label":e.label,class:`nb-back-to-top__button`,variant:`secondary`,icon:r,onClick:u},null,8,[`aria-label`]),[[c,{body:e.label,aria:`none`,position:`left`}]])])):(0,n.createCommentVNode)(``,!0)]),_:1})}}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
@@ -1,4 +1,4 @@
1
- import { t as e } from "./Button-Cq9dEeHz.js";
1
+ import { t as e } from "./Button-BHlNXmBr.js";
2
2
  import { Transition as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createVNode as a, defineComponent as o, onBeforeUnmount as s, onMounted as c, openBlock as l, ref as u, resolveDirective as d, withCtx as f, withDirectives as p } from "vue";
3
3
  import * as m from "@nubisco/ui/icons/arrow-up";
4
4
  //#region src/components/BackToTop.vue?vue&type=script&setup=true&lang.ts
@@ -1 +1 @@
1
- require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./palette-BoABA-De.cjs`),n=require(`./ChartLegend-ndpGucTZ.cjs`),r=require(`./scales-BWtB8m5D.cjs`),i=require(`./useChartSize-D9UxUkiU.cjs`);let a=require(`vue`);var o=[`width`,`height`,`role`,`aria-label`],s={key:0},c=[`x1`,`x2`,`y1`,`y2`],l={class:`nb-chart__axis`},u=[`x`,`y`,`text-anchor`,`dominant-baseline`],d={class:`nb-chart__axis`},f=[`x`,`y`,`text-anchor`,`dominant-baseline`],p=[`x1`,`x2`,`y1`,`y2`],m=[`fill`,`tabindex`,`role`,`aria-label`,`onKeydown`],h={class:`nb-chart__hover-layer`},g=[`onMouseenter`,`onMousemove`,`onClick`],_=(0,a.defineComponent)({__name:`BarChart`,props:{series:{default:()=>[]},orientation:{default:`vertical`},stacked:{type:Boolean,default:!1},valueFormatter:{},title:{default:void 0},subtitle:{default:void 0},height:{default:280},showLegend:{type:Boolean,default:!0},showTooltip:{type:Boolean,default:!0},showGrid:{type:Boolean,default:!0},colors:{default:()=>t.n}},emits:[`select`],setup(e,{emit:_}){let v=e,y=_,b=(0,a.ref)(null),x=i.t(b,{width:480,height:240}),S=(0,a.computed)(()=>v.orientation===`horizontal`),C=(0,a.computed)(()=>v.series.map((e,n)=>({name:e.name,data:e.data,color:e.color??t.i(n,v.colors)}))),w=(0,a.computed)(()=>(v.series[0]?.data??[]).map(e=>e.x)),T=(e,t)=>C.value[t]?.data[e]?.y??0,E=(e,t)=>{let n=T(e,t);if(!v.stacked)return[0,n];let r=0;for(let i=0;i<t;i+=1){let t=T(e,i);t>=0==n>=0&&(r+=t)}return[r,r+n]},D=(0,a.computed)(()=>{let e=[];return w.value.forEach((t,n)=>{C.value.forEach((t,r)=>{e.push(E(n,r)[1])})}),e.length?r.i(Math.min(0,...e),Math.max(0,...e),.05):[0,1]}),O=(0,a.computed)(()=>{if(!S.value)return{top:12,right:16,bottom:28,left:44};let e=w.value.reduce((e,t)=>Math.max(e,String(t).length),0),t=Math.max(44,Math.round(x.value.width*.4));return{top:12,right:16,bottom:28,left:Math.min(Math.max(44,Math.ceil(e*6.2)+12),t)}}),k=(0,a.computed)(()=>({x0:O.value.left,x1:Math.max(O.value.left,x.value.width-O.value.right),y0:O.value.top,y1:Math.max(O.value.top,x.value.height-O.value.bottom)})),A=(0,a.computed)(()=>r.t(w.value.map(e=>String(e)),S.value?[k.value.y0,k.value.y1]:[k.value.x0,k.value.x1],.2)),j=(0,a.computed)(()=>r.r(D.value,S.value?[k.value.x0,k.value.x1]:[k.value.y1,k.value.y0])),M=(0,a.computed)(()=>j.value.ticks(5)),N=e=>A.value(String(w.value[e])),P=e=>N(e)+A.value.bandwidth/2,F=(0,a.computed)(()=>{let e=C.value.length||1;return v.stacked?A.value.bandwidth:A.value.bandwidth/e}),I=(e,t)=>{let[n,r]=E(e,t),i=j.value(n),a=j.value(r),o=Math.max(0,F.value-2),s=N(e)+(v.stacked?0:t*F.value),c=Math.max(0,Math.abs(a-i));return S.value?{x:Math.min(i,a),y:s,width:c,height:o}:{x:s,y:Math.min(i,a),width:o,height:c}},L=e=>{let t=N(e),n=A.value.bandwidth;return S.value?{x:k.value.x0,y:t,width:Math.max(0,k.value.x1-k.value.x0),height:n}:{x:t,y:k.value.y0,width:n,height:Math.max(0,k.value.y1-k.value.y0)}},R=e=>Math.abs(e)>=1e3?`${(e/1e3).toFixed(1)}k`:String(e),z=e=>v.valueFormatter?v.valueFormatter(e):R(e),B=(0,a.getCurrentInstance)(),V=()=>!!B?.vnode.props?.onSelect,H=(e,t)=>{let n=C.value[t],r=z(T(e,t));return C.value.length>1?`${w.value[e]}, ${n?.name}: ${r}`:`${w.value[e]}: ${r}`},U=(e,t)=>{let n=C.value[t],r=n?.data[e];return{kind:`series`,x:r?.x??w.value[e],y:r?.y??0,seriesName:n?.name??``,seriesIndex:t,index:e,point:r??{x:w.value[e],y:0}}},W=e=>{let t=e.currentTarget.ownerSVGElement;if(!t)return null;let n=t.getBoundingClientRect();return{x:e.clientX-n.left,y:e.clientY-n.top}},G=(e,t)=>{let n=C.value.length;if(n<=1)return 0;let r=W(e);if(!r)return 0;if(v.stacked){let e=S.value?r.x:r.y;for(let r=0;r<n;r+=1){let[n,i]=E(t,r),a=j.value(n),o=j.value(i);if(e>=Math.min(a,o)&&e<=Math.max(a,o))return r}return n-1}let i=(S.value?r.y:r.x)-N(t),a=Math.floor(i/(F.value||1));return Math.min(Math.max(a,0),n-1)},K=(e,t)=>{V()&&y(`select`,U(t,G(e,t)))},q=(e,t,n)=>{V()&&(e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),y(`select`,U(t,n))))},J=(0,a.ref)(null),Y=(0,a.ref)({x:0,y:0}),X=(e,t)=>{let n=W(e);n&&(Y.value={x:n.x+12,y:n.y+12},J.value=t)},Z=(0,a.computed)(()=>J.value===null?[]:C.value.map(e=>{let t=e.data[J.value];return{label:e.name,value:t?.label??z(t?.y??0),color:e.color}}));return(r,i)=>((0,a.openBlock)(),(0,a.createBlock)(t.u,{title:e.title,subtitle:e.subtitle,height:e.height,"show-legend":e.showLegend&&C.value.length>0},{legend:(0,a.withCtx)(()=>[(0,a.createVNode)(n.t,{items:C.value.map(e=>({label:e.name,color:e.color}))},null,8,[`items`])]),default:(0,a.withCtx)(()=>[(0,a.createElementVNode)(`div`,{ref_key:`root`,ref:b,class:`nb-bar-chart`},[((0,a.openBlock)(),(0,a.createElementBlock)(`svg`,{width:(0,a.unref)(x).width,height:(0,a.unref)(x).height,class:(0,a.normalizeClass)([`nb-chart__svg`,{"nb-chart__svg--selectable":V()}]),role:V()?`group`:`img`,"aria-label":e.title||`Bar chart`,onMouseleave:i[0]||=e=>J.value=null},[e.showGrid&&(0,a.unref)(x).width>0?((0,a.openBlock)(),(0,a.createElementBlock)(`g`,s,[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(M.value,e=>((0,a.openBlock)(),(0,a.createElementBlock)(`line`,{key:`grid-${e}`,class:`nb-chart__gridline`,x1:S.value?j.value(e):k.value.x0,x2:S.value?j.value(e):k.value.x1,y1:S.value?k.value.y0:j.value(e),y2:S.value?k.value.y1:j.value(e)},null,8,c))),128))])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`g`,l,[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(M.value,e=>((0,a.openBlock)(),(0,a.createElementBlock)(`text`,{key:`vt-${e}`,x:S.value?j.value(e):k.value.x0-6,y:S.value?k.value.y1+14:j.value(e),"text-anchor":S.value?`middle`:`end`,"dominant-baseline":S.value?`auto`:`middle`},(0,a.toDisplayString)(z(e)),9,u))),128))]),(0,a.createElementVNode)(`g`,d,[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(w.value,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`text`,{key:`ct-${t}`,x:S.value?k.value.x0-6:P(t),y:S.value?P(t):k.value.y1+14,"text-anchor":S.value?`end`:`middle`,"dominant-baseline":S.value?`middle`:`auto`},(0,a.toDisplayString)(e),9,f))),128))]),(0,a.createElementVNode)(`line`,{class:`nb-chart__axis-line`,x1:S.value?j.value(0):k.value.x0,x2:S.value?j.value(0):k.value.x1,y1:S.value?k.value.y0:j.value(0),y2:S.value?k.value.y1:j.value(0)},null,8,p),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(w.value,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`g`,{key:`g-${t}`},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(C.value,(e,n)=>((0,a.openBlock)(),(0,a.createElementBlock)(`rect`,(0,a.mergeProps)({key:`${t}-${n}`,class:[`nb-chart__bar`,{"is-dim":J.value!==null&&J.value!==t}]},{ref_for:!0},I(t,n),{fill:e.color,tabindex:V()?0:void 0,role:V()?`button`:void 0,"aria-label":V()?H(t,n):void 0,onKeydown:e=>q(e,t,n)}),null,16,m))),128))]))),128)),(0,a.createElementVNode)(`g`,h,[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(w.value,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`rect`,(0,a.mergeProps)({key:`hover-${t}`},{ref_for:!0},L(t),{fill:`transparent`,onMouseenter:e=>J.value=t,onMousemove:e=>X(e,t),onClick:e=>K(e,t)}),null,16,g))),128))])],42,o)),(0,a.createVNode)(t.l,{visible:e.showTooltip&&J.value!==null,x:Y.value.x,y:Y.value.y,title:J.value===null?``:String(w.value[J.value]),rows:Z.value},null,8,[`visible`,`x`,`y`,`title`,`rows`])],512)]),_:1},8,[`title`,`subtitle`,`height`,`show-legend`]))}}),v=e.t(_,[[`__scopeId`,`data-v-7b3d7ee4`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return v}});
1
+ require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./palette-9NBcW3rl.cjs`),n=require(`./ChartLegend-DGUo_MYi.cjs`),r=require(`./scales-Bdgv87s2.cjs`),i=require(`./useChartSize-ByPUvppp.cjs`);let a=require(`vue`);var o=[`width`,`height`,`role`,`aria-label`],s={key:0},c=[`x1`,`x2`,`y1`,`y2`],l={class:`nb-chart__axis`},u=[`x`,`y`,`text-anchor`,`dominant-baseline`],d={class:`nb-chart__axis`},f=[`x`,`y`,`text-anchor`,`dominant-baseline`],p=[`x1`,`x2`,`y1`,`y2`],m=[`fill`,`tabindex`,`role`,`aria-label`,`onKeydown`],h={class:`nb-chart__hover-layer`},g=[`onMouseenter`,`onMousemove`,`onClick`],_=(0,a.defineComponent)({__name:`BarChart`,props:{series:{default:()=>[]},orientation:{default:`vertical`},stacked:{type:Boolean,default:!1},valueFormatter:{},title:{default:void 0},subtitle:{default:void 0},height:{default:280},showLegend:{type:Boolean,default:!0},showTooltip:{type:Boolean,default:!0},showGrid:{type:Boolean,default:!0},colors:{default:()=>t.n}},emits:[`select`],setup(e,{emit:_}){let v=e,y=_,b=(0,a.ref)(null),x=i.t(b,{width:480,height:240}),S=(0,a.computed)(()=>v.orientation===`horizontal`),C=(0,a.computed)(()=>v.series.map((e,n)=>({name:e.name,data:e.data,color:e.color??t.i(n,v.colors)}))),w=(0,a.computed)(()=>(v.series[0]?.data??[]).map(e=>e.x)),T=(e,t)=>C.value[t]?.data[e]?.y??0,E=(e,t)=>{let n=T(e,t);if(!v.stacked)return[0,n];let r=0;for(let i=0;i<t;i+=1){let t=T(e,i);t>=0==n>=0&&(r+=t)}return[r,r+n]},D=(0,a.computed)(()=>{let e=[];return w.value.forEach((t,n)=>{C.value.forEach((t,r)=>{e.push(E(n,r)[1])})}),e.length?r.i(Math.min(0,...e),Math.max(0,...e),.05):[0,1]}),O=(0,a.computed)(()=>{if(!S.value)return{top:12,right:16,bottom:28,left:44};let e=w.value.reduce((e,t)=>Math.max(e,String(t).length),0),t=Math.max(44,Math.round(x.value.width*.4));return{top:12,right:16,bottom:28,left:Math.min(Math.max(44,Math.ceil(e*6.2)+12),t)}}),k=(0,a.computed)(()=>({x0:O.value.left,x1:Math.max(O.value.left,x.value.width-O.value.right),y0:O.value.top,y1:Math.max(O.value.top,x.value.height-O.value.bottom)})),A=(0,a.computed)(()=>r.t(w.value.map(e=>String(e)),S.value?[k.value.y0,k.value.y1]:[k.value.x0,k.value.x1],.2)),j=(0,a.computed)(()=>r.r(D.value,S.value?[k.value.x0,k.value.x1]:[k.value.y1,k.value.y0])),M=(0,a.computed)(()=>j.value.ticks(5)),N=e=>A.value(String(w.value[e])),P=e=>N(e)+A.value.bandwidth/2,F=(0,a.computed)(()=>{let e=C.value.length||1;return v.stacked?A.value.bandwidth:A.value.bandwidth/e}),I=(e,t)=>{let[n,r]=E(e,t),i=j.value(n),a=j.value(r),o=Math.max(0,F.value-2),s=N(e)+(v.stacked?0:t*F.value),c=Math.max(0,Math.abs(a-i));return S.value?{x:Math.min(i,a),y:s,width:c,height:o}:{x:s,y:Math.min(i,a),width:o,height:c}},L=e=>{let t=N(e),n=A.value.bandwidth;return S.value?{x:k.value.x0,y:t,width:Math.max(0,k.value.x1-k.value.x0),height:n}:{x:t,y:k.value.y0,width:n,height:Math.max(0,k.value.y1-k.value.y0)}},R=e=>Math.abs(e)>=1e3?`${(e/1e3).toFixed(1)}k`:String(e),z=e=>v.valueFormatter?v.valueFormatter(e):R(e),B=(0,a.getCurrentInstance)(),V=()=>!!B?.vnode.props?.onSelect,H=(e,t)=>{let n=C.value[t],r=z(T(e,t));return C.value.length>1?`${w.value[e]}, ${n?.name}: ${r}`:`${w.value[e]}: ${r}`},U=(e,t)=>{let n=C.value[t],r=n?.data[e];return{kind:`series`,x:r?.x??w.value[e],y:r?.y??0,seriesName:n?.name??``,seriesIndex:t,index:e,point:r??{x:w.value[e],y:0}}},W=e=>{let t=e.currentTarget.ownerSVGElement;if(!t)return null;let n=t.getBoundingClientRect();return{x:e.clientX-n.left,y:e.clientY-n.top}},G=(e,t)=>{let n=C.value.length;if(n<=1)return 0;let r=W(e);if(!r)return 0;if(v.stacked){let e=S.value?r.x:r.y;for(let r=0;r<n;r+=1){let[n,i]=E(t,r),a=j.value(n),o=j.value(i);if(e>=Math.min(a,o)&&e<=Math.max(a,o))return r}return n-1}let i=(S.value?r.y:r.x)-N(t),a=Math.floor(i/(F.value||1));return Math.min(Math.max(a,0),n-1)},K=(e,t)=>{V()&&y(`select`,U(t,G(e,t)))},q=(e,t,n)=>{V()&&(e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),y(`select`,U(t,n))))},J=(0,a.ref)(null),Y=(0,a.ref)({x:0,y:0}),X=(e,t)=>{let n=W(e);n&&(Y.value={x:n.x+12,y:n.y+12},J.value=t)},Z=(0,a.computed)(()=>J.value===null?[]:C.value.map(e=>{let t=e.data[J.value];return{label:e.name,value:t?.label??z(t?.y??0),color:e.color}}));return(r,i)=>((0,a.openBlock)(),(0,a.createBlock)(t.u,{title:e.title,subtitle:e.subtitle,height:e.height,"show-legend":e.showLegend&&C.value.length>0},{legend:(0,a.withCtx)(()=>[(0,a.createVNode)(n.t,{items:C.value.map(e=>({label:e.name,color:e.color}))},null,8,[`items`])]),default:(0,a.withCtx)(()=>[(0,a.createElementVNode)(`div`,{ref_key:`root`,ref:b,class:`nb-bar-chart`},[((0,a.openBlock)(),(0,a.createElementBlock)(`svg`,{width:(0,a.unref)(x).width,height:(0,a.unref)(x).height,class:(0,a.normalizeClass)([`nb-chart__svg`,{"nb-chart__svg--selectable":V()}]),role:V()?`group`:`img`,"aria-label":e.title||`Bar chart`,onMouseleave:i[0]||=e=>J.value=null},[e.showGrid&&(0,a.unref)(x).width>0?((0,a.openBlock)(),(0,a.createElementBlock)(`g`,s,[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(M.value,e=>((0,a.openBlock)(),(0,a.createElementBlock)(`line`,{key:`grid-${e}`,class:`nb-chart__gridline`,x1:S.value?j.value(e):k.value.x0,x2:S.value?j.value(e):k.value.x1,y1:S.value?k.value.y0:j.value(e),y2:S.value?k.value.y1:j.value(e)},null,8,c))),128))])):(0,a.createCommentVNode)(``,!0),(0,a.createElementVNode)(`g`,l,[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(M.value,e=>((0,a.openBlock)(),(0,a.createElementBlock)(`text`,{key:`vt-${e}`,x:S.value?j.value(e):k.value.x0-6,y:S.value?k.value.y1+14:j.value(e),"text-anchor":S.value?`middle`:`end`,"dominant-baseline":S.value?`auto`:`middle`},(0,a.toDisplayString)(z(e)),9,u))),128))]),(0,a.createElementVNode)(`g`,d,[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(w.value,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`text`,{key:`ct-${t}`,x:S.value?k.value.x0-6:P(t),y:S.value?P(t):k.value.y1+14,"text-anchor":S.value?`end`:`middle`,"dominant-baseline":S.value?`middle`:`auto`},(0,a.toDisplayString)(e),9,f))),128))]),(0,a.createElementVNode)(`line`,{class:`nb-chart__axis-line`,x1:S.value?j.value(0):k.value.x0,x2:S.value?j.value(0):k.value.x1,y1:S.value?k.value.y0:j.value(0),y2:S.value?k.value.y1:j.value(0)},null,8,p),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(w.value,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`g`,{key:`g-${t}`},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(C.value,(e,n)=>((0,a.openBlock)(),(0,a.createElementBlock)(`rect`,(0,a.mergeProps)({key:`${t}-${n}`,class:[`nb-chart__bar`,{"is-dim":J.value!==null&&J.value!==t}]},{ref_for:!0},I(t,n),{fill:e.color,tabindex:V()?0:void 0,role:V()?`button`:void 0,"aria-label":V()?H(t,n):void 0,onKeydown:e=>q(e,t,n)}),null,16,m))),128))]))),128)),(0,a.createElementVNode)(`g`,h,[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(w.value,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`rect`,(0,a.mergeProps)({key:`hover-${t}`},{ref_for:!0},L(t),{fill:`transparent`,onMouseenter:e=>J.value=t,onMousemove:e=>X(e,t),onClick:e=>K(e,t)}),null,16,g))),128))])],42,o)),(0,a.createVNode)(t.l,{visible:e.showTooltip&&J.value!==null,x:Y.value.x,y:Y.value.y,title:J.value===null?``:String(w.value[J.value]),rows:Z.value},null,8,[`visible`,`x`,`y`,`title`,`rows`])],512)]),_:1},8,[`title`,`subtitle`,`height`,`show-legend`]))}}),v=e.t(_,[[`__scopeId`,`data-v-7b3d7ee4`]]);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return v}});
@@ -1,8 +1,8 @@
1
1
  import { t as e } from "./_plugin-vue_export-helper-O4QQSku4.js";
2
- import { i as t, l as n, n as r, u as i } from "./palette-VMXxKICH.js";
3
- import { t as a } from "./ChartLegend-BtBKVnH3.js";
4
- import { i as o, r as s, t as c } from "./scales-DVJzRU1F.js";
5
- import { t as l } from "./useChartSize-Dyh37PYP.js";
2
+ import { i as t, l as n, n as r, u as i } from "./palette-Cq2Mb9QH.js";
3
+ import { t as a } from "./ChartLegend-BythwRMJ.js";
4
+ import { i as o, r as s, t as c } from "./scales-CzvC8OOZ.js";
5
+ import { t as l } from "./useChartSize-BXgOzSCU.js";
6
6
  import { Fragment as u, computed as d, createBlock as f, createCommentVNode as p, createElementBlock as m, createElementVNode as h, createVNode as g, defineComponent as _, getCurrentInstance as v, mergeProps as y, normalizeClass as ee, openBlock as b, ref as x, renderList as S, toDisplayString as C, unref as w, withCtx as T } from "vue";
7
7
  //#region src/components/Charts/BarChart.vue?vue&type=script&setup=true&lang.ts
8
8
  var E = [
@@ -1 +1 @@
1
- require(`./chunk-D-qHiVGv.cjs`);const e=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),t=require(`./Blueprint.context-BJFr4pG6.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-mdr13T3c.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-C0sg1sbm.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-DdcmrtpA.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,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-C-rwu3ut.js";
2
+ import { n as t, t as n } from "./Blueprint.context-BOP7aLQl.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-CBmqhUr4.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-tM_RIArI.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(`./composables/useReducedMotion.composable.cjs`),t=require(`./_plugin-vue_export-helper-tagjRzOz.cjs`),n=require(`./Blueprint.context-BJFr4pG6.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-C0sg1sbm.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-C-rwu3ut.js";
3
+ import { t as n } from "./Blueprint.context-BOP7aLQl.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-CbQyG-jg.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-bQHEUhzc.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-Cq9dEeHz.js";
3
+ import { t as n } from "./Button-BHlNXmBr.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";
@@ -1 +1 @@
1
- const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./composables/useStableId.composable.cjs`),n=require(`./composables/useSurfaceLayer.composable.cjs`),r=require(`./composables/usePhoneLayout.composable.cjs`),i=require(`./Button-CbQyG-jg.cjs`);let a=require(`vue`),o=require(`@nubisco/ui/icons/x`);o=e.n(o);var s=[`draggable`,`onDragstart`,`onDragover`],c={class:`nb-board__col-title`},l={class:`nb-board__col-count`},ee=[`onClick`],te=[`aria-label`],ne={class:`nb-board__lane-label`},re={class:`nb-board__lane-count`},ie=[`onDragover`,`onDrop`],ae=[`aria-label`],oe=[`data-item-id`,`aria-selected`,`aria-label`,`aria-describedby`,`onDragstart`,`onDragover`,`onKeydown`,`onClickCapture`,`onBlur`],se={key:0,class:`nb-board__empty-cell`,"aria-hidden":`true`},ce={key:0,class:`nb-board__cell-footer`},u={key:0,class:`nb-board__batch`,role:`region`,"aria-label":`Actions for the selected cards`},le={class:`nb-board__batch-count`},ue={class:`nb-board__batch-actions`},de=[`id`],fe={class:`nb-board__sr`,"aria-live":`assertive`},pe=.5,me=44,d=(0,a.defineComponent)({__name:`Board`,props:{columns:{},items:{},lanes:{default:void 0},reorderableColumns:{type:Boolean,default:!1},nestable:{type:Boolean,default:!1},selectable:{type:Boolean,default:!1},selected:{default:void 0},selectMode:{type:Boolean,default:!1}},emits:[`move`,`nest`,`column-move`,`move-many`,`update:selected`,`update:selectMode`],setup(e,{emit:d}){let f=e,{phone:p}=r.usePhoneLayout(),he=(0,a.useSlots)(),{layerProps:ge}=n.useSurfaceLayer(),m=d,h=(0,a.computed)(()=>f.selectable?f.selected??[]:[]),_e=(0,a.computed)(()=>new Set(h.value)),g=null;function _(e){return _e.value.has(e)}function v(e){m(`update:selected`,e),z.value=e.length===0?`Selection cleared`:`${e.length} ${e.length===1?`card`:`cards`} selected`}function y(){g=null,v([]),x.value&&m(`update:selectMode`,!1)}let b=(0,a.computed)(()=>f.selectable&&h.value.length>0&&!!he[`batch-actions`]),x=(0,a.computed)(()=>f.selectable&&f.selectMode);function S(e){g=e,v(_(e)?h.value.filter(t=>t!==e):[...h.value,e])}function ve(e,t,n){let r=N(t,n),i=g?r.findIndex(e=>e.id===g):-1,a=r.findIndex(t=>t.id===e.id);if(i===-1||a===-1)return S(e.id);let o=r.slice(Math.min(i,a),Math.max(i,a)+1).map(e=>e.id);v([...new Set([...h.value,...o])])}function ye(e,t,n,r){f.selectable&&(!x.value&&!(e.metaKey||e.ctrlKey||e.shiftKey)||(e.preventDefault(),e.stopPropagation(),e.shiftKey?ve(t,O(n),r):S(t.id)))}function C(){let e=[];for(let t of f.columns)for(let n of D.value)for(let r of N(O(n),t.id))_(r.id)&&!e.includes(r.id)&&e.push(r.id);return e}function w(e,t,n,r,i){let a=new Set(e),o=N(n,r).filter(e=>e.id!==t),s=null;for(let e=Math.min(i,o.length)-1;e>=0;e--)if(!a.has(o[e].id)){s=o[e].id;break}let c=null;for(let e=Math.max(i,0);e<o.length;e++)if(!a.has(o[e].id)){c=o[e].id;break}m(`move-many`,{itemIds:e,toColumnId:r,...f.lanes?{toLaneId:n}:{},beforeItemId:s,afterItemId:c});let l=P(r);z.value=`${e.length} cards moved to ${l?.label??r}`}let T=t.useStableId({}),E=(0,a.ref)(null),be=(0,a.computed)(()=>({gridTemplateColumns:`repeat(${f.columns.length}, var(--nb-board-column-track, minmax(200px, 1fr)))`,...p.value?{"--nb-board-cols":String(f.columns.length)}:{}})),D=(0,a.computed)(()=>f.lanes&&f.lanes.length>0?f.lanes:[null]);function O(e){return e?e.id??null:null}function k(e){return e?j(e.id):`__flat__`}function A(e){return f.items.filter(t=>t.columnId===e).length}function j(e){return e??`__none__`}function M(e){return f.lanes?f.items.filter(t=>(t.laneId??null)===e).length:0}function N(e,t){return!f.lanes||f.lanes.length===0?f.items.filter(e=>e.columnId===t):f.items.filter(n=>n.columnId===t&&(n.laneId??null)===e)}function P(e){return f.columns.find(t=>t.id===e)}let F=(0,a.ref)(new Set);function xe(e){let t=j(e),n=new Set(F.value);n.has(t)?n.delete(t):n.add(t),F.value=n}function I(e){return F.value.has(j(e))}function L(e){let t=e.label??e.name??e.title;return typeof t==`string`?t:`Item ${e.id}`}function R(e,t){return e?`${t.label}, ${e.label}`:t.label}function Se(e,t){return R(e,t)}function Ce(e,t,n){let r=N(O(t),n.id),i=r.findIndex(t=>t.id===e.id),a=`${L(e)}, ${i+1} of ${r.length} in ${R(t,n)}`;return K.value?.item.id===e.id?`${a}, picked up`:a}let z=(0,a.ref)(``);function B(e,t,n,r){let i=N(t,n).filter(t=>t.id!==e.item.id),a=Math.max(0,Math.min(r,i.length));return e.fromColumnId===n&&e.fromLaneId===t&&a===N(t,n).findIndex(t=>t.id===e.item.id)?!1:(m(`move`,{itemId:e.item.id,fromColumnId:e.fromColumnId,toColumnId:n,fromLaneId:e.fromLaneId,toLaneId:t,toIndex:a,beforeItemId:i[a-1]?.id??null,afterItemId:i[a]?.id??null}),!0)}let V=(0,a.ref)(null),H=(0,a.ref)(null),U=(0,a.ref)(null);function we(e,t,n){K.value=null;let r=_(e.id)&&h.value.length>1?C():void 0;V.value={item:e,fromLaneId:O(t),fromColumnId:n,group:r},r&&(z.value=`Moving ${r.length} cards`)}function Te(e,t,n,r,i){if(!V.value)return;let a=e.currentTarget.getBoundingClientRect();if(f.nestable&&!V.value.group&&a.height>=me){let r=(e.clientY-a.top)/a.height,o=(1-pe)/2;if(r>o&&r<1-o&&i.id!==V.value.item.id){U.value={laneId:O(t),colId:n,itemId:i.id},H.value=null;return}}U.value=null;let o=e.clientY>=a.top+a.height/2;H.value={laneId:O(t),colId:n,index:r+(o?1:0)}}function W(e,t){if(!V.value)return;let n=O(e);H.value={laneId:n,colId:t,index:N(n,t).length}}function Ee(){H.value=null,U.value=null}function De(){V.value=null,H.value=null,U.value=null}function Oe(e,t){return G(e,t)!==null}function G(e,t){let n=O(e),r=H.value;if(V.value&&r&&r.laneId===n&&r.colId===t)return r.index;let i=K.value;if(i&&i.laneId===n&&i.colId===t){let e=N(n,t).findIndex(e=>e.id===i.item.id);return e!==-1&&e<=i.index?i.index+1:i.index}return null}function ke(e,t,n){let r=U.value;return r!==null&&r.laneId===O(e)&&r.colId===t&&r.itemId===n.id}function Ae(e,t,n){return n===N(O(e),t).length-1&&G(e,t)===n+1}function je(e,t){if(Z.value!==null)return;let n=H.value,r=U.value;H.value=null,U.value=null;let i=V.value;if(V.value=null,!i)return;if(r){m(`nest`,{itemId:i.item.id,ontoItemId:r.itemId,fromColumnId:i.fromColumnId,...f.lanes?{fromLaneId:i.fromLaneId}:{}}),z.value=`${L(i.item)} dropped onto ${L(f.items.find(e=>e.id===r.itemId)??i.item)}`;return}let a=O(e),o=N(a,t),s=n&&n.laneId===a&&n.colId===t?n.index:o.length,c=o.findIndex(e=>e.id===i.item.id),l=c!==-1&&c<s?s-1:s;if(i.group){w(i.group,i.item.id,a,t,l);return}B(i,a,t,l)}let K=(0,a.ref)(null);function Me(e,t,n,r){let i=O(n);if(f.selectable&&(e.key===`x`||e.key===`X`)&&!K.value){e.preventDefault(),S(t.id);return}if(e.key===`Escape`){if(!K.value){f.selectable&&h.value.length>0&&(e.preventDefault(),y());return}e.preventDefault(),K.value=null,z.value=`Move cancelled`;return}if(e.key===` `||e.key===`Enter`){if(e.preventDefault(),K.value?.item.id!==t.id){Ne(t,i,r);return}if(f.nestable&&e.shiftKey&&J()){Ie();return}Le();return}[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`].includes(e.key)&&(e.preventDefault(),K.value?.item.id===t.id?Fe(e.key):Re(e.key,t,i,r))}function Ne(e,t,n){K.value={item:e,fromLaneId:t,fromColumnId:n,laneId:t,colId:n,index:N(t,n).findIndex(t=>t.id===e.id)},z.value=`${L(e)} picked up, ${q()}`}function q(){let e=K.value;if(!e)return``;let t=N(e.laneId,e.colId).filter(t=>t.id!==e.item.id),n=P(e.colId),r=f.lanes?.find(t=>(t.id??null)===e.laneId)??null,i=n?R(r,n):e.colId;return`position ${e.index+1} of ${t.length+1} in ${i}`}function Pe(){return!f.lanes||f.lanes.length===0?[null]:f.lanes.filter(e=>!I(e.id)).map(e=>e.id??null)}function Fe(e){let t=K.value;if(!t)return;let n=N(t.laneId,t.colId).filter(e=>e.id!==t.item.id);if(e===`ArrowUp`||e===`ArrowDown`){let r=e===`ArrowUp`?-1:1,i=t.index+r;if(i>=0&&i<=n.length)t.index=i;else{let e=Pe(),n=e.indexOf(t.laneId),i=n+r;if(n===-1||i<0||i>=e.length)return;let a=e[i];t.laneId=a,t.index=r===1?0:N(a,t.colId).filter(e=>e.id!==t.item.id).length}}else{let n=e===`ArrowLeft`?-1:1,r=f.columns.findIndex(e=>e.id===t.colId),i=f.columns[r+n];if(r===-1||!i)return;t.colId=i.id;let a=N(t.laneId,t.colId).filter(e=>e.id!==t.item.id);t.index=Math.min(t.index,a.length)}z.value=`${L(t.item)}, ${q()}`}function J(){let e=K.value;if(!e)return null;let t=N(e.laneId,e.colId).filter(t=>t.id!==e.item.id);return t.length===0?null:t[Math.min(e.index,t.length-1)]??null}function Ie(){let e=K.value,t=J();!e||!t||(K.value=null,m(`nest`,{itemId:e.item.id,ontoItemId:t.id,fromColumnId:e.fromColumnId,...f.lanes?{fromLaneId:e.fromLaneId}:{}}),z.value=`${L(e.item)} dropped onto ${L(t)}`)}function Le(){let e=K.value;if(!e)return;if(K.value=null,_(e.item.id)&&h.value.length>1){w(C(),e.item.id,e.laneId,e.colId,e.index),X(e.item.id);return}let t=B({item:e.item,fromLaneId:e.fromLaneId,fromColumnId:e.fromColumnId},e.laneId,e.colId,e.index),n=P(e.colId),r=f.lanes?.find(t=>(t.id??null)===e.laneId)??null,i=n?R(r,n):e.colId;z.value=t?`${L(e.item)} dropped, position ${e.index+1} in ${i}`:`${L(e.item)} dropped`,X(e.item.id)}function Re(e,t,n,r){let i=N(n,r),a=i.findIndex(e=>e.id===t.id);if(e===`ArrowUp`||e===`ArrowDown`){let t=a+(e===`ArrowDown`?1:-1);t>=0&&t<i.length&&Y(i[t].id)}else{let t=f.columns.findIndex(e=>e.id===r),i=f.columns[t+(e===`ArrowRight`?1:-1)];if(t===-1||!i)return;let o=N(n,i.id);if(o.length===0)return;Y(o[Math.min(a,o.length-1)].id)}}function Y(e){let t=E.value?.querySelectorAll(`[data-item-id]`);if(t){for(let n of t)if(n.dataset.itemId===e){n.focus();return}}}async function X(e){await(0,a.nextTick)(),await(0,a.nextTick)(),Y(e)}function ze(e){K.value?.item.id===e.id&&(K.value=null)}let Z=(0,a.ref)(null),Q=(0,a.ref)(null);function Be(e,t){if(!f.reorderableColumns){t.preventDefault();return}Z.value=e,Q.value=e}function Ve(e,t){if(Z.value===null)return;t.preventDefault();let n=t.currentTarget.getBoundingClientRect();Q.value=t.clientX<n.left+n.width/2?e:e+1}function He(e){let t=Z.value,n=Q.value;if($(),t===null||n===null)return;e.preventDefault();let r=n>t?n-1:n;r!==t&&m(`column-move`,{columnId:f.columns[t].id,toIndex:r})}function $(){Z.value=null,Q.value=null}return(t,n)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,(0,a.mergeProps)({ref_key:`boardRef`,ref:E,class:[`nb-board`,{"nb-board--flat":(0,a.unref)(p)&&D.value[0]===null,"nb-board--batching":(0,a.unref)(p)&&b.value,"nb-board--select-mode":x.value}]},(0,a.unref)(ge)),[(0,a.createElementVNode)(`div`,{class:`nb-board__grid`,style:(0,a.normalizeStyle)(be.value)},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(e.columns,(n,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:n.id,class:(0,a.normalizeClass)([`nb-board__col-header`,{"nb-board__col-header--reorderable":e.reorderableColumns,"nb-board__col-header--dragging":Z.value===r,"nb-board__col-header--drop-before":Q.value===r,"nb-board__col-header--drop-after":Q.value===r+1&&r===e.columns.length-1}]),style:(0,a.normalizeStyle)(n.color?{borderTopColor:n.color}:void 0),draggable:e.reorderableColumns||void 0,onDragstart:e=>Be(r,e),onDragover:e=>Ve(r,e),onDrop:He,onDragend:$},[(0,a.renderSlot)(t.$slots,`column-header`,{column:n,count:A(n.id)},()=>[(0,a.createElementVNode)(`span`,c,(0,a.toDisplayString)(n.label),1),(0,a.createElementVNode)(`span`,l,(0,a.toDisplayString)(A(n.id)),1)])],46,s))),128)),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(D.value,n=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:k(n)},[n?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,class:`nb-board__lane-header`,onClick:e=>xe(n.id)},[(0,a.createElementVNode)(`button`,{class:`nb-board__collapse-btn`,"aria-label":I(n.id)?`Expand`:`Collapse`},(0,a.toDisplayString)(I(n.id)?`▶`:`▼`),9,te),(0,a.renderSlot)(t.$slots,`lane-header`,{lane:n},()=>[(0,a.createElementVNode)(`span`,ne,(0,a.toDisplayString)(n.label),1)]),(0,a.createElementVNode)(`span`,re,(0,a.toDisplayString)(M(n.id)),1)],8,ee)):(0,a.createCommentVNode)(``,!0),!n||!I(n.id)?((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,{key:1},(0,a.renderList)(e.columns,r=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:k(n)+`-`+r.id,class:(0,a.normalizeClass)([`nb-board__cell`,{"nb-board__cell--drag-over":Oe(n,r.id)}]),onDragover:(0,a.withModifiers)(e=>W(n,r.id),[`prevent`]),onDragleave:Ee,onDrop:(0,a.withModifiers)(e=>je(n,r.id),[`prevent`])},[(0,a.createElementVNode)(`div`,{class:`nb-board__cell-items`,role:`list`,"aria-label":Se(n,r)},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(N(O(n),r.id),(i,o)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:i.id,class:(0,a.normalizeClass)([`nb-board__card`,{"nb-board__card--lifted":K.value?.item.id===i.id,"nb-board__card--selected":_(i.id),"nb-board__card--carried":!!V.value?.group&&_(i.id),"nb-board__card--drop-before":G(n,r.id)===o,"nb-board__card--drop-after":Ae(n,r.id,o),"nb-board__card--drop-into":ke(n,r.id,i)}]),role:`listitem`,tabindex:`0`,"data-item-id":i.id,"aria-selected":e.selectable?_(i.id):void 0,"aria-label":Ce(i,n,r),"aria-describedby":`${(0,a.unref)(T)}-hint`,draggable:`true`,onDragstart:e=>we(i,n,r.id),onDragover:(0,a.withModifiers)(e=>Te(e,n,r.id,o,i),[`prevent`,`stop`]),onDragend:De,onKeydown:e=>Me(e,i,n,r.id),onClickCapture:e=>ye(e,i,n,r.id),onBlur:e=>ze(i)},[(0,a.renderSlot)(t.$slots,`card`,{item:i,column:r,lane:n??void 0})],42,oe))),128)),N(O(n),r.id).length===0?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,se)):(0,a.createCommentVNode)(``,!0)],8,ae),t.$slots[`column-footer`]?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,ce,[(0,a.renderSlot)(t.$slots,`column-footer`,{column:r,lane:n??void 0})])):(0,a.createCommentVNode)(``,!0)],42,ie))),128)):(0,a.createCommentVNode)(``,!0)],64))),128))],4),((0,a.openBlock)(),(0,a.createBlock)(a.Teleport,{to:`body`,disabled:!(0,a.unref)(p)},[b.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,u,[(0,a.createElementVNode)(`span`,le,(0,a.toDisplayString)(h.value.length)+` selected `,1),(0,a.createElementVNode)(`div`,ue,[(0,a.renderSlot)(t.$slots,`batch-actions`,{selected:h.value,clear:y,phone:(0,a.unref)(p)})]),(0,a.unref)(p)?((0,a.openBlock)(),(0,a.createBlock)(i.t,{key:0,class:`nb-board__batch-cancel`,variant:`ghost`,size:`sm`,icon:o,"aria-label":`Clear selection`,onClick:y})):((0,a.openBlock)(),(0,a.createBlock)(i.t,{key:1,class:`nb-board__batch-cancel`,variant:`ghost`,size:`sm`,onClick:y},{default:(0,a.withCtx)(()=>[...n[0]||=[(0,a.createTextVNode)(` Clear selection `,-1)]]),_:1}))])):(0,a.createCommentVNode)(``,!0)],8,[`disabled`])),(0,a.createElementVNode)(`span`,{id:`${(0,a.unref)(T)}-hint`,class:`nb-board__sr`},[n[1]||=(0,a.createTextVNode)(` Press Space or Enter to pick up, arrow keys to move, Space or Enter to drop, Escape to cancel.`,-1),e.nestable?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:0},[(0,a.createTextVNode)(` Shift with Space or Enter drops onto the card below instead, putting this one inside it.`)],64)):(0,a.createCommentVNode)(``,!0),e.selectable?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[(0,a.createTextVNode)(` X selects the card, or removes it from the selection. Picking up a selected card moves every selected card. Escape clears the selection.`)],64)):(0,a.createCommentVNode)(``,!0),x.value?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:2},[(0,a.createTextVNode)(` Selecting: activating a card selects it, or removes it from the selection.`)],64)):(0,a.createCommentVNode)(``,!0)],8,de),(0,a.createElementVNode)(`span`,fe,(0,a.toDisplayString)(z.value),1)],16))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return d}});
1
+ const e=require(`./chunk-D-qHiVGv.cjs`),t=require(`./composables/useStableId.composable.cjs`),n=require(`./composables/useSurfaceLayer.composable.cjs`),r=require(`./composables/usePhoneLayout.composable.cjs`),i=require(`./Button-bQHEUhzc.cjs`);let a=require(`vue`),o=require(`@nubisco/ui/icons/x`);o=e.n(o);var s=[`draggable`,`onDragstart`,`onDragover`],c={class:`nb-board__col-title`},l={class:`nb-board__col-count`},ee=[`onClick`],te=[`aria-label`],ne={class:`nb-board__lane-label`},re={class:`nb-board__lane-count`},ie=[`onDragover`,`onDrop`],ae=[`aria-label`],oe=[`data-item-id`,`aria-selected`,`aria-label`,`aria-describedby`,`onDragstart`,`onDragover`,`onKeydown`,`onClickCapture`,`onBlur`],se={key:0,class:`nb-board__empty-cell`,"aria-hidden":`true`},ce={key:0,class:`nb-board__cell-footer`},u={key:0,class:`nb-board__batch`,role:`region`,"aria-label":`Actions for the selected cards`},le={class:`nb-board__batch-count`},ue={class:`nb-board__batch-actions`},de=[`id`],fe={class:`nb-board__sr`,"aria-live":`assertive`},pe=.5,me=44,d=(0,a.defineComponent)({__name:`Board`,props:{columns:{},items:{},lanes:{default:void 0},reorderableColumns:{type:Boolean,default:!1},nestable:{type:Boolean,default:!1},selectable:{type:Boolean,default:!1},selected:{default:void 0},selectMode:{type:Boolean,default:!1}},emits:[`move`,`nest`,`column-move`,`move-many`,`update:selected`,`update:selectMode`],setup(e,{emit:d}){let f=e,{phone:p}=r.usePhoneLayout(),he=(0,a.useSlots)(),{layerProps:ge}=n.useSurfaceLayer(),m=d,h=(0,a.computed)(()=>f.selectable?f.selected??[]:[]),_e=(0,a.computed)(()=>new Set(h.value)),g=null;function _(e){return _e.value.has(e)}function v(e){m(`update:selected`,e),z.value=e.length===0?`Selection cleared`:`${e.length} ${e.length===1?`card`:`cards`} selected`}function y(){g=null,v([]),x.value&&m(`update:selectMode`,!1)}let b=(0,a.computed)(()=>f.selectable&&h.value.length>0&&!!he[`batch-actions`]),x=(0,a.computed)(()=>f.selectable&&f.selectMode);function S(e){g=e,v(_(e)?h.value.filter(t=>t!==e):[...h.value,e])}function ve(e,t,n){let r=N(t,n),i=g?r.findIndex(e=>e.id===g):-1,a=r.findIndex(t=>t.id===e.id);if(i===-1||a===-1)return S(e.id);let o=r.slice(Math.min(i,a),Math.max(i,a)+1).map(e=>e.id);v([...new Set([...h.value,...o])])}function ye(e,t,n,r){f.selectable&&(!x.value&&!(e.metaKey||e.ctrlKey||e.shiftKey)||(e.preventDefault(),e.stopPropagation(),e.shiftKey?ve(t,O(n),r):S(t.id)))}function C(){let e=[];for(let t of f.columns)for(let n of D.value)for(let r of N(O(n),t.id))_(r.id)&&!e.includes(r.id)&&e.push(r.id);return e}function w(e,t,n,r,i){let a=new Set(e),o=N(n,r).filter(e=>e.id!==t),s=null;for(let e=Math.min(i,o.length)-1;e>=0;e--)if(!a.has(o[e].id)){s=o[e].id;break}let c=null;for(let e=Math.max(i,0);e<o.length;e++)if(!a.has(o[e].id)){c=o[e].id;break}m(`move-many`,{itemIds:e,toColumnId:r,...f.lanes?{toLaneId:n}:{},beforeItemId:s,afterItemId:c});let l=P(r);z.value=`${e.length} cards moved to ${l?.label??r}`}let T=t.useStableId({}),E=(0,a.ref)(null),be=(0,a.computed)(()=>({gridTemplateColumns:`repeat(${f.columns.length}, var(--nb-board-column-track, minmax(200px, 1fr)))`,...p.value?{"--nb-board-cols":String(f.columns.length)}:{}})),D=(0,a.computed)(()=>f.lanes&&f.lanes.length>0?f.lanes:[null]);function O(e){return e?e.id??null:null}function k(e){return e?j(e.id):`__flat__`}function A(e){return f.items.filter(t=>t.columnId===e).length}function j(e){return e??`__none__`}function M(e){return f.lanes?f.items.filter(t=>(t.laneId??null)===e).length:0}function N(e,t){return!f.lanes||f.lanes.length===0?f.items.filter(e=>e.columnId===t):f.items.filter(n=>n.columnId===t&&(n.laneId??null)===e)}function P(e){return f.columns.find(t=>t.id===e)}let F=(0,a.ref)(new Set);function xe(e){let t=j(e),n=new Set(F.value);n.has(t)?n.delete(t):n.add(t),F.value=n}function I(e){return F.value.has(j(e))}function L(e){let t=e.label??e.name??e.title;return typeof t==`string`?t:`Item ${e.id}`}function R(e,t){return e?`${t.label}, ${e.label}`:t.label}function Se(e,t){return R(e,t)}function Ce(e,t,n){let r=N(O(t),n.id),i=r.findIndex(t=>t.id===e.id),a=`${L(e)}, ${i+1} of ${r.length} in ${R(t,n)}`;return K.value?.item.id===e.id?`${a}, picked up`:a}let z=(0,a.ref)(``);function B(e,t,n,r){let i=N(t,n).filter(t=>t.id!==e.item.id),a=Math.max(0,Math.min(r,i.length));return e.fromColumnId===n&&e.fromLaneId===t&&a===N(t,n).findIndex(t=>t.id===e.item.id)?!1:(m(`move`,{itemId:e.item.id,fromColumnId:e.fromColumnId,toColumnId:n,fromLaneId:e.fromLaneId,toLaneId:t,toIndex:a,beforeItemId:i[a-1]?.id??null,afterItemId:i[a]?.id??null}),!0)}let V=(0,a.ref)(null),H=(0,a.ref)(null),U=(0,a.ref)(null);function we(e,t,n){K.value=null;let r=_(e.id)&&h.value.length>1?C():void 0;V.value={item:e,fromLaneId:O(t),fromColumnId:n,group:r},r&&(z.value=`Moving ${r.length} cards`)}function Te(e,t,n,r,i){if(!V.value)return;let a=e.currentTarget.getBoundingClientRect();if(f.nestable&&!V.value.group&&a.height>=me){let r=(e.clientY-a.top)/a.height,o=(1-pe)/2;if(r>o&&r<1-o&&i.id!==V.value.item.id){U.value={laneId:O(t),colId:n,itemId:i.id},H.value=null;return}}U.value=null;let o=e.clientY>=a.top+a.height/2;H.value={laneId:O(t),colId:n,index:r+(o?1:0)}}function W(e,t){if(!V.value)return;let n=O(e);H.value={laneId:n,colId:t,index:N(n,t).length}}function Ee(){H.value=null,U.value=null}function De(){V.value=null,H.value=null,U.value=null}function Oe(e,t){return G(e,t)!==null}function G(e,t){let n=O(e),r=H.value;if(V.value&&r&&r.laneId===n&&r.colId===t)return r.index;let i=K.value;if(i&&i.laneId===n&&i.colId===t){let e=N(n,t).findIndex(e=>e.id===i.item.id);return e!==-1&&e<=i.index?i.index+1:i.index}return null}function ke(e,t,n){let r=U.value;return r!==null&&r.laneId===O(e)&&r.colId===t&&r.itemId===n.id}function Ae(e,t,n){return n===N(O(e),t).length-1&&G(e,t)===n+1}function je(e,t){if(Z.value!==null)return;let n=H.value,r=U.value;H.value=null,U.value=null;let i=V.value;if(V.value=null,!i)return;if(r){m(`nest`,{itemId:i.item.id,ontoItemId:r.itemId,fromColumnId:i.fromColumnId,...f.lanes?{fromLaneId:i.fromLaneId}:{}}),z.value=`${L(i.item)} dropped onto ${L(f.items.find(e=>e.id===r.itemId)??i.item)}`;return}let a=O(e),o=N(a,t),s=n&&n.laneId===a&&n.colId===t?n.index:o.length,c=o.findIndex(e=>e.id===i.item.id),l=c!==-1&&c<s?s-1:s;if(i.group){w(i.group,i.item.id,a,t,l);return}B(i,a,t,l)}let K=(0,a.ref)(null);function Me(e,t,n,r){let i=O(n);if(f.selectable&&(e.key===`x`||e.key===`X`)&&!K.value){e.preventDefault(),S(t.id);return}if(e.key===`Escape`){if(!K.value){f.selectable&&h.value.length>0&&(e.preventDefault(),y());return}e.preventDefault(),K.value=null,z.value=`Move cancelled`;return}if(e.key===` `||e.key===`Enter`){if(e.preventDefault(),K.value?.item.id!==t.id){Ne(t,i,r);return}if(f.nestable&&e.shiftKey&&J()){Ie();return}Le();return}[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`].includes(e.key)&&(e.preventDefault(),K.value?.item.id===t.id?Fe(e.key):Re(e.key,t,i,r))}function Ne(e,t,n){K.value={item:e,fromLaneId:t,fromColumnId:n,laneId:t,colId:n,index:N(t,n).findIndex(t=>t.id===e.id)},z.value=`${L(e)} picked up, ${q()}`}function q(){let e=K.value;if(!e)return``;let t=N(e.laneId,e.colId).filter(t=>t.id!==e.item.id),n=P(e.colId),r=f.lanes?.find(t=>(t.id??null)===e.laneId)??null,i=n?R(r,n):e.colId;return`position ${e.index+1} of ${t.length+1} in ${i}`}function Pe(){return!f.lanes||f.lanes.length===0?[null]:f.lanes.filter(e=>!I(e.id)).map(e=>e.id??null)}function Fe(e){let t=K.value;if(!t)return;let n=N(t.laneId,t.colId).filter(e=>e.id!==t.item.id);if(e===`ArrowUp`||e===`ArrowDown`){let r=e===`ArrowUp`?-1:1,i=t.index+r;if(i>=0&&i<=n.length)t.index=i;else{let e=Pe(),n=e.indexOf(t.laneId),i=n+r;if(n===-1||i<0||i>=e.length)return;let a=e[i];t.laneId=a,t.index=r===1?0:N(a,t.colId).filter(e=>e.id!==t.item.id).length}}else{let n=e===`ArrowLeft`?-1:1,r=f.columns.findIndex(e=>e.id===t.colId),i=f.columns[r+n];if(r===-1||!i)return;t.colId=i.id;let a=N(t.laneId,t.colId).filter(e=>e.id!==t.item.id);t.index=Math.min(t.index,a.length)}z.value=`${L(t.item)}, ${q()}`}function J(){let e=K.value;if(!e)return null;let t=N(e.laneId,e.colId).filter(t=>t.id!==e.item.id);return t.length===0?null:t[Math.min(e.index,t.length-1)]??null}function Ie(){let e=K.value,t=J();!e||!t||(K.value=null,m(`nest`,{itemId:e.item.id,ontoItemId:t.id,fromColumnId:e.fromColumnId,...f.lanes?{fromLaneId:e.fromLaneId}:{}}),z.value=`${L(e.item)} dropped onto ${L(t)}`)}function Le(){let e=K.value;if(!e)return;if(K.value=null,_(e.item.id)&&h.value.length>1){w(C(),e.item.id,e.laneId,e.colId,e.index),X(e.item.id);return}let t=B({item:e.item,fromLaneId:e.fromLaneId,fromColumnId:e.fromColumnId},e.laneId,e.colId,e.index),n=P(e.colId),r=f.lanes?.find(t=>(t.id??null)===e.laneId)??null,i=n?R(r,n):e.colId;z.value=t?`${L(e.item)} dropped, position ${e.index+1} in ${i}`:`${L(e.item)} dropped`,X(e.item.id)}function Re(e,t,n,r){let i=N(n,r),a=i.findIndex(e=>e.id===t.id);if(e===`ArrowUp`||e===`ArrowDown`){let t=a+(e===`ArrowDown`?1:-1);t>=0&&t<i.length&&Y(i[t].id)}else{let t=f.columns.findIndex(e=>e.id===r),i=f.columns[t+(e===`ArrowRight`?1:-1)];if(t===-1||!i)return;let o=N(n,i.id);if(o.length===0)return;Y(o[Math.min(a,o.length-1)].id)}}function Y(e){let t=E.value?.querySelectorAll(`[data-item-id]`);if(t){for(let n of t)if(n.dataset.itemId===e){n.focus();return}}}async function X(e){await(0,a.nextTick)(),await(0,a.nextTick)(),Y(e)}function ze(e){K.value?.item.id===e.id&&(K.value=null)}let Z=(0,a.ref)(null),Q=(0,a.ref)(null);function Be(e,t){if(!f.reorderableColumns){t.preventDefault();return}Z.value=e,Q.value=e}function Ve(e,t){if(Z.value===null)return;t.preventDefault();let n=t.currentTarget.getBoundingClientRect();Q.value=t.clientX<n.left+n.width/2?e:e+1}function He(e){let t=Z.value,n=Q.value;if($(),t===null||n===null)return;e.preventDefault();let r=n>t?n-1:n;r!==t&&m(`column-move`,{columnId:f.columns[t].id,toIndex:r})}function $(){Z.value=null,Q.value=null}return(t,n)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,(0,a.mergeProps)({ref_key:`boardRef`,ref:E,class:[`nb-board`,{"nb-board--flat":(0,a.unref)(p)&&D.value[0]===null,"nb-board--batching":(0,a.unref)(p)&&b.value,"nb-board--select-mode":x.value}]},(0,a.unref)(ge)),[(0,a.createElementVNode)(`div`,{class:`nb-board__grid`,style:(0,a.normalizeStyle)(be.value)},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(e.columns,(n,r)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:n.id,class:(0,a.normalizeClass)([`nb-board__col-header`,{"nb-board__col-header--reorderable":e.reorderableColumns,"nb-board__col-header--dragging":Z.value===r,"nb-board__col-header--drop-before":Q.value===r,"nb-board__col-header--drop-after":Q.value===r+1&&r===e.columns.length-1}]),style:(0,a.normalizeStyle)(n.color?{borderTopColor:n.color}:void 0),draggable:e.reorderableColumns||void 0,onDragstart:e=>Be(r,e),onDragover:e=>Ve(r,e),onDrop:He,onDragend:$},[(0,a.renderSlot)(t.$slots,`column-header`,{column:n,count:A(n.id)},()=>[(0,a.createElementVNode)(`span`,c,(0,a.toDisplayString)(n.label),1),(0,a.createElementVNode)(`span`,l,(0,a.toDisplayString)(A(n.id)),1)])],46,s))),128)),((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(D.value,n=>((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:k(n)},[n?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:0,class:`nb-board__lane-header`,onClick:e=>xe(n.id)},[(0,a.createElementVNode)(`button`,{class:`nb-board__collapse-btn`,"aria-label":I(n.id)?`Expand`:`Collapse`},(0,a.toDisplayString)(I(n.id)?`▶`:`▼`),9,te),(0,a.renderSlot)(t.$slots,`lane-header`,{lane:n},()=>[(0,a.createElementVNode)(`span`,ne,(0,a.toDisplayString)(n.label),1)]),(0,a.createElementVNode)(`span`,re,(0,a.toDisplayString)(M(n.id)),1)],8,ee)):(0,a.createCommentVNode)(``,!0),!n||!I(n.id)?((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,{key:1},(0,a.renderList)(e.columns,r=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:k(n)+`-`+r.id,class:(0,a.normalizeClass)([`nb-board__cell`,{"nb-board__cell--drag-over":Oe(n,r.id)}]),onDragover:(0,a.withModifiers)(e=>W(n,r.id),[`prevent`]),onDragleave:Ee,onDrop:(0,a.withModifiers)(e=>je(n,r.id),[`prevent`])},[(0,a.createElementVNode)(`div`,{class:`nb-board__cell-items`,role:`list`,"aria-label":Se(n,r)},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(N(O(n),r.id),(i,o)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:i.id,class:(0,a.normalizeClass)([`nb-board__card`,{"nb-board__card--lifted":K.value?.item.id===i.id,"nb-board__card--selected":_(i.id),"nb-board__card--carried":!!V.value?.group&&_(i.id),"nb-board__card--drop-before":G(n,r.id)===o,"nb-board__card--drop-after":Ae(n,r.id,o),"nb-board__card--drop-into":ke(n,r.id,i)}]),role:`listitem`,tabindex:`0`,"data-item-id":i.id,"aria-selected":e.selectable?_(i.id):void 0,"aria-label":Ce(i,n,r),"aria-describedby":`${(0,a.unref)(T)}-hint`,draggable:`true`,onDragstart:e=>we(i,n,r.id),onDragover:(0,a.withModifiers)(e=>Te(e,n,r.id,o,i),[`prevent`,`stop`]),onDragend:De,onKeydown:e=>Me(e,i,n,r.id),onClickCapture:e=>ye(e,i,n,r.id),onBlur:e=>ze(i)},[(0,a.renderSlot)(t.$slots,`card`,{item:i,column:r,lane:n??void 0})],42,oe))),128)),N(O(n),r.id).length===0?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,se)):(0,a.createCommentVNode)(``,!0)],8,ae),t.$slots[`column-footer`]?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,ce,[(0,a.renderSlot)(t.$slots,`column-footer`,{column:r,lane:n??void 0})])):(0,a.createCommentVNode)(``,!0)],42,ie))),128)):(0,a.createCommentVNode)(``,!0)],64))),128))],4),((0,a.openBlock)(),(0,a.createBlock)(a.Teleport,{to:`body`,disabled:!(0,a.unref)(p)},[b.value?((0,a.openBlock)(),(0,a.createElementBlock)(`div`,u,[(0,a.createElementVNode)(`span`,le,(0,a.toDisplayString)(h.value.length)+` selected `,1),(0,a.createElementVNode)(`div`,ue,[(0,a.renderSlot)(t.$slots,`batch-actions`,{selected:h.value,clear:y,phone:(0,a.unref)(p)})]),(0,a.unref)(p)?((0,a.openBlock)(),(0,a.createBlock)(i.t,{key:0,class:`nb-board__batch-cancel`,variant:`ghost`,size:`sm`,icon:o,"aria-label":`Clear selection`,onClick:y})):((0,a.openBlock)(),(0,a.createBlock)(i.t,{key:1,class:`nb-board__batch-cancel`,variant:`ghost`,size:`sm`,onClick:y},{default:(0,a.withCtx)(()=>[...n[0]||=[(0,a.createTextVNode)(` Clear selection `,-1)]]),_:1}))])):(0,a.createCommentVNode)(``,!0)],8,[`disabled`])),(0,a.createElementVNode)(`span`,{id:`${(0,a.unref)(T)}-hint`,class:`nb-board__sr`},[n[1]||=(0,a.createTextVNode)(` Press Space or Enter to pick up, arrow keys to move, Space or Enter to drop, Escape to cancel.`,-1),e.nestable?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:0},[(0,a.createTextVNode)(` Shift with Space or Enter drops onto the card below instead, putting this one inside it.`)],64)):(0,a.createCommentVNode)(``,!0),e.selectable?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:1},[(0,a.createTextVNode)(` X selects the card, or removes it from the selection. Picking up a selected card moves every selected card. Escape clears the selection.`)],64)):(0,a.createCommentVNode)(``,!0),x.value?((0,a.openBlock)(),(0,a.createElementBlock)(a.Fragment,{key:2},[(0,a.createTextVNode)(` Selecting: activating a card selects it, or removes it from the selection.`)],64)):(0,a.createCommentVNode)(``,!0)],8,de),(0,a.createElementVNode)(`span`,fe,(0,a.toDisplayString)(z.value),1)],16))}});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return d}});