@apple-pie/slice 0.0.6 → 0.0.7

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 (412) hide show
  1. package/dist/cjs/chunks/Avatar-0EXaRG4e.js +54 -0
  2. package/dist/cjs/chunks/AvatarGroup-BsRUAZl0.js +37 -0
  3. package/dist/cjs/chunks/Badge-Bv6c2YVC.js +23 -0
  4. package/dist/cjs/chunks/Button-DFAWHJmQ.js +246 -0
  5. package/dist/cjs/chunks/ButtonBar-DOgYDAda.js +53 -0
  6. package/dist/cjs/chunks/Card-BPClSuHa.js +37 -0
  7. package/dist/cjs/chunks/CheckBox-tsExpwtr.js +56 -0
  8. package/dist/cjs/chunks/Chip-CPHF1zn-.js +84 -0
  9. package/dist/cjs/chunks/DivInput-DDQVtlot.js +102 -0
  10. package/dist/cjs/chunks/DocIcons-B5TcBqSH.js +108 -0
  11. package/dist/cjs/chunks/Dot-BSSClfHQ.js +73 -0
  12. package/dist/cjs/chunks/DrggablePanel-wWLPesc8.js +202 -0
  13. package/dist/cjs/chunks/DropDown-COdCr77A.js +102 -0
  14. package/dist/cjs/chunks/ErrorSummary-CIUqlSLC.js +60 -0
  15. package/dist/cjs/chunks/FileIcon-DTQaXxfC.js +221 -0
  16. package/dist/cjs/chunks/FileList-J2EgJyCo.js +217 -0
  17. package/dist/cjs/chunks/FlexDiv-CW5gSa4V.js +65 -0
  18. package/dist/cjs/chunks/Grouper-QwwunKen.js +61 -0
  19. package/dist/cjs/chunks/IconButton-B53y3z1_.js +77 -0
  20. package/dist/cjs/chunks/Label-DoiS07-y.js +111 -0
  21. package/dist/cjs/chunks/Logos-CAHU-eIP.js +483 -0
  22. package/dist/cjs/chunks/Overlay-Bb2YoSKr.js +36 -0
  23. package/dist/cjs/chunks/Pager-CN2z8M9E.js +37 -0
  24. package/dist/cjs/chunks/ProgressIndicator-BbrZ7Aoc.js +157 -0
  25. package/dist/cjs/chunks/PromptInput-BXDqUXFQ.js +150 -0
  26. package/dist/cjs/chunks/RadioButton-GKRhZEmb.js +56 -0
  27. package/dist/cjs/chunks/RadioButtonList-CFpZmyAX.js +59 -0
  28. package/dist/cjs/chunks/Slider-CZvCAodl.js +136 -0
  29. package/dist/cjs/chunks/Spacer-CtxV2Pww.js +18 -0
  30. package/dist/cjs/chunks/Switch-C94aofxQ.js +37 -0
  31. package/dist/cjs/chunks/TabBar-D6akzNUf.js +123 -0
  32. package/dist/cjs/chunks/TextArea-DjF8Koup.js +82 -0
  33. package/dist/cjs/chunks/TextField-Cg6mQcYl.js +204 -0
  34. package/dist/cjs/chunks/Tip-CjMHa-fD.js +88 -0
  35. package/dist/cjs/chunks/Toast-Cdyh6T-l.js +163 -0
  36. package/dist/cjs/chunks/UploadArea-BmZ50EEl.js +123 -0
  37. package/dist/cjs/chunks/_types-B5xXv4NA.js +1386 -0
  38. package/dist/cjs/chunks/sharedTypes-gCECyn2N.js +6 -0
  39. package/dist/cjs/chunks/style-inject.es-CMuL-BfJ.js +11 -0
  40. package/dist/cjs/chunks/tipStore-Ck4NLvml.js +17 -0
  41. package/dist/cjs/chunks/toastStore-CSStgB9d.js +17 -0
  42. package/dist/cjs/chunks/tslib.es6-C8dZW5nY.js +49 -0
  43. package/dist/cjs/chunks/uploads-worker-mD8pcsGP.js +221 -0
  44. package/dist/cjs/chunks/uploadsStore-CxWIctvI.js +75 -0
  45. package/dist/cjs/chunks/utils-BsBHecUI.js +70 -0
  46. package/dist/cjs/chunks/windowStore-RaJswiHM.js +70 -0
  47. package/dist/cjs/hooks/useDoubleClick.js +11 -23
  48. package/dist/cjs/hooks/useKeyboardShortcuts.js +18 -35
  49. package/dist/cjs/hooks/useLastUpdated.js +20 -42
  50. package/dist/cjs/hooks/useLocalStore.js +23 -39
  51. package/dist/cjs/hooks/useObserveResize.js +26 -44
  52. package/dist/cjs/hooks/useObserveTheme.js +18 -36
  53. package/dist/cjs/hooks/useTheme.js +17 -40
  54. package/dist/cjs/hooks/useToolTip.js +19 -32
  55. package/dist/cjs/hooks/useTrackRenders.js +11 -29
  56. package/dist/cjs/hooks/useWindow.js +29 -65
  57. package/dist/cjs/hooks.js +12 -30
  58. package/dist/cjs/index.js +46 -134
  59. package/dist/cjs/providers/ThemeProvider.js +27 -45
  60. package/dist/cjs/providers.js +5 -12
  61. package/dist/cjs/stores/tip.js +4 -9
  62. package/dist/cjs/stores/toast.js +4 -9
  63. package/dist/cjs/stores/uploads.js +11 -0
  64. package/dist/cjs/stores/window.js +8 -10
  65. package/dist/cjs/stores.js +18 -21
  66. package/dist/cjs/theme/colors.js +371 -379
  67. package/dist/cjs/theme/corners.js +10 -12
  68. package/dist/cjs/theme/elevations.js +10 -13
  69. package/dist/cjs/theme/themes.js +8 -13
  70. package/dist/cjs/theme/type.js +225 -384
  71. package/dist/cjs/theme.js +5 -13
  72. package/dist/cjs/uikit/Avatar/index.js +6 -0
  73. package/dist/cjs/uikit/AvatarGroup/index.js +7 -0
  74. package/dist/cjs/uikit/Badge/index.js +6 -0
  75. package/dist/cjs/uikit/Button/index.js +12 -0
  76. package/dist/cjs/uikit/ButtonBar/index.js +12 -0
  77. package/dist/cjs/uikit/Card/index.js +10 -0
  78. package/dist/cjs/uikit/CheckBox/index.js +10 -0
  79. package/dist/cjs/uikit/Chip/index.js +11 -0
  80. package/dist/cjs/uikit/DivInput/index.js +7 -0
  81. package/dist/cjs/uikit/DocIcon/index.js +9 -0
  82. package/dist/cjs/uikit/Dot/index.js +6 -0
  83. package/dist/cjs/uikit/DraggablePanel/index.js +10 -0
  84. package/dist/cjs/uikit/DropDown/index.js +10 -0
  85. package/dist/cjs/uikit/ErrorSummary/index.js +6 -0
  86. package/dist/cjs/uikit/FileIcon/index.js +15 -0
  87. package/dist/cjs/uikit/FileList/index.js +11 -0
  88. package/dist/cjs/uikit/FlexDiv/index.js +6 -0
  89. package/dist/cjs/uikit/Grouper/index.js +11 -0
  90. package/dist/cjs/uikit/Icon/index.js +14 -0
  91. package/dist/cjs/uikit/IconButton/index.js +12 -0
  92. package/dist/cjs/uikit/Label/index.js +10 -0
  93. package/dist/cjs/uikit/Logos/index.js +9 -0
  94. package/dist/cjs/uikit/Overlay/index.js +6 -0
  95. package/dist/cjs/uikit/Pager/index.js +7 -0
  96. package/dist/cjs/uikit/Progress/index.js +10 -0
  97. package/dist/cjs/uikit/PromptInput/index.js +14 -0
  98. package/dist/cjs/uikit/RadioButton/index.js +12 -0
  99. package/dist/cjs/uikit/RadioButtonList/index.js +13 -0
  100. package/dist/cjs/uikit/Slider/index.js +7 -0
  101. package/dist/cjs/uikit/Spacer/index.js +6 -0
  102. package/dist/cjs/uikit/Switch/index.js +6 -0
  103. package/dist/cjs/uikit/TabBar/index.js +12 -0
  104. package/dist/cjs/uikit/TextArea/index.js +13 -0
  105. package/dist/cjs/uikit/Textfield/index.js +13 -0
  106. package/dist/cjs/uikit/Tip/index.js +7 -0
  107. package/dist/cjs/uikit/Toast/index.js +16 -0
  108. package/dist/cjs/uikit/UploadArea/index.js +15 -0
  109. package/dist/cjs/workers/uploads/uploads.js +5 -0
  110. package/dist/esm/chunks/Avatar-D_W5zErj.mjs +60 -0
  111. package/dist/esm/chunks/AvatarGroup-Dbfmz0Yz.mjs +45 -0
  112. package/dist/esm/chunks/Badge-BISGWj5-.mjs +29 -0
  113. package/dist/esm/chunks/Button-B_aIY6wE.mjs +264 -0
  114. package/dist/esm/chunks/ButtonBar-Cr6TFvvD.mjs +66 -0
  115. package/dist/esm/chunks/Card-BzKBF0ny.mjs +45 -0
  116. package/dist/esm/chunks/CheckBox-CYggPKaT.mjs +68 -0
  117. package/dist/esm/chunks/Chip-B3wb9g1U.mjs +96 -0
  118. package/dist/esm/chunks/DivInput-_VL6PAqT.mjs +114 -0
  119. package/dist/esm/chunks/DocIcons-BxtcXsWI.mjs +114 -0
  120. package/dist/esm/chunks/Dot-C-Xu24wF.mjs +81 -0
  121. package/dist/esm/chunks/DrggablePanel-Bg3UKK1k.mjs +214 -0
  122. package/dist/esm/chunks/DropDown-D7KyGLkM.mjs +114 -0
  123. package/dist/esm/chunks/ErrorSummary-CZw06dSh.mjs +68 -0
  124. package/dist/esm/chunks/FileIcon-BcIJzIwA.mjs +233 -0
  125. package/dist/esm/chunks/FileList-DUzgHfE-.mjs +229 -0
  126. package/dist/esm/chunks/FlexDiv-BLYDgWu2.mjs +73 -0
  127. package/dist/esm/chunks/Grouper-CRldBHSw.mjs +75 -0
  128. package/dist/esm/chunks/IconButton-BBiZrXlS.mjs +93 -0
  129. package/dist/esm/chunks/Label-DPIAVkn1.mjs +124 -0
  130. package/dist/esm/chunks/Logos-CpcaarOG.mjs +493 -0
  131. package/dist/esm/chunks/Overlay-Bh0enFIe.mjs +44 -0
  132. package/dist/esm/chunks/Pager-B-1ZRUzU.mjs +45 -0
  133. package/dist/esm/chunks/ProgressIndicator-CNOBQ_Fv.mjs +167 -0
  134. package/dist/esm/chunks/PromptInput-DdsIgZ3T.mjs +160 -0
  135. package/dist/esm/chunks/RadioButton-D-TdQu3a.mjs +66 -0
  136. package/dist/esm/chunks/RadioButtonList-CEScWkbT.mjs +67 -0
  137. package/dist/esm/chunks/Slider-C3A8GCfH.mjs +142 -0
  138. package/dist/esm/chunks/Spacer-BlgEdKEM.mjs +20 -0
  139. package/dist/esm/chunks/Switch-obpmvCGd.mjs +45 -0
  140. package/dist/esm/chunks/TabBar-DFj021UP.mjs +141 -0
  141. package/dist/esm/chunks/TextArea-D_hq6VF3.mjs +90 -0
  142. package/dist/esm/chunks/TextField-Co0u-xdd.mjs +222 -0
  143. package/dist/esm/chunks/Tip-CHQh-Yq0.mjs +98 -0
  144. package/dist/esm/chunks/Toast-BiXzVFtM.mjs +179 -0
  145. package/dist/esm/chunks/UploadArea-B9685Z06.mjs +133 -0
  146. package/dist/esm/chunks/_types-KZDzhaiK.mjs +1395 -0
  147. package/dist/esm/chunks/sharedTypes-tn9-uJvb.mjs +8 -0
  148. package/dist/esm/chunks/style-inject.es-D0BjEaN8.mjs +11 -0
  149. package/dist/esm/chunks/tipStore-CL5a95Bl.mjs +15 -0
  150. package/dist/esm/chunks/toastStore-D2PEIqCo.mjs +15 -0
  151. package/dist/esm/chunks/tslib.es6-c-7TIv71.mjs +53 -0
  152. package/dist/esm/chunks/uploads-worker-Dv-4zGnC.mjs +224 -0
  153. package/dist/esm/chunks/uploadsStore-D69fEXMY.mjs +72 -0
  154. package/dist/esm/chunks/utils-BQ1v7VE4.mjs +74 -0
  155. package/dist/esm/chunks/windowStore-CwW0i_le.mjs +71 -0
  156. package/dist/esm/hooks/useDoubleClick.mjs +14 -0
  157. package/dist/esm/hooks/useKeyboardShortcuts.mjs +27 -0
  158. package/dist/esm/hooks/useLastUpdated.mjs +31 -0
  159. package/dist/esm/hooks/useLocalStore.mjs +36 -0
  160. package/dist/esm/hooks/useObserveResize.mjs +38 -0
  161. package/dist/esm/hooks/useObserveTheme.mjs +34 -0
  162. package/dist/esm/hooks/useTheme.mjs +73 -0
  163. package/dist/esm/hooks/useToolTip.mjs +23 -0
  164. package/dist/esm/hooks/useTrackRenders.mjs +23 -0
  165. package/dist/esm/hooks/useWindow.mjs +52 -0
  166. package/dist/esm/hooks.mjs +29 -0
  167. package/dist/esm/index.mjs +117 -0
  168. package/dist/esm/providers/ThemeProvider.mjs +49 -0
  169. package/dist/esm/providers.mjs +15 -0
  170. package/dist/esm/stores/tip.mjs +3 -0
  171. package/dist/esm/stores/toast.mjs +3 -0
  172. package/dist/esm/stores/uploads.mjs +7 -0
  173. package/dist/esm/stores/window.mjs +3 -0
  174. package/dist/esm/stores.mjs +13 -0
  175. package/dist/esm/theme/colors.mjs +373 -0
  176. package/dist/esm/theme/corners.mjs +12 -0
  177. package/dist/esm/theme/elevations.mjs +15 -0
  178. package/dist/esm/theme/themes.mjs +25 -0
  179. package/dist/esm/theme/type.mjs +236 -0
  180. package/dist/esm/theme.mjs +9 -0
  181. package/dist/esm/uikit/Avatar/index.mjs +9 -0
  182. package/dist/esm/uikit/AvatarGroup/index.mjs +11 -0
  183. package/dist/esm/uikit/Badge/index.mjs +9 -0
  184. package/dist/esm/uikit/Button/index.mjs +39 -0
  185. package/dist/esm/uikit/ButtonBar/index.mjs +39 -0
  186. package/dist/esm/uikit/Card/index.mjs +29 -0
  187. package/dist/esm/uikit/CheckBox/index.mjs +31 -0
  188. package/dist/esm/uikit/Chip/index.mjs +31 -0
  189. package/dist/esm/uikit/DivInput/index.mjs +13 -0
  190. package/dist/esm/uikit/DocIcon/index.mjs +23 -0
  191. package/dist/esm/uikit/Dot/index.mjs +11 -0
  192. package/dist/esm/uikit/DraggablePanel/index.mjs +29 -0
  193. package/dist/esm/uikit/DropDown/index.mjs +29 -0
  194. package/dist/esm/uikit/ErrorSummary/index.mjs +11 -0
  195. package/dist/esm/uikit/FileIcon/index.mjs +25 -0
  196. package/dist/esm/uikit/FileList/index.mjs +35 -0
  197. package/dist/esm/uikit/FlexDiv/index.mjs +11 -0
  198. package/dist/esm/uikit/Grouper/index.mjs +33 -0
  199. package/dist/esm/uikit/Icon/index.mjs +25 -0
  200. package/dist/esm/uikit/IconButton/index.mjs +37 -0
  201. package/dist/esm/uikit/Label/index.mjs +27 -0
  202. package/dist/esm/uikit/Logos/index.mjs +23 -0
  203. package/dist/esm/uikit/Overlay/index.mjs +11 -0
  204. package/dist/esm/uikit/Pager/index.mjs +11 -0
  205. package/dist/esm/uikit/Progress/index.mjs +27 -0
  206. package/dist/esm/uikit/PromptInput/index.mjs +45 -0
  207. package/dist/esm/uikit/RadioButton/index.mjs +39 -0
  208. package/dist/esm/uikit/RadioButtonList/index.mjs +41 -0
  209. package/dist/esm/uikit/Slider/index.mjs +13 -0
  210. package/dist/esm/uikit/Spacer/index.mjs +7 -0
  211. package/dist/esm/uikit/Switch/index.mjs +11 -0
  212. package/dist/esm/uikit/TabBar/index.mjs +39 -0
  213. package/dist/esm/uikit/TextArea/index.mjs +41 -0
  214. package/dist/esm/uikit/Textfield/index.mjs +43 -0
  215. package/dist/esm/uikit/Tip/index.mjs +13 -0
  216. package/dist/esm/uikit/Toast/index.mjs +31 -0
  217. package/dist/esm/uikit/UploadArea/index.mjs +37 -0
  218. package/dist/esm/workers/uploads/uploads.mjs +5 -0
  219. package/dist/types/stores/index.d.ts +1 -0
  220. package/dist/types/stores/uploads/_types.d.ts +16 -0
  221. package/dist/types/stores/uploads/index.d.ts +2 -0
  222. package/dist/types/stores/uploads/uploadsStore.d.ts +22 -0
  223. package/dist/types/workers/uploads/uploads-worker.d.ts +129 -0
  224. package/dist/types/workers/uploads/uploads.d.ts +1 -0
  225. package/dist/types/workers/uploads/uploads.runtime.d.ts +1 -0
  226. package/package.json +23 -17
  227. package/dist/cjs/chunks/Avatar-z2YcOAoP.js +0 -68
  228. package/dist/cjs/chunks/AvatarGroup-Cz8369zI.js +0 -39
  229. package/dist/cjs/chunks/Badge-COSg__VJ.js +0 -41
  230. package/dist/cjs/chunks/Button-BNXqiA13.js +0 -312
  231. package/dist/cjs/chunks/ButtonBar-CeDdAOlH.js +0 -58
  232. package/dist/cjs/chunks/Card-Cc_c-S7i.js +0 -36
  233. package/dist/cjs/chunks/CheckBox-hTWIPqV_.js +0 -76
  234. package/dist/cjs/chunks/Chip-CLKVldi4.js +0 -93
  235. package/dist/cjs/chunks/DivInput-DnY2emt-.js +0 -204
  236. package/dist/cjs/chunks/DocIcons-BRWOzK96.js +0 -41
  237. package/dist/cjs/chunks/Dot-B5dO8kSS.js +0 -80
  238. package/dist/cjs/chunks/DrggablePanel-BtsURL9o.js +0 -302
  239. package/dist/cjs/chunks/DropDown-COr9u96t.js +0 -154
  240. package/dist/cjs/chunks/ErrorSummary-BrSHbGpk.js +0 -42
  241. package/dist/cjs/chunks/FileIcon-CEMQK_Je.js +0 -132
  242. package/dist/cjs/chunks/FileList-BHMne9Mr.js +0 -163
  243. package/dist/cjs/chunks/FlexDiv-BHl29ywz.js +0 -103
  244. package/dist/cjs/chunks/Grouper-EyHoeA8w.js +0 -50
  245. package/dist/cjs/chunks/IconButton-9QZ4eKBZ.js +0 -84
  246. package/dist/cjs/chunks/Label-s1aCv2Y1.js +0 -134
  247. package/dist/cjs/chunks/Logos-DSlAUz8l.js +0 -119
  248. package/dist/cjs/chunks/Overlay-DV3C5NDO.js +0 -45
  249. package/dist/cjs/chunks/Pager-CRjpl1FZ.js +0 -42
  250. package/dist/cjs/chunks/ProgressIndicator-BAwAaw58.js +0 -121
  251. package/dist/cjs/chunks/PromptInput-CfzofBTJ.js +0 -212
  252. package/dist/cjs/chunks/RadioButton-DA9YUGEF.js +0 -65
  253. package/dist/cjs/chunks/RadioButtonList-BtsT7GJc.js +0 -116
  254. package/dist/cjs/chunks/Slider-CqrIwn-L.js +0 -285
  255. package/dist/cjs/chunks/Spacer-BEY2-_PB.js +0 -16
  256. package/dist/cjs/chunks/Switch-CtkFtogd.js +0 -43
  257. package/dist/cjs/chunks/TabBar-WsNlr-aZ.js +0 -176
  258. package/dist/cjs/chunks/TextArea-BMJWUH2H.js +0 -153
  259. package/dist/cjs/chunks/TextField-mfwz79cD.js +0 -248
  260. package/dist/cjs/chunks/Tip-Af6FMEDi.js +0 -91
  261. package/dist/cjs/chunks/Toast-CxAEOW4z.js +0 -158
  262. package/dist/cjs/chunks/UploadArea-DunGYE1_.js +0 -155
  263. package/dist/cjs/chunks/_types-BNlHsGMQ.js +0 -714
  264. package/dist/cjs/chunks/sharedTypes-BvTjh6M5.js +0 -9
  265. package/dist/cjs/chunks/style-inject.es-XZHJH68X.js +0 -30
  266. package/dist/cjs/chunks/tipStore-C9oV9SIh.js +0 -23
  267. package/dist/cjs/chunks/toastStore-C-ETP9H6.js +0 -23
  268. package/dist/cjs/chunks/tslib.es6-4H29ixHs.js +0 -48
  269. package/dist/cjs/chunks/utils-BwNacfBU.js +0 -128
  270. package/dist/cjs/chunks/windowStore-CPcVHJq6.js +0 -93
  271. package/dist/cjs/uikit/Avatar.js +0 -11
  272. package/dist/cjs/uikit/AvatarGroup.js +0 -12
  273. package/dist/cjs/uikit/Badge.js +0 -11
  274. package/dist/cjs/uikit/Button.js +0 -26
  275. package/dist/cjs/uikit/ButtonBar.js +0 -26
  276. package/dist/cjs/uikit/Card.js +0 -21
  277. package/dist/cjs/uikit/CheckBox.js +0 -22
  278. package/dist/cjs/uikit/Chip.js +0 -22
  279. package/dist/cjs/uikit/DivInput.js +0 -13
  280. package/dist/cjs/uikit/DocIcon.js +0 -18
  281. package/dist/cjs/uikit/Dot.js +0 -12
  282. package/dist/cjs/uikit/DraggablePanel.js +0 -21
  283. package/dist/cjs/uikit/DropDown.js +0 -21
  284. package/dist/cjs/uikit/ErrorSummary.js +0 -12
  285. package/dist/cjs/uikit/FileIcon.js +0 -23
  286. package/dist/cjs/uikit/FileList.js +0 -24
  287. package/dist/cjs/uikit/FlexDiv.js +0 -12
  288. package/dist/cjs/uikit/Grouper.js +0 -23
  289. package/dist/cjs/uikit/Icon.js +0 -23
  290. package/dist/cjs/uikit/IconButton.js +0 -25
  291. package/dist/cjs/uikit/Label.js +0 -20
  292. package/dist/cjs/uikit/Logos.js +0 -18
  293. package/dist/cjs/uikit/Overlay.js +0 -12
  294. package/dist/cjs/uikit/Pager.js +0 -12
  295. package/dist/cjs/uikit/Progress.js +0 -21
  296. package/dist/cjs/uikit/PromptInput.js +0 -29
  297. package/dist/cjs/uikit/RadioButton.js +0 -26
  298. package/dist/cjs/uikit/RadioButtonList.js +0 -27
  299. package/dist/cjs/uikit/Slider.js +0 -13
  300. package/dist/cjs/uikit/Spacer.js +0 -10
  301. package/dist/cjs/uikit/Switch.js +0 -12
  302. package/dist/cjs/uikit/TabBar.js +0 -26
  303. package/dist/cjs/uikit/TextArea.js +0 -27
  304. package/dist/cjs/uikit/Textfield.js +0 -28
  305. package/dist/cjs/uikit/Tip.js +0 -13
  306. package/dist/cjs/uikit/Toast.js +0 -26
  307. package/dist/cjs/uikit/UploadArea.js +0 -31
  308. package/dist/esm/chunks/Avatar-BtkvMV1v.js +0 -66
  309. package/dist/esm/chunks/AvatarGroup-pbqdS56o.js +0 -37
  310. package/dist/esm/chunks/Badge-DtxDLSO0.js +0 -39
  311. package/dist/esm/chunks/Button-BUJkJqdO.js +0 -310
  312. package/dist/esm/chunks/ButtonBar-Bl0oCxd8.js +0 -56
  313. package/dist/esm/chunks/Card-Bjk0kgQh.js +0 -34
  314. package/dist/esm/chunks/CheckBox-CvkZuSeB.js +0 -74
  315. package/dist/esm/chunks/Chip-o-YG_HAf.js +0 -91
  316. package/dist/esm/chunks/DivInput-D6ORPrkT.js +0 -202
  317. package/dist/esm/chunks/DocIcons-CbOX4n8Y.js +0 -39
  318. package/dist/esm/chunks/Dot-BZcEZbnm.js +0 -78
  319. package/dist/esm/chunks/DrggablePanel-DWrTjXvf.js +0 -300
  320. package/dist/esm/chunks/DropDown-BDIvYWI-.js +0 -152
  321. package/dist/esm/chunks/ErrorSummary-DzDnacH0.js +0 -40
  322. package/dist/esm/chunks/FileIcon-Cxh-QsYb.js +0 -130
  323. package/dist/esm/chunks/FileList-CdUgbpYF.js +0 -161
  324. package/dist/esm/chunks/FlexDiv-CFyndG99.js +0 -101
  325. package/dist/esm/chunks/Grouper-NJbpaaQG.js +0 -48
  326. package/dist/esm/chunks/IconButton-3m9ugITV.js +0 -82
  327. package/dist/esm/chunks/Label-BRon-ejm.js +0 -132
  328. package/dist/esm/chunks/Logos-DwZP-TR2.js +0 -117
  329. package/dist/esm/chunks/Overlay-BolsHW9S.js +0 -43
  330. package/dist/esm/chunks/Pager-BHLyXq9p.js +0 -40
  331. package/dist/esm/chunks/ProgressIndicator-uI9BZwBB.js +0 -118
  332. package/dist/esm/chunks/PromptInput-DodTBG82.js +0 -210
  333. package/dist/esm/chunks/RadioButton-D8otD_Jj.js +0 -63
  334. package/dist/esm/chunks/RadioButtonList-CtX1j7rO.js +0 -114
  335. package/dist/esm/chunks/Slider-O6UelMjh.js +0 -283
  336. package/dist/esm/chunks/Spacer-DbZSG5x3.js +0 -14
  337. package/dist/esm/chunks/Switch-DjfrSiQz.js +0 -41
  338. package/dist/esm/chunks/TabBar-C0NgwRa2.js +0 -174
  339. package/dist/esm/chunks/TextArea-DK0giDGR.js +0 -151
  340. package/dist/esm/chunks/TextField-CQ4XYYNm.js +0 -246
  341. package/dist/esm/chunks/Tip-iFECDhwN.js +0 -89
  342. package/dist/esm/chunks/Toast-ZxMZtbd0.js +0 -156
  343. package/dist/esm/chunks/UploadArea-C0YHy4Z9.js +0 -147
  344. package/dist/esm/chunks/_types-RJ7q8S0B.js +0 -712
  345. package/dist/esm/chunks/sharedTypes-BfZzG1KX.js +0 -9
  346. package/dist/esm/chunks/style-inject.es-tgCJW-Cu.js +0 -28
  347. package/dist/esm/chunks/tipStore-nBYJ6tmE.js +0 -17
  348. package/dist/esm/chunks/toastStore-r3pvNa28.js +0 -17
  349. package/dist/esm/chunks/tslib.es6-0pkUdtrF.js +0 -45
  350. package/dist/esm/chunks/utils-CZ1LWeN6.js +0 -121
  351. package/dist/esm/chunks/windowStore-Cu4W4zJM.js +0 -91
  352. package/dist/esm/hooks/useDoubleClick.js +0 -24
  353. package/dist/esm/hooks/useKeyboardShortcuts.js +0 -42
  354. package/dist/esm/hooks/useLastUpdated.js +0 -51
  355. package/dist/esm/hooks/useLocalStore.js +0 -50
  356. package/dist/esm/hooks/useObserveResize.js +0 -54
  357. package/dist/esm/hooks/useObserveTheme.js +0 -41
  358. package/dist/esm/hooks/useTheme.js +0 -84
  359. package/dist/esm/hooks/useToolTip.js +0 -34
  360. package/dist/esm/hooks/useTrackRenders.js +0 -37
  361. package/dist/esm/hooks/useWindow.js +0 -84
  362. package/dist/esm/hooks.js +0 -15
  363. package/dist/esm/index.js +0 -59
  364. package/dist/esm/providers/ThemeProvider.js +0 -56
  365. package/dist/esm/providers.js +0 -8
  366. package/dist/esm/stores/tip.js +0 -2
  367. package/dist/esm/stores/toast.js +0 -2
  368. package/dist/esm/stores/window.js +0 -2
  369. package/dist/esm/stores.js +0 -4
  370. package/dist/esm/theme/colors.js +0 -377
  371. package/dist/esm/theme/corners.js +0 -12
  372. package/dist/esm/theme/elevations.js +0 -15
  373. package/dist/esm/theme/themes.js +0 -23
  374. package/dist/esm/theme/type.js +0 -393
  375. package/dist/esm/theme.js +0 -5
  376. package/dist/esm/uikit/Avatar.js +0 -5
  377. package/dist/esm/uikit/AvatarGroup.js +0 -6
  378. package/dist/esm/uikit/Badge.js +0 -5
  379. package/dist/esm/uikit/Button.js +0 -20
  380. package/dist/esm/uikit/ButtonBar.js +0 -20
  381. package/dist/esm/uikit/Card.js +0 -15
  382. package/dist/esm/uikit/CheckBox.js +0 -16
  383. package/dist/esm/uikit/Chip.js +0 -16
  384. package/dist/esm/uikit/DivInput.js +0 -7
  385. package/dist/esm/uikit/DocIcon.js +0 -12
  386. package/dist/esm/uikit/Dot.js +0 -6
  387. package/dist/esm/uikit/DraggablePanel.js +0 -15
  388. package/dist/esm/uikit/DropDown.js +0 -15
  389. package/dist/esm/uikit/ErrorSummary.js +0 -6
  390. package/dist/esm/uikit/FileIcon.js +0 -13
  391. package/dist/esm/uikit/FileList.js +0 -18
  392. package/dist/esm/uikit/FlexDiv.js +0 -6
  393. package/dist/esm/uikit/Grouper.js +0 -17
  394. package/dist/esm/uikit/Icon.js +0 -13
  395. package/dist/esm/uikit/IconButton.js +0 -19
  396. package/dist/esm/uikit/Label.js +0 -14
  397. package/dist/esm/uikit/Logos.js +0 -12
  398. package/dist/esm/uikit/Overlay.js +0 -6
  399. package/dist/esm/uikit/Pager.js +0 -6
  400. package/dist/esm/uikit/Progress.js +0 -14
  401. package/dist/esm/uikit/PromptInput.js +0 -23
  402. package/dist/esm/uikit/RadioButton.js +0 -20
  403. package/dist/esm/uikit/RadioButtonList.js +0 -21
  404. package/dist/esm/uikit/Slider.js +0 -7
  405. package/dist/esm/uikit/Spacer.js +0 -4
  406. package/dist/esm/uikit/Switch.js +0 -6
  407. package/dist/esm/uikit/TabBar.js +0 -20
  408. package/dist/esm/uikit/TextArea.js +0 -21
  409. package/dist/esm/uikit/Textfield.js +0 -22
  410. package/dist/esm/uikit/Tip.js +0 -7
  411. package/dist/esm/uikit/Toast.js +0 -16
  412. package/dist/esm/uikit/UploadArea.js +0 -19
