@synnaxlabs/pluto 0.53.2 → 0.54.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 (286) hide show
  1. package/dist/aether-BBeeeA1z.cjs +10 -0
  2. package/dist/aether-Bl3vMZO3.js +716 -0
  3. package/dist/aether-DmSenWd4.js +704 -0
  4. package/dist/aether-VeYJQDcf.cjs +11 -0
  5. package/dist/button-DBdzH6Ky.cjs +1 -0
  6. package/dist/button-KtgabnXL.js +251 -0
  7. package/dist/button.cjs +1 -1
  8. package/dist/button.js +2 -4
  9. package/dist/chunk-DeC0fbbY.js +23 -0
  10. package/dist/chunk-FeXHwk1_.cjs +1 -0
  11. package/dist/color-Cspp5cKp.js +7904 -0
  12. package/dist/color-DCCr0Z1b.cjs +29 -0
  13. package/dist/color.cjs +1 -1
  14. package/dist/color.js +2 -4
  15. package/dist/css-Ce-x3HcK.cjs +1 -0
  16. package/dist/css-UEo6g0SR.js +69 -0
  17. package/dist/css.cjs +1 -1
  18. package/dist/css.js +2 -8
  19. package/dist/dialog-BTCrp5Yv.cjs +1 -0
  20. package/dist/dialog-ClQI4sHo.js +331 -0
  21. package/dist/dialog.cjs +1 -1
  22. package/dist/dialog.js +2 -4
  23. package/dist/divider-BYRH8-5K.js +13 -0
  24. package/dist/divider-CEyntx31.cjs +1 -0
  25. package/dist/ether-CZlE80D0.cjs +53 -0
  26. package/dist/ether-KMGPzrZR.js +6222 -0
  27. package/dist/ether.cjs +1 -1
  28. package/dist/ether.js +4 -104
  29. package/dist/event-Btz3eWg1.cjs +1 -0
  30. package/dist/event-Z4V8c501.js +4 -0
  31. package/dist/flex-Bgtu0DK6.js +62 -0
  32. package/dist/flex-D_GoD3ed.cjs +1 -0
  33. package/dist/flex.cjs +1 -1
  34. package/dist/flex.js +2 -4
  35. package/dist/haul-BdMc4rLJ.js +171 -0
  36. package/dist/haul-ZdSHqhp6.cjs +1 -0
  37. package/dist/header-CNx3pAkx.js +64 -0
  38. package/dist/header-lD0sRjCR.cjs +1 -0
  39. package/dist/header.cjs +1 -1
  40. package/dist/header.js +2 -4
  41. package/dist/input-CdL1OPDU.cjs +74 -0
  42. package/dist/input-h-4axMs7.js +47772 -0
  43. package/dist/input.cjs +1 -1
  44. package/dist/input.js +2 -4
  45. package/dist/list-DacuSBB3.cjs +4 -0
  46. package/dist/list-dZDsxTzd.js +1756 -0
  47. package/dist/list.cjs +1 -1
  48. package/dist/list.js +2 -4
  49. package/dist/menu-eeXfR_zT.js +170 -0
  50. package/dist/menu-yADx33I8.cjs +1 -0
  51. package/dist/menu.cjs +1 -1
  52. package/dist/menu.js +2 -4
  53. package/dist/pluto.cjs +52 -0
  54. package/dist/pluto.css +2 -1
  55. package/dist/pluto.js +36474 -0
  56. package/dist/select-B93mFqvf.js +1328 -0
  57. package/dist/select-gt7wGGO4.cjs +1 -0
  58. package/dist/src/access/policy/queries.d.ts +34 -34
  59. package/dist/src/access/policy/queries.d.ts.map +1 -1
  60. package/dist/src/access/queries.d.ts +1 -1
  61. package/dist/src/access/queries.d.ts.map +1 -1
  62. package/dist/src/access/role/queries.d.ts +2 -12
  63. package/dist/src/access/role/queries.d.ts.map +1 -1
  64. package/dist/src/arc/queries.d.ts +1167 -29
  65. package/dist/src/arc/queries.d.ts.map +1 -1
  66. package/dist/src/channel/LinePlot.d.ts +2 -2
  67. package/dist/src/channel/LinePlot.d.ts.map +1 -1
  68. package/dist/src/channel/queries.d.ts +108 -60
  69. package/dist/src/channel/queries.d.ts.map +1 -1
  70. package/dist/src/color/Provider.d.ts +8 -8
  71. package/dist/src/device/queries.d.ts +148 -363
  72. package/dist/src/device/queries.d.ts.map +1 -1
  73. package/dist/src/flux/result.d.ts +5 -5
  74. package/dist/src/flux/result.d.ts.map +1 -1
  75. package/dist/src/flux/update.d.ts +1 -1
  76. package/dist/src/flux/update.d.ts.map +1 -1
  77. package/dist/src/icon/Icon.d.ts.map +1 -1
  78. package/dist/src/icon/registry.d.ts +1 -0
  79. package/dist/src/icon/registry.d.ts.map +1 -1
  80. package/dist/src/label/queries.d.ts +21 -21
  81. package/dist/src/label/queries.d.ts.map +1 -1
  82. package/dist/src/lineplot/aether/XAxis.d.ts +28 -28
  83. package/dist/src/lineplot/aether/YAxis.d.ts +28 -28
  84. package/dist/src/lineplot/aether/axis.d.ts +14 -14
  85. package/dist/src/lineplot/queries.d.ts +2 -2
  86. package/dist/src/lineplot/queries.d.ts.map +1 -1
  87. package/dist/src/lineplot/range/aether/provider.d.ts +126 -102
  88. package/dist/src/lineplot/range/aether/provider.d.ts.map +1 -1
  89. package/dist/src/lineplot/tooltip/aether/tooltip.d.ts +56 -56
  90. package/dist/src/log/aether/Log.d.ts +21 -21
  91. package/dist/src/log/queries.d.ts +2 -2
  92. package/dist/src/log/queries.d.ts.map +1 -1
  93. package/dist/src/memo/index.d.ts +0 -1
  94. package/dist/src/memo/index.d.ts.map +1 -1
  95. package/dist/src/memo/useMemoCompare.d.ts +0 -1
  96. package/dist/src/memo/useMemoCompare.d.ts.map +1 -1
  97. package/dist/src/rack/queries.d.ts.map +1 -1
  98. package/dist/src/ranger/aether/queries.d.ts.map +1 -1
  99. package/dist/src/ranger/queries.d.ts +19 -19
  100. package/dist/src/ranger/queries.d.ts.map +1 -1
  101. package/dist/src/schematic/queries.d.ts +2 -2
  102. package/dist/src/schematic/queries.d.ts.map +1 -1
  103. package/dist/src/schematic/symbol/Forms.d.ts.map +1 -1
  104. package/dist/src/schematic/symbol/Primitives.d.ts +2 -1
  105. package/dist/src/schematic/symbol/Primitives.d.ts.map +1 -1
  106. package/dist/src/schematic/symbol/SelectOrientation.d.ts.map +1 -1
  107. package/dist/src/schematic/symbol/Symbols.d.ts +35 -34
  108. package/dist/src/schematic/symbol/Symbols.d.ts.map +1 -1
  109. package/dist/src/schematic/symbol/queries.d.ts +96 -50
  110. package/dist/src/schematic/symbol/queries.d.ts.map +1 -1
  111. package/dist/src/schematic/symbol/registry.d.ts.map +1 -1
  112. package/dist/src/select/Dialog.d.ts +2 -1
  113. package/dist/src/select/Dialog.d.ts.map +1 -1
  114. package/dist/src/status/Select.d.ts.map +1 -1
  115. package/dist/src/status/SelectMulipleVariants.spec.d.ts +2 -0
  116. package/dist/src/status/SelectMulipleVariants.spec.d.ts.map +1 -0
  117. package/dist/src/status/SelectMultipleVariants.d.ts +9 -0
  118. package/dist/src/status/SelectMultipleVariants.d.ts.map +1 -0
  119. package/dist/src/status/SelectVariant.d.ts +2 -2
  120. package/dist/src/status/SelectVariant.d.ts.map +1 -1
  121. package/dist/src/status/SelectVariant.spec.d.ts +2 -0
  122. package/dist/src/status/SelectVariant.spec.d.ts.map +1 -0
  123. package/dist/src/status/aether/aggregator.d.ts +16 -2
  124. package/dist/src/status/aether/aggregator.d.ts.map +1 -1
  125. package/dist/src/status/aether/errorHandler.d.ts +2 -1
  126. package/dist/src/status/aether/errorHandler.d.ts.map +1 -1
  127. package/dist/src/status/base/Aggregator.d.ts +3 -2
  128. package/dist/src/status/base/Aggregator.d.ts.map +1 -1
  129. package/dist/src/status/external.d.ts +1 -0
  130. package/dist/src/status/external.d.ts.map +1 -1
  131. package/dist/src/status/queries.d.ts +25 -9
  132. package/dist/src/status/queries.d.ts.map +1 -1
  133. package/dist/src/status/variantData.d.ts +4 -0
  134. package/dist/src/status/variantData.d.ts.map +1 -0
  135. package/dist/src/table/cells/Cells.d.ts +17 -17
  136. package/dist/src/table/queries.d.ts +2 -2
  137. package/dist/src/table/queries.d.ts.map +1 -1
  138. package/dist/src/task/queries.d.ts +3 -3
  139. package/dist/src/task/queries.d.ts.map +1 -1
  140. package/dist/src/telem/aether/noop.d.ts.map +1 -1
  141. package/dist/src/telem/aether/static.d.ts +10 -10
  142. package/dist/src/telem/aether/telem.d.ts +1 -1
  143. package/dist/src/telem/aether/telem.d.ts.map +1 -1
  144. package/dist/src/telem/aether/transformers.d.ts +15 -15
  145. package/dist/src/telem/aether/transformers.d.ts.map +1 -1
  146. package/dist/src/telem/client/cache/cache.d.ts +1 -1
  147. package/dist/src/telem/client/cache/cache.d.ts.map +1 -1
  148. package/dist/src/telem/client/client.d.ts +4 -4
  149. package/dist/src/telem/client/client.d.ts.map +1 -1
  150. package/dist/src/telem/client/reader.d.ts +1 -1
  151. package/dist/src/telem/client/reader.d.ts.map +1 -1
  152. package/dist/src/telem/client/streamer.d.ts +1 -1
  153. package/dist/src/telem/client/streamer.d.ts.map +1 -1
  154. package/dist/src/telem/control/Controller.d.ts +1 -1
  155. package/dist/src/telem/control/Controller.d.ts.map +1 -1
  156. package/dist/src/telem/control/aether/chip.d.ts +16 -2
  157. package/dist/src/telem/control/aether/chip.d.ts.map +1 -1
  158. package/dist/src/telem/control/aether/controller.d.ts +16 -16
  159. package/dist/src/telem/control/aether/controller.d.ts.map +1 -1
  160. package/dist/src/telem/control/aether/indicator.d.ts +51 -37
  161. package/dist/src/telem/control/aether/indicator.d.ts.map +1 -1
  162. package/dist/src/telem/control/aether/legend.d.ts +18 -16
  163. package/dist/src/telem/control/aether/legend.d.ts.map +1 -1
  164. package/dist/src/telem/control/aether/state.d.ts +9 -8
  165. package/dist/src/telem/control/aether/state.d.ts.map +1 -1
  166. package/dist/src/theming/aether/provider.d.ts +990 -990
  167. package/dist/src/theming/base/theme.d.ts +330 -330
  168. package/dist/src/user/queries.d.ts +2 -2
  169. package/dist/src/view/queries.d.ts +2 -2
  170. package/dist/src/vis/axis/axis.d.ts +14 -14
  171. package/dist/src/vis/gauge/aether/gauge.d.ts +21 -21
  172. package/dist/src/vis/gauge/use.d.ts +7 -7
  173. package/dist/src/vis/line/aether/line.d.ts +7 -7
  174. package/dist/src/vis/measure/aether/measure.d.ts +56 -56
  175. package/dist/src/vis/rule/aether/aether.d.ts +14 -14
  176. package/dist/src/vis/value/aether/value.d.ts +42 -42
  177. package/dist/src/vis/value/redline.d.ts +5 -5
  178. package/dist/src/vis/value/redline.d.ts.map +1 -1
  179. package/dist/src/vis/value/use.d.ts +14 -14
  180. package/dist/src/workspace/queries.d.ts +6 -4
  181. package/dist/src/workspace/queries.d.ts.map +1 -1
  182. package/dist/tabs-CB7d2_0h.cjs +1 -0
  183. package/dist/tabs-DEXXNOZA.js +253 -0
  184. package/dist/tabs.cjs +1 -1
  185. package/dist/tabs.js +2 -4
  186. package/dist/text-Dd6wYgQM.js +142 -0
  187. package/dist/text-n3Fetdk6.cjs +1 -0
  188. package/dist/text.cjs +1 -1
  189. package/dist/text.js +2 -5
  190. package/dist/theming-Blgv4Cvi.js +591 -0
  191. package/dist/theming-KFfFjsRJ.cjs +1 -0
  192. package/dist/theming.cjs +1 -1
  193. package/dist/theming.js +2 -5
  194. package/dist/tree-B4jJAzS1.js +294 -0
  195. package/dist/tree-CsgSEpgy.cjs +1 -0
  196. package/dist/tree.cjs +1 -1
  197. package/dist/tree.js +2 -4
  198. package/dist/triggers-AqBSAR_T.cjs +1 -0
  199. package/dist/triggers-DDlalLoO.js +4748 -0
  200. package/dist/triggers.cjs +1 -1
  201. package/dist/triggers.js +2 -4
  202. package/dist/types-BGbd8pRh.js +73 -0
  203. package/dist/types-ByXvRm2h.cjs +1 -0
  204. package/dist/video-Bnr-2W9p.cjs +1 -0
  205. package/dist/video-ByMlaeKI.js +15 -0
  206. package/dist/video.cjs +1 -1
  207. package/dist/video.js +2 -4
  208. package/package.json +28 -29
  209. package/dist/Animated-B_N04fe6.cjs +0 -1
  210. package/dist/Animated-BsbNkFLg.cjs +0 -1
  211. package/dist/Animated-CLo1CLgn.js +0 -29
  212. package/dist/Animated-CO--9HPM.js +0 -354
  213. package/dist/Box-Bi280MYh.js +0 -96
  214. package/dist/Box-CNUz5BsV.cjs +0 -1
  215. package/dist/Copy-BgRUUzWz.cjs +0 -1
  216. package/dist/Copy-COWBkO_v.js +0 -337
  217. package/dist/Dialog-Bj7FiHJD.js +0 -59
  218. package/dist/Dialog-DBm6Fap1.cjs +0 -1
  219. package/dist/Editable-C17ILP50.js +0 -202
  220. package/dist/Editable-HUPqTaui.cjs +0 -1
  221. package/dist/Haul-CnZK3e-n.js +0 -132
  222. package/dist/Haul-DlwI4b25.cjs +0 -1
  223. package/dist/Items-CXBBG9Ip.cjs +0 -4
  224. package/dist/Items-DQba1BFQ.js +0 -842
  225. package/dist/Menu-BZ6ZGIv3.cjs +0 -1
  226. package/dist/Menu-CniMpPmC.js +0 -139
  227. package/dist/Provider-cSwm-2e_.cjs +0 -1
  228. package/dist/Provider-jFWpR0CX.js +0 -520
  229. package/dist/Tags-CxzMdPpm.cjs +0 -1
  230. package/dist/Tags-DvfGhiWv.js +0 -925
  231. package/dist/Text-2MISZsc5.js +0 -1712
  232. package/dist/Text-XHBXXDRS.cjs +0 -1
  233. package/dist/Video-Bew5_j16.js +0 -10
  234. package/dist/Video-BryrVNlH.cjs +0 -1
  235. package/dist/css-CloSmhZB.cjs +0 -1
  236. package/dist/css-D90kZTM8.js +0 -63
  237. package/dist/dimensions-CdFEW3oU.cjs +0 -1
  238. package/dist/dimensions-DbMN4145.js +0 -19
  239. package/dist/eraser-BShvqlBE.js +0 -958
  240. package/dist/eraser-rFMFKqsg.cjs +0 -11
  241. package/dist/event-BxvV3arE.cjs +0 -1
  242. package/dist/event-nNH_pXSr.js +0 -36
  243. package/dist/external-4jf1Bv96.cjs +0 -1
  244. package/dist/external-B2YeNEwd.cjs +0 -1
  245. package/dist/external-B9PnwQOL.js +0 -29
  246. package/dist/external-BBbkXXN0.js +0 -47
  247. package/dist/external-BByOkVID.cjs +0 -1
  248. package/dist/external-BrEnYrZV.js +0 -32
  249. package/dist/external-BwbypKCk.cjs +0 -1
  250. package/dist/external-C65vBow6.cjs +0 -1
  251. package/dist/external-CCcIJ20u.cjs +0 -1
  252. package/dist/external-CF4uh-dm.js +0 -51423
  253. package/dist/external-Cn6EfkLd.cjs +0 -1
  254. package/dist/external-CovFw1fv.cjs +0 -1
  255. package/dist/external-D2Zb9O5J.js +0 -93
  256. package/dist/external-D6aLGjMg.js +0 -8969
  257. package/dist/external-DDvmnE2k.js +0 -341
  258. package/dist/external-DTi9a-iK.cjs +0 -1
  259. package/dist/external-DYP1_xpd.js +0 -80
  260. package/dist/external-DxsuBuKe.js +0 -392
  261. package/dist/external-DysGdnTb.js +0 -130
  262. package/dist/external-N2L8ffzi.js +0 -71
  263. package/dist/external-UzXlHlr9.js +0 -24
  264. package/dist/external-_Ht_yCRf.cjs +0 -1
  265. package/dist/external-igNfmRSB.cjs +0 -28
  266. package/dist/external-uUEGzmui.cjs +0 -84
  267. package/dist/fontString-76R2eWDd.js +0 -29
  268. package/dist/fontString-BNnhiwug.cjs +0 -1
  269. package/dist/hooks-Co6IVYNw.cjs +0 -1
  270. package/dist/hooks-QNj6PdUo.js +0 -73
  271. package/dist/index.cjs +0 -60
  272. package/dist/index.js +0 -36886
  273. package/dist/jsx-runtime-nZSsnGb7.cjs +0 -6
  274. package/dist/jsx-runtime-tc70JA_2.js +0 -264
  275. package/dist/provider-Bt-E2O6g.js +0 -810
  276. package/dist/provider-DQkVj3tA.cjs +0 -10
  277. package/dist/src/memo/proxyMemo.d.ts +0 -3
  278. package/dist/src/memo/proxyMemo.d.ts.map +0 -1
  279. package/dist/types-CGRCBVD4.js +0 -82
  280. package/dist/types-DI2vtOGs.cjs +0 -1
  281. package/dist/units-Bu36uC6z.cjs +0 -1
  282. package/dist/units-DMip-eZH.js +0 -14
  283. package/dist/useStaticData-BTwIe0Il.cjs +0 -1
  284. package/dist/useStaticData-p8sk2VCJ.js +0 -1051
  285. package/dist/value-BkUH03tl.cjs +0 -53
  286. package/dist/value-D0vfKEY3.js +0 -6821
