@vuer-ai/vuer-uikit 0.0.120 → 0.1.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 (790) hide show
  1. package/README.md +28 -0
  2. package/dist/SyncScroll/SyncScroll.cjs +13 -13
  3. package/dist/SyncScroll/SyncScroll.mjs +6 -6
  4. package/dist/SyncScroll/index.cjs +13 -13
  5. package/dist/SyncScroll/index.mjs +6 -6
  6. package/dist/SyncScroll/useSyncScroll.d.cts +5 -5
  7. package/dist/SyncScroll/useSyncScroll.d.ts +5 -5
  8. package/dist/{chunk-42WQWP6X.cjs → chunk-22T2AL3G.cjs} +8 -8
  9. package/dist/{chunk-NMRFBO43.mjs → chunk-2IMCDH5J.mjs} +3 -3
  10. package/dist/{chunk-EOLUDKZ3.mjs → chunk-2J466BYZ.mjs} +26 -47
  11. package/dist/{chunk-LVIZRMYN.cjs → chunk-2KBNQ5PY.cjs} +2 -2
  12. package/dist/{chunk-S7CCCMMU.cjs → chunk-34NDAZS6.cjs} +18 -9
  13. package/dist/{chunk-DM43KZU7.cjs → chunk-3F3LBOQJ.cjs} +2 -2
  14. package/dist/chunk-3JMUI4R2.cjs +136 -0
  15. package/dist/{chunk-CWS5PF67.cjs → chunk-3UQ323EB.cjs} +8 -42
  16. package/dist/{chunk-QXFFRQ7E.mjs → chunk-44U6VC46.mjs} +543 -95
  17. package/dist/{chunk-JW456O5K.mjs → chunk-4FB6B2ES.mjs} +1 -1
  18. package/dist/{chunk-66NKH2SV.cjs → chunk-4FIP3EXW.cjs} +6 -6
  19. package/dist/chunk-4SI4QV5R.cjs +14 -0
  20. package/dist/{chunk-IAFCABPY.mjs → chunk-4W7JKZVN.mjs} +3 -2
  21. package/dist/{chunk-EEGQLTSQ.cjs → chunk-4WWGBRQV.cjs} +77 -0
  22. package/dist/chunk-4Y5IF7R5.mjs +322 -0
  23. package/dist/chunk-52GNIM6H.mjs +12 -0
  24. package/dist/{chunk-X6WOCNBX.cjs → chunk-57NITJN5.cjs} +2 -2
  25. package/dist/{chunk-LMYA5IOK.mjs → chunk-5GBMVMLS.mjs} +4 -4
  26. package/dist/{chunk-QWBMDS3S.cjs → chunk-5HT74RHB.cjs} +5 -5
  27. package/dist/{chunk-4ODJAEOM.mjs → chunk-5JYH7TXY.mjs} +1 -1
  28. package/dist/{chunk-2CD4D2BR.cjs → chunk-6CJWNYHL.cjs} +3 -3
  29. package/dist/{chunk-CRX2ZCM2.cjs → chunk-6LTCLQH3.cjs} +6 -1
  30. package/dist/{chunk-WKK5UX2W.mjs → chunk-6U6LRS37.mjs} +2 -2
  31. package/dist/{chunk-4OUQ6NSX.cjs → chunk-6VIKDPCD.cjs} +2 -2
  32. package/dist/{chunk-6D7FGGSX.cjs → chunk-753HUOAI.cjs} +26 -26
  33. package/dist/{chunk-LYGYXV7S.cjs → chunk-7ICRKPIO.cjs} +16 -16
  34. package/dist/chunk-7MKCWXNV.cjs +32 -0
  35. package/dist/{chunk-FMKD5JBL.mjs → chunk-7TD77VF4.mjs} +10 -6
  36. package/dist/{chunk-5ARBIWXX.cjs → chunk-7TXGEIV3.cjs} +10 -10
  37. package/dist/chunk-7WJ73FEI.mjs +43 -0
  38. package/dist/{chunk-SLXM4F24.cjs → chunk-7YFUNCKT.cjs} +9 -9
  39. package/dist/{chunk-LGFWHV23.cjs → chunk-ACGXE2IO.cjs} +2 -2
  40. package/dist/{chunk-IU65XB2K.cjs → chunk-AFALU3AK.cjs} +2 -2
  41. package/dist/{chunk-EGIIZWP3.mjs → chunk-AFR23IX6.mjs} +1 -1
  42. package/dist/{chunk-CXPF274N.mjs → chunk-BK77KKIM.mjs} +1 -1
  43. package/dist/{chunk-4PMXRQXC.cjs → chunk-BNXJ5VBE.cjs} +6 -6
  44. package/dist/{chunk-3DIFS7CO.mjs → chunk-BPCD4L7T.mjs} +1 -1
  45. package/dist/{chunk-JQYMF2FW.cjs → chunk-BSDIS4KS.cjs} +4 -4
  46. package/dist/{chunk-REZAPK6Z.mjs → chunk-BTGAKK3B.mjs} +1 -1
  47. package/dist/{chunk-TB5L3GBP.cjs → chunk-BXJTOIRR.cjs} +584 -133
  48. package/dist/{chunk-35ZN6IW7.mjs → chunk-BYZ7HIIK.mjs} +1 -1
  49. package/dist/{chunk-XS5IUI62.cjs → chunk-BZI74LKX.cjs} +3 -2
  50. package/dist/{chunk-2IS7TXTN.mjs → chunk-CENP2PIB.mjs} +1 -1
  51. package/dist/{chunk-SAXISARG.cjs → chunk-CMO3SLOU.cjs} +2 -2
  52. package/dist/{chunk-CIOLL5LX.mjs → chunk-CN6SZKJZ.mjs} +1 -1
  53. package/dist/chunk-CRY23RMB.mjs +30 -0
  54. package/dist/{chunk-7AAMQGY2.cjs → chunk-CYWVJ3HF.cjs} +7 -7
  55. package/dist/{chunk-EVBYVJTW.mjs → chunk-D2LUQKPM.mjs} +130 -91
  56. package/dist/chunk-DF7WIFZK.cjs +316 -0
  57. package/dist/chunk-DKLVWYTC.cjs +71 -0
  58. package/dist/chunk-DKWLF3KW.mjs +149 -0
  59. package/dist/{chunk-F2LEYFWW.cjs → chunk-DPJPOBUT.cjs} +5 -5
  60. package/dist/{chunk-SR3M2R3S.mjs → chunk-DSQPFXYL.mjs} +22 -24
  61. package/dist/chunk-DVUN6GQI.cjs +21 -0
  62. package/dist/{chunk-7ACZU3BT.mjs → chunk-EG6JETUN.mjs} +1 -1
  63. package/dist/{chunk-T4U3BG2V.mjs → chunk-EGJLY5VZ.mjs} +1 -1
  64. package/dist/{chunk-AE5YDMFT.mjs → chunk-EXM6QMNR.mjs} +3 -3
  65. package/dist/{chunk-H6JGIEAU.mjs → chunk-EYMZP5PL.mjs} +1 -1
  66. package/dist/{chunk-K2ZYSKRU.mjs → chunk-EZ536NLQ.mjs} +1 -1
  67. package/dist/chunk-FRM27RLN.cjs +264 -0
  68. package/dist/chunk-FTB337IJ.cjs +143 -0
  69. package/dist/{chunk-7A5EMDZH.mjs → chunk-G35PQKU5.mjs} +5 -5
  70. package/dist/{chunk-ZJSL6HSL.mjs → chunk-GAAP5JO4.mjs} +1 -1
  71. package/dist/chunk-GHQA7PER.mjs +107 -0
  72. package/dist/{chunk-ND3WJ63Z.cjs → chunk-GVRVRBDU.cjs} +2 -2
  73. package/dist/chunk-GZ2BG42R.mjs +34 -0
  74. package/dist/chunk-H3JRYX2U.mjs +19 -0
  75. package/dist/{chunk-T66ETI7E.mjs → chunk-HBEU2PU2.mjs} +6 -1
  76. package/dist/{chunk-SMXN2KOV.mjs → chunk-HGTL7DFT.mjs} +1 -1
  77. package/dist/{chunk-JFPIUDGT.mjs → chunk-HI4LO6IJ.mjs} +1 -1
  78. package/dist/{chunk-QO2AM6MF.mjs → chunk-HIDTQ4Z2.mjs} +1 -1
  79. package/dist/{chunk-DDU3SPCC.mjs → chunk-HNW2DRPV.mjs} +58 -9
  80. package/dist/{chunk-5AKVDZMA.cjs → chunk-HSUL5OUG.cjs} +14 -13
  81. package/dist/{chunk-EY6PKK4X.cjs → chunk-I2COLDHC.cjs} +2 -2
  82. package/dist/chunk-IAWMCOHS.cjs +45 -0
  83. package/dist/chunk-IM5QVMGO.cjs +2 -0
  84. package/dist/{chunk-UQQBUPGF.mjs → chunk-IPMWGCAI.mjs} +5 -21
  85. package/dist/{chunk-SCUMWMIN.mjs → chunk-ITOTSGSL.mjs} +1 -1
  86. package/dist/{chunk-NJWKR5WR.mjs → chunk-IYTGWOZY.mjs} +1 -1
  87. package/dist/chunk-J74A5LNZ.cjs +179 -0
  88. package/dist/{chunk-CKGEV2JL.cjs → chunk-JDEZ6NNG.cjs} +2 -2
  89. package/dist/chunk-JEWTYDLX.cjs +119 -0
  90. package/dist/{chunk-Q7WCKEXG.cjs → chunk-JF43YF6J.cjs} +3 -3
  91. package/dist/chunk-JTFQFULL.cjs +166 -0
  92. package/dist/{chunk-XQ3MWA3D.mjs → chunk-KXKUQSNY.mjs} +3 -3
  93. package/dist/chunk-L2AKG4VJ.mjs +258 -0
  94. package/dist/{chunk-ZCSJGDX7.mjs → chunk-L2DME42Q.mjs} +1 -1
  95. package/dist/{chunk-K2BQNNEX.cjs → chunk-L6W77P4B.cjs} +8 -8
  96. package/dist/{chunk-N4Y5CBOI.cjs → chunk-LGUQR5AR.cjs} +4 -4
  97. package/dist/{chunk-ZA7WOIIB.mjs → chunk-LHP7FLGK.mjs} +1 -1
  98. package/dist/{chunk-MYZHDWBF.mjs → chunk-LLFE3UHZ.mjs} +10 -10
  99. package/dist/{chunk-332A4MHC.mjs → chunk-LNYUFL3Q.mjs} +1 -1
  100. package/dist/{chunk-BUAWPPXA.cjs → chunk-MQ5DGLVE.cjs} +11 -11
  101. package/dist/{chunk-EXY6WRH4.mjs → chunk-N6KP2HIC.mjs} +2 -2
  102. package/dist/{chunk-V75PKBIV.cjs → chunk-NEJKCSS5.cjs} +9 -9
  103. package/dist/{chunk-KPGZOX2A.cjs → chunk-NHFIDL5X.cjs} +5 -5
  104. package/dist/{chunk-JNV3UBBP.cjs → chunk-NIACIZWY.cjs} +6 -22
  105. package/dist/{chunk-PC5DHSC4.mjs → chunk-NKUK73WB.mjs} +71 -1
  106. package/dist/{chunk-5OZS5UJX.cjs → chunk-NSPAT6XV.cjs} +7 -7
  107. package/dist/chunk-NUBFD3YP.mjs +117 -0
  108. package/dist/{chunk-4BQPIY5Z.mjs → chunk-O2NGB7YP.mjs} +1 -1
  109. package/dist/{chunk-7H7U2X45.cjs → chunk-O3DFVRON.cjs} +17 -13
  110. package/dist/chunk-O57DAVOQ.mjs +1 -0
  111. package/dist/{chunk-S37MJNNP.cjs → chunk-OCADGDGL.cjs} +2 -2
  112. package/dist/{chunk-ZSAPBZ36.mjs → chunk-OW653F7T.mjs} +1 -1
  113. package/dist/{chunk-GRXUYMZJ.cjs → chunk-OX5FXH6W.cjs} +4 -4
  114. package/dist/{chunk-GQYUSBSO.mjs → chunk-P3FBRYWH.mjs} +3 -10
  115. package/dist/{chunk-P3YSHGT5.mjs → chunk-P55DAW6H.mjs} +1 -1
  116. package/dist/{chunk-JOOURIX7.cjs → chunk-P6E4WLMD.cjs} +4 -4
  117. package/dist/{chunk-WDSOII5A.cjs → chunk-P7J7XHDE.cjs} +2 -2
  118. package/dist/chunk-PHRZ5JE6.mjs +1 -0
  119. package/dist/{chunk-F3HOBNGR.cjs → chunk-PMG3NZF5.cjs} +4 -4
  120. package/dist/chunk-PMYOKSO3.mjs +30 -0
  121. package/dist/chunk-PTUZYCOY.mjs +314 -0
  122. package/dist/{chunk-PV6CEMTT.cjs → chunk-PWZ4F3WY.cjs} +4 -4
  123. package/dist/{chunk-QBAZ6TKZ.cjs → chunk-PZZW3E5D.cjs} +2 -2
  124. package/dist/chunk-Q3UN25WC.mjs +141 -0
  125. package/dist/{chunk-MXGPFCLN.cjs → chunk-QS6WNNLM.cjs} +2 -2
  126. package/dist/{chunk-PR3BCKLJ.mjs → chunk-QSDYNIZB.mjs} +2 -1
  127. package/dist/{chunk-GTBXRWCK.cjs → chunk-QTLUPDLH.cjs} +8 -7
  128. package/dist/{chunk-BXZSWY4N.mjs → chunk-QYJZ5KA6.mjs} +1 -1
  129. package/dist/{chunk-JYYAGDLZ.cjs → chunk-R22VW3EK.cjs} +2 -2
  130. package/dist/{chunk-NKGUQZTD.cjs → chunk-RHVKIZMQ.cjs} +2 -2
  131. package/dist/{chunk-U22YVR7M.mjs → chunk-RLY4A3IY.mjs} +15 -6
  132. package/dist/{chunk-OJOWMXXY.mjs → chunk-RR76Z6OK.mjs} +3 -3
  133. package/dist/{chunk-D562KO2I.mjs → chunk-RWHVZM2B.mjs} +2 -2
  134. package/dist/chunk-S4C7HO32.cjs +36 -0
  135. package/dist/chunk-SBAVMK7J.cjs +181 -0
  136. package/dist/{chunk-DAVMLI3P.cjs → chunk-SNUQOJLK.cjs} +4 -4
  137. package/dist/{chunk-KY2PYKDZ.mjs → chunk-SO5KFX2C.mjs} +1 -1
  138. package/dist/{chunk-HB65PF7F.cjs → chunk-SOHGIAGF.cjs} +2 -2
  139. package/dist/{chunk-RW4T7UBU.cjs → chunk-STJMH4NX.cjs} +3 -3
  140. package/dist/{chunk-VYINXXYX.cjs → chunk-SUWJDU3Y.cjs} +59 -61
  141. package/dist/chunk-T2BDPMCF.cjs +358 -0
  142. package/dist/{chunk-U5W4ZALG.cjs → chunk-T2OAWYOU.cjs} +6 -6
  143. package/dist/{chunk-Q7VP2WSX.mjs → chunk-TCCFFSXM.mjs} +29 -12
  144. package/dist/{chunk-PRNBDGOF.cjs → chunk-THE6FZKP.cjs} +29 -49
  145. package/dist/{chunk-RGOZPSTI.mjs → chunk-TMBHKVKH.mjs} +1 -1
  146. package/dist/chunk-TQOGGHSJ.mjs +23 -0
  147. package/dist/{chunk-VTW2DF63.mjs → chunk-TWDDNHRP.mjs} +1 -1
  148. package/dist/{chunk-DDIB73SZ.mjs → chunk-UB3ELCFR.mjs} +4 -4
  149. package/dist/{chunk-XTLGNJIO.mjs → chunk-UBGNADCN.mjs} +1 -1
  150. package/dist/chunk-UCAIVC2B.cjs +32 -0
  151. package/dist/chunk-UEHPZIQB.cjs +2 -0
  152. package/dist/{chunk-ASZIBFA6.cjs → chunk-UZTOUPJ7.cjs} +131 -92
  153. package/dist/{chunk-3NIMV5PH.mjs → chunk-V4THHKSO.mjs} +1 -1
  154. package/dist/{chunk-G5VBLDAM.mjs → chunk-VBEVJE7Q.mjs} +1 -1
  155. package/dist/chunk-VDYJAOMN.mjs +177 -0
  156. package/dist/{chunk-64VVW5YR.mjs → chunk-VLNU7Y2K.mjs} +8 -43
  157. package/dist/{chunk-ZS7ESTKH.cjs → chunk-VT6E2N6C.cjs} +8 -12
  158. package/dist/{chunk-OLYHHP67.mjs → chunk-VWLZKPDB.mjs} +6 -5
  159. package/dist/{chunk-UMGNAR3W.cjs → chunk-W22SQYEO.cjs} +8 -8
  160. package/dist/{chunk-VWVYCQWF.mjs → chunk-WBM7ATPT.mjs} +1 -1
  161. package/dist/{chunk-CH3BSVL4.cjs → chunk-WGY33IHV.cjs} +2 -2
  162. package/dist/{chunk-DAA2GQAS.cjs → chunk-WRJAYU2L.cjs} +27 -27
  163. package/dist/{chunk-7AEOJFD4.cjs → chunk-WX3VWVWD.cjs} +2 -2
  164. package/dist/{chunk-EBFPZBUQ.cjs → chunk-WYUJM72T.cjs} +7 -7
  165. package/dist/{chunk-EK3BTKZP.cjs → chunk-WZQ2BT3P.cjs} +142 -26
  166. package/dist/{chunk-KR7VBV3B.cjs → chunk-XIDCYS6G.cjs} +2 -1
  167. package/dist/{chunk-WHV6Z7YX.mjs → chunk-XIESS6HW.mjs} +1 -1
  168. package/dist/{chunk-UIJEAY6H.mjs → chunk-XTZURZIR.mjs} +1 -1
  169. package/dist/{chunk-7AZ3PLUC.mjs → chunk-XZLQHASB.mjs} +1 -1
  170. package/dist/{chunk-SRZ56OJH.mjs → chunk-XZTEU7ME.mjs} +3 -3
  171. package/dist/{chunk-RLTLA7VS.mjs → chunk-Y2IIKDRY.mjs} +1 -1
  172. package/dist/chunk-YDF6VWBW.cjs +151 -0
  173. package/dist/{chunk-CR6JOOO3.cjs → chunk-YGZHBIZP.cjs} +3 -10
  174. package/dist/{chunk-TWQONYWC.mjs → chunk-YMMSHGYC.mjs} +1 -1
  175. package/dist/chunk-YQL6JDVP.cjs +21 -0
  176. package/dist/{chunk-Q37KC3CL.mjs → chunk-YRNI7ZJ7.mjs} +134 -18
  177. package/dist/{chunk-3ZEQVODC.cjs → chunk-ZAK7AFVY.cjs} +2 -2
  178. package/dist/{chunk-W3IHFG4B.cjs → chunk-ZG33TW5I.cjs} +8 -8
  179. package/dist/{chunk-FK6ZROZE.mjs → chunk-ZJYPKTF4.mjs} +2 -1
  180. package/dist/chunk-ZMRODJ3I.mjs +149 -0
  181. package/dist/{chunk-AHD46BFN.mjs → chunk-ZQOQB6GF.mjs} +1 -1
  182. package/dist/dial/DialPanel.cjs +104 -92
  183. package/dist/dial/DialPanel.d.cts +5 -5
  184. package/dist/dial/DialPanel.d.ts +5 -5
  185. package/dist/dial/DialPanel.mjs +103 -91
  186. package/dist/dial/DialProvider.d.cts +16 -51
  187. package/dist/dial/DialProvider.d.ts +16 -51
  188. package/dist/dial/IconRenderer.d.cts +2 -2
  189. package/dist/dial/IconRenderer.d.ts +2 -2
  190. package/dist/dial/components/DialButton.cjs +22 -0
  191. package/dist/dial/components/DialButton.d.cts +28 -0
  192. package/dist/dial/components/DialButton.d.ts +28 -0
  193. package/dist/dial/components/DialButton.mjs +13 -0
  194. package/dist/dial/components/DialCustom.cjs +11 -0
  195. package/dist/dial/components/DialCustom.d.cts +34 -0
  196. package/dist/dial/components/DialCustom.d.ts +34 -0
  197. package/dist/dial/components/DialCustom.mjs +2 -0
  198. package/dist/dial/components/index.cjs +29 -0
  199. package/dist/dial/components/index.d.cts +4 -0
  200. package/dist/dial/components/index.d.ts +4 -0
  201. package/dist/dial/components/index.mjs +16 -0
  202. package/dist/dial/index.cjs +128 -108
  203. package/dist/dial/index.d.cts +5 -1
  204. package/dist/dial/index.d.ts +5 -1
  205. package/dist/dial/index.mjs +103 -91
  206. package/dist/dial/types.cjs +4 -0
  207. package/dist/dial/types.d.cts +21 -0
  208. package/dist/dial/types.d.ts +21 -0
  209. package/dist/dial/types.mjs +1 -0
  210. package/dist/dial/wrapped-inputs/ControlledInputs.cjs +108 -96
  211. package/dist/dial/wrapped-inputs/ControlledInputs.d.cts +8 -8
  212. package/dist/dial/wrapped-inputs/ControlledInputs.d.ts +8 -8
  213. package/dist/dial/wrapped-inputs/ControlledInputs.mjs +103 -91
  214. package/dist/dial/wrapped-inputs/DialArrayInput.cjs +139 -0
  215. package/dist/dial/wrapped-inputs/DialArrayInput.d.cts +20 -0
  216. package/dist/dial/wrapped-inputs/DialArrayInput.d.ts +20 -0
  217. package/dist/dial/wrapped-inputs/DialArrayInput.mjs +130 -0
  218. package/dist/dial/wrapped-inputs/DialInputs.cjs +117 -105
  219. package/dist/dial/wrapped-inputs/DialInputs.d.cts +19 -17
  220. package/dist/dial/wrapped-inputs/DialInputs.d.ts +19 -17
  221. package/dist/dial/wrapped-inputs/DialInputs.mjs +103 -91
  222. package/dist/dial/wrapped-inputs/DialInterfaceInput.cjs +139 -0
  223. package/dist/dial/wrapped-inputs/DialInterfaceInput.d.cts +13 -0
  224. package/dist/dial/wrapped-inputs/DialInterfaceInput.d.ts +13 -0
  225. package/dist/dial/wrapped-inputs/DialInterfaceInput.mjs +130 -0
  226. package/dist/dial/wrapped-inputs/DialPresetsInput.cjs +94 -86
  227. package/dist/dial/wrapped-inputs/DialPresetsInput.d.cts +4 -4
  228. package/dist/dial/wrapped-inputs/DialPresetsInput.d.ts +4 -4
  229. package/dist/dial/wrapped-inputs/DialPresetsInput.mjs +93 -85
  230. package/dist/dial/wrapped-inputs/DialTupleInput.cjs +139 -0
  231. package/dist/dial/wrapped-inputs/DialTupleInput.d.cts +18 -0
  232. package/dist/dial/wrapped-inputs/DialTupleInput.d.ts +18 -0
  233. package/dist/dial/wrapped-inputs/DialTupleInput.mjs +130 -0
  234. package/dist/dial/wrapped-inputs/DialVectorInput.cjs +104 -92
  235. package/dist/dial/wrapped-inputs/DialVectorInput.d.cts +2 -2
  236. package/dist/dial/wrapped-inputs/DialVectorInput.d.ts +2 -2
  237. package/dist/dial/wrapped-inputs/DialVectorInput.mjs +103 -91
  238. package/dist/dial/wrapped-inputs/index.cjs +132 -112
  239. package/dist/dial/wrapped-inputs/index.d.cts +4 -2
  240. package/dist/dial/wrapped-inputs/index.d.ts +4 -2
  241. package/dist/dial/wrapped-inputs/index.mjs +103 -91
  242. package/dist/highlight-cursor/cursor-context.d.cts +2 -2
  243. package/dist/highlight-cursor/cursor-context.d.ts +2 -2
  244. package/dist/highlight-cursor/cursor-provider.cjs +3 -3
  245. package/dist/highlight-cursor/cursor-provider.d.cts +1 -1
  246. package/dist/highlight-cursor/cursor-provider.d.ts +1 -1
  247. package/dist/highlight-cursor/cursor-provider.mjs +2 -2
  248. package/dist/highlight-cursor/enhanced-components.cjs +16 -16
  249. package/dist/highlight-cursor/enhanced-components.d.cts +4 -4
  250. package/dist/highlight-cursor/enhanced-components.d.ts +4 -4
  251. package/dist/highlight-cursor/enhanced-components.mjs +11 -11
  252. package/dist/highlight-cursor/index.cjs +21 -21
  253. package/dist/highlight-cursor/index.mjs +12 -12
  254. package/dist/highlight-cursor/types.d.cts +2 -1
  255. package/dist/highlight-cursor/types.d.ts +2 -1
  256. package/dist/highlight-cursor/with-cursor.d.cts +2 -2
  257. package/dist/highlight-cursor/with-cursor.d.ts +2 -2
  258. package/dist/hooks/clientOnly.d.cts +4 -4
  259. package/dist/hooks/clientOnly.d.ts +4 -4
  260. package/dist/hooks/cn.cjs +2 -2
  261. package/dist/hooks/cn.mjs +1 -1
  262. package/dist/hooks/index.cjs +22 -22
  263. package/dist/hooks/index.mjs +5 -5
  264. package/dist/hooks/useIsMobile.cjs +2 -2
  265. package/dist/hooks/useIsMobile.mjs +1 -1
  266. package/dist/index.cjs +587 -407
  267. package/dist/index.css +13 -76
  268. package/dist/index.d.cts +20 -6
  269. package/dist/index.d.ts +20 -6
  270. package/dist/index.mjs +103 -91
  271. package/dist/schema-types-D9b7Dc1G.d.cts +163 -0
  272. package/dist/schema-types-D9b7Dc1G.d.ts +163 -0
  273. package/dist/styles/theme.css +1 -1
  274. package/dist/ui/DialBadge.cjs +10 -10
  275. package/dist/ui/DialBadge.mjs +6 -6
  276. package/dist/ui/UIKitBadge.cjs +10 -10
  277. package/dist/ui/UIKitBadge.mjs +6 -6
  278. package/dist/ui/alert-dialog.cjs +60 -0
  279. package/dist/ui/alert-dialog.d.cts +17 -0
  280. package/dist/ui/alert-dialog.d.ts +17 -0
  281. package/dist/ui/alert-dialog.mjs +11 -0
  282. package/dist/ui/avatar.cjs +10 -10
  283. package/dist/ui/avatar.d.cts +2 -2
  284. package/dist/ui/avatar.d.ts +2 -2
  285. package/dist/ui/avatar.mjs +6 -6
  286. package/dist/ui/badge.cjs +8 -8
  287. package/dist/ui/badge.d.cts +2 -2
  288. package/dist/ui/badge.d.ts +2 -2
  289. package/dist/ui/badge.mjs +6 -6
  290. package/dist/ui/button.cjs +8 -8
  291. package/dist/ui/button.d.cts +3 -3
  292. package/dist/ui/button.d.ts +3 -3
  293. package/dist/ui/button.mjs +6 -6
  294. package/dist/ui/card.cjs +14 -13
  295. package/dist/ui/card.d.cts +14 -2
  296. package/dist/ui/card.d.ts +14 -2
  297. package/dist/ui/card.mjs +7 -6
  298. package/dist/ui/checkbox.cjs +7 -7
  299. package/dist/ui/checkbox.mjs +6 -6
  300. package/dist/ui/collapsible.cjs +9 -9
  301. package/dist/ui/collapsible.mjs +6 -6
  302. package/dist/ui/context-menu.cjs +76 -0
  303. package/dist/ui/context-menu.d.cts +28 -0
  304. package/dist/ui/context-menu.d.ts +28 -0
  305. package/dist/ui/context-menu.mjs +11 -0
  306. package/dist/ui/drag-selectable/createSelectable.d.cts +2 -2
  307. package/dist/ui/drag-selectable/createSelectable.d.ts +2 -2
  308. package/dist/ui/drawer.cjs +16 -16
  309. package/dist/ui/drawer.d.cts +11 -11
  310. package/dist/ui/drawer.d.ts +11 -11
  311. package/dist/ui/drawer.mjs +6 -6
  312. package/dist/ui/dropdown.cjs +21 -21
  313. package/dist/ui/dropdown.mjs +6 -6
  314. package/dist/ui/index.cjs +485 -317
  315. package/dist/ui/index.d.cts +15 -5
  316. package/dist/ui/index.d.ts +15 -5
  317. package/dist/ui/index.mjs +90 -82
  318. package/dist/ui/inputs/color-input.cjs +8 -8
  319. package/dist/ui/inputs/color-input.d.cts +7 -3
  320. package/dist/ui/inputs/color-input.d.ts +7 -3
  321. package/dist/ui/inputs/color-input.mjs +7 -7
  322. package/dist/ui/inputs/index.cjs +56 -56
  323. package/dist/ui/inputs/index.mjs +25 -25
  324. package/dist/ui/inputs/input-numbers.cjs +8 -8
  325. package/dist/ui/inputs/input-numbers.d.cts +7 -3
  326. package/dist/ui/inputs/input-numbers.d.ts +7 -3
  327. package/dist/ui/inputs/input-numbers.mjs +7 -7
  328. package/dist/ui/inputs/input.cjs +9 -9
  329. package/dist/ui/inputs/input.d.cts +4 -4
  330. package/dist/ui/inputs/input.d.ts +4 -4
  331. package/dist/ui/inputs/input.mjs +6 -6
  332. package/dist/ui/inputs/number-inputs/CmInput.cjs +9 -9
  333. package/dist/ui/inputs/number-inputs/CmInput.d.cts +2 -2
  334. package/dist/ui/inputs/number-inputs/CmInput.d.ts +2 -2
  335. package/dist/ui/inputs/number-inputs/CmInput.mjs +8 -8
  336. package/dist/ui/inputs/number-inputs/DegInput.cjs +9 -9
  337. package/dist/ui/inputs/number-inputs/DegInput.d.cts +2 -2
  338. package/dist/ui/inputs/number-inputs/DegInput.d.ts +2 -2
  339. package/dist/ui/inputs/number-inputs/DegInput.mjs +8 -8
  340. package/dist/ui/inputs/number-inputs/EulerDegInput.cjs +11 -11
  341. package/dist/ui/inputs/number-inputs/EulerDegInput.d.cts +2 -2
  342. package/dist/ui/inputs/number-inputs/EulerDegInput.d.ts +2 -2
  343. package/dist/ui/inputs/number-inputs/EulerDegInput.mjs +10 -10
  344. package/dist/ui/inputs/number-inputs/EulerInput.cjs +10 -10
  345. package/dist/ui/inputs/number-inputs/EulerInput.d.cts +2 -2
  346. package/dist/ui/inputs/number-inputs/EulerInput.d.ts +2 -2
  347. package/dist/ui/inputs/number-inputs/EulerInput.mjs +9 -9
  348. package/dist/ui/inputs/number-inputs/EulerRadInput.cjs +10 -10
  349. package/dist/ui/inputs/number-inputs/EulerRadInput.d.cts +2 -2
  350. package/dist/ui/inputs/number-inputs/EulerRadInput.d.ts +2 -2
  351. package/dist/ui/inputs/number-inputs/EulerRadInput.mjs +9 -9
  352. package/dist/ui/inputs/number-inputs/InchInput.cjs +9 -9
  353. package/dist/ui/inputs/number-inputs/InchInput.d.cts +2 -2
  354. package/dist/ui/inputs/number-inputs/InchInput.d.ts +2 -2
  355. package/dist/ui/inputs/number-inputs/InchInput.mjs +8 -8
  356. package/dist/ui/inputs/number-inputs/IntInput.cjs +9 -9
  357. package/dist/ui/inputs/number-inputs/IntInput.d.cts +2 -2
  358. package/dist/ui/inputs/number-inputs/IntInput.d.ts +2 -2
  359. package/dist/ui/inputs/number-inputs/IntInput.mjs +8 -8
  360. package/dist/ui/inputs/number-inputs/KVectorInput.cjs +10 -10
  361. package/dist/ui/inputs/number-inputs/KVectorInput.d.cts +2 -2
  362. package/dist/ui/inputs/number-inputs/KVectorInput.d.ts +2 -2
  363. package/dist/ui/inputs/number-inputs/KVectorInput.mjs +9 -9
  364. package/dist/ui/inputs/number-inputs/QuaternionInput.cjs +10 -10
  365. package/dist/ui/inputs/number-inputs/QuaternionInput.d.cts +2 -2
  366. package/dist/ui/inputs/number-inputs/QuaternionInput.d.ts +2 -2
  367. package/dist/ui/inputs/number-inputs/QuaternionInput.mjs +9 -9
  368. package/dist/ui/inputs/number-inputs/RadInput.cjs +9 -9
  369. package/dist/ui/inputs/number-inputs/RadInput.d.cts +2 -2
  370. package/dist/ui/inputs/number-inputs/RadInput.d.ts +2 -2
  371. package/dist/ui/inputs/number-inputs/RadInput.mjs +8 -8
  372. package/dist/ui/inputs/number-inputs/TimeInput.cjs +9 -9
  373. package/dist/ui/inputs/number-inputs/TimeInput.d.cts +2 -2
  374. package/dist/ui/inputs/number-inputs/TimeInput.d.ts +2 -2
  375. package/dist/ui/inputs/number-inputs/TimeInput.mjs +8 -8
  376. package/dist/ui/inputs/number-inputs/Vec3Input.cjs +10 -10
  377. package/dist/ui/inputs/number-inputs/Vec3Input.d.cts +2 -2
  378. package/dist/ui/inputs/number-inputs/Vec3Input.d.ts +2 -2
  379. package/dist/ui/inputs/number-inputs/Vec3Input.mjs +9 -9
  380. package/dist/ui/inputs/number-inputs/VectorInput.cjs +9 -9
  381. package/dist/ui/inputs/number-inputs/VectorInput.d.cts +4 -2
  382. package/dist/ui/inputs/number-inputs/VectorInput.d.ts +4 -2
  383. package/dist/ui/inputs/number-inputs/VectorInput.mjs +8 -8
  384. package/dist/ui/inputs/number-inputs/index.cjs +42 -42
  385. package/dist/ui/inputs/number-inputs/index.mjs +20 -20
  386. package/dist/ui/inputs/presets-input.cjs +10 -10
  387. package/dist/ui/inputs/presets-input.d.cts +2 -2
  388. package/dist/ui/inputs/presets-input.d.ts +2 -2
  389. package/dist/ui/inputs/presets-input.mjs +9 -9
  390. package/dist/ui/inputs/presets-rad-input.cjs +11 -11
  391. package/dist/ui/inputs/presets-rad-input.d.cts +2 -2
  392. package/dist/ui/inputs/presets-rad-input.d.ts +2 -2
  393. package/dist/ui/inputs/presets-rad-input.mjs +10 -10
  394. package/dist/ui/inputs/text-input.cjs +8 -8
  395. package/dist/ui/inputs/text-input.d.cts +2 -2
  396. package/dist/ui/inputs/text-input.d.ts +2 -2
  397. package/dist/ui/inputs/text-input.mjs +7 -7
  398. package/dist/ui/label.cjs +7 -7
  399. package/dist/ui/label.d.cts +4 -4
  400. package/dist/ui/label.d.ts +4 -4
  401. package/dist/ui/label.mjs +6 -6
  402. package/dist/ui/layout.cjs +7 -7
  403. package/dist/ui/layout.mjs +6 -6
  404. package/dist/ui/layouts/dock-layout/DockLayoutView.cjs +8 -8
  405. package/dist/ui/layouts/dock-layout/DockLayoutView.d.cts +2 -1
  406. package/dist/ui/layouts/dock-layout/DockLayoutView.d.ts +2 -1
  407. package/dist/ui/layouts/dock-layout/DockLayoutView.mjs +7 -7
  408. package/dist/ui/layouts/dock-layout/LayoutSlots.cjs +12 -12
  409. package/dist/ui/layouts/dock-layout/LayoutSlots.d.cts +3 -3
  410. package/dist/ui/layouts/dock-layout/LayoutSlots.d.ts +3 -3
  411. package/dist/ui/layouts/dock-layout/LayoutSlots.mjs +6 -6
  412. package/dist/ui/layouts/dock-layout/index.cjs +14 -14
  413. package/dist/ui/layouts/dock-layout/index.mjs +7 -7
  414. package/dist/ui/layouts/index.cjs +20 -20
  415. package/dist/ui/layouts/index.mjs +9 -9
  416. package/dist/ui/layouts/liquid-layout/LayoutSlots.cjs +12 -12
  417. package/dist/ui/layouts/liquid-layout/LayoutSlots.mjs +6 -6
  418. package/dist/ui/layouts/liquid-layout/LiquidLayoutView.cjs +8 -8
  419. package/dist/ui/layouts/liquid-layout/LiquidLayoutView.d.cts +13 -1
  420. package/dist/ui/layouts/liquid-layout/LiquidLayoutView.d.ts +13 -1
  421. package/dist/ui/layouts/liquid-layout/LiquidLayoutView.mjs +7 -7
  422. package/dist/ui/layouts/liquid-layout/index.cjs +8 -8
  423. package/dist/ui/layouts/liquid-layout/index.mjs +7 -7
  424. package/dist/ui/modal.cjs +16 -16
  425. package/dist/ui/modal.mjs +6 -6
  426. package/dist/ui/navigation.cjs +8 -8
  427. package/dist/ui/navigation.d.cts +2 -2
  428. package/dist/ui/navigation.d.ts +2 -2
  429. package/dist/ui/navigation.mjs +7 -7
  430. package/dist/ui/pagination.cjs +14 -14
  431. package/dist/ui/pagination.mjs +7 -7
  432. package/dist/ui/popover.cjs +14 -10
  433. package/dist/ui/popover.d.cts +18 -8
  434. package/dist/ui/popover.d.ts +18 -8
  435. package/dist/ui/popover.mjs +6 -6
  436. package/dist/ui/progress.cjs +7 -7
  437. package/dist/ui/progress.d.cts +1 -1
  438. package/dist/ui/progress.d.ts +1 -1
  439. package/dist/ui/progress.mjs +6 -6
  440. package/dist/ui/radio-group.cjs +8 -8
  441. package/dist/ui/radio-group.mjs +6 -6
  442. package/dist/ui/resizable.cjs +9 -9
  443. package/dist/ui/resizable.d.cts +2 -2
  444. package/dist/ui/resizable.d.ts +2 -2
  445. package/dist/ui/resizable.mjs +6 -6
  446. package/dist/ui/select.cjs +17 -17
  447. package/dist/ui/select.d.cts +3 -2
  448. package/dist/ui/select.d.ts +3 -2
  449. package/dist/ui/select.mjs +6 -6
  450. package/dist/ui/separator.cjs +7 -7
  451. package/dist/ui/separator.mjs +6 -6
  452. package/dist/ui/sheet.cjs +14 -14
  453. package/dist/ui/sheet.d.cts +26 -13
  454. package/dist/ui/sheet.d.ts +26 -13
  455. package/dist/ui/sheet.mjs +6 -6
  456. package/dist/ui/sidebar.cjs +36 -36
  457. package/dist/ui/sidebar.mjs +12 -12
  458. package/dist/ui/simple-tree-view.cjs +7 -7
  459. package/dist/ui/simple-tree-view.d.cts +2 -2
  460. package/dist/ui/simple-tree-view.d.ts +2 -2
  461. package/dist/ui/simple-tree-view.mjs +6 -6
  462. package/dist/ui/skeleton.cjs +7 -7
  463. package/dist/ui/skeleton.mjs +6 -6
  464. package/dist/ui/slider.cjs +7 -7
  465. package/dist/ui/slider.d.cts +2 -2
  466. package/dist/ui/slider.d.ts +2 -2
  467. package/dist/ui/slider.mjs +6 -6
  468. package/dist/ui/switch.cjs +7 -7
  469. package/dist/ui/switch.d.cts +4 -1
  470. package/dist/ui/switch.d.ts +4 -1
  471. package/dist/ui/switch.mjs +6 -6
  472. package/dist/ui/table.cjs +14 -14
  473. package/dist/ui/table.d.cts +9 -9
  474. package/dist/ui/table.d.ts +9 -9
  475. package/dist/ui/table.mjs +6 -6
  476. package/dist/ui/tabs.cjs +14 -10
  477. package/dist/ui/tabs.d.cts +25 -7
  478. package/dist/ui/tabs.d.ts +25 -7
  479. package/dist/ui/tabs.mjs +6 -6
  480. package/dist/ui/textarea.cjs +7 -7
  481. package/dist/ui/textarea.d.cts +1 -1
  482. package/dist/ui/textarea.d.ts +1 -1
  483. package/dist/ui/textarea.mjs +6 -6
  484. package/dist/ui/theme/ThemeProvider.cjs +15 -15
  485. package/dist/ui/theme/ThemeProvider.d.cts +3 -3
  486. package/dist/ui/theme/ThemeProvider.d.ts +3 -3
  487. package/dist/ui/theme/ThemeProvider.mjs +1 -1
  488. package/dist/ui/theme/ThemeToggles.cjs +11 -11
  489. package/dist/ui/theme/ThemeToggles.d.cts +18 -3
  490. package/dist/ui/theme/ThemeToggles.d.ts +18 -3
  491. package/dist/ui/theme/ThemeToggles.mjs +9 -9
  492. package/dist/ui/theme/index.cjs +15 -15
  493. package/dist/ui/theme/index.mjs +9 -9
  494. package/dist/ui/theme/themeScript.d.cts +2 -2
  495. package/dist/ui/theme/themeScript.d.ts +2 -2
  496. package/dist/ui/toast.cjs +19 -3
  497. package/dist/ui/toast.d.cts +1 -1
  498. package/dist/ui/toast.d.ts +1 -1
  499. package/dist/ui/toast.mjs +17 -1
  500. package/dist/ui/toggle-buttons.cjs +11 -11
  501. package/dist/ui/toggle-buttons.d.cts +7 -7
  502. package/dist/ui/toggle-buttons.d.ts +7 -7
  503. package/dist/ui/toggle-buttons.mjs +6 -6
  504. package/dist/ui/toggle-group.cjs +9 -9
  505. package/dist/ui/toggle-group.d.cts +3 -3
  506. package/dist/ui/toggle-group.d.ts +3 -3
  507. package/dist/ui/toggle-group.mjs +6 -6
  508. package/dist/ui/toggle.cjs +8 -8
  509. package/dist/ui/toggle.mjs +6 -6
  510. package/dist/ui/toolbar.cjs +9 -9
  511. package/dist/ui/toolbar.mjs +6 -6
  512. package/dist/ui/tooltip.cjs +10 -10
  513. package/dist/ui/tooltip.d.cts +2 -2
  514. package/dist/ui/tooltip.d.ts +2 -2
  515. package/dist/ui/tooltip.mjs +6 -6
  516. package/dist/ui/tree-view/TreeSearchBar.cjs +9 -9
  517. package/dist/ui/tree-view/TreeSearchBar.mjs +8 -8
  518. package/dist/ui/tree-view/TreeView.cjs +10 -8
  519. package/dist/ui/tree-view/TreeView.d.cts +12 -6
  520. package/dist/ui/tree-view/TreeView.d.ts +12 -6
  521. package/dist/ui/tree-view/TreeView.mjs +8 -6
  522. package/dist/ui/tree-view/hooks.cjs +31 -3
  523. package/dist/ui/tree-view/hooks.d.cts +33 -1
  524. package/dist/ui/tree-view/hooks.d.ts +33 -1
  525. package/dist/ui/tree-view/hooks.mjs +1 -1
  526. package/dist/ui/tree-view/index.cjs +49 -20
  527. package/dist/ui/tree-view/index.d.cts +1 -1
  528. package/dist/ui/tree-view/index.d.ts +1 -1
  529. package/dist/ui/tree-view/index.mjs +11 -10
  530. package/dist/ui/tree-view/types.d.cts +1 -0
  531. package/dist/ui/tree-view/types.d.ts +1 -0
  532. package/dist/ui/tree-view-legacy.cjs +13 -13
  533. package/dist/ui/tree-view-legacy.mjs +9 -9
  534. package/dist/ui/virtual-grid/VirtualGrid.cjs +21 -0
  535. package/dist/ui/virtual-grid/VirtualGrid.d.cts +10 -0
  536. package/dist/ui/virtual-grid/VirtualGrid.d.ts +10 -0
  537. package/dist/ui/virtual-grid/VirtualGrid.mjs +12 -0
  538. package/dist/ui/virtual-grid/index.cjs +26 -0
  539. package/dist/ui/virtual-grid/index.d.cts +4 -0
  540. package/dist/ui/virtual-grid/index.d.ts +4 -0
  541. package/dist/ui/virtual-grid/index.mjs +13 -0
  542. package/dist/ui/virtual-grid/types.cjs +2 -0
  543. package/dist/ui/virtual-grid/types.d.cts +70 -0
  544. package/dist/ui/virtual-grid/types.d.ts +70 -0
  545. package/dist/ui/virtual-grid/types.mjs +1 -0
  546. package/dist/ui/virtual-grid/useVirtualGrid.cjs +10 -0
  547. package/dist/ui/virtual-grid/useVirtualGrid.d.cts +9 -0
  548. package/dist/ui/virtual-grid/useVirtualGrid.d.ts +9 -0
  549. package/dist/ui/virtual-grid/useVirtualGrid.mjs +1 -0
  550. package/dist/ui/virtual-list/VirtualList.cjs +21 -0
  551. package/dist/ui/virtual-list/VirtualList.d.cts +10 -0
  552. package/dist/ui/virtual-list/VirtualList.d.ts +10 -0
  553. package/dist/ui/virtual-list/VirtualList.mjs +12 -0
  554. package/dist/ui/virtual-list/index.cjs +26 -0
  555. package/dist/ui/virtual-list/index.d.cts +4 -0
  556. package/dist/ui/virtual-list/index.d.ts +4 -0
  557. package/dist/ui/virtual-list/index.mjs +13 -0
  558. package/dist/ui/virtual-list/types.cjs +2 -0
  559. package/dist/ui/virtual-list/types.d.cts +54 -0
  560. package/dist/ui/virtual-list/types.d.ts +54 -0
  561. package/dist/ui/virtual-list/types.mjs +1 -0
  562. package/dist/ui/virtual-list/useVirtualList.cjs +10 -0
  563. package/dist/ui/virtual-list/useVirtualList.d.cts +9 -0
  564. package/dist/ui/virtual-list/useVirtualList.d.ts +9 -0
  565. package/dist/ui/virtual-list/useVirtualList.mjs +1 -0
  566. package/dist/ui/waterfall/CursorOverlay.cjs +7 -7
  567. package/dist/ui/waterfall/CursorOverlay.mjs +6 -6
  568. package/dist/ui/waterfall/NavigationControls.d.cts +2 -2
  569. package/dist/ui/waterfall/NavigationControls.d.ts +2 -2
  570. package/dist/ui/waterfall/TimelineEvent.cjs +7 -7
  571. package/dist/ui/waterfall/TimelineEvent.mjs +6 -6
  572. package/dist/ui/waterfall/TimelineProcessBar.cjs +7 -7
  573. package/dist/ui/waterfall/TimelineProcessBar.mjs +6 -6
  574. package/dist/ui/waterfall/Wedges.cjs +8 -8
  575. package/dist/ui/waterfall/Wedges.mjs +6 -6
  576. package/dist/ui/waterfall/WheelZoomContext.d.cts +2 -2
  577. package/dist/ui/waterfall/WheelZoomContext.d.ts +2 -2
  578. package/dist/ui/waterfall/hooks/useTimelineState.d.cts +4 -3
  579. package/dist/ui/waterfall/hooks/useTimelineState.d.ts +4 -3
  580. package/dist/ui/waterfall/hooks/useViewport.d.cts +4 -4
  581. package/dist/ui/waterfall/hooks/useViewport.d.ts +4 -4
  582. package/dist/ui/waterfall/index.cjs +20 -19
  583. package/dist/ui/waterfall/index.d.cts +2 -2
  584. package/dist/ui/waterfall/index.d.ts +2 -2
  585. package/dist/ui/waterfall/index.mjs +19 -18
  586. package/package.json +6 -9
  587. package/src/dial/DialPanel.tsx +167 -30
  588. package/src/dial/DialProvider.tsx +20 -68
  589. package/src/dial/components/DialButton.tsx +52 -0
  590. package/src/dial/components/DialCustom.tsx +45 -0
  591. package/src/dial/components/index.ts +3 -0
  592. package/src/dial/index.ts +11 -6
  593. package/src/dial/types.ts +32 -0
  594. package/src/dial/wrapped-inputs/ControlledInputs.tsx +22 -16
  595. package/src/dial/wrapped-inputs/DialArrayInput.tsx +175 -0
  596. package/src/dial/wrapped-inputs/DialInputs.tsx +119 -23
  597. package/src/dial/wrapped-inputs/DialInterfaceInput.tsx +80 -0
  598. package/src/dial/wrapped-inputs/DialPresetsInput.tsx +4 -3
  599. package/src/dial/wrapped-inputs/DialTupleInput.tsx +102 -0
  600. package/src/dial/wrapped-inputs/DialVectorInput.tsx +11 -21
  601. package/src/dial/wrapped-inputs/index.ts +6 -0
  602. package/src/highlight-cursor/cursor-provider.tsx +279 -131
  603. package/src/highlight-cursor/types.ts +2 -1
  604. package/src/hooks/cn.ts +5 -0
  605. package/src/hooks/useIsMobile.ts +14 -30
  606. package/src/index.css +0 -1
  607. package/src/styles/theme.css +2 -2
  608. package/src/ui/DialBadge.tsx +7 -5
  609. package/src/ui/alert-dialog.tsx +168 -0
  610. package/src/ui/badge.tsx +1 -0
  611. package/src/ui/card.tsx +76 -8
  612. package/src/ui/context-menu.tsx +358 -0
  613. package/src/ui/index.ts +6 -0
  614. package/src/ui/inputs/color-input.tsx +92 -8
  615. package/src/ui/inputs/input-numbers.tsx +148 -92
  616. package/src/ui/inputs/number-inputs/EulerRadInput.tsx +43 -42
  617. package/src/ui/inputs/number-inputs/VectorInput.tsx +2 -1
  618. package/src/ui/inputs/presets-rad-input.tsx +5 -2
  619. package/src/ui/inputs/text-input.tsx +1 -1
  620. package/src/ui/layouts/dock-layout/DockLayoutView.tsx +15 -4
  621. package/src/ui/layouts/dock-layout/LayoutSlots.tsx +14 -5
  622. package/src/ui/layouts/liquid-layout/LiquidLayoutView.tsx +44 -5
  623. package/src/ui/popover.tsx +10 -49
  624. package/src/ui/progress.tsx +7 -14
  625. package/src/ui/select.tsx +5 -2
  626. package/src/ui/separator.tsx +1 -1
  627. package/src/ui/sheet.tsx +14 -116
  628. package/src/ui/sidebar.tsx +18 -19
  629. package/src/ui/switch.tsx +7 -2
  630. package/src/ui/tabs.tsx +29 -58
  631. package/src/ui/theme/ThemeProvider.tsx +4 -3
  632. package/src/ui/theme/ThemeToggles.tsx +48 -12
  633. package/src/ui/toast.tsx +13 -16
  634. package/src/ui/tooltip.tsx +3 -30
  635. package/src/ui/tree-view/TreeView.tsx +179 -21
  636. package/src/ui/tree-view/hooks.tsx +148 -0
  637. package/src/ui/tree-view/types.ts +2 -1
  638. package/src/ui/virtual-grid/VirtualGrid.tsx +345 -0
  639. package/src/ui/virtual-grid/index.ts +10 -0
  640. package/src/ui/virtual-grid/types.ts +72 -0
  641. package/src/ui/virtual-grid/useVirtualGrid.ts +243 -0
  642. package/src/ui/virtual-list/VirtualList.tsx +207 -0
  643. package/src/ui/virtual-list/index.ts +8 -0
  644. package/src/ui/virtual-list/types.ts +54 -0
  645. package/src/ui/virtual-list/useVirtualList.ts +203 -0
  646. package/src/ui/waterfall/TimelineProcessBar.tsx +10 -4
  647. package/dist/auth/components/index.cjs +0 -128
  648. package/dist/auth/components/index.d.cts +0 -2
  649. package/dist/auth/components/index.d.ts +0 -2
  650. package/dist/auth/components/index.mjs +0 -119
  651. package/dist/auth/components/user-avatar/index.cjs +0 -127
  652. package/dist/auth/components/user-avatar/index.d.cts +0 -8
  653. package/dist/auth/components/user-avatar/index.d.ts +0 -8
  654. package/dist/auth/components/user-avatar/index.mjs +0 -118
  655. package/dist/auth/context/user-context.cjs +0 -10
  656. package/dist/auth/context/user-context.d.cts +0 -13
  657. package/dist/auth/context/user-context.d.ts +0 -13
  658. package/dist/auth/context/user-context.mjs +0 -1
  659. package/dist/auth/handler/fetch-auth.cjs +0 -11
  660. package/dist/auth/handler/fetch-auth.d.cts +0 -3
  661. package/dist/auth/handler/fetch-auth.d.ts +0 -3
  662. package/dist/auth/handler/fetch-auth.mjs +0 -2
  663. package/dist/auth/handler/fetch-server.cjs +0 -11
  664. package/dist/auth/handler/fetch-server.d.cts +0 -3
  665. package/dist/auth/handler/fetch-server.d.ts +0 -3
  666. package/dist/auth/handler/fetch-server.mjs +0 -2
  667. package/dist/auth/handler/get-session.cjs +0 -12
  668. package/dist/auth/handler/get-session.d.cts +0 -21
  669. package/dist/auth/handler/get-session.d.ts +0 -21
  670. package/dist/auth/handler/get-session.mjs +0 -3
  671. package/dist/auth/handler/get-sessions.cjs +0 -12
  672. package/dist/auth/handler/get-sessions.d.cts +0 -21
  673. package/dist/auth/handler/get-sessions.d.ts +0 -21
  674. package/dist/auth/handler/get-sessions.mjs +0 -3
  675. package/dist/auth/handler/sign-in-handler.cjs +0 -11
  676. package/dist/auth/handler/sign-in-handler.d.cts +0 -6
  677. package/dist/auth/handler/sign-in-handler.d.ts +0 -6
  678. package/dist/auth/handler/sign-in-handler.mjs +0 -2
  679. package/dist/auth/handler/sign-out-handler.cjs +0 -12
  680. package/dist/auth/handler/sign-out-handler.d.cts +0 -5
  681. package/dist/auth/handler/sign-out-handler.d.ts +0 -5
  682. package/dist/auth/handler/sign-out-handler.mjs +0 -3
  683. package/dist/auth/hooks/use-sign-in.cjs +0 -14
  684. package/dist/auth/hooks/use-sign-in.d.cts +0 -9
  685. package/dist/auth/hooks/use-sign-in.d.ts +0 -9
  686. package/dist/auth/hooks/use-sign-in.mjs +0 -5
  687. package/dist/auth/hooks/use-sign-out.cjs +0 -15
  688. package/dist/auth/hooks/use-sign-out.d.cts +0 -6
  689. package/dist/auth/hooks/use-sign-out.d.ts +0 -6
  690. package/dist/auth/hooks/use-sign-out.mjs +0 -6
  691. package/dist/auth/hooks/use-user.cjs +0 -11
  692. package/dist/auth/hooks/use-user.d.cts +0 -8
  693. package/dist/auth/hooks/use-user.d.ts +0 -8
  694. package/dist/auth/hooks/use-user.mjs +0 -2
  695. package/dist/auth/hooks/use-vuer-sessions.cjs +0 -15
  696. package/dist/auth/hooks/use-vuer-sessions.d.cts +0 -9
  697. package/dist/auth/hooks/use-vuer-sessions.d.ts +0 -9
  698. package/dist/auth/hooks/use-vuer-sessions.mjs +0 -6
  699. package/dist/auth/index.cjs +0 -165
  700. package/dist/auth/index.d.cts +0 -13
  701. package/dist/auth/index.d.ts +0 -13
  702. package/dist/auth/index.mjs +0 -124
  703. package/dist/auth/localstorage-key.cjs +0 -14
  704. package/dist/auth/localstorage-key.d.cts +0 -4
  705. package/dist/auth/localstorage-key.d.ts +0 -4
  706. package/dist/auth/localstorage-key.mjs +0 -1
  707. package/dist/auth/types.d.cts +0 -27
  708. package/dist/auth/types.d.ts +0 -27
  709. package/dist/auth/vuer-user-provider.cjs +0 -14
  710. package/dist/auth/vuer-user-provider.d.cts +0 -9
  711. package/dist/auth/vuer-user-provider.d.ts +0 -9
  712. package/dist/auth/vuer-user-provider.mjs +0 -5
  713. package/dist/chunk-2DXJJLJL.mjs +0 -51
  714. package/dist/chunk-2GXIGEKC.mjs +0 -66
  715. package/dist/chunk-3WMO5QJJ.cjs +0 -8
  716. package/dist/chunk-5OHAV55L.mjs +0 -24
  717. package/dist/chunk-6C53NKMF.mjs +0 -206
  718. package/dist/chunk-6GJM7TPE.cjs +0 -28
  719. package/dist/chunk-7E5Y224I.cjs +0 -14
  720. package/dist/chunk-7R5HY3IM.cjs +0 -12
  721. package/dist/chunk-EMVKGL5D.mjs +0 -28
  722. package/dist/chunk-EMXEFZEB.cjs +0 -30
  723. package/dist/chunk-EOSYXHEH.mjs +0 -27
  724. package/dist/chunk-EXXV3BXT.cjs +0 -23
  725. package/dist/chunk-F4Z5KATZ.cjs +0 -8
  726. package/dist/chunk-FROQ45MN.mjs +0 -6
  727. package/dist/chunk-FZAGJSW2.cjs +0 -47
  728. package/dist/chunk-H7RH4CZ7.cjs +0 -54
  729. package/dist/chunk-HOMAESTR.mjs +0 -12
  730. package/dist/chunk-IPQU5CJD.mjs +0 -21
  731. package/dist/chunk-JR4TVE43.cjs +0 -31
  732. package/dist/chunk-KIZEJMW4.cjs +0 -15
  733. package/dist/chunk-KQW3YARN.cjs +0 -117
  734. package/dist/chunk-L2XJ5Q7T.cjs +0 -58
  735. package/dist/chunk-LAPOK2L4.mjs +0 -193
  736. package/dist/chunk-MFYDZKQF.mjs +0 -28
  737. package/dist/chunk-MNCBTS63.cjs +0 -68
  738. package/dist/chunk-MO5V43Z3.mjs +0 -13
  739. package/dist/chunk-MRMSCW3P.cjs +0 -19
  740. package/dist/chunk-OOHCJIRV.cjs +0 -26
  741. package/dist/chunk-PX2H7Z4D.mjs +0 -26
  742. package/dist/chunk-PXDT5GFJ.mjs +0 -13
  743. package/dist/chunk-Q3CJUGX3.cjs +0 -21
  744. package/dist/chunk-Q76WU4DL.cjs +0 -17
  745. package/dist/chunk-R4HT3SYR.cjs +0 -208
  746. package/dist/chunk-RSBVQ7SJ.cjs +0 -54
  747. package/dist/chunk-RTYZO2AC.cjs +0 -30
  748. package/dist/chunk-SO2UTKSV.mjs +0 -17
  749. package/dist/chunk-UT7B4TLZ.mjs +0 -5
  750. package/dist/chunk-V4KDK3BN.mjs +0 -52
  751. package/dist/chunk-V5T6XOSB.cjs +0 -222
  752. package/dist/chunk-VSFPXAGN.mjs +0 -10
  753. package/dist/chunk-VSIOXWSI.cjs +0 -53
  754. package/dist/chunk-WDS3VL7E.mjs +0 -56
  755. package/dist/chunk-X3H6FYAM.cjs +0 -15
  756. package/dist/chunk-XHJDRQD7.mjs +0 -29
  757. package/dist/chunk-Y2XVZEXM.mjs +0 -45
  758. package/dist/chunk-Z7BZFZEV.mjs +0 -15
  759. package/dist/dial/DialProvider.example.cjs +0 -72
  760. package/dist/dial/DialProvider.example.d.cts +0 -7
  761. package/dist/dial/DialProvider.example.d.ts +0 -7
  762. package/dist/dial/DialProvider.example.mjs +0 -68
  763. package/dist/styles/toast.css +0 -64
  764. package/dist/styles/toast.d.cts +0 -2
  765. package/dist/styles/toast.d.ts +0 -2
  766. package/src/auth/components/index.ts +0 -1
  767. package/src/auth/components/user-avatar/index.tsx +0 -94
  768. package/src/auth/context/user-context.ts +0 -15
  769. package/src/auth/handler/fetch-auth.ts +0 -10
  770. package/src/auth/handler/fetch-server.ts +0 -10
  771. package/src/auth/handler/get-session.ts +0 -19
  772. package/src/auth/handler/get-sessions.ts +0 -16
  773. package/src/auth/handler/sign-in-handler.ts +0 -64
  774. package/src/auth/handler/sign-out-handler.ts +0 -9
  775. package/src/auth/hooks/use-sign-in.ts +0 -33
  776. package/src/auth/hooks/use-sign-out.ts +0 -30
  777. package/src/auth/hooks/use-user.ts +0 -10
  778. package/src/auth/hooks/use-vuer-sessions.ts +0 -29
  779. package/src/auth/index.ts +0 -12
  780. package/src/auth/localstorage-key.ts +0 -3
  781. package/src/auth/types.ts +0 -38
  782. package/src/auth/vuer-user-provider.tsx +0 -58
  783. package/src/dial/DialProvider.example.tsx +0 -80
  784. package/src/styles/toast.css +0 -67
  785. /package/dist/{auth/types.mjs → chunk-6NZ5VXK7.mjs} +0 -0
  786. /package/dist/{chunk-UXWS62ZO.mjs → chunk-6THKQIF7.mjs} +0 -0
  787. /package/dist/{auth/types.cjs → chunk-AS3GNGJN.cjs} +0 -0
  788. /package/dist/{chunk-NK7L5H2Y.cjs → chunk-DPILGC4Y.cjs} +0 -0
  789. /package/dist/{chunk-YWECB5GR.cjs → chunk-F4NQLN5E.cjs} +0 -0
  790. /package/dist/{chunk-YYLBP356.mjs → chunk-NU5W73NH.mjs} +0 -0