@@ -1,210 +0,0 @@
1
- import { jsx, jsxs } from 'react/jsx-runtime';
2
- import React, { useState, useRef, useCallback, useMemo, useEffect } from 'react';
3
- import { useTheme } from '../hooks/useTheme.js';
4
- import '../theme/colors.js';
5
- import '../hooks/useWindow.js';
6
- import { B as Button } from './Button-BUJkJqdO.js';
7
- import { F as FileList } from './FileList-CdUgbpYF.js';
8
- import { s as styleInject } from './style-inject.es-tgCJW-Cu.js';
9
-
10
- var css_248z = ".flexBox-module_row__PWxbe {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowBetween__27lKK {\n\tdisplay: flex;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowStart__nJZnW {\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowEnd__dHcOU {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_column__MP2Xd {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStart__Kg8cV {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: flex-start;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStartCenter__zcmtk {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnBetween__157yI {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnEnd__u2nwI {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-end;\n\talign-items: flex-end;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.type-module_body-xs-regular__QWEzl {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-xs-medium__FxEAv {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-xs-bold__rf7AV {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.25px;\n}.type-module_body-s-regular__8-FO- {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-s-medium__qyYq- {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-s-bold__7GQ5Z {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-m-regular__Qtp5G {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-m-medium__Ieh9K {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-m-bold__0lZ3I {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-l-regular__Ar4d3 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-l-medium__6tV1n {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-l-bold__I8Q1v {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-xl-regular__zDf-z {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-xl-medium__R5GpK {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-xl-bold__SI-hC {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_heading-s-medium__jGIb2 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 20px;\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-s-bold__QFgN8 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 20px;\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-m-bold__tdBSi {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 24px;\n\tline-height: 116.67%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-m-medium__-7Uyu {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 24px;\n\tline-height: 116.67%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-l-medium__8hGYF {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 30px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-l-bold__Cryjg {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 30px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-xl-medium__PUi44 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 36px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-xl-bold__1B6fk {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 36px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}\n\n.PromptInput-module_wrapperBg__9QWdq {\n\tposition: relative;\n\t--border-angle: 0turn;\n\t--conic-gradient-dark: conic-gradient(\n\t\tfrom var(--border-angle),\n\t\tvar(--core-text-special) 0deg,\n\t\tvar(--core-text-special) 45deg,\n\t\tvar(--core-text-special) 90deg,\n\t\tvar(--array-magenta-label) 135deg,\n\t\tvar(--array-magenta-label) 180deg,\n\t\tvar(--array-magenta-label) 225deg,\n\t\tvar(--array-land) 270deg,\n\t\tvar(--array-land) 315deg,\n\t\tvar(--array-land) 360deg\n\t);\n\t--conic-gradient-light: conic-gradient(\n\t\tfrom var(--border-angle),\n\t\tvar(--core-text-special) 0deg,\n\t\tvar(--core-text-special) 45deg,\n\t\tvar(--core-text-special) 90deg,\n\t\tvar(--array-magenta-label) 135deg,\n\t\tvar(--array-magenta-label) 180deg,\n\t\tvar(--array-magenta-label) 225deg,\n\t\tvar(--array-land-label) 270deg,\n\t\tvar(--array-land-label) 315deg,\n\t\tvar(--array-land-label) 360deg\n\t);\n\tz-index: 0;\n\theight: auto;\n\tmax-height: var(--prompt-max-height);\n\twidth: 100%;\n\tborder-radius: var(--prompt-border-radius);\n\toverflow: hidden;\n\tpadding: var(--prompt-border-width) !important;\n\tbackground: var(--prompt-border-color);\n\tanimation: PromptInput-module_bgRotate__xvvtD 3s linear infinite;\n\tanimation-play-state: var(--prompt-state);\n\ttransition: background 0.25s ease-in-out 0s;\n}\n\n@property --border-angle {\n\tsyntax: \"<angle>\";\n\tinherits: false;\n\tinitial-value: 0turn;\n}\n\n@keyframes PromptInput-module_bgRotate__xvvtD {\n\t100% {\n\t\t--border-angle: 1turn;\n\t}\n}\n\n.PromptInput-module_textareaWrapper__4hWyM {\n\talign-items: flex-start;\n\twidth: 100%;\n\theight: min-content;\n\tmax-height: 400px;\n\toverflow: hidden;\n\toverflow-y: auto;\n\tborder-radius: var(--prompt-inner-border-radius);\n\tbackground: var(--core-surface-secondary);\n}\n\n.PromptInput-module_attachments__R0egZ {\n\tpadding: 16px 16px 0 16px !important;\n\twidth: 100%;\n}\n\n.PromptInput-module_clear__tjFZ- {\n\tpadding: 12px 8px 0 0 !important;\n\tdisplay: var(--prompt-clear) !important;\n}\n\n.PromptInput-module_buttonBar__9Ol9O {\n\tpadding: 8px 16px 16px 16px !important;\n\twidth: 100%;\n\tcursor: text;\n}\n\n.PromptInput-module_toolBar__CmIf- {\n\tflex: 1;\n\tgap: 8px;\n}\n\n.PromptInput-module_textarea__ZuzrC {\n\tpadding: 16px !important;\n\tbox-sizing: border-box;\n\tfield-sizing: content;\n\twidth: 100%;\n\tresize: none;\n\tborder: 0;\n\toutline: none;\n\tcolor: var(--core-text-primary);\n\tbackground: transparent;\n\tborder-radius: var(--prompt-border-radius);\n\t&::placeholder {\n\t\tcolor: var(--core-text-disabled);\n\t}\n}\n\n.PromptInput-module_s__Z684A {\n}\n\n.PromptInput-module_m__NxLh6 {\n}\n\n.PromptInput-module_l__BaGnx {\n}\n";
11
- var css = {"wrapperBg":"PromptInput-module_wrapperBg__9QWdq flexBox-module_columnStart__Kg8cV","bgRotate":"PromptInput-module_bgRotate__xvvtD","textareaWrapper":"PromptInput-module_textareaWrapper__4hWyM flexBox-module_columnStart__Kg8cV","attachments":"PromptInput-module_attachments__R0egZ flexBox-module_rowStart__nJZnW","clear":"PromptInput-module_clear__tjFZ- flexBox-module_row__PWxbe","buttonBar":"PromptInput-module_buttonBar__9Ol9O flexBox-module_rowBetween__27lKK","toolBar":"PromptInput-module_toolBar__CmIf- flexBox-module_rowStart__nJZnW","textarea":"PromptInput-module_textarea__ZuzrC","s":"PromptInput-module_s__Z684A type-module_body-s-regular__8-FO-","m":"PromptInput-module_m__NxLh6 type-module_body-m-regular__Qtp5G","l":"PromptInput-module_l__BaGnx type-module_body-l-regular__Ar4d3"};
12
- styleInject(css_248z);
13
-
14
- const PromptInputBase = React.forwardRef((props, ref) => {
15
- const { children, attachments = [], value = '', working = false, maxHeight, borderStyle = 'gradient', borderColor, borderColorOn, borderAnimate = true, borderWidth = 1, borderRadius = 8, focused = false, placeholder = 'Ask me anything ...', placeholderWorking = 'Working ...', submitClears = true, submitEnablesStop = true, enterSubmits = true, attachButton = true, sendButton = true, stopEnabled = false, textSize = 'm', maxLength, toolbarGap = 8, onChange, onBlur, onFocus, onSubmit, onStop, onAttachmentsChange, } = props;
16
- const { isDark } = useTheme();
17
- const [isFocused, setIsFocused] = useState(focused !== null && focused !== void 0 ? focused : false);
18
- const [isWorking, setIsWorking] = useState(working !== null && working !== void 0 ? working : false);
19
- const [isStopEnabled, setIsStopEnabled] = useState(stopEnabled);
20
- const [textValue, setTextValue] = useState(value);
21
- const textAreaRef = useRef(null);
22
- // process focus callback
23
- const handleFocus = useCallback(() => {
24
- var _a, _b;
25
- setIsFocused(true);
26
- (_a = textAreaRef === null || textAreaRef === void 0 ? void 0 : textAreaRef.current) === null || _a === void 0 ? void 0 : _a.focus();
27
- onFocus === null || onFocus === void 0 ? void 0 : onFocus((_b = textAreaRef.current) === null || _b === void 0 ? void 0 : _b.value, attachments);
28
- }, [onFocus, attachments]);
29
- // process blur callback
30
- const handleBlur = useCallback(() => {
31
- var _a, _b;
32
- setIsFocused(false);
33
- (_a = textAreaRef.current) === null || _a === void 0 ? void 0 : _a.blur();
34
- onBlur === null || onBlur === void 0 ? void 0 : onBlur((_b = textAreaRef.current) === null || _b === void 0 ? void 0 : _b.value, attachments);
35
- }, [onBlur, attachments]);
36
- // handle attachments change
37
- const handleAttachmentsChange = useCallback((newFiles) => {
38
- var _a;
39
- onAttachmentsChange === null || onAttachmentsChange === void 0 ? void 0 : onAttachmentsChange(newFiles);
40
- onChange === null || onChange === void 0 ? void 0 : onChange((_a = textAreaRef.current) === null || _a === void 0 ? void 0 : _a.value, newFiles);
41
- }, [onAttachmentsChange, onChange]);
42
- // callback to handle text change
43
- const handleChange = useCallback((e) => {
44
- const newValue = e.target.value;
45
- setTextValue(newValue);
46
- onChange === null || onChange === void 0 ? void 0 : onChange(newValue, attachments);
47
- }, [onChange, attachments]);
48
- // handle submit contents
49
- const handleSubmit = useCallback(() => {
50
- var _a;
51
- if (isWorking || isStopEnabled)
52
- return;
53
- const currentValue = (_a = textAreaRef.current) === null || _a === void 0 ? void 0 : _a.value;
54
- if (currentValue) {
55
- onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(currentValue, attachments);
56
- setIsWorking(true);
57
- if (submitClears)
58
- setTextValue('');
59
- if (submitEnablesStop)
60
- setIsStopEnabled(true);
61
- handleBlur();
62
- }
63
- }, [
64
- submitClears,
65
- onSubmit,
66
- handleBlur,
67
- submitEnablesStop,
68
- isWorking,
69
- isStopEnabled,
70
- attachments,
71
- ]);
72
- // handle stop working
73
- const handleStop = useCallback(() => {
74
- setIsWorking(false);
75
- setIsStopEnabled(false);
76
- onStop === null || onStop === void 0 ? void 0 : onStop();
77
- handleFocus();
78
- }, [onStop, handleFocus]);
79
- // callback to handle keydown
80
- const handleKeyDown = useCallback((e) => {
81
- if (e.key === 'Enter' && enterSubmits) {
82
- e.preventDefault();
83
- if (isWorking)
84
- return;
85
- handleSubmit();
86
- }
87
- }, [handleSubmit, isWorking, enterSubmits]);
88
- // callback to handle send button click
89
- const handleClickSend = useCallback((e) => {
90
- e.preventDefault();
91
- e.stopPropagation();
92
- if (isWorking && !isStopEnabled)
93
- return;
94
- isStopEnabled ? handleStop() : handleSubmit();
95
- }, [handleSubmit, handleStop, isStopEnabled, isWorking]);
96
- // callback to handle submit click
97
- const handleClickAttach = useCallback((e) => {
98
- e.preventDefault();
99
- e.stopPropagation();
100
- }, []);
101
- // focus the text area when clicking on the button bar
102
- const handleClickButtonBar = useCallback((e) => {
103
- e.preventDefault();
104
- if (isWorking)
105
- return;
106
- handleFocus();
107
- }, [handleFocus, isWorking]);
108
- // border color - gradient or solid color or none
109
- const setBorderColor = useMemo(() => {
110
- if (borderStyle === 'gradient') {
111
- const radial = isDark
112
- ? 'var(--conic-gradient-dark)'
113
- : 'var(--conic-gradient-light)';
114
- if (isWorking && borderAnimate)
115
- return radial;
116
- if (isFocused)
117
- return borderColorOn !== null && borderColorOn !== void 0 ? borderColorOn : radial;
118
- return borderColor !== null && borderColor !== void 0 ? borderColor : radial;
119
- }
120
- if (borderStyle === 'solid') {
121
- if (isWorking)
122
- return borderColorOn !== null && borderColorOn !== void 0 ? borderColorOn : 'var(--core-outline-special)';
123
- if (isFocused)
124
- return borderColorOn !== null && borderColorOn !== void 0 ? borderColorOn : 'var(--core-outline-special)';
125
- return borderColor !== null && borderColor !== void 0 ? borderColor : 'transparent';
126
- }
127
- return 'transparent';
128
- }, [
129
- borderStyle,
130
- isFocused,
131
- borderColorOn,
132
- borderColor,
133
- isWorking,
134
- borderAnimate,
135
- isDark,
136
- ]);
137
- // placeholder text
138
- const setPlaceholder = useMemo(() => {
139
- if (isWorking && placeholderWorking)
140
- return placeholderWorking;
141
- return placeholder;
142
- }, [isWorking, placeholder, placeholderWorking]);
143
- // set send button icon color
144
- const setSendIconColor = useMemo(() => {
145
- if (isStopEnabled || isWorking)
146
- return 'var(--core-text-primary)';
147
- if (textValue !== '')
148
- return 'var(--core-text-light)';
149
- return 'var(--core-text-disabled)';
150
- }, [textValue, isWorking, isStopEnabled]);
151
- // set the state of the "send" button
152
- const sendButtonState = useMemo(() => {
153
- if (isStopEnabled)
154
- return 'normal';
155
- return textValue === '' && !isWorking ? 'disabled' : 'normal';
156
- }, [textValue, isStopEnabled, isWorking]);
157
- // set attach icon color
158
- const attachState = useMemo(() => {
159
- if (!isWorking)
160
- return 'normal';
161
- return 'disabled';
162
- }, [isWorking]);
163
- // update focused state
164
- useEffect(() => {
165
- var _a, _b;
166
- if (focused)
167
- (_a = textAreaRef.current) === null || _a === void 0 ? void 0 : _a.focus();
168
- else
169
- (_b = textAreaRef.current) === null || _b === void 0 ? void 0 : _b.blur();
170
- }, [focused]);
171
- // update text value based on prop change
172
- useEffect(() => {
173
- var _a;
174
- const currentValue = (_a = textAreaRef.current) === null || _a === void 0 ? void 0 : _a.value;
175
- if (currentValue !== value)
176
- setTextValue(value);
177
- }, [value]);
178
- // update working state
179
- useEffect(() => {
180
- if (working !== undefined)
181
- setIsWorking(working);
182
- }, [working]);
183
- // update stop enabled
184
- useEffect(() => setIsStopEnabled(stopEnabled), [stopEnabled]);
185
- // memo dynamic css vars
186
- const cssVars = useMemo(() => {
187
- return {
188
- '--prompt-border-color': setBorderColor,
189
- '--prompt-max-height': maxHeight ? `${maxHeight}px` : 'unset',
190
- '--prompt-border-width': borderWidth ? `${borderWidth}px` : '0',
191
- '--prompt-state': isWorking && borderAnimate ? 'running' : 'paused',
192
- '--prompt-border-radius': borderRadius ? `${borderRadius}px` : '8px',
193
- '--prompt-inner-border-radius': borderRadius
194
- ? `${borderRadius - 1}px`
195
- : '7px',
196
- };
197
- }, [
198
- isWorking,
199
- borderAnimate,
200
- setBorderColor,
201
- borderWidth,
202
- borderRadius,
203
- maxHeight,
204
- ]);
205
- return (jsx("div", { className: css.wrapperBg, ref: ref, style: cssVars, children: jsxs("div", { className: css.textareaWrapper, children: [attachments.length > 0 && (jsx("div", { className: css.attachments, children: jsx(FileList, { files: attachments, onChange: handleAttachmentsChange, bgColor: 'var(--core-surface-primary)', size: 's', direction: 'row', gap: 8, iconSize: 24 }) })), jsx("textarea", { id: 'promptInput', name: 'promptInput', className: `${css.textarea} ${css[textSize]}`, ref: textAreaRef, value: textValue !== null && textValue !== void 0 ? textValue : '', onChange: handleChange, placeholder: setPlaceholder, onFocus: handleFocus, onBlur: handleBlur, onKeyDown: handleKeyDown, maxLength: maxLength, rows: 1 }), (children || attachButton || sendButton) && (jsxs("div", { className: css.buttonBar, onMouseDown: handleClickButtonBar, children: [jsxs("div", { className: css.toolBar, style: { gap: toolbarGap }, children: [attachButton && (jsx(Button, { round: true, label: undefined, variant: 'outline', iconLeft: 'plus', iconSize: 20, state: attachState, onMouseDown: handleClickAttach })), children] }), sendButton && (jsx(Button, { round: true, label: undefined, variant: isStopEnabled ? 'outline' : 'solid', iconLeft: isStopEnabled ? 'stop' : 'arrow up', iconSize: isStopEnabled ? 16 : 20, state: sendButtonState, bgColorDisabled: 'var(--core-outline-primary)', progress: !isStopEnabled, working: !isStopEnabled && isWorking, onMouseDown: handleClickSend, iconColor: setSendIconColor }))] }))] }) }));
206
- });
207
- PromptInputBase.displayName = 'PromptInput';
208
- const PromptInput = React.memo(PromptInputBase);
209
-
210
- export { PromptInput as P };
@@ -1,63 +0,0 @@
1
- import { _ as __rest } from './tslib.es6-0pkUdtrF.js';
2
- import { jsxs, jsx } from 'react/jsx-runtime';
3
- import React, { useState, useEffect, useCallback, useMemo } from 'react';
4
- import { useTheme } from '../hooks/useTheme.js';
5
- import '../theme/colors.js';
6
- import '../hooks/useWindow.js';
7
- import { I as IconButton } from './IconButton-3m9ugITV.js';
8
- import { s as styleInject } from './style-inject.es-tgCJW-Cu.js';
9
-
10
- var css_248z = ".flexBox-module_row__PWxbe {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowBetween__27lKK {\n\tdisplay: flex;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowStart__nJZnW {\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowEnd__dHcOU {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_column__MP2Xd {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStart__Kg8cV {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: flex-start;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStartCenter__zcmtk {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnBetween__157yI {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnEnd__u2nwI {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-end;\n\talign-items: flex-end;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.type-module_body-xs-regular__QWEzl {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-xs-medium__FxEAv {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-xs-bold__rf7AV {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-xs);\n\tline-height: 133.33%;\n\ttext-decoration: none;\n\tletter-spacing: 0.25px;\n}.type-module_body-s-regular__8-FO- {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-s-medium__qyYq- {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-s-bold__7GQ5Z {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-s);\n\tline-height: 142.86%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-m-regular__Qtp5G {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-m-medium__Ieh9K {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-m-bold__0lZ3I {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-m);\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_body-l-regular__Ar4d3 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-l-medium__6tV1n {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-l-bold__I8Q1v {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-l);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_body-xl-regular__zDf-z {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-regular);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-xl-medium__R5GpK {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-medium);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.1px;\n}.type-module_body-xl-bold__SI-hC {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-xl);\n\tline-height: 162.5%;\n\ttext-decoration: none;\n\tletter-spacing: 0.15px;\n}.type-module_heading-s-medium__jGIb2 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 20px;\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-s-bold__QFgN8 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 20px;\n\tline-height: 140%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-m-bold__tdBSi {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 24px;\n\tline-height: 116.67%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-m-medium__-7Uyu {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 24px;\n\tline-height: 116.67%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-l-medium__8hGYF {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 30px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-l-bold__Cryjg {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 30px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-xl-medium__PUi44 {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 500;\n\tfont-size: 36px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}.type-module_heading-xl-bold__1B6fk {\n\tfont-family: var(--font-family), sans-serif;\n\tfont-weight: 600;\n\tfont-size: 36px;\n\tline-height: 128.57%;\n\ttext-decoration: none;\n\tletter-spacing: 0.2px;\n}\n\n.RadioButton-module_wrapper__ezvz- {\n\tpadding: var(--rb-padding) !important;\n\tmax-width: var(--rb-max-width);\n\tflex: var(--rb-flex);\n\tborder: 1px solid var(--core-outline-primary);\n\tbackground: var(--rb-bg);\n\tgap: 8px;\n\tborder-radius: 8px;\n\tcursor: pointer;\n\ttransition: all 0.25s ease-in-out 0s;\n\tuser-select: none;\n\t-webkit-user-select: none;\n}\n\n.RadioButton-module_radioIcon__6ddS9 {\n\twidth: 20px;\n\theight: 20px;\n\tmax-width: 20px;\n\tmax-height: 20px;\n\tmin-height: 20px;\n\tmin-width: 20px;\n}\n\n.RadioButton-module_radioTitle__R1R2D {\n\tcolor: var(--core-text-primary);\n\twhite-space: nowrap;\n\tflex: 1;\n}\n\n.RadioButton-module_radioSummary__-RRdT {\n\tcolor: var(--core-text-primary);\n\tflex: 1;\n}\n\n.RadioButton-module_radioContent__Fq-Ry {\n\twidth: 100%;\n}\n";
11
- var css = {"wrapper":"RadioButton-module_wrapper__ezvz- flexBox-module_row__PWxbe","radioIcon":"RadioButton-module_radioIcon__6ddS9 flexBox-module_column__MP2Xd","radioTitle":"RadioButton-module_radioTitle__R1R2D flexBox-module_rowStart__nJZnW type-module_body-m-regular__Qtp5G","radioSummary":"RadioButton-module_radioSummary__-RRdT flexBox-module_rowStart__nJZnW type-module_body-s-regular__8-FO-","radioContent":"RadioButton-module_radioContent__Fq-Ry flexBox-module_columnStart__Kg8cV"};
12
- styleInject(css_248z);
13
-
14
- const RadioButton = React.memo((props) => {
15
- const theme = useTheme();
16
- const { option, selected = false, deselect = true, tabIndex = 1, wrap = false, list = false, hideRadio = false, toggleIcon = true, noFrame = false, iconColor, onChange = () => null } = props, divAttributes = __rest(props, ["option", "selected", "deselect", "tabIndex", "wrap", "list", "hideRadio", "toggleIcon", "noFrame", "iconColor", "onChange"]);
17
- const { id: divId, className, style } = divAttributes, rest = __rest(divAttributes, ["id", "className", "style"]);
18
- const divStyle = style !== null && style !== void 0 ? style : {};
19
- const divClass = className ? ` ${className}` : '';
20
- const [isSelected, setIsSelected] = useState(selected);
21
- useEffect(() => setIsSelected(selected), [selected]);
22
- const handleChange = useCallback(() => {
23
- if (isSelected && !deselect)
24
- return;
25
- setIsSelected(!isSelected);
26
- onChange(option, !isSelected);
27
- }, [isSelected, deselect, onChange, option]);
28
- const handleKeyDown = useCallback((e) => {
29
- if (e.code === 'Space') {
30
- e.preventDefault();
31
- e.stopPropagation();
32
- handleChange();
33
- }
34
- }, [handleChange]);
35
- // memo icon color
36
- const setIconColor = useMemo(() => {
37
- if (iconColor)
38
- return iconColor;
39
- return toggleIcon && isSelected
40
- ? theme.current.colors['core-button-primary']
41
- : theme.current.colors['core-icon-primary'];
42
- }, [iconColor, toggleIcon, isSelected, theme]);
43
- // memo icon name
44
- const iconName = useMemo(() => (toggleIcon && isSelected ? 'checked' : 'unchecked'), [toggleIcon, isSelected]);
45
- // memo flex
46
- const setFlex = useMemo(() => {
47
- if (list)
48
- return 'unset';
49
- return wrap ? '40%' : '1';
50
- }, [list, wrap]);
51
- // memo css vars
52
- const cssVars = useMemo(() => {
53
- return {
54
- '--rb-max-width': wrap ? '50%' : '100%',
55
- '--rb-flex': setFlex,
56
- '--rb-padding': noFrame ? '0' : '8px 16px 8px 10px',
57
- '--rb-bg': isSelected ? 'var(--core-surface-secondary)' : 'transparent',
58
- };
59
- }, [setFlex, isSelected, wrap, noFrame]);
60
- return (jsxs("div", Object.assign({ id: divId, className: `${css.wrapper}${divClass}`, style: Object.assign(Object.assign({}, divStyle), cssVars), onClick: handleChange, onKeyDown: handleKeyDown, tabIndex: tabIndex, "aria-label": option.title, "aria-selected": isSelected }, rest, { children: [option.icon && !hideRadio && (jsx("div", { className: css.radioIcon, children: jsx(IconButton, { toggle: false, icon: iconName, color: setIconColor, frameSize: 20, iconSize: 20 }) })), jsxs("div", { className: css.radioContent, children: [jsx("div", { className: css.radioTitle, children: option.title }), option.description && option.description !== '' && (jsx("div", { className: css.radioSummary, children: option.description }))] })] })));
61
- });
62
-
63
- export { RadioButton as R };
@@ -1,114 +0,0 @@
1
- import { _ as __rest } from './tslib.es6-0pkUdtrF.js';
2
- import { jsx, jsxs } from 'react/jsx-runtime';
3
- import React, { useState, useEffect, useCallback, useMemo } from 'react';
4
- import { R as RadioButton } from './RadioButton-D8otD_Jj.js';
5
- import { s as styleInject } from './style-inject.es-tgCJW-Cu.js';
6
-
7
- var css_248z = ".flexBox-module_row__PWxbe {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowBetween__27lKK {\n\tdisplay: flex;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowStart__nJZnW {\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_rowEnd__dHcOU {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_column__MP2Xd {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: center;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStart__Kg8cV {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: flex-start;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnStartCenter__zcmtk {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnBetween__157yI {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: space-between;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}.flexBox-module_columnEnd__u2nwI {\n\tdisplay: flex;\n\tflex-direction: column;\n\tjustify-content: flex-end;\n\talign-items: flex-end;\n\tbox-sizing: border-box;\n\tpadding: 0;\n\tmargin: 0;\n}\n\n.RadioButtonList-module_wrapper__UMlAV {\n\talign-items: flex-start;\n\twidth: 100%;\n\tflex-wrap: var(--rb-list-flex-wrap);\n\tmargin-bottom: var(--rb-list-margin-bottom);\n\tgap: var(--rb-gap);\n}\n\n.RadioButtonList-module_column__E9MfY {\n}\n\n.RadioButtonList-module_row__l88Vt {\n}\n";
8
- var css = {"wrapper":"RadioButtonList-module_wrapper__UMlAV","column":"RadioButtonList-module_column__E9MfY flexBox-module_columnStart__Kg8cV","row":"RadioButtonList-module_row__l88Vt flexBox-module_rowStart__nJZnW"};
9
- styleInject(css_248z);
10
-
11
- const RadioButtonList = React.memo((props) => {
12
- const { options = [], selectedIndexes = null, selectedOptions = null, label = null, deselect = false, multiSelect = false, wrap = false, tabIndexSeed = 0, spacer = 'none', custom = 0, gap = 16, hideRadio = false, noFrame = false, toggleIcon = true, iconColor = undefined, iconSelectedColor = undefined, onChange = () => null } = props, divAttributes = __rest(props, ["options", "selectedIndexes", "selectedOptions", "label", "deselect", "multiSelect", "wrap", "tabIndexSeed", "spacer", "custom", "gap", "hideRadio", "noFrame", "toggleIcon", "iconColor", "iconSelectedColor", "onChange"]);
13
- const { id: divId, className, style } = divAttributes, rest = __rest(divAttributes, ["id", "className", "style"]);
14
- const divStyle = style !== null && style !== void 0 ? style : {};
15
- const divClass = className ? ` ${className}` : '';
16
- // internal array of selected indexes
17
- const [selected, setSelected] = useState(selectedIndexes);
18
- // update indexes selected based on prop
19
- useEffect(() => setSelected(selectedIndexes), [selectedIndexes]);
20
- // update indexes selected if setting selections via field name / values
21
- useEffect(() => {
22
- if (!selectedOptions || !options)
23
- return;
24
- const selections = [];
25
- for (const item of selectedOptions) {
26
- for (let i = 0; i < options.length; i++) {
27
- const option = options[i];
28
- if (option.fieldName === item)
29
- selections.push(i);
30
- }
31
- }
32
- setSelected(selections);
33
- }, [selectedOptions, options]);
34
- // returns if a specific option index is selected
35
- const isSelected = useCallback((index) => {
36
- if (!selected)
37
- return false;
38
- return selected.includes(index);
39
- }, [selected]);
40
- const doMultiSelection = useCallback((selection, state) => {
41
- // **** update the selected indexes
42
- let indexesSelected = selected ? [...selected] : [];
43
- // if deselecting and there are selections
44
- if (!state && selected) {
45
- const removeAt = indexesSelected.indexOf(selection);
46
- indexesSelected.splice(removeAt, 1);
47
- }
48
- else if (state) {
49
- indexesSelected = selected ? [...selected] : [];
50
- const exists = indexesSelected.includes(selection);
51
- if (!exists)
52
- indexesSelected.push(selection);
53
- }
54
- // **** create an array of selected options
55
- let updatedSelections = [];
56
- for (const index of indexesSelected || []) {
57
- if (updatedSelections)
58
- updatedSelections.push(options[index]);
59
- }
60
- if (updatedSelections.length < 1)
61
- updatedSelections = null;
62
- setSelected(indexesSelected || null);
63
- onChange(updatedSelections, indexesSelected || null);
64
- }, [selected, options, onChange]);
65
- const doSingleSelection = useCallback((selection, state) => {
66
- onChange(state ? [options[selection]] : [], state ? [selection] : []);
67
- setSelected(state ? [selection] : null);
68
- }, [options, onChange]);
69
- const handleChange = useCallback((selection, state) => {
70
- // it not multiselect just pass the current selection
71
- if (multiSelect) {
72
- doMultiSelection(selection, state);
73
- }
74
- else {
75
- doSingleSelection(selection, state);
76
- }
77
- }, [multiSelect, doMultiSelection, doSingleSelection]);
78
- const renderedOptions = useMemo(() => {
79
- return options.map((option, i) => {
80
- return (jsx(RadioButton, { option: option, selected: isSelected(i), deselect: deselect, wrap: wrap, noFrame: noFrame, hideRadio: hideRadio, onChange: (_option, state) => handleChange(i, state), tabIndex: i + 1 + 100 * tabIndexSeed, toggleIcon: toggleIcon, iconColor: isSelected(i) ? iconSelectedColor : iconColor }, `${option.fieldName}_${i}`));
81
- });
82
- }, [
83
- options,
84
- isSelected,
85
- deselect,
86
- wrap,
87
- noFrame,
88
- hideRadio,
89
- handleChange,
90
- tabIndexSeed,
91
- toggleIcon,
92
- iconColor,
93
- iconSelectedColor,
94
- ]);
95
- // memo margin
96
- const margin = useMemo(() => {
97
- if (spacer === 'none')
98
- return 0;
99
- if (spacer === 'custom')
100
- return custom;
101
- return 0;
102
- }, [spacer, custom]);
103
- // memo css vars
104
- const cssVars = useMemo(() => {
105
- return {
106
- '--rb-list-flex-wrap': wrap ? 'wrap' : 'nowrap',
107
- '--rb-list-margin-bottom': noFrame ? 0 : `${margin}px`,
108
- '--rb-gap': `${gap}px`,
109
- };
110
- }, [wrap, margin, gap, noFrame]);
111
- return (jsxs("div", Object.assign({ id: divId, className: `${css.wrapper} ${noFrame ? css.column : css.row}${divClass}`, style: Object.assign(Object.assign({}, divStyle), cssVars) }, rest, { children: [label, renderedOptions] })));
112
- });
113
-
114
- export { RadioButtonList as R };