@synnaxlabs/pluto 0.12.0 → 0.14.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 (290) hide show
  1. package/dist/Center-8mBjm1cO.js +126 -0
  2. package/dist/{Center-gEKkAkdh.js.map → Center-8mBjm1cO.js.map} +1 -1
  3. package/dist/Center-ER_owvfX.cjs +2 -0
  4. package/dist/{Center-ZAcURh-3.cjs.map → Center-ER_owvfX.cjs.map} +1 -1
  5. package/dist/Header-9CR1VnwV.js +34 -0
  6. package/dist/{Header-7x6367IV.js.map → Header-9CR1VnwV.js.map} +1 -1
  7. package/dist/Header-PpcdP7hn.cjs +2 -0
  8. package/dist/{Header-5YX6FUn6.cjs.map → Header-PpcdP7hn.cjs.map} +1 -1
  9. package/dist/Item--h4UWJZo.js +80 -0
  10. package/dist/{Item-owLU4Xop.js.map → Item--h4UWJZo.js.map} +1 -1
  11. package/dist/Item-EBiM5yGJ.cjs +2 -0
  12. package/dist/{Item-HWzX7RK2.cjs.map → Item-EBiM5yGJ.cjs.map} +1 -1
  13. package/dist/Item-_og4CdwZ.cjs +2 -0
  14. package/dist/{Item-rkSKzZoh.cjs.map → Item-_og4CdwZ.cjs.map} +1 -1
  15. package/dist/Item-kbCoFEj2.js +137 -0
  16. package/dist/{Item-EDdYN2NK.js.map → Item-kbCoFEj2.js.map} +1 -1
  17. package/dist/Keyboard-IWRXgioJ.js +14 -0
  18. package/dist/{Keyboard-mE03PKwA.js.map → Keyboard-IWRXgioJ.js.map} +1 -1
  19. package/dist/Keyboard-bXNOi0bP.cjs +2 -0
  20. package/dist/{Keyboard-w372197S.cjs.map → Keyboard-bXNOi0bP.cjs.map} +1 -1
  21. package/dist/Link-16dbGK7G.cjs +2 -0
  22. package/dist/{Link-xlTZan29.cjs.map → Link-16dbGK7G.cjs.map} +1 -1
  23. package/dist/Link-fRQvqiYx.js +11 -0
  24. package/dist/{Link-laNlv47N.js.map → Link-fRQvqiYx.js.map} +1 -1
  25. package/dist/SelectLevel-DrdlLBOs.cjs +2 -0
  26. package/dist/{SelectLevel-bGb0dRXh.cjs.map → SelectLevel-DrdlLBOs.cjs.map} +1 -1
  27. package/dist/SelectLevel-Uod3Ez6y.js +121 -0
  28. package/dist/{SelectLevel-cewIWtOv.js.map → SelectLevel-Uod3Ez6y.js.map} +1 -1
  29. package/dist/Selector-8rTHUToj.cjs +2 -0
  30. package/dist/{Selector-hQLSIYum.cjs.map → Selector-8rTHUToj.cjs.map} +1 -1
  31. package/dist/Selector-R4SumEUV.js +233 -0
  32. package/dist/{Selector-R3lL41_i.js.map → Selector-R4SumEUV.js.map} +1 -1
  33. package/dist/Swatch--Prmb5q_.cjs +2 -0
  34. package/dist/Swatch--Prmb5q_.cjs.map +1 -0
  35. package/dist/Swatch-IH4OmVdd.js +82 -0
  36. package/dist/Swatch-IH4OmVdd.js.map +1 -0
  37. package/dist/TimeRangeChip-jI9Nn9z8.js +7384 -0
  38. package/dist/TimeRangeChip-jI9Nn9z8.js.map +1 -0
  39. package/dist/TimeRangeChip-jQH9NacG.cjs +50 -0
  40. package/dist/TimeRangeChip-jQH9NacG.cjs.map +1 -0
  41. package/dist/Toggle-HVxv8bv2.js +10648 -0
  42. package/dist/Toggle-HVxv8bv2.js.map +1 -0
  43. package/dist/Toggle-QnKinMl4.cjs +73 -0
  44. package/dist/Toggle-QnKinMl4.cjs.map +1 -0
  45. package/dist/Video-iiPAk_ej.cjs +2 -0
  46. package/dist/{Video-a7BUKvzF.cjs.map → Video-iiPAk_ej.cjs.map} +1 -1
  47. package/dist/Video-vyIORMaH.js +11 -0
  48. package/dist/{Video-Vpwp5ao1.js.map → Video-vyIORMaH.js.map} +1 -1
  49. package/dist/aether.cjs +1 -89
  50. package/dist/aether.cjs.map +1 -1
  51. package/dist/aether.js +76 -80
  52. package/dist/aether.js.map +1 -1
  53. package/dist/align.cjs +1 -9
  54. package/dist/align.cjs.map +1 -1
  55. package/dist/align.js +5 -5
  56. package/dist/button.cjs +1 -14
  57. package/dist/button.cjs.map +1 -1
  58. package/dist/button.js +9 -8
  59. package/dist/button.js.map +1 -1
  60. package/dist/color-9QRifwqk.js +9 -0
  61. package/dist/color-9QRifwqk.js.map +1 -0
  62. package/dist/color-gJTR__ef.cjs +2 -0
  63. package/dist/color-gJTR__ef.cjs.map +1 -0
  64. package/dist/color.cjs +2 -0
  65. package/dist/color.cjs.map +1 -0
  66. package/dist/color.js +16 -0
  67. package/dist/color.js.map +1 -0
  68. package/dist/component-LA8IXGSG.js +17961 -0
  69. package/dist/component-LA8IXGSG.js.map +1 -0
  70. package/dist/component-dgLAEMbt.cjs +23 -0
  71. package/dist/component-dgLAEMbt.cjs.map +1 -0
  72. package/dist/css-5RvvUhjr.js +6414 -0
  73. package/dist/{css-NTD4Xm8x.js.map → css-5RvvUhjr.js.map} +1 -1
  74. package/dist/css-s9KpanYu.cjs +8 -0
  75. package/dist/{css-V3VUT_Js.cjs.map → css-s9KpanYu.cjs.map} +1 -1
  76. package/dist/css.cjs +2 -0
  77. package/dist/css.cjs.map +1 -0
  78. package/dist/css.js +10 -0
  79. package/dist/css.js.map +1 -0
  80. package/dist/dimensions--C45ahLe.js +20 -0
  81. package/dist/{dimensions-guJ5PHmb.js.map → dimensions--C45ahLe.js.map} +1 -1
  82. package/dist/dimensions-HfZjDJQz.cjs +2 -0
  83. package/dist/{dimensions-Sej0Zly9.cjs.map → dimensions-HfZjDJQz.cjs.map} +1 -1
  84. package/dist/dropdown.cjs +1 -12
  85. package/dist/dropdown.cjs.map +1 -1
  86. package/dist/dropdown.js +7 -6
  87. package/dist/dropdown.js.map +1 -1
  88. package/dist/external--jsfNkbo.cjs +2 -0
  89. package/dist/external--jsfNkbo.cjs.map +1 -0
  90. package/dist/external-1DGLK9F2.js +17 -0
  91. package/dist/external-1DGLK9F2.js.map +1 -0
  92. package/dist/external-4h9H4Y_N.js +21 -0
  93. package/dist/external-4h9H4Y_N.js.map +1 -0
  94. package/dist/external-4uqucf0m.js +67 -0
  95. package/dist/{external-QuVTCnGl.js.map → external-4uqucf0m.js.map} +1 -1
  96. package/dist/external-A_eQgT5T.cjs +2 -0
  97. package/dist/external-A_eQgT5T.cjs.map +1 -0
  98. package/dist/external-FCO_hdNr.js +24 -0
  99. package/dist/external-FCO_hdNr.js.map +1 -0
  100. package/dist/external-HZ6f2KvU.cjs +2 -0
  101. package/dist/external-HZ6f2KvU.cjs.map +1 -0
  102. package/dist/external-LPdjowBG.cjs +2 -0
  103. package/dist/external-LPdjowBG.cjs.map +1 -0
  104. package/dist/external-O1b3FJKI.cjs +2 -0
  105. package/dist/external-O1b3FJKI.cjs.map +1 -0
  106. package/dist/external-RGdrJX7y.cjs +2 -0
  107. package/dist/{external-9Ncn2J9B.cjs.map → external-RGdrJX7y.cjs.map} +1 -1
  108. package/dist/external-WiHGqQPA.js +30 -0
  109. package/dist/external-WiHGqQPA.js.map +1 -0
  110. package/dist/external-eWu6hCLU.cjs +2 -0
  111. package/dist/external-eWu6hCLU.cjs.map +1 -0
  112. package/dist/external-kvAz85mu.js +18 -0
  113. package/dist/external-kvAz85mu.js.map +1 -0
  114. package/dist/external-mpVdVPF1.js +88 -0
  115. package/dist/external-mpVdVPF1.js.map +1 -0
  116. package/dist/external-nTDD8IMd.cjs +2 -0
  117. package/dist/external-nTDD8IMd.cjs.map +1 -0
  118. package/dist/external-phknItOL.js +15 -0
  119. package/dist/external-phknItOL.js.map +1 -0
  120. package/dist/external-rGcWjp84.cjs +2 -0
  121. package/dist/{external-zBiIxeDG.cjs.map → external-rGcWjp84.cjs.map} +1 -1
  122. package/dist/external-r_2-tYfC.js +88 -0
  123. package/dist/{external-up1sE3F6.js.map → external-r_2-tYfC.js.map} +1 -1
  124. package/dist/external-sHbzLUrP.js +17 -0
  125. package/dist/external-sHbzLUrP.js.map +1 -0
  126. package/dist/external-tZiYBM94.cjs +2 -0
  127. package/dist/external-tZiYBM94.cjs.map +1 -0
  128. package/dist/external-tnCo64yx.cjs +2 -0
  129. package/dist/external-tnCo64yx.cjs.map +1 -0
  130. package/dist/external-uR-7_68y.js +16 -0
  131. package/dist/external-uR-7_68y.js.map +1 -0
  132. package/dist/external-uSIsCKNG.js +15 -0
  133. package/dist/external-uSIsCKNG.js.map +1 -0
  134. package/dist/external-z6BLlxur.cjs +2 -0
  135. package/dist/external-z6BLlxur.cjs.map +1 -0
  136. package/dist/font-HpLrwPSD.js +16 -0
  137. package/dist/{font-t7KoGNFX.js.map → font-HpLrwPSD.js.map} +1 -1
  138. package/dist/font-yosRgv9n.cjs +2 -0
  139. package/dist/{font-wlgaMRYN.cjs.map → font-yosRgv9n.cjs.map} +1 -1
  140. package/dist/fontString-_dtZSiPk.cjs +2 -0
  141. package/dist/{fontString-i24UxKCQ.cjs.map → fontString-_dtZSiPk.cjs.map} +1 -1
  142. package/dist/fontString-lodjYTYz.js +12 -0
  143. package/dist/{fontString-RKvYIr5H.js.map → fontString-lodjYTYz.js.map} +1 -1
  144. package/dist/header.cjs +1 -14
  145. package/dist/header.cjs.map +1 -1
  146. package/dist/header.js +9 -8
  147. package/dist/header.js.map +1 -1
  148. package/dist/index.cjs +1 -1174
  149. package/dist/index.cjs.map +1 -1
  150. package/dist/index.js +737 -930
  151. package/dist/index.js.map +1 -1
  152. package/dist/input/Input.stories.d.ts +1 -0
  153. package/dist/input/TextArea.d.ts +20 -0
  154. package/dist/input/external.d.ts +1 -0
  155. package/dist/input/types.d.ts +4 -2
  156. package/dist/input.cjs +1 -14
  157. package/dist/input.cjs.map +1 -1
  158. package/dist/input.js +9 -8
  159. package/dist/input.js.map +1 -1
  160. package/dist/jsx-runtime-NmMXPjeo.js +632 -0
  161. package/dist/{jsx-runtime-rX5tAIG2.js.map → jsx-runtime-NmMXPjeo.js.map} +1 -1
  162. package/dist/jsx-runtime-evvPGacs.cjs +28 -0
  163. package/dist/{jsx-runtime-N1ikfypN.cjs.map → jsx-runtime-evvPGacs.cjs.map} +1 -1
  164. package/dist/list.cjs +1 -26
  165. package/dist/list.cjs.map +1 -1
  166. package/dist/list.js +21 -19
  167. package/dist/list.js.map +1 -1
  168. package/dist/menu.cjs +1 -15
  169. package/dist/menu.cjs.map +1 -1
  170. package/dist/menu.js +10 -9
  171. package/dist/menu.js.map +1 -1
  172. package/dist/style.css +1 -3119
  173. package/dist/table-MJysJcCC.js +10312 -0
  174. package/dist/table-MJysJcCC.js.map +1 -0
  175. package/dist/table-NIrLpFOm.cjs +69 -0
  176. package/dist/table-NIrLpFOm.cjs.map +1 -0
  177. package/dist/tabs.cjs +1 -14
  178. package/dist/tabs.cjs.map +1 -1
  179. package/dist/tabs.js +9 -8
  180. package/dist/tabs.js.map +1 -1
  181. package/dist/text.cjs +1 -16
  182. package/dist/text.cjs.map +1 -1
  183. package/dist/text.js +11 -10
  184. package/dist/text.js.map +1 -1
  185. package/dist/theming.cjs +1 -15
  186. package/dist/theming.cjs.map +1 -1
  187. package/dist/theming.js +10 -9
  188. package/dist/theming.js.map +1 -1
  189. package/dist/tree.cjs +1 -25
  190. package/dist/tree.cjs.map +1 -1
  191. package/dist/tree.js +20 -18
  192. package/dist/tree.js.map +1 -1
  193. package/dist/triggers.cjs +1 -15
  194. package/dist/triggers.cjs.map +1 -1
  195. package/dist/triggers.js +10 -9
  196. package/dist/triggers.js.map +1 -1
  197. package/dist/useDrag-4o21IpGy.js +36 -0
  198. package/dist/{useDrag-rQt5hv4R.js.map → useDrag-4o21IpGy.js.map} +1 -1
  199. package/dist/useDrag-l_moa7e3.cjs +2 -0
  200. package/dist/{useDrag-KRQ7DTg1.cjs.map → useDrag-l_moa7e3.cjs.map} +1 -1
  201. package/dist/video.cjs +1 -9
  202. package/dist/video.cjs.map +1 -1
  203. package/dist/video.js +3 -3
  204. package/package.json +61 -51
  205. package/dist/Center-ZAcURh-3.cjs +0 -148
  206. package/dist/Center-gEKkAkdh.js +0 -149
  207. package/dist/Header-5YX6FUn6.cjs +0 -35
  208. package/dist/Header-7x6367IV.js +0 -36
  209. package/dist/Item-EDdYN2NK.js +0 -171
  210. package/dist/Item-HWzX7RK2.cjs +0 -170
  211. package/dist/Item-owLU4Xop.js +0 -97
  212. package/dist/Item-rkSKzZoh.cjs +0 -96
  213. package/dist/Keyboard-mE03PKwA.js +0 -14
  214. package/dist/Keyboard-w372197S.cjs +0 -13
  215. package/dist/Link-laNlv47N.js +0 -13
  216. package/dist/Link-xlTZan29.cjs +0 -12
  217. package/dist/SelectLevel-bGb0dRXh.cjs +0 -152
  218. package/dist/SelectLevel-cewIWtOv.js +0 -153
  219. package/dist/Selector-R3lL41_i.js +0 -267
  220. package/dist/Selector-hQLSIYum.cjs +0 -266
  221. package/dist/TimeRangeChip-XXXLMCrf.cjs +0 -9316
  222. package/dist/TimeRangeChip-XXXLMCrf.cjs.map +0 -1
  223. package/dist/TimeRangeChip-eDCX5pUC.js +0 -9301
  224. package/dist/TimeRangeChip-eDCX5pUC.js.map +0 -1
  225. package/dist/Toggle-eOKYw1OT.cjs +0 -13664
  226. package/dist/Toggle-eOKYw1OT.cjs.map +0 -1
  227. package/dist/Toggle-kLunfJtR.js +0 -13665
  228. package/dist/Toggle-kLunfJtR.js.map +0 -1
  229. package/dist/Video-Vpwp5ao1.js +0 -12
  230. package/dist/Video-a7BUKvzF.cjs +0 -11
  231. package/dist/component-joFaJiQW.cjs +0 -24719
  232. package/dist/component-joFaJiQW.cjs.map +0 -1
  233. package/dist/component-k78Jq9I7.js +0 -24720
  234. package/dist/component-k78Jq9I7.js.map +0 -1
  235. package/dist/css-NTD4Xm8x.js +0 -9206
  236. package/dist/css-V3VUT_Js.cjs +0 -9204
  237. package/dist/dimensions-Sej0Zly9.cjs +0 -26
  238. package/dist/dimensions-guJ5PHmb.js +0 -27
  239. package/dist/external-2Aicsb3l.js +0 -88
  240. package/dist/external-2Aicsb3l.js.map +0 -1
  241. package/dist/external-9Ncn2J9B.cjs +0 -93
  242. package/dist/external-9RCzxzgZ.js +0 -30
  243. package/dist/external-9RCzxzgZ.js.map +0 -1
  244. package/dist/external-9pS8-DvV.js +0 -15
  245. package/dist/external-9pS8-DvV.js.map +0 -1
  246. package/dist/external-KxlyA74C.js +0 -20
  247. package/dist/external-KxlyA74C.js.map +0 -1
  248. package/dist/external-OSLzuRs1.cjs +0 -14
  249. package/dist/external-OSLzuRs1.cjs.map +0 -1
  250. package/dist/external-PS3nzqUn.cjs +0 -23
  251. package/dist/external-PS3nzqUn.cjs.map +0 -1
  252. package/dist/external-QRmqSjV0.js +0 -18
  253. package/dist/external-QRmqSjV0.js.map +0 -1
  254. package/dist/external-QuVTCnGl.js +0 -71
  255. package/dist/external-U5HRPaDI.cjs +0 -17
  256. package/dist/external-U5HRPaDI.cjs.map +0 -1
  257. package/dist/external-_CtRDtih.js +0 -17
  258. package/dist/external-_CtRDtih.js.map +0 -1
  259. package/dist/external-eQU48hM4.cjs +0 -87
  260. package/dist/external-eQU48hM4.cjs.map +0 -1
  261. package/dist/external-kbDFnfuk.js +0 -24
  262. package/dist/external-kbDFnfuk.js.map +0 -1
  263. package/dist/external-oX1JmOFf.js +0 -17
  264. package/dist/external-oX1JmOFf.js.map +0 -1
  265. package/dist/external-oZe6tF4A.cjs +0 -14
  266. package/dist/external-oZe6tF4A.cjs.map +0 -1
  267. package/dist/external-tVcmKSsT.cjs +0 -19
  268. package/dist/external-tVcmKSsT.cjs.map +0 -1
  269. package/dist/external-up1sE3F6.js +0 -94
  270. package/dist/external-uvx0b-Jw.cjs +0 -16
  271. package/dist/external-uvx0b-Jw.cjs.map +0 -1
  272. package/dist/external-vXBQOmKv.js +0 -15
  273. package/dist/external-vXBQOmKv.js.map +0 -1
  274. package/dist/external-yiqRIIvW.cjs +0 -16
  275. package/dist/external-yiqRIIvW.cjs.map +0 -1
  276. package/dist/external-zBiIxeDG.cjs +0 -70
  277. package/dist/external-zw9fckWT.cjs +0 -29
  278. package/dist/external-zw9fckWT.cjs.map +0 -1
  279. package/dist/font-t7KoGNFX.js +0 -17
  280. package/dist/font-wlgaMRYN.cjs +0 -16
  281. package/dist/fontString-RKvYIr5H.js +0 -13
  282. package/dist/fontString-i24UxKCQ.cjs +0 -12
  283. package/dist/jsx-runtime-N1ikfypN.cjs +0 -931
  284. package/dist/jsx-runtime-rX5tAIG2.js +0 -932
  285. package/dist/table-8MFXzE4C.js +0 -13664
  286. package/dist/table-8MFXzE4C.js.map +0 -1
  287. package/dist/table-VNkSG_Cj.cjs +0 -13661
  288. package/dist/table-VNkSG_Cj.cjs.map +0 -1
  289. package/dist/useDrag-KRQ7DTg1.cjs +0 -48
  290. package/dist/useDrag-rQt5hv4R.js +0 -49