@@ -1,29 +1,34 @@
1
1
  'use strict';
2
2
 
3
- var chunkUMGNAR3W_cjs = require('./chunk-UMGNAR3W.cjs');
3
+ var chunkW22SQYEO_cjs = require('./chunk-W22SQYEO.cjs');
4
+ var chunkSOHGIAGF_cjs = require('./chunk-SOHGIAGF.cjs');
5
+ var chunkIAWMCOHS_cjs = require('./chunk-IAWMCOHS.cjs');
6
+ var chunkI2COLDHC_cjs = require('./chunk-I2COLDHC.cjs');
7
+ var chunkPZZW3E5D_cjs = require('./chunk-PZZW3E5D.cjs');
8
+ var chunkCMO3SLOU_cjs = require('./chunk-CMO3SLOU.cjs');
9
+ var chunkAFALU3AK_cjs = require('./chunk-AFALU3AK.cjs');
10
+ var chunkWGY33IHV_cjs = require('./chunk-WGY33IHV.cjs');
11
+ var chunkP7J7XHDE_cjs = require('./chunk-P7J7XHDE.cjs');
12
+ var chunkRHVKIZMQ_cjs = require('./chunk-RHVKIZMQ.cjs');
13
+ var chunkJDEZ6NNG_cjs = require('./chunk-JDEZ6NNG.cjs');
14
+ var chunk2KBNQ5PY_cjs = require('./chunk-2KBNQ5PY.cjs');
15
+ var chunkSNUQOJLK_cjs = require('./chunk-SNUQOJLK.cjs');
16
+ var chunkJEWTYDLX_cjs = require('./chunk-JEWTYDLX.cjs');
17
+ var chunkWX3VWVWD_cjs = require('./chunk-WX3VWVWD.cjs');
18
+ var chunkUZTOUPJ7_cjs = require('./chunk-UZTOUPJ7.cjs');
19
+ var chunkT2OAWYOU_cjs = require('./chunk-T2OAWYOU.cjs');
20
+ var chunkQTLUPDLH_cjs = require('./chunk-QTLUPDLH.cjs');
21
+ var chunkACGXE2IO_cjs = require('./chunk-ACGXE2IO.cjs');
22
+ var chunkZAK7AFVY_cjs = require('./chunk-ZAK7AFVY.cjs');
23
+ var chunk7MKCWXNV_cjs = require('./chunk-7MKCWXNV.cjs');
24
+ var chunk4SI4QV5R_cjs = require('./chunk-4SI4QV5R.cjs');
25
+ var chunkPMG3NZF5_cjs = require('./chunk-PMG3NZF5.cjs');
26
+ var chunkHSUL5OUG_cjs = require('./chunk-HSUL5OUG.cjs');
27
+ var chunkR22VW3EK_cjs = require('./chunk-R22VW3EK.cjs');
4
28
  var chunkSL5Q54AH_cjs = require('./chunk-SL5Q54AH.cjs');