@@ -1 +0,0 @@
1
- "use strict";const C=require("./jsx-runtime-nZSsnGb7.cjs"),t=require("@synnaxlabs/x"),T=require("react"),p=require("react-dom"),R=require("./css-CloSmhZB.cjs"),u=require("./Animated-B_N04fe6.cjs"),b=require("./Box-CNUz5BsV.cjs");require("./Copy-BgRUUzWz.cjs");const q=require("./Text-XHBXXDRS.cjs"),M=require("./Editable-HUPqTaui.cjs");require("./types-DI2vtOGs.cjs");require("./Provider-cSwm-2e_.cjs");const m={visible:!1,position:t.xy.ZERO,cursor:t.xy.ZERO,keys:[]},O=R.CSS.BE("menu-context","container"),S=o=>{let e=o;for(;!e.classList.contains(u.CONTEXT_TARGET);){if(e.classList.contains(O)||e.parentElement==null)return o;e=e.parentElement}return e},_=o=>{const e=S(o);if(e==null)return[];const s=Array.from(e.parentElement?.querySelectorAll(`.${u.CONTEXT_SELECTED}`)??[]);return s.includes(e)?s:[e]},N=[{targetCorner:t.location.BOTTOM_RIGHT,dialogCorner:t.location.TOP_LEFT},{targetCorner:t.location.BOTTOM_LEFT,dialogCorner:t.location.TOP_RIGHT},{targetCorner:t.location.TOP_RIGHT,dialogCorner:t.location.BOTTOM_LEFT},{targetCorner:t.location.TOP_LEFT,dialogCorner:t.location.BOTTOM_RIGHT}],j=()=>{const o=T.useRef(null),[e,s]=T.useState(m),E=T.useCallback(n=>{const r=t.xy.construct(n);let x=[];if(typeof n=="object"&&"preventDefault"in n){n.preventDefault(),n.stopPropagation();const d=_(n.target);x=t.unique.unique(d.map(f=>f.id).filter(f=>f.length>0))}s({visible:!0,keys:x,position:r,cursor:r})},[]),i=T.useCallback(()=>{const n=o.current;n!=null&&s(r=>{if(!r.visible)return r;const{adjustedDialog:x}=u.position({container:t.box.construct(0,0,window.innerWidth,window.innerHeight),dialog:t.box.construct(n),target:t.box.construct(r.cursor,0,0),prefer:N}),d=t.box.topLeft(x);return t.xy.equals(r.position,d)?r:{...r,position:d}})},[]),c=u.useResize(i,{enabled:e.visible}),l=M.useCombinedRefs(o,c);u.useWindowResize(i,{enabled:e.visible});const a=()=>s(m);return u.useClickOutside({ref:o,onClickOutside:a}),{...e,close:a,open:E,ref:l,className:O}},y=({ref:o,menu:e,visible:s,open:E,close:i,position:c,keys:l,className:a,cursor:n,style:r,onClick:x,...d})=>s?p.createPortal(C.jsxRuntimeExports.jsx(b.Box$1,{className:R.CSS(u.CONTEXT_MENU_CLASS,R.CSS.bordered(),a),ref:o,style:{...t.xy.css(c),...r},onClick:f=>{i(),x?.(f)},gap:"tiny",...d,children:e?.({keys:l,visible:s,position:c,cursor:n})}),document.body):null,g=({menu:o,children:e,...s})=>C.jsxRuntimeExports.jsxs(C.jsxRuntimeExports.Fragment,{children:[C.jsxRuntimeExports.jsx(y,{menu:o,...s}),e]}),[L,I]=q.create({defaultValue:{onClick:()=>{},selected:""},displayName:"Menu.Context"}),P=({children:o,onChange:e,level:s,gap:E,background:i,value:c=""})=>{const l=T.useCallback(n=>{typeof e=="function"?e(n):e&&n in e&&e[n](n)},[e]),a=T.useMemo(()=>({onClick:l,selected:c,level:s,gap:E,background:i}),[c,l,s,E,i]);return C.jsxRuntimeExports.jsx(L,{value:a,children:o})};exports.ContextMenu=g;exports.Menu=P;exports.useContext=I;exports.useContextMenu=j;
@@ -1,139 +0,0 @@
1
- import { j as T } from "./jsx-runtime-tc70JA_2.js";
2
- import { xy as p, location as r, unique as _, box as C } from "@synnaxlabs/x";
3
- import { useRef as M, useState as b, useCallback as E, useMemo as N } from "react";
4
- import { createPortal as g } from "react-dom";
5
- import { C as O } from "./css-D90kZTM8.js";
6
- import { a as S, e as L, f as I, g as P, c as j, C as y, d as A } from "./Animated-CO--9HPM.js";
7
- import { a as w } from "./Box-Bi280MYh.js";
8
- import "./Copy-COWBkO_v.js";
9
- import { c as B } from "./Text-2MISZsc5.js";
10
- import { b as F } from "./Editable-C17ILP50.js";
11
- import "./types-CGRCBVD4.js";
12
- import "./Provider-jFWpR0CX.js";
13
- const x = {
14
- visible: !1,
15
- position: p.ZERO,
16
- cursor: p.ZERO,
17
- keys: []
18
- }, R = O.BE("menu-context", "container"), G = (n) => {
19
- let t = n;
20
- for (; !t.classList.contains(A); ) {
21
- if (t.classList.contains(R) || t.parentElement == null) return n;
22
- t = t.parentElement;
23
- }
24
- return t;
25
- }, H = (n) => {
26
- const t = G(n);
27
- if (t == null) return [];
28
- const o = Array.from(
29
- t.parentElement?.querySelectorAll(`.${j}`) ?? []
30
- );
31
- return o.includes(t) ? o : [t];
32
- }, k = [
33
- { targetCorner: r.BOTTOM_RIGHT, dialogCorner: r.TOP_LEFT },
34
- { targetCorner: r.BOTTOM_LEFT, dialogCorner: r.TOP_RIGHT },
35
- { targetCorner: r.TOP_RIGHT, dialogCorner: r.BOTTOM_LEFT },
36
- { targetCorner: r.TOP_LEFT, dialogCorner: r.BOTTOM_RIGHT }
37
- ], Y = () => {
38
- const n = M(null), [t, o] = b(x), m = E((e) => {
39
- const s = p.construct(e);
40
- let u = [];
41
- if (typeof e == "object" && "preventDefault" in e) {
42
- e.preventDefault(), e.stopPropagation();
43
- const f = H(e.target);
44
- u = _.unique(f.map((d) => d.id).filter((d) => d.length > 0));
45
- }
46
- o({ visible: !0, keys: u, position: s, cursor: s });
47
- }, []), i = E(() => {
48
- const e = n.current;
49
- e != null && o((s) => {
50
- if (!s.visible) return s;
51
- const { adjustedDialog: u } = S({
52
- container: C.construct(0, 0, window.innerWidth, window.innerHeight),
53
- dialog: C.construct(e),
54
- target: C.construct(s.cursor, 0, 0),
55
- prefer: k
56
- }), f = C.topLeft(u);
57
- return p.equals(s.position, f) ? s : { ...s, position: f };
58
- });
59
- }, []), c = L(i, { enabled: t.visible }), a = F(n, c);
60
- I(i, { enabled: t.visible });
61
- const l = () => o(x);
62
- return P({ ref: n, onClickOutside: l }), {
63
- ...t,
64
- close: l,
65
- open: m,
66
- ref: a,
67
- className: R
68
- };
69
- }, q = ({
70
- ref: n,
71
- menu: t,
72
- visible: o,
73
- open: m,
74
- close: i,
75
- position: c,
76
- keys: a,
77
- className: l,
78
- cursor: e,
79
- style: s,
80
- onClick: u,
81
- ...f
82
- }) => o ? g(
83
- /* @__PURE__ */ T.jsx(
84
- w,
85
- {
86
- className: O(y, O.bordered(), l),
87
- ref: n,
88
- style: { ...p.css(c), ...s },
89
- onClick: (d) => {
90
- i(), u?.(d);
91
- },
92
- gap: "tiny",
93
- ...f,
94
- children: t?.({ keys: a, visible: o, position: c, cursor: e })
95
- }
96
- ),
97
- document.body
98
- ) : null, tt = ({
99
- menu: n,
100
- children: t,
101
- ...o
102
- }) => /* @__PURE__ */ T.jsxs(T.Fragment, { children: [
103
- /* @__PURE__ */ T.jsx(q, { menu: n, ...o }),
104
- t
105
- ] }), [D, et] = B({
106
- defaultValue: { onClick: () => {
107
- }, selected: "" },
108
- displayName: "Menu.Context"
109
- }), nt = ({
110
- children: n,
111
- onChange: t,
112
- level: o,
113
- gap: m,
114
- background: i,
115
- value: c = ""
116
- }) => {
117
- const a = E(
118
- (e) => {
119
- typeof t == "function" ? t(e) : t && e in t && t[e](e);
120
- },
121
- [t]
122
- ), l = N(
123
- () => ({
124
- onClick: a,
125
- selected: c,
126
- level: o,
127
- gap: m,
128
- background: i
129
- }),
130
- [c, a, o, m, i]
131
- );
132
- return /* @__PURE__ */ T.jsx(D, { value: l, children: n });
133
- };
134
- export {
135
- tt as C,
136
- nt as M,
137
- Y as a,
138
- et as u
139
- };