@@ -1,267 +0,0 @@
1
- import { j as jsxRuntimeExports } from "./jsx-runtime-rX5tAIG2.js";
2
- import { createContext, useState, useContext, useCallback } from "react";
3
- import { I as Icon, s as Icon$1, W as WithIcon, g as Text, E as Editable } from "./Toggle-kLunfJtR.js";
4
- import { S as Space, P as Pack } from "./Center-gEKkAkdh.js";
5
- import { C as CSS } from "./css-NTD4Xm8x.js";
6
- import "./component-k78Jq9I7.js";
7
- const resetSelection = (selected = "", tabs = []) => {
8
- var _a;
9
- if (tabs.length === 0)
10
- return void 0;
11
- return tabs.find((t) => t.tabKey === selected) != null ? selected : (_a = tabs[tabs.length - 1]) == null ? void 0 : _a.tabKey;
12
- };
13
- const rename = (key, title, tabs) => {
14
- title = title.trim();
15
- if (title.length === 0)
16
- return tabs;
17
- const t = tabs.find((t2) => t2.tabKey === key);
18
- if (t == null || t.name === title)
19
- return tabs;
20
- return tabs.map((t2) => t2.tabKey === key ? { ...t2, name: title } : t2);
21
- };
22
- const useStatic = ({
23
- tabs,
24
- content,
25
- onSelect
26
- }) => {
27
- var _a;
28
- const [selected, setSelected] = useState(((_a = tabs[0]) == null ? void 0 : _a.tabKey) ?? "");
29
- const handleSelect = (key) => {
30
- setSelected(key);
31
- onSelect == null ? void 0 : onSelect(key);
32
- };
33
- return {
34
- tabs,
35
- selected,
36
- content,
37
- onSelect: handleSelect
38
- };
39
- };
40
- const TabsContext = createContext({ tabs: [] });
41
- const useTabsContext = () => useContext(TabsContext);
42
- const Tabs = ({
43
- content,
44
- children,
45
- onSelect,
46
- selected,
47
- closable,
48
- tabs,
49
- onClose,
50
- onDragStart,
51
- onDragEnd,
52
- onCreate,
53
- onRename,
54
- emptyContent,
55
- className,
56
- onDragOver,
57
- onDrop,
58
- size = "medium",
59
- ...props
60
- }) => /* @__PURE__ */ jsxRuntimeExports.jsx(
61
- Space,
62
- {
63
- empty: true,
64
- className: CSS(CSS.B("tabs"), className),
65
- onDragOver,
66
- onDrop,
67
- ...props,
68
- children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
69
- TabsContext.Provider,
70
- {
71
- value: {
72
- tabs,
73
- emptyContent,
74
- selected,
75
- closable,
76
- content: children ?? content,
77
- onSelect,
78
- onClose,
79
- onDragStart,
80
- onDragEnd,
81
- onRename,
82
- onCreate,
83
- onDrop
84
- },
85
- children: [
86
- /* @__PURE__ */ jsxRuntimeExports.jsx(Selector, { size }),
87
- /* @__PURE__ */ jsxRuntimeExports.jsx(Content, {})
88
- ]
89
- }
90
- )
91
- }
92
- );
93
- const Provider = TabsContext.Provider;
94
- const Content = () => {
95
- const {
96
- tabs,
97
- selected,
98
- content: renderProp,
99
- emptyContent,
100
- onSelect
101
- } = useTabsContext();
102
- let content = null;
103
- const selectedTab = tabs.find((tab) => tab.tabKey === selected);
104
- if (selected == null || selectedTab == null)
105
- return emptyContent ?? null;
106
- if (renderProp != null)
107
- content = renderProp(selectedTab);
108
- else if (selectedTab.content != null)
109
- content = selectedTab.content;
110
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
111
- "div",
112
- {
113
- className: CSS.B("tabs-content"),
114
- onClick: () => onSelect == null ? void 0 : onSelect(selected),
115
- style: { width: "100%", height: "100%" },
116
- children: content
117
- }
118
- );
119
- };
120
- const CLS = "tabs-selector";
121
- const Selector = ({
122
- className,
123
- size = "medium",
124
- ...props
125
- }) => {
126
- const {
127
- tabs,
128
- selected,
129
- onSelect,
130
- onClose,
131
- closable,
132
- onDragEnd,
133
- onDragStart,
134
- onDrop,
135
- onRename,
136
- onCreate
137
- } = useTabsContext();
138
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(
139
- Space,
140
- {
141
- className: CSS(CSS.B(CLS), CSS.size(size), className),
142
- direction: "x",
143
- align: "center",
144
- justify: "start",
145
- onDrop,
146
- empty: true,
147
- ...props,
148
- children: [
149
- /* @__PURE__ */ jsxRuntimeExports.jsx(Space, { className: CSS.BE(CLS, "tabs"), empty: true, direction: "x", grow: true, children: tabs.map((tab) => /* @__PURE__ */ jsxRuntimeExports.jsx(
150
- SelectorButton,
151
- {
152
- selected,
153
- onSelect,
154
- onClose,
155
- onDragStart,
156
- onDragEnd,
157
- onRename,
158
- closable: tab.closable ?? closable,
159
- size,
160
- ...tab
161
- },
162
- tab.tabKey
163
- )) }),
164
- /* @__PURE__ */ jsxRuntimeExports.jsx(Space, { className: CSS.BE(CLS, "actions"), children: onCreate != null && /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { size, sharp: true, onClick: onCreate, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Icon$1.Add, {}) }) })
165
- ]
166
- }
167
- );
168
- };
169
- const SelectorButton = ({
170
- selected,
171
- onSelect,
172
- onClose,
173
- tabKey,
174
- name,
175
- onDragStart,
176
- onDragEnd,
177
- onRename,
178
- closable = true,
179
- icon,
180
- size,
181
- editable = true
182
- }) => {
183
- const handleDragStart = useCallback(
184
- (e) => onDragStart == null ? void 0 : onDragStart(e, { tabKey, name }),
185
- [onDragStart, tabKey, name]
186
- );
187
- const handleDragEnd = useCallback(
188
- (e) => onDragEnd == null ? void 0 : onDragEnd(e, { tabKey, name }),
189
- [onDragEnd, tabKey, name]
190
- );
191
- const handleClose = useCallback(
192
- (e) => {
193
- e.stopPropagation();
194
- onClose == null ? void 0 : onClose(tabKey);
195
- },
196
- [onClose, tabKey]
197
- );
198
- const _onSelect = useCallback(() => onSelect == null ? void 0 : onSelect(tabKey), [onSelect, tabKey]);
199
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(
200
- Pack,
201
- {
202
- size,
203
- className: CSS(
204
- CSS.BE(CLS, "btn"),
205
- onRename == null && CSS.BEM(CLS, "btn", "uneditable"),
206
- CSS.selected(selected === tabKey),
207
- closable && onClose != null && CSS.BEM(CLS, "btn", "closable")
208
- ),
209
- draggable: true,
210
- direction: "x",
211
- justify: "center",
212
- align: "center",
213
- onClick: _onSelect,
214
- onDragStart: handleDragStart,
215
- onDragEnd: handleDragEnd,
216
- bordered: false,
217
- rounded: false,
218
- children: [
219
- /* @__PURE__ */ jsxRuntimeExports.jsx(
220
- Name,
221
- {
222
- name,
223
- tabKey,
224
- onRename,
225
- icon,
226
- editable
227
- }
228
- ),
229
- closable && onClose != null && /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { onClick: handleClose, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Icon$1.Close, { "aria-label": "pluto-tabs__close" }) })
230
- ]
231
- }
232
- );
233
- };
234
- const Name = ({
235
- onRename,
236
- name,
237
- tabKey,
238
- icon,
239
- editable = true
240
- }) => {
241
- if (onRename == null || !editable) {
242
- if (icon != null)
243
- return /* @__PURE__ */ jsxRuntimeExports.jsx(WithIcon, { startIcon: icon, level: "p", noWrap: true, children: name });
244
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Text, { level: "p", noWrap: true, children: name });
245
- }
246
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
247
- Editable,
248
- {
249
- level: "p",
250
- onChange: (newText) => onRename(tabKey, newText),
251
- value: name,
252
- noWrap: true
253
- }
254
- );
255
- };
256
- export {
257
- Content as C,
258
- Provider as P,
259
- Selector as S,
260
- Tabs as T,
261
- TabsContext as a,
262
- resetSelection as b,
263
- useTabsContext as c,
264
- rename as r,
265
- useStatic as u
266
- };
267
- //# sourceMappingURL=Selector-R3lL41_i.js.map
@@ -1,266 +0,0 @@
1
- "use strict";
2
- const jsxRuntime = require("./jsx-runtime-N1ikfypN.cjs");
3
- const React = require("react");
4
- const Toggle = require("./Toggle-eOKYw1OT.cjs");
5
- const Center = require("./Center-ZAcURh-3.cjs");
6
- const css = require("./css-V3VUT_Js.cjs");
7
- require("./component-joFaJiQW.cjs");
8
- const resetSelection = (selected = "", tabs = []) => {
9
- var _a;
10
- if (tabs.length === 0)
11
- return void 0;
12
- return tabs.find((t) => t.tabKey === selected) != null ? selected : (_a = tabs[tabs.length - 1]) == null ? void 0 : _a.tabKey;
13
- };
14
- const rename = (key, title, tabs) => {
15
- title = title.trim();
16
- if (title.length === 0)
17
- return tabs;
18
- const t = tabs.find((t2) => t2.tabKey === key);
19
- if (t == null || t.name === title)
20
- return tabs;
21
- return tabs.map((t2) => t2.tabKey === key ? { ...t2, name: title } : t2);
22
- };
23
- const useStatic = ({
24
- tabs,
25
- content,
26
- onSelect
27
- }) => {
28
- var _a;
29
- const [selected, setSelected] = React.useState(((_a = tabs[0]) == null ? void 0 : _a.tabKey) ?? "");
30
- const handleSelect = (key) => {
31
- setSelected(key);
32
- onSelect == null ? void 0 : onSelect(key);
33
- };
34
- return {
35
- tabs,
36
- selected,
37
- content,
38
- onSelect: handleSelect
39
- };
40
- };
41
- const TabsContext = React.createContext({ tabs: [] });
42
- const useTabsContext = () => React.useContext(TabsContext);
43
- const Tabs = ({
44
- content,
45
- children,
46
- onSelect,
47
- selected,
48
- closable,
49
- tabs,
50
- onClose,
51
- onDragStart,
52
- onDragEnd,
53
- onCreate,
54
- onRename,
55
- emptyContent,
56
- className,
57
- onDragOver,
58
- onDrop,
59
- size = "medium",
60
- ...props
61
- }) => /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
62
- Center.Space,
63
- {
64
- empty: true,
65
- className: css.CSS(css.CSS.B("tabs"), className),
66
- onDragOver,
67
- onDrop,
68
- ...props,
69
- children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsxs(
70
- TabsContext.Provider,
71
- {
72
- value: {
73
- tabs,
74
- emptyContent,
75
- selected,
76
- closable,
77
- content: children ?? content,
78
- onSelect,
79
- onClose,
80
- onDragStart,
81
- onDragEnd,
82
- onRename,
83
- onCreate,
84
- onDrop
85
- },
86
- children: [
87
- /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(Selector, { size }),
88
- /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(Content, {})
89
- ]
90
- }
91
- )
92
- }
93
- );
94
- const Provider = TabsContext.Provider;
95
- const Content = () => {
96
- const {
97
- tabs,
98
- selected,
99
- content: renderProp,
100
- emptyContent,
101
- onSelect
102
- } = useTabsContext();
103
- let content = null;
104
- const selectedTab = tabs.find((tab) => tab.tabKey === selected);
105
- if (selected == null || selectedTab == null)
106
- return emptyContent ?? null;
107
- if (renderProp != null)
108
- content = renderProp(selectedTab);
109
- else if (selectedTab.content != null)
110
- content = selectedTab.content;
111
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
112
- "div",
113
- {
114
- className: css.CSS.B("tabs-content"),
115
- onClick: () => onSelect == null ? void 0 : onSelect(selected),
116
- style: { width: "100%", height: "100%" },
117
- children: content
118
- }
119
- );
120
- };
121
- const CLS = "tabs-selector";
122
- const Selector = ({
123
- className,
124
- size = "medium",
125
- ...props
126
- }) => {
127
- const {
128
- tabs,
129
- selected,
130
- onSelect,
131
- onClose,
132
- closable,
133
- onDragEnd,
134
- onDragStart,
135
- onDrop,
136
- onRename,
137
- onCreate
138
- } = useTabsContext();
139
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsxs(
140
- Center.Space,
141
- {
142
- className: css.CSS(css.CSS.B(CLS), css.CSS.size(size), className),
143
- direction: "x",
144
- align: "center",
145
- justify: "start",
146
- onDrop,
147
- empty: true,
148
- ...props,
149
- children: [
150
- /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(Center.Space, { className: css.CSS.BE(CLS, "tabs"), empty: true, direction: "x", grow: true, children: tabs.map((tab) => /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
151
- SelectorButton,
152
- {
153
- selected,
154
- onSelect,
155
- onClose,
156
- onDragStart,
157
- onDragEnd,
158
- onRename,
159
- closable: tab.closable ?? closable,
160
- size,
161
- ...tab
162
- },
163
- tab.tabKey
164
- )) }),
165
- /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(Center.Space, { className: css.CSS.BE(CLS, "actions"), children: onCreate != null && /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(Toggle.Icon, { size, sharp: true, onClick: onCreate, children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(Toggle.Icon$1.Add, {}) }) })
166
- ]
167
- }
168
- );
169
- };
170
- const SelectorButton = ({
171
- selected,
172
- onSelect,
173
- onClose,
174
- tabKey,
175
- name,
176
- onDragStart,
177
- onDragEnd,
178
- onRename,
179
- closable = true,
180
- icon,
181
- size,
182
- editable = true
183
- }) => {
184
- const handleDragStart = React.useCallback(
185
- (e) => onDragStart == null ? void 0 : onDragStart(e, { tabKey, name }),
186
- [onDragStart, tabKey, name]
187
- );
188
- const handleDragEnd = React.useCallback(
189
- (e) => onDragEnd == null ? void 0 : onDragEnd(e, { tabKey, name }),
190
- [onDragEnd, tabKey, name]
191
- );
192
- const handleClose = React.useCallback(
193
- (e) => {
194
- e.stopPropagation();
195
- onClose == null ? void 0 : onClose(tabKey);
196
- },
197
- [onClose, tabKey]
198
- );
199
- const _onSelect = React.useCallback(() => onSelect == null ? void 0 : onSelect(tabKey), [onSelect, tabKey]);
200
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsxs(
201
- Center.Pack,
202
- {
203
- size,
204
- className: css.CSS(
205
- css.CSS.BE(CLS, "btn"),
206
- onRename == null && css.CSS.BEM(CLS, "btn", "uneditable"),
207
- css.CSS.selected(selected === tabKey),
208
- closable && onClose != null && css.CSS.BEM(CLS, "btn", "closable")
209
- ),
210
- draggable: true,
211
- direction: "x",
212
- justify: "center",
213
- align: "center",
214
- onClick: _onSelect,
215
- onDragStart: handleDragStart,
216
- onDragEnd: handleDragEnd,
217
- bordered: false,
218
- rounded: false,
219
- children: [
220
- /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
221
- Name,
222
- {
223
- name,
224
- tabKey,
225
- onRename,
226
- icon,
227
- editable
228
- }
229
- ),
230
- closable && onClose != null && /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(Toggle.Icon, { onClick: handleClose, children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(Toggle.Icon$1.Close, { "aria-label": "pluto-tabs__close" }) })
231
- ]
232
- }
233
- );
234
- };
235
- const Name = ({
236
- onRename,
237
- name,
238
- tabKey,
239
- icon,
240
- editable = true
241
- }) => {
242
- if (onRename == null || !editable) {
243
- if (icon != null)
244
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(Toggle.WithIcon, { startIcon: icon, level: "p", noWrap: true, children: name });
245
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(Toggle.Text, { level: "p", noWrap: true, children: name });
246
- }
247
- return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(
248
- Toggle.Editable,
249
- {
250
- level: "p",
251
- onChange: (newText) => onRename(tabKey, newText),
252
- value: name,
253
- noWrap: true
254
- }
255
- );
256
- };
257
- exports.Content = Content;
258
- exports.Provider = Provider;
259
- exports.Selector = Selector;
260
- exports.Tabs = Tabs;
261
- exports.TabsContext = TabsContext;
262
- exports.rename = rename;
263
- exports.resetSelection = resetSelection;
264
- exports.useStatic = useStatic;
265
- exports.useTabsContext = useTabsContext;
266
- //# sourceMappingURL=Selector-hQLSIYum.cjs.map