5
29
  var chunkO66LWOQY_cjs = require('./chunk-O66LWOQY.cjs');
6
- var chunkQBAZ6TKZ_cjs = require('./chunk-QBAZ6TKZ.cjs');
7
- var chunkSAXISARG_cjs = require('./chunk-SAXISARG.cjs');
8
- var chunkIU65XB2K_cjs = require('./chunk-IU65XB2K.cjs');
9
- var chunkHB65PF7F_cjs = require('./chunk-HB65PF7F.cjs');
10
- var chunkCH3BSVL4_cjs = require('./chunk-CH3BSVL4.cjs');
11
- var chunkWDSOII5A_cjs = require('./chunk-WDSOII5A.cjs');
12
- var chunkNKGUQZTD_cjs = require('./chunk-NKGUQZTD.cjs');
13
- var chunkCKGEV2JL_cjs = require('./chunk-CKGEV2JL.cjs');
14
- var chunkFZAGJSW2_cjs = require('./chunk-FZAGJSW2.cjs');
15
- var chunkLVIZRMYN_cjs = require('./chunk-LVIZRMYN.cjs');
16
- var chunkEY6PKK4X_cjs = require('./chunk-EY6PKK4X.cjs');
17
- var chunkMNCBTS63_cjs = require('./chunk-MNCBTS63.cjs');
18
- var chunk7AEOJFD4_cjs = require('./chunk-7AEOJFD4.cjs');
19
- var chunkASZIBFA6_cjs = require('./chunk-ASZIBFA6.cjs');
20
- var chunkDAVMLI3P_cjs = require('./chunk-DAVMLI3P.cjs');
21
- var chunkU5W4ZALG_cjs = require('./chunk-U5W4ZALG.cjs');
22
- var chunkGTBXRWCK_cjs = require('./chunk-GTBXRWCK.cjs');
23
- var chunkLGFWHV23_cjs = require('./chunk-LGFWHV23.cjs');
24
- var chunk3ZEQVODC_cjs = require('./chunk-3ZEQVODC.cjs');
25
- var chunk5AKVDZMA_cjs = require('./chunk-5AKVDZMA.cjs');
26
30
  var react = require('react');
31
+ var lucideReact = require('lucide-react');
27
32
  var jsxRuntime = require('react/jsx-runtime');
28
33
 
29
34
  var DialInputWrapper = ({
@@ -35,8 +40,8 @@ var DialInputWrapper = ({
35
40
  if (!label) {
36
41
  return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
37
42
  }
38
- return /* @__PURE__ */ jsxRuntime.jsxs(chunk3ZEQVODC_cjs.FormLayout, { orientation: `label-${labelPosition}`, className: "overflow-x-hidden", children: [
39
- /* @__PURE__ */ jsxRuntime.jsxs(chunkLGFWHV23_cjs.Label, { size: "sm", className: "flex items-center gap-1", children: [
43
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkZAK7AFVY_cjs.FormLayout, { orientation: `label-${labelPosition}`, className: "overflow-x-hidden", children: [
44
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkACGXE2IO_cjs.Label, { size: "sm", className: "flex items-center gap-1 pl-1.5", children: [
40
45
  /* @__PURE__ */ jsxRuntime.jsx(chunkO66LWOQY_cjs.IconRenderer, { iconName: icon, size: 14, className: "text-text-secondary" }),
41
46
  label
42
47
  ] }),
@@ -57,29 +62,93 @@ var DialVec3Input = ({
57
62
  const value = getValue(name) ?? [0, 0, 0];
58
63
  const minArray = min !== void 0 ? [min, min, min] : void 0;
59
64
  const maxArray = max !== void 0 ? [max, max, max] : void 0;
65
+ const isLockable = ["position", "rotation", "scale"].includes(name);
66
+ const disabledFields = getValue("disabledFields") ?? [];
67
+ const disabled = react.useMemo(() => {
68
+ if (!isLockable) return void 0;
69
+ return [
70
+ disabledFields.includes(`${name}.0`),
71
+ disabledFields.includes(`${name}.1`),
72
+ disabledFields.includes(`${name}.2`)
73
+ ];
74
+ }, [isLockable, name, disabledFields]);
75
+ const handleSuffixBatchAction = react.useCallback(
76
+ (indices) => {
77
+ if (indices.length === 0) return;
78
+ const firstIndex = indices[0];
79
+ const firstFieldName = `${name}.${firstIndex}`;
80
+ const shouldLock = !disabledFields.includes(firstFieldName);
81
+ const newDisabledFields = [...disabledFields];
82
+ indices.forEach((index) => {
83
+ const fieldName = `${name}.${index}`;
84
+ const fieldIndex = newDisabledFields.indexOf(fieldName);
85
+ if (shouldLock && fieldIndex === -1) {
86
+ newDisabledFields.push(fieldName);
87
+ } else if (!shouldLock && fieldIndex > -1) {
88
+ newDisabledFields.splice(fieldIndex, 1);
89
+ }
90
+ });
91
+ setValue("disabledFields", newDisabledFields);
92
+ },
93
+ [name, disabledFields, setValue]
94
+ );
95
+ const suffix = react.useMemo(() => {
96
+ if (!isLockable) return void 0;
97
+ return [0, 1, 2].map((index) => {
98
+ const isLocked = disabled?.[index] ?? false;
99
+ return /* @__PURE__ */ jsxRuntime.jsx(
100
+ chunkR22VW3EK_cjs.Button,
101
+ {
102
+ variant: "ghost",
103
+ size: "sm",
104
+ icon: true,
105
+ className: "hover:bg-shadow-secondary size-4 p-0",
106
+ title: isLocked ? `Unlock ${["X", "Y", "Z"][index]}` : `Lock ${["X", "Y", "Z"][index]}`,
107
+ children: isLocked ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.LockKeyhole, { strokeWidth: 1.5, className: "text-icon-tertiary size-2.5" }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.LockOpen, { strokeWidth: 1.5, className: "text-icon-tertiary size-2.5" })
108
+ }
109
+ );
110
+ });
111
+ }, [isLockable, disabled]);
112
+ const handleValueChange = react.useCallback(
113
+ (newValue) => {
114
+ if (!isLockable || !disabled) {
115
+ setValue(name, newValue);
116
+ return;
117
+ }
118
+ const filteredValue = newValue.map((v, i) => disabled[i] ? value[i] : v);
119
+ setValue(name, filteredValue);
120
+ },
121
+ [name, setValue, value, isLockable, disabled]
122
+ );
60
123
  if (labelPosition === "inline") {
61
124
  return /* @__PURE__ */ jsxRuntime.jsx(
62
- chunkHB65PF7F_cjs.Vec3Input,
125
+ chunkSOHGIAGF_cjs.Vec3Input,
63
126
  {
64
127
  value,
65
- onValuesChange: (val) => setValue(name, val),
128
+ onValuesChange: handleValueChange,
66
129
  size,
67
130
  step,
68
131
  min: minArray,
69
132
  max: maxArray,
133
+ disabledItems: disabled,
134
+ suffix,
135
+ onSuffixBatchAction: isLockable ? handleSuffixBatchAction : void 0,
70
136
  prefix: label ? [label, "", ""] : void 0
71
137
  }
72
138
  );
73
139
  } else {
74
140
  return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(
75
- chunkHB65PF7F_cjs.Vec3Input,
141
+ chunkSOHGIAGF_cjs.Vec3Input,
76
142
  {
77
143
  value,
78
- onValuesChange: (val) => setValue(name, val),
144
+ onValuesChange: handleValueChange,
79
145
  size,
80
146
  step,
81
147
  min: minArray,
82
- max: maxArray
148
+ max: maxArray,
149
+ disabledItems: disabled,
150
+ suffix,
151
+ onSuffixBatchAction: isLockable ? handleSuffixBatchAction : void 0
83
152
  }
84
153
  ) });
85
154
  }
@@ -96,7 +165,7 @@ var DialEulerInput = ({
96
165
  const value = getValue(name) ?? [0, 0, 0];
97
166
  if (labelPosition === "inline") {
98
167
  return /* @__PURE__ */ jsxRuntime.jsx(
99
- chunkCKGEV2JL_cjs.EulerInput,
168
+ chunkJDEZ6NNG_cjs.EulerInput,
100
169
  {
101
170
  value,
102
171
  onValuesChange: (val) => setValue(name, val),
@@ -107,7 +176,7 @@ var DialEulerInput = ({
107
176
  );
108
177
  } else {
109
178
  return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(
110
- chunkCKGEV2JL_cjs.EulerInput,
179
+ chunkJDEZ6NNG_cjs.EulerInput,
111
180
  {
112
181
  value,
113
182
  onValuesChange: (val) => setValue(name, val),
@@ -129,7 +198,7 @@ var DialEulerDegInput = ({
129
198
  const value = getValue(name) ?? [0, 0, 0];
130
199
  if (labelPosition === "inline") {
131
200
  return /* @__PURE__ */ jsxRuntime.jsx(
132
- chunkNKGUQZTD_cjs.EulerDegInput,
201
+ chunkRHVKIZMQ_cjs.EulerDegInput,
133
202
  {
134
203
  value,
135
204
  onValuesChange: (val) => setValue(name, val),
@@ -140,7 +209,7 @@ var DialEulerDegInput = ({
140
209
  );
141
210
  } else {
142
211
  return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(
143
- chunkNKGUQZTD_cjs.EulerDegInput,
212
+ chunkRHVKIZMQ_cjs.EulerDegInput,
144
213
  {
145
214
  value,
146
215
  onValuesChange: (val) => setValue(name, val),
@@ -162,7 +231,7 @@ var DialQuaternionInput = ({
162
231
  const value = getValue(name) ?? [1, 0, 0, 0];
163
232
  if (labelPosition === "inline") {
164
233
  return /* @__PURE__ */ jsxRuntime.jsx(
165
- chunkSAXISARG_cjs.QuaternionInput,
234
+ chunkCMO3SLOU_cjs.QuaternionInput,
166
235
  {
167
236
  value,
168
237
  onValuesChange: (val) => setValue(name, val),
@@ -173,7 +242,7 @@ var DialQuaternionInput = ({
173
242
  );
174
243
  } else {
175
244
  return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(
176
- chunkSAXISARG_cjs.QuaternionInput,
245
+ chunkCMO3SLOU_cjs.QuaternionInput,
177
246
  {
178
247
  value,
179
248
  onValuesChange: (val) => setValue(name, val),
@@ -196,7 +265,7 @@ var DialVectorInput = ({
196
265
  const value = getValue(name) ?? new Array(dimensions).fill(0);
197
266
  if (labelPosition === "inline") {
198
267
  return /* @__PURE__ */ jsxRuntime.jsx(
199
- chunkLVIZRMYN_cjs.VectorInput,
268
+ chunk2KBNQ5PY_cjs.VectorInput,
200
269
  {
201
270
  value,
202
271
  onValuesChange: (val) => setValue(name, val),
@@ -207,7 +276,7 @@ var DialVectorInput = ({
207
276
  );
208
277
  } else {
209
278
  return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(
210
- chunkLVIZRMYN_cjs.VectorInput,
279
+ chunk2KBNQ5PY_cjs.VectorInput,
211
280
  {
212
281
  value,
213
282
  onValuesChange: (val) => setValue(name, val),
@@ -231,7 +300,7 @@ var DialIntInput = ({
231
300
  const value = getValue(name) ?? 0;
232
301
  if (labelPosition === "inline") {
233
302
  return /* @__PURE__ */ jsxRuntime.jsx(
234
- chunkQBAZ6TKZ_cjs.IntInput,
303
+ chunkPZZW3E5D_cjs.IntInput,
235
304
  {
236
305
  value,
237
306
  prefix: label ? [label] : void 0,
@@ -244,7 +313,7 @@ var DialIntInput = ({
244
313
  );
245
314
  } else {
246
315
  return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(
247
- chunkQBAZ6TKZ_cjs.IntInput,
316
+ chunkPZZW3E5D_cjs.IntInput,
248
317
  {
249
318
  value,
250
319
  onChange: (val) => setValue(name, val),
@@ -268,7 +337,7 @@ var DialDegInput = ({
268
337
  const value = getValue(name) ?? 0;
269
338
  if (labelPosition === "inline") {
270
339
  return /* @__PURE__ */ jsxRuntime.jsx(
271
- chunkWDSOII5A_cjs.DegInput,
340
+ chunkP7J7XHDE_cjs.DegInput,
272
341
  {
273
342
  value,
274
343
  onChange: (val) => setValue(name, val),
@@ -278,7 +347,7 @@ var DialDegInput = ({
278
347
  }
279
348
  );
280
349
  } else {
281
- return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkWDSOII5A_cjs.DegInput, { value, onChange: (val) => setValue(name, val), size, step }) });
350
+ return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkP7J7XHDE_cjs.DegInput, { value, onChange: (val) => setValue(name, val), size, step }) });
282
351
  }
283
352
  };
284
353
  var DialRadInput = ({
@@ -293,7 +362,7 @@ var DialRadInput = ({
293
362
  const value = getValue(name) ?? 0;
294
363
  if (labelPosition === "inline") {
295
364
  return /* @__PURE__ */ jsxRuntime.jsx(
296
- chunk7AEOJFD4_cjs.RadInput,
365
+ chunkWX3VWVWD_cjs.RadInput,
297
366
  {
298
367
  value,
299
368
  onChange: (val) => setValue(name, val),
@@ -303,7 +372,7 @@ var DialRadInput = ({
303
372
  }
304
373
  );
305
374
  } else {
306
- return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunk7AEOJFD4_cjs.RadInput, { value, onChange: (val) => setValue(name, val), size, step }) });
375
+ return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkWX3VWVWD_cjs.RadInput, { value, onChange: (val) => setValue(name, val), size, step }) });
307
376
  }
308
377
  };
309
378
  var DialCmInput = ({
@@ -318,7 +387,7 @@ var DialCmInput = ({
318
387
  const value = getValue(name) ?? 0;
319
388
  if (labelPosition === "inline") {
320
389
  return /* @__PURE__ */ jsxRuntime.jsx(
321
- chunkCH3BSVL4_cjs.CmInput,
390
+ chunkWGY33IHV_cjs.CmInput,
322
391
  {
323
392
  value,
324
393
  onChange: (val) => setValue(name, val),
@@ -328,7 +397,7 @@ var DialCmInput = ({
328
397
  }
329
398
  );
330
399
  } else {
331
- return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkCH3BSVL4_cjs.CmInput, { value, onChange: (val) => setValue(name, val), size, step }) });
400
+ return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkWGY33IHV_cjs.CmInput, { value, onChange: (val) => setValue(name, val), size, step }) });
332
401
  }
333
402
  };
334
403
  var DialInchInput = ({
@@ -343,7 +412,7 @@ var DialInchInput = ({
343
412
  const value = getValue(name) ?? 0;
344
413
  if (labelPosition === "inline") {
345
414
  return /* @__PURE__ */ jsxRuntime.jsx(
346
- chunkEY6PKK4X_cjs.InchInput,
415
+ chunkI2COLDHC_cjs.InchInput,
347
416
  {
348
417
  value,
349
418
  onChange: (val) => setValue(name, val),
@@ -353,7 +422,7 @@ var DialInchInput = ({
353
422
  }
354
423
  );
355
424
  } else {
356
- return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkEY6PKK4X_cjs.InchInput, { value, onChange: (val) => setValue(name, val), size, step }) });
425
+ return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkI2COLDHC_cjs.InchInput, { value, onChange: (val) => setValue(name, val), size, step }) });
357
426
  }
358
427
  };
359
428
  var DialTimeInput = ({
@@ -368,7 +437,7 @@ var DialTimeInput = ({
368
437
  const value = getValue(name) ?? 0;
369
438
  if (labelPosition === "inline") {
370
439
  return /* @__PURE__ */ jsxRuntime.jsx(
371
- chunkIU65XB2K_cjs.TimeInput,
440
+ chunkAFALU3AK_cjs.TimeInput,
372
441
  {
373
442
  value,
374
443
  onChange: (val) => setValue(name, val),
@@ -378,7 +447,7 @@ var DialTimeInput = ({
378
447
  }
379
448
  );
380
449
  } else {
381
- return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkIU65XB2K_cjs.TimeInput, { value, onChange: (val) => setValue(name, val), size, step }) });
450
+ return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkAFALU3AK_cjs.TimeInput, { value, onChange: (val) => setValue(name, val), size, step }) });
382
451
  }
383
452
  };
384
453
  var DialTextInput = ({
@@ -393,7 +462,7 @@ var DialTextInput = ({
393
462
  const value = getValue(name) ?? "";
394
463
  if (labelPosition === "inline") {
395
464
  return /* @__PURE__ */ jsxRuntime.jsx(
396
- chunkDAVMLI3P_cjs.TextInput,
465
+ chunkSNUQOJLK_cjs.TextInput,
397
466
  {
398
467
  value,
399
468
  onChange: (val) => setValue(name, val),
@@ -403,8 +472,8 @@ var DialTextInput = ({
403
472
  }
404
473
  );
405
474
  } else {
406
- return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(
407
- chunkDAVMLI3P_cjs.TextInput,
475
+ return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, labelPosition, children: /* @__PURE__ */ jsxRuntime.jsx(
476
+ chunkSNUQOJLK_cjs.TextInput,
408
477
  {
409
478
  value,
410
479
  onChange: (val) => setValue(name, val),
@@ -420,31 +489,33 @@ var DialEulerRadInput = ({
420
489
  size = "sm",
421
490
  step,
422
491
  labelPosition,
423
- icon
492
+ icon,
493
+ format = "rad"
494
+ // Default to radians
424
495
  }) => {
425
496
  const { getValue, setValue } = chunkSL5Q54AH_cjs.useDialSchema();
426
497
  const value = getValue(name) ?? [0, 0, 0];
427
498
  if (labelPosition === "inline") {
428
499
  return /* @__PURE__ */ jsxRuntime.jsx(
429
- chunkFZAGJSW2_cjs.EulerRadInput,
500
+ chunkIAWMCOHS_cjs.EulerRadInput,
430
501
  {
431
502
  value,
432
503
  onValuesChange: (val) => setValue(name, val),
433
504
  size,
434
505
  step,
435
- display: "deg",
506
+ display: format,
436
507
  prefix: label ? [label, "", ""] : void 0
437
508
  }
438
509
  );
439
510
  } else {
440
511
  return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(
441
- chunkFZAGJSW2_cjs.EulerRadInput,
512
+ chunkIAWMCOHS_cjs.EulerRadInput,
442
513
  {
443
514
  value,
444
515
  onValuesChange: (val) => setValue(name, val),
445
516
  size,
446
517
  step,
447
- display: "deg"
518
+ display: format
448
519
  }
449
520
  ) });
450
521
  }
@@ -455,28 +526,35 @@ var DialNumberRadInput = ({
455
526
  size = "sm",
456
527
  step,
457
528
  labelPosition,
458
- icon
529
+ icon,
530
+ format = "rad"
531
+ // Default to radians
459
532
  }) => {
460
533
  const { getValue, setValue } = chunkSL5Q54AH_cjs.useDialSchema();
461
534
  const value = getValue(name) ?? 0;
462
- const degValue = value * 180 / Math.PI;
463
- const handleChange = (deg) => {
464
- const rad = deg * Math.PI / 180;
465
- setValue(name, rad);
466
- };
467
535
  if (labelPosition === "inline") {
468
536
  return /* @__PURE__ */ jsxRuntime.jsx(
469
- chunkWDSOII5A_cjs.DegInput,
537
+ chunkWX3VWVWD_cjs.RadInput,
470
538
  {
471
- value: degValue,
472
- onChange: handleChange,
539
+ value,
540
+ onChange: (val) => setValue(name, val),
541
+ display: format,
473
542
  size,
474
543
  step,
475
544
  prefix: label ? [label] : void 0
476
545
  }
477
546
  );
478
547
  } else {
479
- return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(chunkWDSOII5A_cjs.DegInput, { value: degValue, onChange: handleChange, size, step }) });
548
+ return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper, { name, label, icon, children: /* @__PURE__ */ jsxRuntime.jsx(
549
+ chunkWX3VWVWD_cjs.RadInput,
550
+ {
551
+ value,
552
+ onChange: (val) => setValue(name, val),
553
+ display: format,
554
+ size,
555
+ step
556
+ }
557
+ ) });
480
558
  }
481
559
  };
482
560
  var DialVectorInput2 = ({
@@ -516,25 +594,17 @@ var DialVectorInput2 = ({
516
594
  const steps = schema.steps || [];
517
595
  const mins = schema.mins || [];
518
596
  const maxs = schema.maxs || [];
519
- const tags = schema.tags || {};
520
- const vectorValue = Array.isArray(value) ? value.concat(Array(Math.max(0, dimensions - value.length)).fill(0)) : Array(dimensions).fill(0);
597
+ const defaults = Array.isArray(schema.value) ? schema.value : [];
598
+ const vectorValue = Array.isArray(value) ? value.concat(
599
+ Array.from(
600
+ { length: Math.max(0, dimensions - value.length) },
601
+ (_, i) => defaults[value.length + i] !== void 0 ? defaults[value.length + i] : 0
602
+ )
603
+ ) : Array.from({ length: dimensions }, (_, i) => defaults[i] !== void 0 ? defaults[i] : 0);
521
604
  const hasMixedTypes = dtypes.some((dtype) => dtype === "boolean");
522
- let gridAutoFlow;
523
- let gridColumns;
524
- let gridRows;
525
- if (typeof tags.col === "number") {
526
- gridAutoFlow = "column";
527
- gridRows = tags.col;
528
- gridColumns = void 0;
529
- } else if (typeof tags.row === "number") {
530
- gridAutoFlow = "row";
531
- gridColumns = tags.row;
532
- gridRows = void 0;
533
- } else {
534
- gridAutoFlow = "row";
535
- gridColumns = void 0;
536
- gridRows = void 0;
537
- }
605
+ const gridAutoFlow = schema.vectorFlow === "row" ? "row" : "column";
606
+ const gridColumns = typeof schema.vectorCols === "number" ? schema.vectorCols : void 0;
607
+ const gridRows = typeof schema.vectorRows === "number" ? schema.vectorRows : void 0;
538
608
  if (hasMixedTypes) {
539
609
  const numberIndices = [];
540
610
  const booleanIndices = [];
@@ -566,7 +636,7 @@ var DialVectorInput2 = ({
566
636
  });
567
637
  const mixedInputComponent = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
568
638
  numberIndices.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
569
- chunkLVIZRMYN_cjs.VectorInput,
639
+ chunk2KBNQ5PY_cjs.VectorInput,
570
640
  {
571
641
  value: numberValues,
572
642
  onValuesChange: (newValues) => handleNumberValuesChange(newValues, vectorValue, numberIndices),
@@ -586,7 +656,7 @@ var DialVectorInput2 = ({
586
656
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
587
657
  placeholder && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-text-primary text-uk-sm", children: placeholder }),
588
658
  /* @__PURE__ */ jsxRuntime.jsx(
589
- chunkGTBXRWCK_cjs.Switch,
659
+ chunkQTLUPDLH_cjs.Switch,
590
660
  {
591
661
  checked: Boolean(currentValue),
592
662
  onCheckedChange: (checked) => handleValueChange(originalIndex, checked, vectorValue)
@@ -598,8 +668,8 @@ var DialVectorInput2 = ({
598
668
  if (!label) {
599
669
  return mixedInputComponent;
600
670
  }
601
- return /* @__PURE__ */ jsxRuntime.jsxs(chunk3ZEQVODC_cjs.FormLayout, { orientation: `label-${labelPosition}`, children: [
602
- /* @__PURE__ */ jsxRuntime.jsxs(chunkLGFWHV23_cjs.Label, { size: "sm", className: "flex items-center gap-1", children: [
671
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkZAK7AFVY_cjs.FormLayout, { orientation: `label-${labelPosition}`, children: [
672
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkACGXE2IO_cjs.Label, { size: "sm", className: "flex items-center gap-1", children: [
603
673
  /* @__PURE__ */ jsxRuntime.jsx(chunkO66LWOQY_cjs.IconRenderer, { iconName: icon, size: 14, className: "text-text-secondary" }),
604
674
  label
605
675
  ] }),
@@ -625,7 +695,7 @@ var DialVectorInput2 = ({
625
695
  });
626
696
  const labels = placeholders.length > 0 ? placeholders.map((p) => /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs", children: p })) : void 0;
627
697
  const inputComponent = /* @__PURE__ */ jsxRuntime.jsx(
628
- chunkLVIZRMYN_cjs.VectorInput,
698
+ chunk2KBNQ5PY_cjs.VectorInput,
629
699
  {
630
700
  value: vectorValue,
631
701
  onValuesChange: (newValues) => setValue(name, newValues),
@@ -642,8 +712,8 @@ var DialVectorInput2 = ({
642
712
  if (!label) {
643
713
  return inputComponent;
644
714
  }
645
- return /* @__PURE__ */ jsxRuntime.jsxs(chunk3ZEQVODC_cjs.FormLayout, { orientation: `label-${labelPosition}`, children: [
646
- /* @__PURE__ */ jsxRuntime.jsxs(chunkLGFWHV23_cjs.Label, { size: "sm", className: "flex items-center gap-1", children: [
715
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkZAK7AFVY_cjs.FormLayout, { orientation: `label-${labelPosition}`, children: [
716
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkACGXE2IO_cjs.Label, { size: "sm", className: "flex items-center gap-1 pl-1.5", children: [
647
717
  /* @__PURE__ */ jsxRuntime.jsx(chunkO66LWOQY_cjs.IconRenderer, { iconName: icon, size: 14, className: "text-text-secondary" }),
648
718
  label
649
719
  ] }),
@@ -660,6 +730,296 @@ var DialVectorInput2 = ({
660
730
  ] })
661
731
  ] });
662
732
  };
733
+ var DialTupleInput = ({
734
+ name,
735
+ label,
736
+ labelPosition = "top",
737
+ icon
738
+ }) => {
739
+ const { getValue, setValue, schemas } = chunkSL5Q54AH_cjs.useDialSchema();
740
+ const values = react.useMemo(() => getValue(name) || [], [getValue, name]);
741
+ const handleElementChange = react.useCallback(
742
+ (elementName, value) => {
743
+ const newValues = Array.isArray(values) ? [...values] : [];
744
+ const schema2 = schemas.find((s) => s.name === name);
745
+ if (!schema2 || !schema2.typeDefinition?.schemas) {
746
+ return;
747
+ }
748
+ const elementIndex = schema2.typeDefinition.schemas.findIndex((s) => s.name === elementName);
749
+ if (elementIndex >= 0) {
750
+ newValues[elementIndex] = value;
751
+ setValue(name, newValues);
752
+ }
753
+ },
754
+ [name, setValue, values, schemas]
755
+ );
756
+ const schema = schemas.find((s) => s.name === name);
757
+ if (!schema || !schema.typeDefinition?.schemas) {
758
+ return null;
759
+ }
760
+ const valuesObject = {};
761
+ schema.typeDefinition.schemas.forEach((elemSchema, index) => {
762
+ valuesObject[elemSchema.name] = Array.isArray(values) ? values[index] : void 0;
763
+ });
764
+ const tupleContent = /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-surface-secondary flex flex-col gap-2 rounded-md border p-2", children: /* @__PURE__ */ jsxRuntime.jsx(
765
+ chunkSL5Q54AH_cjs.DialProvider,
766
+ {
767
+ schemas: schema.typeDefinition.schemas,
768
+ values: valuesObject,
769
+ onValueChange: handleElementChange,
770
+ children: /* @__PURE__ */ jsxRuntime.jsx(
771
+ DialPanel,
772
+ {
773
+ schemas: schema.typeDefinition.schemas,
774
+ groups: schema.typeDefinition.groups,
775
+ labelLayout: schema.labelPosition
776
+ }
777
+ )
778
+ }
779
+ ) });
780
+ if (!label) {
781
+ return tupleContent;
782
+ }
783
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkZAK7AFVY_cjs.FormLayout, { orientation: `label-${labelPosition}`, children: [
784
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkACGXE2IO_cjs.Label, { size: "sm", className: "flex items-center gap-1 pl-1.5", children: [
785
+ /* @__PURE__ */ jsxRuntime.jsx(chunkO66LWOQY_cjs.IconRenderer, { iconName: icon, size: 14, className: "text-text-secondary" }),
786
+ label
787
+ ] }),
788
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2 pl-1.5", children: [
789
+ schema.helpText && /* @__PURE__ */ jsxRuntime.jsxs(
790
+ "span",
791
+ {
792
+ className: "text-text-secondary cursor-help text-xs",
793
+ title: schema.helpText,
794
+ children: [
795
+ "\u24D8 ",
796
+ schema.helpText
797
+ ]
798
+ }
799
+ ),
800
+ tupleContent
801
+ ] })
802
+ ] });
803
+ };
804
+ var DialArrayInput = ({
805
+ name,
806
+ label,
807
+ labelPosition = "top",
808
+ icon
809
+ }) => {
810
+ const { getValue, setValue, schemas } = chunkSL5Q54AH_cjs.useDialSchema();
811
+ const schema = schemas.find((s) => s.name === name);
812
+ const arrayValue = react.useMemo(
813
+ () => getValue(name) || [],
814
+ [getValue, name]
815
+ );
816
+ const elementType = schema?.arrayElementType || "string";
817
+ const handleAddItem = react.useCallback(() => {
818
+ const newValue = [...arrayValue];
819
+ switch (elementType) {
820
+ case "number":
821
+ newValue.push(0);
822
+ break;
823
+ case "boolean":
824
+ newValue.push(false);
825
+ break;
826
+ default:
827
+ newValue.push("");
828
+ break;
829
+ }
830
+ setValue(name, newValue);
831
+ }, [arrayValue, elementType, name, setValue]);
832
+ const handleRemoveItem = react.useCallback(
833
+ (index) => {
834
+ const newValue = arrayValue.filter((_, i) => i !== index);
835
+ setValue(name, newValue);
836
+ },
837
+ [arrayValue, name, setValue]
838
+ );
839
+ const handleItemChange = react.useCallback(
840
+ (index, value) => {
841
+ const newValue = [...arrayValue];
842
+ newValue[index] = value;
843
+ setValue(name, newValue);
844
+ },
845
+ [arrayValue, name, setValue]
846
+ );
847
+ if (!schema) {
848
+ return null;
849
+ }
850
+ const renderItemInput = (item, index) => {
851
+ const itemKey = `${name}-${index}`;
852
+ switch (elementType) {
853
+ case "boolean":
854
+ return /* @__PURE__ */ jsxRuntime.jsx(
855
+ chunkQTLUPDLH_cjs.Switch,
856
+ {
857
+ checked: item,
858
+ onCheckedChange: (checked) => handleItemChange(index, checked)
859
+ },
860
+ itemKey
861
+ );
862
+ case "number":
863
+ return /* @__PURE__ */ jsxRuntime.jsx(
864
+ chunkPMG3NZF5_cjs.InputRoot,
865
+ {
866
+ type: "number",
867
+ value: item,
868
+ onChange: (e) => handleItemChange(index, Number(e.target.value)),
869
+ className: "flex-1",
870
+ step: schema.step || 0.1,
871
+ min: schema.min,
872
+ max: schema.max
873
+ },
874
+ itemKey
875
+ );
876
+ default:
877
+ return /* @__PURE__ */ jsxRuntime.jsx(
878
+ chunkPMG3NZF5_cjs.InputRoot,
879
+ {
880
+ type: "text",
881
+ value: item,
882
+ onChange: (e) => handleItemChange(index, e.target.value),
883
+ className: "flex-1",
884
+ placeholder: schema.placeholder
885
+ },
886
+ itemKey
887
+ );
888
+ }
889
+ };
890
+ const arrayContent = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
891
+ arrayValue.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
892
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-text-secondary min-w-[20px] text-xs", children: [
893
+ index + 1,
894
+ "."
895
+ ] }),
896
+ renderItemInput(item, index),
897
+ /* @__PURE__ */ jsxRuntime.jsx(
898
+ chunkR22VW3EK_cjs.Button,
899
+ {
900
+ variant: "ghost",
901
+ size: "sm",
902
+ icon: true,
903
+ onClick: () => handleRemoveItem(index),
904
+ className: "h-8 w-8",
905
+ title: "Remove item",
906
+ children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "h-4 w-4" })
907
+ }
908
+ )
909
+ ] }, `${name}-item-${index}`)),
910
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkR22VW3EK_cjs.Button, { variant: "secondary", size: "sm", onClick: handleAddItem, className: "self-start", children: [
911
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { className: "mr-1 h-4 w-4" }),
912
+ "Add ",
913
+ elementType
914
+ ] }),
915
+ arrayValue.length === 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-text-secondary text-sm italic", children: [
916
+ 'No items. Click "Add ',
917
+ elementType,
918
+ '" to start.'
919
+ ] })
920
+ ] });
921
+ if (!label) {
922
+ return arrayContent;
923
+ }
924
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkZAK7AFVY_cjs.FormLayout, { orientation: `label-${labelPosition}`, children: [
925
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkACGXE2IO_cjs.Label, { size: "sm", className: "flex items-center gap-1 pl-1.5", children: [
926
+ /* @__PURE__ */ jsxRuntime.jsx(chunkO66LWOQY_cjs.IconRenderer, { iconName: icon, size: 14, className: "text-text-secondary" }),
927
+ label
928
+ ] }),
929
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2 pl-1.5", children: [
930
+ schema.helpText && /* @__PURE__ */ jsxRuntime.jsxs(
931
+ "span",
932
+ {
933
+ className: "text-text-secondary cursor-help text-xs",
934
+ title: schema.helpText,
935
+ children: [
936
+ "\u24D8 ",
937
+ schema.helpText
938
+ ]
939
+ }
940
+ ),
941
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-surface-secondary rounded-md border p-2", children: arrayContent })
942
+ ] })
943
+ ] });
944
+ };
945
+ var DialInterfaceInput = ({
946
+ name,
947
+ label,
948
+ labelPosition = "top",
949
+ icon
950
+ }) => {
951
+ const { getValue, setValue, schemas } = chunkSL5Q54AH_cjs.useDialSchema();
952
+ const values = getValue(name);
953
+ const handlePropertyChange = react.useCallback(
954
+ (propName, value) => {
955
+ const newValues = { ...values };
956
+ newValues[propName] = value;
957
+ setValue(name, newValues);
958
+ },
959
+ [name, setValue, values]
960
+ );
961
+ const schema = schemas.find((s) => s.name === name);
962
+ if (!schema || !schema.typeDefinition?.schemas) {
963
+ return null;
964
+ }
965
+ const interfaceContent = /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-surface-secondary flex flex-col gap-2 rounded-md border p-2", children: /* @__PURE__ */ jsxRuntime.jsx(
966
+ chunkSL5Q54AH_cjs.DialProvider,
967
+ {
968
+ schemas: schema.typeDefinition.schemas,
969
+ values,
970
+ onValueChange: handlePropertyChange,
971
+ children: /* @__PURE__ */ jsxRuntime.jsx(
972
+ DialPanel,
973
+ {
974
+ schemas: schema.typeDefinition.schemas,
975
+ groups: schema.typeDefinition.groups,
976
+ labelLayout: schema.labelPosition
977
+ }
978
+ )
979
+ }
980
+ ) });
981
+ if (!label) {
982
+ return interfaceContent;
983
+ }
984
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkZAK7AFVY_cjs.FormLayout, { orientation: `label-${labelPosition}`, children: [
985
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkACGXE2IO_cjs.Label, { size: "sm", className: "flex items-center gap-1 pl-1.5", children: [
986
+ /* @__PURE__ */ jsxRuntime.jsx(chunkO66LWOQY_cjs.IconRenderer, { iconName: icon, size: 14, className: "text-text-secondary" }),
987
+ label
988
+ ] }),
989
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2 pl-1.5", children: [
990
+ schema.helpText && /* @__PURE__ */ jsxRuntime.jsxs(
991
+ "span",
992
+ {
993
+ className: "text-text-secondary cursor-help text-xs",
994
+ title: schema.helpText,
995
+ children: [
996
+ "\u24D8 ",
997
+ schema.helpText
998
+ ]
999
+ }
1000
+ ),
1001
+ interfaceContent
1002
+ ] })
1003
+ ] });
1004
+ };
1005
+ var generateGroupStyle = (config) => {
1006
+ const layout = config?.layout ?? "grid";
1007
+ if (layout === "grid") {
1008
+ return {
1009
+ display: "grid",
1010
+ gap: "0.5rem",
1011
+ gridAutoFlow: config?.gridFlow,
1012
+ gridTemplateColumns: config?.gridColTemplate ? config.gridColTemplate : config?.gridCols ? `repeat(${config.gridCols}, 1fr)` : "1fr",
1013
+ gridTemplateRows: config?.gridRowTemplate ? config.gridRowTemplate : config?.gridRows ? `repeat(${config.gridRows}, 1fr)` : void 0
1014
+ };
1015
+ }
1016
+ return {
1017
+ display: "flex",
1018
+ gap: "0.5rem",
1019
+ flexWrap: config?.flexWrap ?? "wrap",
1020
+ justifyContent: config?.flexJustifyContent
1021
+ };
1022
+ };
663
1023
  var DialPanel = ({
664
1024
  schemas,
665
1025
  groups: groupConfigs,
@@ -671,19 +1031,10 @@ var DialPanel = ({
671
1031
  groupConfigMap[config.name] = config;
672
1032
  });
673
1033
  }
674
- schemas.forEach((schema) => {
675
- const grouping = schema.tags?.grouping;
676
- if (grouping && !groupConfigMap[grouping]) {
677
- groupConfigMap[grouping] = { name: grouping };
678
- }
679
- if (grouping && schema.tags?.noWrap && groupConfigMap[grouping]) {
680
- groupConfigMap[grouping].noWrap = true;
681
- }
682
- });
683
1034
  const groupedSchemas = {};
684
1035
  const ungrouped = [];
685
1036
  schemas.forEach((schema) => {
686
- const grouping = schema.tags?.grouping;
1037
+ const grouping = schema?.grouping;
687
1038
  if (grouping) {
688
1039
  if (!groupedSchemas[grouping]) {
689
1040
  groupedSchemas[grouping] = [];
@@ -694,10 +1045,44 @@ var DialPanel = ({
694
1045
  }
695
1046
  });
696
1047
  const renderSchemaInput = (schema) => {
697
- const { name, dtype, icon, min, max, step, options, tags } = schema;
698
- const effectiveLabelPosition = tags?.labelPosition || labelLayout;
1048
+ const { name, dtype, icon, min, max, step, options } = schema;
1049
+ const effectiveLabelPosition = schema?.labelPosition || labelLayout;
699
1050
  const label = schema.label || name.charAt(0).toUpperCase() + name.slice(1);
700
1051
  switch (dtype) {
1052
+ case "tuple":
1053
+ return /* @__PURE__ */ jsxRuntime.jsx(
1054
+ DialTupleInput,
1055
+ {
1056
+ name,
1057
+ label,
1058
+ labelPosition: effectiveLabelPosition,
1059
+ icon
1060
+ },
1061
+ name
1062
+ );
1063
+ case "array":
1064
+ return /* @__PURE__ */ jsxRuntime.jsx(
1065
+ DialArrayInput,
1066
+ {
1067
+ name,
1068
+ label,
1069
+ labelPosition: effectiveLabelPosition,
1070
+ icon
1071
+ },
1072
+ name
1073
+ );
1074
+ case "interface":
1075
+ case "object":
1076
+ return /* @__PURE__ */ jsxRuntime.jsx(
1077
+ DialInterfaceInput,
1078
+ {
1079
+ name,
1080
+ label,
1081
+ labelPosition: effectiveLabelPosition,
1082
+ icon
1083
+ },
1084
+ name
1085
+ );
701
1086
  case "vector3":
702
1087
  return /* @__PURE__ */ jsxRuntime.jsx(
703
1088
  DialVec3Input,
@@ -713,6 +1098,19 @@ var DialPanel = ({
713
1098
  name
714
1099
  );
715
1100
  case "euler":
1101
+ case "euler-rad":
1102
+ return /* @__PURE__ */ jsxRuntime.jsx(
1103
+ DialEulerRadInput,
1104
+ {
1105
+ name,
1106
+ label,
1107
+ step: step || 1e-3,
1108
+ labelPosition: effectiveLabelPosition,
1109
+ icon
1110
+ },
1111
+ name
1112
+ );
1113
+ case "euler-deg":
716
1114
  return /* @__PURE__ */ jsxRuntime.jsx(
717
1115
  DialEulerDegInput,
718
1116
  {
@@ -724,7 +1122,7 @@ var DialPanel = ({
724
1122
  },
725
1123
  name
726
1124
  );
727
- case "euler-rad":
1125
+ case "euler-pi":
728
1126
  return /* @__PURE__ */ jsxRuntime.jsx(
729
1127
  DialEulerRadInput,
730
1128
  {
@@ -732,7 +1130,8 @@ var DialPanel = ({
732
1130
  label,
733
1131
  step: step || 1e-3,
734
1132
  labelPosition: effectiveLabelPosition,
735
- icon
1133
+ icon,
1134
+ format: "pi"
736
1135
  },
737
1136
  name
738
1137
  );
@@ -809,7 +1208,7 @@ var DialPanel = ({
809
1208
  }
810
1209
  if (options && options.length > 0) {
811
1210
  return /* @__PURE__ */ jsxRuntime.jsx(
812
- chunkUMGNAR3W_cjs.DialPresetsInput,
1211
+ chunkW22SQYEO_cjs.DialPresetsInput,
813
1212
  {
814
1213
  name,
815
1214
  label,
@@ -837,6 +1236,7 @@ var DialPanel = ({
837
1236
  return /* @__PURE__ */ jsxRuntime.jsx(DialColorInput, { name, label, icon }, name);
838
1237
  case "string":
839
1238
  case "text":
1239
+ case "select":
840
1240
  if (options && options.length > 0) {
841
1241
  return /* @__PURE__ */ jsxRuntime.jsx(
842
1242
  DialSelectInput,
@@ -861,29 +1261,77 @@ var DialPanel = ({
861
1261
  },
862
1262
  name
863
1263
  );
1264
+ case "button":
1265
+ return /* @__PURE__ */ jsxRuntime.jsx(
1266
+ chunk7MKCWXNV_cjs.DialButton,
1267
+ {
1268
+ name,
1269
+ label,
1270
+ icon,
1271
+ onClick: schema.onClick,
1272
+ variant: schema.variant,
1273
+ disabled: schema.disabled
1274
+ },
1275
+ name
1276
+ );
1277
+ case "custom":
1278
+ if (!schema.render && !schema.children) {
1279
+ console.warn(
1280
+ `DialPanel: dtype="custom" requires either render or children for "${name}"`
1281
+ );
1282
+ return null;
1283
+ }
1284
+ return /* @__PURE__ */ jsxRuntime.jsx(
1285
+ chunk4SI4QV5R_cjs.DialCustom,
1286
+ {
1287
+ schema,
1288
+ render: schema.render,
1289
+ children: schema.children
1290
+ },
1291
+ name
1292
+ );
864
1293
  default:
865
1294
  return null;
866
1295
  }
867
1296
  };
1297
+ const wrapWithStyle = (schema, component) => {
1298
+ const spanStyle = {};
1299
+ if (schema.colSpan) {
1300
+ spanStyle.gridColumn = `span ${schema.colSpan}`;
1301
+ }
1302
+ if (schema.rowSpan) {
1303
+ spanStyle.gridRow = `span ${schema.rowSpan}`;
1304
+ }
1305
+ if (Object.keys(spanStyle).length > 0) {
1306
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { style: spanStyle, children: component }, schema.name);
1307
+ }
1308
+ return component;
1309
+ };
1310
+ const sortedGroups = Object.entries(groupedSchemas).sort(([nameA], [nameB]) => {
1311
+ const lowerA = nameA.toLowerCase();
1312
+ const lowerB = nameB.toLowerCase();
1313
+ if (lowerA === "transform") return -1;
1314
+ if (lowerB === "transform") return 1;
1315
+ return lowerA.localeCompare(lowerB);
1316
+ });
868
1317
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "dial-schema-renderer space-y-4", children: [
869
- Object.entries(groupedSchemas).map(([name, schemaList]) => {
1318
+ sortedGroups.map(([name, schemaList]) => {
870
1319
  const groupConfig = groupConfigMap[name];
871
- const hasNoWrap = groupConfig?.noWrap;
872
- const layoutClass = hasNoWrap ? "flex flex-row flex-no-wrap gap-2" : "flex flex-row gap-2";
1320
+ const groupStyle = generateGroupStyle(groupConfig);
873
1321
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "dial-group", children: [
874
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-text-primary mb-2 font-medium", children: name }),
875
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: `dial-row ${layoutClass}`, children: schemaList.map(renderSchemaInput) })
1322
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-text-primary mb-2 pl-1.5 font-medium capitalize", children: name }),
1323
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "dial-row", style: groupStyle, children: schemaList.map((schema) => wrapWithStyle(schema, renderSchemaInput(schema))) })
876
1324
  ] }, name);
877
1325
  }),
878
- ungrouped.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "dial-group", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "dial-row grid grid-cols-1 gap-2", children: ungrouped.map(renderSchemaInput) }) })
1326
+ ungrouped.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "dial-group", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "dial-row grid grid-cols-1 gap-2", children: ungrouped.map((schema) => wrapWithStyle(schema, renderSchemaInput(schema))) }) })
879
1327
  ] });
880
1328
  };
881
1329
  var DialInputWrapper2 = ({ label, labelPosition = "top", icon, children }) => {
882
1330
  if (!label) {
883
1331
  return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
884
1332
  }
885
- return /* @__PURE__ */ jsxRuntime.jsxs(chunk3ZEQVODC_cjs.FormLayout, { orientation: `label-${labelPosition}`, className: "overflow-x-hidden", children: [
886
- /* @__PURE__ */ jsxRuntime.jsxs(chunkLGFWHV23_cjs.Label, { size: "sm", className: "flex items-center gap-1", children: [
1333
+ return /* @__PURE__ */ jsxRuntime.jsxs(chunkZAK7AFVY_cjs.FormLayout, { orientation: `label-${labelPosition}`, className: "overflow-x-hidden", children: [
1334
+ /* @__PURE__ */ jsxRuntime.jsxs(chunkACGXE2IO_cjs.Label, { size: "sm", className: "flex items-center gap-1 pl-1.5", children: [
887
1335
  /* @__PURE__ */ jsxRuntime.jsx(chunkO66LWOQY_cjs.IconRenderer, { iconName: icon, size: 14, className: "text-text-secondary" }),
888
1336
  label
889
1337
  ] }),
@@ -922,9 +1370,9 @@ var DialNumberInput = ({
922
1370
  prefix: labelPosition === "inline" && label ? [label] : void 0
923
1371
  };
924
1372
  if (labelPosition === "inline") {
925
- return /* @__PURE__ */ jsxRuntime.jsx(chunkASZIBFA6_cjs.InputNumbers, { ...inputNumbersProps });
1373
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkUZTOUPJ7_cjs.InputNumbers, { ...inputNumbersProps });
926
1374
  } else {
927
- return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper2, { label, labelPosition, icon, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(chunkASZIBFA6_cjs.InputNumbers, { ...inputNumbersProps }) });
1375
+ return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper2, { label, labelPosition, icon, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(chunkUZTOUPJ7_cjs.InputNumbers, { ...inputNumbersProps }) });
928
1376
  }
929
1377
  };
930
1378
  var DialBooleanInput = ({
@@ -936,24 +1384,24 @@ var DialBooleanInput = ({
936
1384
  }) => {
937
1385
  const { getValue, setValue } = chunkSL5Q54AH_cjs.useDialSchema();
938
1386
  const value = getValue(name) ?? false;
939
- const handleChange = react.useCallback((checked) => setValue(name, checked), [name]);
1387
+ const handleChange = react.useCallback((checked) => setValue(name, checked), [name, setValue]);
940
1388
  const switchProps = {
941
1389
  checked: value,
942
1390
  onCheckedChange: handleChange
943
1391
  };
944
1392
  if (!label || labelPosition === "inline") {
945
- return /* @__PURE__ */ jsxRuntime.jsx(chunkGTBXRWCK_cjs.Switch, { ...switchProps });
1393
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkQTLUPDLH_cjs.Switch, { className: "ml-1.5", ...switchProps });
946
1394
  }
947
- return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper2, { label, labelPosition, icon, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(chunkGTBXRWCK_cjs.Switch, { ...switchProps }) });
1395
+ return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper2, { label, labelPosition, icon, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(chunkQTLUPDLH_cjs.Switch, { className: "ml-1.5", ...switchProps }) });
948
1396
  };
949
1397
  var DialColorInput = ({ name, label, icon, ...props }) => {
950
1398
  const { getValue, setValue } = chunkSL5Q54AH_cjs.useDialSchema();
951
- const value = getValue(name) ?? "";
952
- const handleChange = react.useCallback(
953
- (e) => setValue(name, e.target.value),
954
- [name]
1399
+ const value = getValue(name);
1400
+ const handleValueChange = react.useCallback(
1401
+ (hexColor) => setValue(name, hexColor),
1402
+ [name, setValue]
955
1403
  );
956
- const inputComp = /* @__PURE__ */ jsxRuntime.jsx(chunkMNCBTS63_cjs.ColorInput, { value, onChange: handleChange, prefix: label });
1404
+ const inputComp = /* @__PURE__ */ jsxRuntime.jsx(chunkJEWTYDLX_cjs.ColorInput, { className: "ml-1.5", value: value ?? "", onValueChange: handleValueChange });
957
1405
  return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper2, { label, icon, ...props, children: inputComp });
958
1406
  };
959
1407
  var DialSelectInput = ({
@@ -971,11 +1419,11 @@ var DialSelectInput = ({
971
1419
  const parsed = !isNaN(Number(val)) ? Number(val) : val;
972
1420
  setValue(name, parsed);
973
1421
  },
974
- [name]
1422
+ [name, setValue]
975
1423
  );
976
- const selectComponent = /* @__PURE__ */ jsxRuntime.jsxs(chunk5AKVDZMA_cjs.Select, { value: String(value), onValueChange: handleValueChange, children: [
977
- /* @__PURE__ */ jsxRuntime.jsx(chunk5AKVDZMA_cjs.SelectTrigger, { size, children: /* @__PURE__ */ jsxRuntime.jsx(chunk5AKVDZMA_cjs.SelectValue, { placeholder: "Select an option" }) }),
978
- /* @__PURE__ */ jsxRuntime.jsx(chunk5AKVDZMA_cjs.SelectContent, { children: options.map((opt, i) => /* @__PURE__ */ jsxRuntime.jsx(chunk5AKVDZMA_cjs.SelectItem, { value: String(opt), children: String(opt) }, i)) })
1424
+ const selectComponent = /* @__PURE__ */ jsxRuntime.jsxs(chunkHSUL5OUG_cjs.Select, { value: String(value), onValueChange: handleValueChange, children: [
1425
+ /* @__PURE__ */ jsxRuntime.jsx(chunkHSUL5OUG_cjs.SelectTrigger, { size, children: /* @__PURE__ */ jsxRuntime.jsx(chunkHSUL5OUG_cjs.SelectValue, { placeholder: "Select an option" }) }),
1426
+ /* @__PURE__ */ jsxRuntime.jsx(chunkHSUL5OUG_cjs.SelectContent, { children: options.map((opt, i) => /* @__PURE__ */ jsxRuntime.jsx(chunkHSUL5OUG_cjs.SelectItem, { value: String(opt), children: String(opt) }, i)) })
979
1427
  ] });
980
1428
  return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper2, { label, icon, ...props, children: selectComponent });
981
1429
  };
@@ -990,21 +1438,22 @@ var DialSliderInput = ({
990
1438
  }) => {
991
1439
  const { getValue, setValue } = chunkSL5Q54AH_cjs.useDialSchema();
992
1440
  const value = getValue(name) ?? min;
993
- const handleValueChange = react.useCallback(([val]) => setValue(name, val), [name]);
1441
+ const handleValueChange = react.useCallback(([val]) => setValue(name, val), [name, setValue]);
994
1442
  const sliderProps = {
995
1443
  value: [value],
996
1444
  onValueChange: handleValueChange,
997
1445
  min,
998
1446
  max,
999
1447
  step,
1000
- className: "flex-1"
1448
+ className: "flex-1 pl-1.5"
1001
1449
  };
1002
- return /* @__PURE__ */ jsxRuntime.jsxs(DialInputWrapper2, { label, icon, ...props, children: [
1003
- /* @__PURE__ */ jsxRuntime.jsx(chunkU5W4ZALG_cjs.Slider, { ...sliderProps }),
1450
+ return /* @__PURE__ */ jsxRuntime.jsx(DialInputWrapper2, { label, icon, ...props, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex", children: [
1451
+ /* @__PURE__ */ jsxRuntime.jsx(chunkT2OAWYOU_cjs.Slider, { ...sliderProps }),
1004
1452
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-text-secondary w-12 text-right text-sm", children: value })
1005
- ] });
1453
+ ] }) });
1006
1454
  };
1007
1455
 
1456
+ exports.DialArrayInput = DialArrayInput;
1008
1457
  exports.DialBooleanInput = DialBooleanInput;
1009
1458
  exports.DialCmInput = DialCmInput;
1010
1459
  exports.DialColorInput = DialColorInput;
@@ -1014,6 +1463,7 @@ exports.DialEulerInput = DialEulerInput;
1014
1463
  exports.DialEulerRadInput = DialEulerRadInput;
1015
1464
  exports.DialInchInput = DialInchInput;
1016
1465
  exports.DialIntInput = DialIntInput;
1466
+ exports.DialInterfaceInput = DialInterfaceInput;
1017
1467
  exports.DialNumberInput = DialNumberInput;
1018
1468
  exports.DialNumberRadInput = DialNumberRadInput;
1019
1469
  exports.DialPanel = DialPanel;
@@ -1023,6 +1473,7 @@ exports.DialSelectInput = DialSelectInput;
1023
1473
  exports.DialSliderInput = DialSliderInput;
1024
1474
  exports.DialTextInput = DialTextInput;
1025
1475
  exports.DialTimeInput = DialTimeInput;
1476
+ exports.DialTupleInput = DialTupleInput;
1026
1477
  exports.DialVec3Input = DialVec3Input;
1027
1478
  exports.DialVectorInput = DialVectorInput;
1028
1479
  exports.DialVectorInput2 = DialVectorInput2;