@apple-pie/slice 0.0.5 → 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 (414) 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 +47 -127
  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/index.d.ts +3 -0
  220. package/dist/types/stores/index.d.ts +1 -0
  221. package/dist/types/stores/uploads/_types.d.ts +16 -0
  222. package/dist/types/stores/uploads/index.d.ts +2 -0
  223. package/dist/types/stores/uploads/uploadsStore.d.ts +22 -0
  224. package/dist/types/uikit/FileList/_types.d.ts +1 -0
  225. package/dist/types/uikit/UploadArea/UploadArea.d.ts +54 -0
  226. package/dist/types/uikit/UploadArea/_types.d.ts +46 -0
  227. package/dist/types/uikit/UploadArea/index.d.ts +3 -0
  228. package/dist/types/util/utils.d.ts +4 -0
  229. package/dist/types/workers/uploads/uploads-worker.d.ts +129 -0
  230. package/dist/types/workers/uploads/uploads.d.ts +1 -0
  231. package/dist/types/workers/uploads/uploads.runtime.d.ts +1 -0
  232. package/package.json +23 -17
  233. package/dist/cjs/chunks/Avatar-z2YcOAoP.js +0 -68
  234. package/dist/cjs/chunks/AvatarGroup-Cz8369zI.js +0 -39
  235. package/dist/cjs/chunks/Badge-COSg__VJ.js +0 -41
  236. package/dist/cjs/chunks/Button-BNXqiA13.js +0 -312
  237. package/dist/cjs/chunks/ButtonBar-CeDdAOlH.js +0 -58
  238. package/dist/cjs/chunks/Card-Cc_c-S7i.js +0 -36
  239. package/dist/cjs/chunks/CheckBox-hTWIPqV_.js +0 -76
  240. package/dist/cjs/chunks/Chip-CLKVldi4.js +0 -93
  241. package/dist/cjs/chunks/DivInput-DnY2emt-.js +0 -204
  242. package/dist/cjs/chunks/DocIcons-BRWOzK96.js +0 -41
  243. package/dist/cjs/chunks/Dot-B5dO8kSS.js +0 -80
  244. package/dist/cjs/chunks/DrggablePanel-BtsURL9o.js +0 -302
  245. package/dist/cjs/chunks/DropDown-COr9u96t.js +0 -154
  246. package/dist/cjs/chunks/ErrorSummary-BrSHbGpk.js +0 -42
  247. package/dist/cjs/chunks/FileIcon-CEMQK_Je.js +0 -132
  248. package/dist/cjs/chunks/FileList-DWIm4o46.js +0 -163
  249. package/dist/cjs/chunks/FlexDiv-BHl29ywz.js +0 -103
  250. package/dist/cjs/chunks/Grouper-EyHoeA8w.js +0 -50
  251. package/dist/cjs/chunks/IconButton-9QZ4eKBZ.js +0 -84
  252. package/dist/cjs/chunks/Label-DZJ_YDtD.js +0 -134
  253. package/dist/cjs/chunks/Logos-DSlAUz8l.js +0 -119
  254. package/dist/cjs/chunks/Overlay-DV3C5NDO.js +0 -45
  255. package/dist/cjs/chunks/Pager-CRjpl1FZ.js +0 -42
  256. package/dist/cjs/chunks/ProgressIndicator-BAwAaw58.js +0 -121
  257. package/dist/cjs/chunks/PromptInput-DmO8a3oX.js +0 -212
  258. package/dist/cjs/chunks/RadioButton-DA9YUGEF.js +0 -65
  259. package/dist/cjs/chunks/RadioButtonList-BtsT7GJc.js +0 -116
  260. package/dist/cjs/chunks/Slider-CqrIwn-L.js +0 -285
  261. package/dist/cjs/chunks/Spacer-BEY2-_PB.js +0 -16
  262. package/dist/cjs/chunks/Switch-CtkFtogd.js +0 -43
  263. package/dist/cjs/chunks/TabBar-WsNlr-aZ.js +0 -176
  264. package/dist/cjs/chunks/TextArea-BMJWUH2H.js +0 -153
  265. package/dist/cjs/chunks/TextField-mfwz79cD.js +0 -248
  266. package/dist/cjs/chunks/Tip-Af6FMEDi.js +0 -91
  267. package/dist/cjs/chunks/Toast-CxAEOW4z.js +0 -158
  268. package/dist/cjs/chunks/_types-BNlHsGMQ.js +0 -714
  269. package/dist/cjs/chunks/sharedTypes-BvTjh6M5.js +0 -9
  270. package/dist/cjs/chunks/style-inject.es-XZHJH68X.js +0 -30
  271. package/dist/cjs/chunks/tipStore-C9oV9SIh.js +0 -23
  272. package/dist/cjs/chunks/toastStore-C-ETP9H6.js +0 -23
  273. package/dist/cjs/chunks/tslib.es6-4H29ixHs.js +0 -48
  274. package/dist/cjs/chunks/utils-BwNacfBU.js +0 -128
  275. package/dist/cjs/chunks/windowStore-CPcVHJq6.js +0 -93
  276. package/dist/cjs/uikit/Avatar.js +0 -11
  277. package/dist/cjs/uikit/AvatarGroup.js +0 -12
  278. package/dist/cjs/uikit/Badge.js +0 -11
  279. package/dist/cjs/uikit/Button.js +0 -26
  280. package/dist/cjs/uikit/ButtonBar.js +0 -26
  281. package/dist/cjs/uikit/Card.js +0 -21
  282. package/dist/cjs/uikit/CheckBox.js +0 -22
  283. package/dist/cjs/uikit/Chip.js +0 -22
  284. package/dist/cjs/uikit/DivInput.js +0 -13
  285. package/dist/cjs/uikit/DocIcon.js +0 -18
  286. package/dist/cjs/uikit/Dot.js +0 -12
  287. package/dist/cjs/uikit/DraggablePanel.js +0 -21
  288. package/dist/cjs/uikit/DropDown.js +0 -21
  289. package/dist/cjs/uikit/ErrorSummary.js +0 -12
  290. package/dist/cjs/uikit/FileIcon.js +0 -23
  291. package/dist/cjs/uikit/FileList.js +0 -24
  292. package/dist/cjs/uikit/FlexDiv.js +0 -12
  293. package/dist/cjs/uikit/Grouper.js +0 -23
  294. package/dist/cjs/uikit/Icon.js +0 -23
  295. package/dist/cjs/uikit/IconButton.js +0 -25
  296. package/dist/cjs/uikit/Label.js +0 -20
  297. package/dist/cjs/uikit/Logos.js +0 -18
  298. package/dist/cjs/uikit/Overlay.js +0 -12
  299. package/dist/cjs/uikit/Pager.js +0 -12
  300. package/dist/cjs/uikit/Progress.js +0 -21
  301. package/dist/cjs/uikit/PromptInput.js +0 -29
  302. package/dist/cjs/uikit/RadioButton.js +0 -26
  303. package/dist/cjs/uikit/RadioButtonList.js +0 -27
  304. package/dist/cjs/uikit/Slider.js +0 -13
  305. package/dist/cjs/uikit/Spacer.js +0 -10
  306. package/dist/cjs/uikit/Switch.js +0 -12
  307. package/dist/cjs/uikit/TabBar.js +0 -26
  308. package/dist/cjs/uikit/TextArea.js +0 -27
  309. package/dist/cjs/uikit/Textfield.js +0 -28
  310. package/dist/cjs/uikit/Tip.js +0 -13
  311. package/dist/cjs/uikit/Toast.js +0 -26
  312. package/dist/esm/chunks/Avatar-BtkvMV1v.js +0 -66
  313. package/dist/esm/chunks/AvatarGroup-pbqdS56o.js +0 -37
  314. package/dist/esm/chunks/Badge-DtxDLSO0.js +0 -39
  315. package/dist/esm/chunks/Button-BUJkJqdO.js +0 -310
  316. package/dist/esm/chunks/ButtonBar-Bl0oCxd8.js +0 -56
  317. package/dist/esm/chunks/Card-Bjk0kgQh.js +0 -34
  318. package/dist/esm/chunks/CheckBox-CvkZuSeB.js +0 -74
  319. package/dist/esm/chunks/Chip-o-YG_HAf.js +0 -91
  320. package/dist/esm/chunks/DivInput-D6ORPrkT.js +0 -202
  321. package/dist/esm/chunks/DocIcons-CbOX4n8Y.js +0 -39
  322. package/dist/esm/chunks/Dot-BZcEZbnm.js +0 -78
  323. package/dist/esm/chunks/DrggablePanel-DWrTjXvf.js +0 -300
  324. package/dist/esm/chunks/DropDown-BDIvYWI-.js +0 -152
  325. package/dist/esm/chunks/ErrorSummary-DzDnacH0.js +0 -40
  326. package/dist/esm/chunks/FileIcon-Cxh-QsYb.js +0 -130
  327. package/dist/esm/chunks/FileList-yo_u1Kvw.js +0 -161
  328. package/dist/esm/chunks/FlexDiv-CFyndG99.js +0 -101
  329. package/dist/esm/chunks/Grouper-NJbpaaQG.js +0 -48
  330. package/dist/esm/chunks/IconButton-3m9ugITV.js +0 -82
  331. package/dist/esm/chunks/Label-CgntsR3g.js +0 -132
  332. package/dist/esm/chunks/Logos-DwZP-TR2.js +0 -117
  333. package/dist/esm/chunks/Overlay-BolsHW9S.js +0 -43
  334. package/dist/esm/chunks/Pager-BHLyXq9p.js +0 -40
  335. package/dist/esm/chunks/ProgressIndicator-uI9BZwBB.js +0 -118
  336. package/dist/esm/chunks/PromptInput-C_qj6kGp.js +0 -210
  337. package/dist/esm/chunks/RadioButton-D8otD_Jj.js +0 -63
  338. package/dist/esm/chunks/RadioButtonList-CtX1j7rO.js +0 -114
  339. package/dist/esm/chunks/Slider-O6UelMjh.js +0 -283
  340. package/dist/esm/chunks/Spacer-DbZSG5x3.js +0 -14
  341. package/dist/esm/chunks/Switch-DjfrSiQz.js +0 -41
  342. package/dist/esm/chunks/TabBar-C0NgwRa2.js +0 -174
  343. package/dist/esm/chunks/TextArea-DK0giDGR.js +0 -151
  344. package/dist/esm/chunks/TextField-CQ4XYYNm.js +0 -246
  345. package/dist/esm/chunks/Tip-iFECDhwN.js +0 -89
  346. package/dist/esm/chunks/Toast-ZxMZtbd0.js +0 -156
  347. package/dist/esm/chunks/_types-RJ7q8S0B.js +0 -712
  348. package/dist/esm/chunks/sharedTypes-BfZzG1KX.js +0 -9
  349. package/dist/esm/chunks/style-inject.es-tgCJW-Cu.js +0 -28
  350. package/dist/esm/chunks/tipStore-nBYJ6tmE.js +0 -17
  351. package/dist/esm/chunks/toastStore-r3pvNa28.js +0 -17
  352. package/dist/esm/chunks/tslib.es6-0pkUdtrF.js +0 -45
  353. package/dist/esm/chunks/utils-CZ1LWeN6.js +0 -121
  354. package/dist/esm/chunks/windowStore-Cu4W4zJM.js +0 -91
  355. package/dist/esm/hooks/useDoubleClick.js +0 -24
  356. package/dist/esm/hooks/useKeyboardShortcuts.js +0 -42
  357. package/dist/esm/hooks/useLastUpdated.js +0 -51
  358. package/dist/esm/hooks/useLocalStore.js +0 -50
  359. package/dist/esm/hooks/useObserveResize.js +0 -54
  360. package/dist/esm/hooks/useObserveTheme.js +0 -41
  361. package/dist/esm/hooks/useTheme.js +0 -84
  362. package/dist/esm/hooks/useToolTip.js +0 -34
  363. package/dist/esm/hooks/useTrackRenders.js +0 -37
  364. package/dist/esm/hooks/useWindow.js +0 -84
  365. package/dist/esm/hooks.js +0 -15
  366. package/dist/esm/index.js +0 -58
  367. package/dist/esm/providers/ThemeProvider.js +0 -56
  368. package/dist/esm/providers.js +0 -8
  369. package/dist/esm/stores/tip.js +0 -2
  370. package/dist/esm/stores/toast.js +0 -2
  371. package/dist/esm/stores/window.js +0 -2
  372. package/dist/esm/stores.js +0 -4
  373. package/dist/esm/theme/colors.js +0 -377
  374. package/dist/esm/theme/corners.js +0 -12
  375. package/dist/esm/theme/elevations.js +0 -15
  376. package/dist/esm/theme/themes.js +0 -23
  377. package/dist/esm/theme/type.js +0 -393
  378. package/dist/esm/theme.js +0 -5
  379. package/dist/esm/uikit/Avatar.js +0 -5
  380. package/dist/esm/uikit/AvatarGroup.js +0 -6
  381. package/dist/esm/uikit/Badge.js +0 -5
  382. package/dist/esm/uikit/Button.js +0 -20
  383. package/dist/esm/uikit/ButtonBar.js +0 -20
  384. package/dist/esm/uikit/Card.js +0 -15
  385. package/dist/esm/uikit/CheckBox.js +0 -16
  386. package/dist/esm/uikit/Chip.js +0 -16
  387. package/dist/esm/uikit/DivInput.js +0 -7
  388. package/dist/esm/uikit/DocIcon.js +0 -12
  389. package/dist/esm/uikit/Dot.js +0 -6
  390. package/dist/esm/uikit/DraggablePanel.js +0 -15
  391. package/dist/esm/uikit/DropDown.js +0 -15
  392. package/dist/esm/uikit/ErrorSummary.js +0 -6
  393. package/dist/esm/uikit/FileIcon.js +0 -13
  394. package/dist/esm/uikit/FileList.js +0 -18
  395. package/dist/esm/uikit/FlexDiv.js +0 -6
  396. package/dist/esm/uikit/Grouper.js +0 -17
  397. package/dist/esm/uikit/Icon.js +0 -13
  398. package/dist/esm/uikit/IconButton.js +0 -19
  399. package/dist/esm/uikit/Label.js +0 -14
  400. package/dist/esm/uikit/Logos.js +0 -12
  401. package/dist/esm/uikit/Overlay.js +0 -6
  402. package/dist/esm/uikit/Pager.js +0 -6
  403. package/dist/esm/uikit/Progress.js +0 -14
  404. package/dist/esm/uikit/PromptInput.js +0 -23
  405. package/dist/esm/uikit/RadioButton.js +0 -20
  406. package/dist/esm/uikit/RadioButtonList.js +0 -21
  407. package/dist/esm/uikit/Slider.js +0 -7
  408. package/dist/esm/uikit/Spacer.js +0 -4
  409. package/dist/esm/uikit/Switch.js +0 -6
  410. package/dist/esm/uikit/TabBar.js +0 -20
  411. package/dist/esm/uikit/TextArea.js +0 -21
  412. package/dist/esm/uikit/Textfield.js +0 -22
  413. package/dist/esm/uikit/Tip.js +0 -7
  414. package/dist/esm/uikit/Toast.js +0 -16
@@ -1,285 +0,0 @@
1
- 'use strict';
2
-
3
- var tslib_es6 = require('./tslib.es6-4H29ixHs.js');
4
- var jsxRuntime = require('react/jsx-runtime');
5
- var React = require('react');
6
- var hooks_useObserveResize = require('../hooks/useObserveResize.js');
7
- var utils = require('./utils-BwNacfBU.js');
8
- var styleInject_es = require('./style-inject.es-XZHJH68X.js');
9
-
10
- /**
11
- * General debounce utility with delay setting and cancel/flush methods
12
- * to clear a "debounce" or immediately "execute" the debounced function
13
- */
14
- function debounce(func, delay) {
15
- let timeoutId = null;
16
- let lastArgs = null;
17
- const debounced = function (...args) {
18
- lastArgs = args;
19
- if (timeoutId !== null) {
20
- clearTimeout(timeoutId);
21
- }
22
- timeoutId = setTimeout(() => {
23
- func.apply(this, lastArgs !== null && lastArgs !== void 0 ? lastArgs : []);
24
- timeoutId = null;
25
- lastArgs = null;
26
- }, delay);
27
- };
28
- debounced.cancel = () => {
29
- if (timeoutId !== null) {
30
- clearTimeout(timeoutId);
31
- timeoutId = null;
32
- lastArgs = null;
33
- }
34
- };
35
- debounced.flush = function () {
36
- if (timeoutId !== null && lastArgs !== null) {
37
- clearTimeout(timeoutId);
38
- func.apply(this, lastArgs);
39
- timeoutId = null;
40
- lastArgs = null;
41
- }
42
- };
43
- return debounced;
44
- }
45
-
46
- 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.Slider-module_wrapper__ju4N2 {\n\tposition: relative;\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\tbox-sizing: border-box;\n\tpadding: var(--slider-padding);\n\tmargin: 0;\n\twidth: var(--slider-width);\n\theight: var(--slider-height);\n\tmin-height: var(--slider-touch-height);\n\tcursor: var(--slider-cursor);\n}\n\n.Slider-module_track__XogMe {\n\tposition: relative;\n\twidth: 0;\n\theight: 100%;\n\tbackground-color: var(--slider-progress-color);\n\toverflow: visible;\n\tpointer-events: none;\n\tborder-radius: 100px;\n}\n\n.Slider-module_trackHead__Ka3pu {\n\tposition: absolute;\n\tdisplay: var(--slider-head-display);\n\tbackground-color: var(--slider-head-color);\n\tpointer-events: none;\n\tborder-radius: var(--slider-head-radius);\n\tmax-width: var(--slider-head-width);\n\tmax-height: var(--slider-head-size);\n\tmin-width: var(--slider-head-width);\n\tmin-height: var(--slider-head-size);\n\ttop: 50%;\n\ttransform: translateY(-50%) translateX(-50%);\n}\n\n.Slider-module_trackBg__4z7Pt {\n\twidth: 100%;\n\theight: var(--slider-height);\n\tbackground-color: var(--slider-track-color);\n\tpointer-events: none;\n\tborder-radius: 100px;\n}\n";
47
- var css = {"wrapper":"Slider-module_wrapper__ju4N2","track":"Slider-module_track__XogMe flexBox-module_rowStart__nJZnW","trackHead":"Slider-module_trackHead__Ka3pu","trackBg":"Slider-module_trackBg__4z7Pt flexBox-module_rowStart__nJZnW"};
48
- styleInject_es.styleInject(css_248z);
49
-
50
- const Slider = React.memo((props) => {
51
- const { value = 25, scaleMin = 0, scaleMax = 100, width, height = 2, touchHeight = 24, trackHeadSize = 7, headType = 'round', trackHeadWidth = 4, cursor = 'default', headColor = 'var(--core-text-primary)', trackColor = 'var(--core-surface-secondary)', progressColor = 'var(--core-text-primary)', onChange = () => null, onDragChange = () => null } = props, divAttributes = tslib_es6.__rest(props, ["value", "scaleMin", "scaleMax", "width", "height", "touchHeight", "trackHeadSize", "headType", "trackHeadWidth", "cursor", "headColor", "trackColor", "progressColor", "onChange", "onDragChange"]);
52
- const { id: divId, className, style } = divAttributes, rest = tslib_es6.__rest(divAttributes, ["id", "className", "style"]);
53
- const divStyle = style !== null && style !== void 0 ? style : {};
54
- const divClass = className ? ` ${className}` : '';
55
- // hook into the relevant on screen elements
56
- const ref = React.useRef(null);
57
- const track = React.useRef(null);
58
- const head = React.useRef(null);
59
- // tracking slider values via ref to avoid state issues from direct listeners
60
- const absProgressRef = React.useRef(value);
61
- const relativeProgressRef = React.useRef(value / scaleMax);
62
- const didMount = React.useRef(false);
63
- // use resize observer to track changes to container size for responsive behavior
64
- const size = hooks_useObserveResize.useObserveResize(ref, { ignore: 'height' });
65
- // use a "debounce" to limit the number of onChange calls
66
- const debouncedOnChange = debounce((value, percent) => {
67
- onChange(value, percent);
68
- }, 0);
69
- // set padding based on head size since dragging the head all the way to the edge will move it
70
- // such that half the head would be outside the track constraints
71
- const padding = React.useMemo(() => {
72
- if (headType === 'none' || !trackHeadSize)
73
- return 0;
74
- return trackHeadSize / 2;
75
- }, [headType, trackHeadSize]);
76
- // set the position of the track progress and track head
77
- // based on the pixel position / adjust for half the size of the head (= padding)
78
- const setTrackAndHead = React.useCallback((pixelPos, max = false) => {
79
- const tr = track.current;
80
- const hd = head.current;
81
- let adjustment = 0;
82
- if (pixelPos === 0)
83
- adjustment = padding;
84
- if (max)
85
- adjustment = -padding;
86
- if (tr && hd) {
87
- tr.style.width = `${pixelPos}px`;
88
- hd.style.left = `${pixelPos - padding + adjustment}px`;
89
- }
90
- didMount.current = true;
91
- }, [padding]);
92
- // set the initial position of the slider absolute value within scale
93
- const initialProgress = React.useCallback((current) => {
94
- if (!(ref === null || ref === void 0 ? void 0 : ref.current))
95
- return;
96
- const sliderWidth = ref.current.getBoundingClientRect().width;
97
- let adjustedCurrent = current;
98
- if (adjustedCurrent > scaleMax || adjustedCurrent < scaleMin) {
99
- console.warn('Slider outside range. Adjusted to mid point.');
100
- adjustedCurrent = (scaleMax - scaleMin) / 2;
101
- }
102
- const normalized = (adjustedCurrent - scaleMin) / (scaleMax - scaleMin);
103
- const pixelPos = normalized * sliderWidth;
104
- absProgressRef.current = adjustedCurrent; // updated the progress value
105
- relativeProgressRef.current = normalized; // updated the relative value
106
- const max = relativeProgressRef.current === 1; // flag if at max value
107
- setTrackAndHead(pixelPos, max);
108
- didMount.current = true;
109
- }, [scaleMax, scaleMin, setTrackAndHead]);
110
- // based on x pos of a mouse drag/click, update the percent and normalized value of the slider
111
- const progress = React.useCallback((posX) => {
112
- const el = ref === null || ref === void 0 ? void 0 : ref.current;
113
- if (!el)
114
- return { value: 0, percent: 0 };
115
- const rect = el.getBoundingClientRect();
116
- const sliderWidth = rect.width;
117
- relativeProgressRef.current = posX / sliderWidth;
118
- absProgressRef.current =
119
- scaleMin + relativeProgressRef.current * (scaleMax - scaleMin);
120
- }, [scaleMax, scaleMin]);
121
- // take a mouse pos and sets the slider position accordingly
122
- // returns the pos value making sure it's in bounds
123
- const updateSlider = React.useCallback((e) => {
124
- const newPos = utils.pointerPosition(e);
125
- const el = ref === null || ref === void 0 ? void 0 : ref.current;
126
- if (!el)
127
- return 0;
128
- const rect = el.getBoundingClientRect();
129
- const sliderWidth = rect.width;
130
- let pos = newPos - rect.x;
131
- if (pos > sliderWidth - padding)
132
- pos = sliderWidth;
133
- else if (pos < padding)
134
- pos = 0;
135
- const max = pos === sliderWidth;
136
- setTrackAndHead(pos, max);
137
- return pos;
138
- }, [setTrackAndHead, padding]);
139
- // on mouse move, push slider to the updated mouse position and trigger the update events
140
- // use ref values in the call back to avoid state issues
141
- const handleMouseMove = React.useCallback((e) => {
142
- e.preventDefault();
143
- const el = ref === null || ref === void 0 ? void 0 : ref.current;
144
- if (el) {
145
- const pos = updateSlider(e); // return new pixel pos and updates head/track
146
- progress(pos); // update the slider progress
147
- debouncedOnChange(absProgressRef.current, relativeProgressRef.current); // debounce updates
148
- }
149
- }, [progress, updateSlider, debouncedOnChange]);
150
- // on mouse up, push slider to the updated mouse up position and trigger the update events
151
- // also cleaning up the mouse move and mouse up listeners attached to the window
152
- const handleMouseUp = React.useCallback((e) => {
153
- e.preventDefault();
154
- const el = ref === null || ref === void 0 ? void 0 : ref.current;
155
- if (el) {
156
- const pos = updateSlider(e); // return new pixel pos and updates head/track
157
- progress(pos);
158
- debouncedOnChange.cancel(); // cancel current debounce if any
159
- onDragChange(absProgressRef.current, relativeProgressRef.current); // immediate update
160
- onChange(absProgressRef.current, relativeProgressRef.current);
161
- }
162
- globalThis.removeEventListener('mousemove', handleMouseMove, false);
163
- globalThis.removeEventListener('touchmove', handleMouseMove, false);
164
- globalThis.removeEventListener('mouseup', handleMouseUp, false);
165
- globalThis.removeEventListener('touchend', handleMouseUp, false);
166
- }, [
167
- handleMouseMove,
168
- progress,
169
- updateSlider,
170
- debouncedOnChange,
171
- onDragChange,
172
- onChange,
173
- ]);
174
- // On mouse down push the progress of then slider to the mouse down point
175
- // and trigger events - add the drag and mouse up window listeners
176
- const handleMouseDown = React.useCallback((e) => {
177
- e.preventDefault();
178
- e.stopPropagation();
179
- globalThis.addEventListener('mousemove', handleMouseMove, false);
180
- globalThis.addEventListener('touchmove', handleMouseMove, false);
181
- globalThis.addEventListener('mouseup', handleMouseUp, false);
182
- globalThis.addEventListener('touchend', handleMouseUp, false);
183
- const el = ref === null || ref === void 0 ? void 0 : ref.current;
184
- if (el) {
185
- const pos = updateSlider(e); // return new pixel pos and updates head/track
186
- progress(pos);
187
- debouncedOnChange.cancel(); // cancel current debounce if any
188
- onChange(absProgressRef.current, relativeProgressRef.current); // immediate update
189
- onDragChange(absProgressRef.current, relativeProgressRef.current);
190
- }
191
- }, [
192
- handleMouseMove,
193
- handleMouseUp,
194
- onChange,
195
- onDragChange,
196
- progress,
197
- updateSlider,
198
- debouncedOnChange,
199
- ]);
200
- // on mount, set the initial position of the slider
201
- React.useEffect(() => {
202
- if (didMount.current && value === absProgressRef.current)
203
- return;
204
- initialProgress(value);
205
- }, [value, initialProgress]);
206
- // set up slider
207
- React.useEffect(() => {
208
- const el = ref === null || ref === void 0 ? void 0 : ref.current;
209
- el === null || el === void 0 ? void 0 : el.addEventListener('mousedown', handleMouseDown, false);
210
- el === null || el === void 0 ? void 0 : el.addEventListener('touchstart', handleMouseDown, false);
211
- return () => {
212
- el === null || el === void 0 ? void 0 : el.removeEventListener('mousedown', handleMouseDown, false);
213
- el === null || el === void 0 ? void 0 : el.removeEventListener('touchstart', handleMouseDown, false);
214
- };
215
- }, [handleMouseDown]);
216
- // respond to size changes triggered by browser resizing as opposed to props
217
- // note: this causes an extra render with every width prop change
218
- React.useEffect(() => {
219
- var _a;
220
- const sliderWidth = (_a = ref === null || ref === void 0 ? void 0 : ref.current) === null || _a === void 0 ? void 0 : _a.offsetWidth;
221
- if (!sliderWidth || size.width === 0)
222
- return;
223
- const max = relativeProgressRef.current === 1;
224
- setTrackAndHead(relativeProgressRef.current * sliderWidth, max);
225
- }, [size.width, setTrackAndHead]);
226
- // memo head color
227
- const trackHeadColor = React.useMemo(() => {
228
- if (headType === 'none')
229
- return 'transparent';
230
- return headColor !== null && headColor !== void 0 ? headColor : 'var(--core-text-primary)';
231
- }, [headColor, headType]);
232
- // memo head height
233
- const headSize = React.useMemo(() => {
234
- if (headType === 'none')
235
- return height;
236
- return trackHeadSize;
237
- }, [trackHeadSize, headType, height]);
238
- // memo head width
239
- const headWidth = React.useMemo(() => {
240
- if (headType === 'round')
241
- return trackHeadSize;
242
- return trackHeadWidth;
243
- }, [headType, trackHeadSize, trackHeadWidth]);
244
- // set container width
245
- const setWidth = React.useMemo(() => {
246
- if (width && typeof width === 'string') {
247
- if (width === 'auto')
248
- return '100%';
249
- return width;
250
- }
251
- return `${width !== null && width !== void 0 ? width : 100}px`;
252
- }, [width]);
253
- // memo css vars
254
- const cssVars = React.useMemo(() => {
255
- return {
256
- '--slider-padding': `${padding}px`,
257
- '--slider-width': setWidth,
258
- '--slider-height': `${height}px`,
259
- '--slider-touch-height': `${touchHeight}px`,
260
- '--slider-cursor': cursor,
261
- '--slider-head-display': height ? 'block' : 'none',
262
- '--slider-head-radius': headType === 'round' ? '100%' : '0px',
263
- '--slider-head-size': `${headSize}px`,
264
- '--slider-head-width': `${headWidth}px`,
265
- '--slider-head-color': trackHeadColor,
266
- '--slider-progress-color': progressColor !== null && progressColor !== void 0 ? progressColor : 'var(--core-text-primary)',
267
- '--slider-track-color': trackColor !== null && trackColor !== void 0 ? trackColor : 'var(--core-surface-secondary)',
268
- };
269
- }, [
270
- padding,
271
- height,
272
- touchHeight,
273
- cursor,
274
- headWidth,
275
- progressColor,
276
- trackColor,
277
- headSize,
278
- trackHeadColor,
279
- headType,
280
- setWidth,
281
- ]);
282
- return (jsxRuntime.jsx("div", Object.assign({ id: divId, className: `${css.wrapper}${divClass}`, style: Object.assign(Object.assign({}, divStyle), cssVars), ref: ref }, rest, { children: jsxRuntime.jsx("div", { className: css.trackBg, children: jsxRuntime.jsx("div", { className: css.track, ref: track, children: jsxRuntime.jsx("div", { className: css.trackHead, ref: head }) }) }) })));
283
- });
284
-
285
- exports.Slider = Slider;
@@ -1,16 +0,0 @@
1
- 'use strict';
2
-
3
- var tslib_es6 = require('./tslib.es6-4H29ixHs.js');
4
- var jsxRuntime = require('react/jsx-runtime');
5
- var React = require('react');
6
-
7
- const Spacer = React.memo((props) => {
8
- const { size = 8 } = props, divAttributes = tslib_es6.__rest(props, ["size"]);
9
- const { id: divId, className, style } = divAttributes, rest = tslib_es6.__rest(divAttributes, ["id", "className", "style"]);
10
- const spacerStyle = React.useMemo(() => ({ height: size, minHeight: size, maxHeight: size }), [size]);
11
- const divStyle = style !== null && style !== void 0 ? style : {};
12
- const divClass = className ? ` ${className}` : '';
13
- return (jsxRuntime.jsx("div", Object.assign({ id: divId, className: divClass.trim(), style: Object.assign(Object.assign({}, divStyle), spacerStyle) }, rest)));
14
- });
15
-
16
- exports.Spacer = Spacer;
@@ -1,43 +0,0 @@
1
- 'use strict';
2
-
3
- var tslib_es6 = require('./tslib.es6-4H29ixHs.js');
4
- var jsxRuntime = require('react/jsx-runtime');
5
- var react = require('motion/react');
6
- var React = require('react');
7
- var styleInject_es = require('./style-inject.es-XZHJH68X.js');
8
-
9
- 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.Switch-module_wrapper__OqM0E {\n\tpadding: var(--switch-padding) !important;\n\twidth: var(--switch-width);\n\theight: var(--switch-height);\n\tborder-radius: 100px;\n\tcursor: pointer;\n\tbackground: var(--switch-bg-color);\n\ttransition: background 0.25s ease-in-out 0s;\n}\n\n.Switch-module_knob__BLGda {\n\twidth: var(--switch-knob-size);\n\theight: var(--switch-knob-size);\n\tbackground: var(--switch-knob-color);\n\tborder-radius: 100%;\n}\n";
10
- var css = {"wrapper":"Switch-module_wrapper__OqM0E flexBox-module_row__PWxbe","knob":"Switch-module_knob__BLGda flexBox-module_row__PWxbe"};
11
- styleInject_es.styleInject(css_248z);
12
-
13
- const Switch = React.memo((props) => {
14
- const { state = false, height = 22, width = 44, padding = 3, bgColorOn = 'var(--feedback-positive)', bgColorOff = 'var(--core-text-disabled)', knobColor = 'var(--core-surface-primary)', onChange = () => null } = props, divAttributes = tslib_es6.__rest(props, ["state", "height", "width", "padding", "bgColorOn", "bgColorOff", "knobColor", "onChange"]);
15
- const { id: divId, className, style } = divAttributes, rest = tslib_es6.__rest(divAttributes, ["id", "className", "style"]);
16
- const divStyle = style !== null && style !== void 0 ? style : {};
17
- const divClass = className ? ` ${className}` : '';
18
- const [on, setOn] = React.useState(state);
19
- // Sync with prop changes
20
- React.useEffect(() => {
21
- setOn(state);
22
- }, [state]);
23
- const handleClick = React.useCallback(() => {
24
- setOn(!on);
25
- onChange(!on);
26
- }, [on, onChange]);
27
- // Memoize style object
28
- const justify = React.useMemo(() => ({ justifyContent: on ? 'flex-end' : 'flex-start' }), [on]);
29
- // memo css vars
30
- const cssVars = React.useMemo(() => {
31
- return {
32
- '--switch-width': `${width}px`,
33
- '--switch-height': `${height}px`,
34
- '--switch-padding': `${padding}px`,
35
- '--switch-knob-size': `${height - padding * 2}px`,
36
- '--switch-knob-color': knobColor,
37
- '--switch-bg-color': on ? bgColorOn : bgColorOff,
38
- };
39
- }, [width, height, padding, bgColorOff, bgColorOn, on, knobColor]);
40
- return (jsxRuntime.jsx(react.motion.div, Object.assign({ id: divId, className: `${css.wrapper}${divClass}`, style: Object.assign(Object.assign(Object.assign({}, divStyle), justify), cssVars), onClick: handleClick }, rest, { children: jsxRuntime.jsx(react.motion.div, { className: css.knob, layout: 'preserve-aspect' }) })));
41
- });
42
-
43
- exports.Switch = Switch;
@@ -1,176 +0,0 @@
1
- 'use strict';
2
-
3
- var tslib_es6 = require('./tslib.es6-4H29ixHs.js');
4
- var jsxRuntime = require('react/jsx-runtime');
5
- var React = require('react');
6
- var hooks_useTheme = require('../hooks/useTheme.js');
7
- require('../theme/colors.js');
8
- require('../hooks/useWindow.js');
9
- var Badge = require('./Badge-COSg__VJ.js');
10
- var _types = require('./_types-BNlHsGMQ.js');
11
- var IconButton = require('./IconButton-9QZ4eKBZ.js');
12
- var sharedTypes = require('./sharedTypes-BvTjh6M5.js');
13
- var styleInject_es = require('./style-inject.es-XZHJH68X.js');
14
-
15
- 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.TabBar-module_wrapper__z8Cvg {\n\tgap: var(--tab-bar-gap);\n\tborder-bottom: var(--tab-bar-border-bottom) solid var(--core-outline-primary);\n\theight: var(--tab-bar-height);\n\twidth: var(--tab-bar-width);\n\tcursor: pointer;\n}\n\n.TabBar-module_option__Og-E4 {\n\tgap: var(--tab-bar-option-gap);\n\tcolor: var(--tab-bar-option-color);\n\tpadding: var(--tab-bar-option-padding) !important;\n\theight: 100%;\n\twidth: var(--tab-bar-option-width);\n\tflex: var(--tab-bar-option-flex);\n\twhite-space: nowrap;\n\tbox-shadow: 0 var(--tab-bar-option-border) 0 0 var(--core-text-special);\n\tcursor: var(--tab-bar-option-cursor);\n\t-webkit-user-select: none;\n\tuser-select: none;\n}\n\n.TabBar-module_icon__LU5Rp {\n\tmax-height: var(--tab-bar-icon-size);\n\tmin-height: var(--tab-bar-icon-size);\n\tmax-width: var(--tab-bar-icon-size);\n\tmin-width: var(--tab-bar-icon-size);\n}\n\n.TabBar-module_close__ytzs5 {\n\theight: 100%;\n\tpadding: var(--tab-bar-close-padding) !important;\n\tborder-left: 1px solid var(--core-outline-primary);\n\twidth: min-content;\n}\n";
16
- var css = {"wrapper":"TabBar-module_wrapper__z8Cvg flexBox-module_rowStart__nJZnW","option":"TabBar-module_option__Og-E4 flexBox-module_row__PWxbe type-module_body-m-regular__Qtp5G","icon":"TabBar-module_icon__LU5Rp flexBox-module_row__PWxbe","close":"TabBar-module_close__ytzs5 flexBox-module_row__PWxbe"};
17
- styleInject_es.styleInject(css_248z);
18
-
19
- const placeholderOptions = [
20
- { name: 'Option 1', value: 'Option 1', icon: null },
21
- { name: 'Option 2', value: 'Option 2', icon: 'wallet' },
22
- ];
23
-
24
- const TabBar = React.memo((props) => {
25
- const { options = placeholderOptions, selected = 0, border = true, underline = true, height = '100%', width = '100%', tabWidth = 'distribute', padding = 8, iconSize = 20, iconGap = 8, tabGap = 0, disabled = false, hasClose = false, closeWidth = 'auto', selectedValue = null, onChange = () => null, onTabChange = () => null, onClose = () => null, onToolTip = () => null } = props, divAttributes = tslib_es6.__rest(props, ["options", "selected", "border", "underline", "height", "width", "tabWidth", "padding", "iconSize", "iconGap", "tabGap", "disabled", "hasClose", "closeWidth", "selectedValue", "onChange", "onTabChange", "onClose", "onToolTip"]);
26
- const { id: divId, className, style } = divAttributes, rest = tslib_es6.__rest(divAttributes, ["id", "className", "style"]);
27
- const divStyle = style !== null && style !== void 0 ? style : {};
28
- const divClass = className ? ` ${className}` : '';
29
- const [index, setIndex] = React.useState(selected);
30
- React.useEffect(() => {
31
- let selectedIndex = 0;
32
- if (selectedValue && options) {
33
- selectedIndex = options.findIndex((option) => option.value === selectedValue);
34
- setIndex(selectedIndex === -1 ? selected : selectedIndex);
35
- }
36
- else {
37
- setIndex(selected);
38
- }
39
- }, [selected, selectedValue, options]);
40
- // memo handleClick
41
- const handleClick = React.useCallback((i) => {
42
- setIndex(i);
43
- onChange(i);
44
- onTabChange(options[i]);
45
- }, [onChange, onTabChange, options]);
46
- // memo handleOptionClick
47
- const handleOptionClick = React.useCallback((i) => {
48
- onToolTip(null);
49
- handleClick(i);
50
- }, [onToolTip, handleClick]);
51
- // memo rendered options
52
- const renderedOptions = React.useMemo(() => options.map((option, i) => (jsxRuntime.jsx(Option, { label: option.name, value: i, showToolTip: option.toolTip, selected: i === index, padding: padding, icon: option.icon, iconSize: iconSize, iconGap: iconGap, disabled: disabled, count: option.count, onClick: handleOptionClick, onToolTip: onToolTip, underline: underline, tabWidth: tabWidth }, `${i}_option_${option.name}`))), [
53
- options,
54
- index,
55
- padding,
56
- iconSize,
57
- iconGap,
58
- disabled,
59
- underline,
60
- tabWidth,
61
- onToolTip,
62
- handleOptionClick,
63
- ]);
64
- const setStyle = React.useCallback((value) => {
65
- if (typeof value === 'string')
66
- return value;
67
- return `${value}px`;
68
- }, []);
69
- const cssVars = React.useMemo(() => {
70
- return {
71
- '--tab-bar-gap': `${tabGap}px`,
72
- '--tab-bar-height': `${setStyle(height)}px`,
73
- '--tab-bar-width': setStyle(width),
74
- '--tab-bar-border-bottom': `${border ? '1px' : '0'}`,
75
- '--tab-bar-close-width': `${closeWidth}px`,
76
- '--tab-bar-close-padding': padding ? `${padding}px` : '8px',
77
- };
78
- }, [tabGap, height, width, border, setStyle, closeWidth, padding]);
79
- return (jsxRuntime.jsxs("div", Object.assign({ id: divId, className: `${css.wrapper}${divClass}`, style: Object.assign(Object.assign({}, divStyle), cssVars) }, rest, { children: [renderedOptions, hasClose && (jsxRuntime.jsx("div", { className: css.close, children: jsxRuntime.jsx(IconButton.IconButton, { iconSize: iconSize - 4, frameSize: iconSize, toggle: false, hover: true, icon: 'x', onClick: onClose }) }))] })));
80
- });
81
- TabBar.displayName = 'TabBar';
82
- const Option = React.memo((props) => {
83
- const theme = hooks_useTheme.useTheme();
84
- const { label = 'Option', value = 0, icon = null, selected = false, onClick = () => null, onToolTip = () => null, padding = 8, iconSize = 20, iconGap = 6, disabled = false, showToolTip = null, underline = true, tabWidth = 'distribute', count = 0, } = props;
85
- const ref = React.useRef(null);
86
- // memo icon color
87
- const strokeColor = React.useMemo(() => {
88
- if (!disabled && selected)
89
- return theme.current.colors['core-text-special'];
90
- if (disabled)
91
- return theme.current.colors['core-text-disabled'];
92
- return theme.current.colors['core-text-primary'];
93
- }, [disabled, selected, theme]);
94
- // memo handleMouseOver
95
- const handleMouseOver = React.useCallback((e) => {
96
- onToolTip(null);
97
- if (showToolTip && ref.current) {
98
- const tip = {
99
- type: sharedTypes.ToolTipType.button,
100
- payload: { label: showToolTip },
101
- event: e,
102
- ref,
103
- };
104
- onToolTip(tip);
105
- }
106
- }, [showToolTip, onToolTip]);
107
- // memo handleMouseLeave
108
- const handleMouseLeave = React.useCallback(() => {
109
- if (showToolTip)
110
- onToolTip(null);
111
- }, [showToolTip, onToolTip]);
112
- // memo color
113
- const textColor = React.useMemo(() => {
114
- if (disabled)
115
- return 'var(--core-text-disabled)';
116
- if (selected)
117
- return 'var(--core-text-special)';
118
- return 'var(--core-text-primary)';
119
- }, [disabled, selected]);
120
- // memo tab width
121
- const setTabWidth = React.useMemo(() => {
122
- if (tabWidth === 'min-content')
123
- return 'min-content';
124
- if (tabWidth === 'distribute')
125
- return 'unset';
126
- return `${tabWidth}px`;
127
- }, [tabWidth]);
128
- // memo flex tab
129
- const setTabFlex = React.useMemo(() => {
130
- if (tabWidth === 'distribute')
131
- return '1';
132
- return 'unset';
133
- }, [tabWidth]);
134
- // memo underline
135
- const setUnderline = React.useMemo(() => {
136
- if (selected && underline && !disabled)
137
- return '1px';
138
- return '0';
139
- }, [underline, disabled, selected]);
140
- const cssVars = React.useMemo(() => {
141
- return {
142
- '--tab-bar-option-border': setUnderline,
143
- '--tab-bar-option-padding': `${padding}px`,
144
- '--tab-bar-option-icon-size': `${iconSize}px`,
145
- '--tab-bar-option-cursor': disabled ? 'default' : 'pointer',
146
- '--tab-bar-option-gap': `${iconGap !== null && iconGap !== void 0 ? iconGap : 0}px`,
147
- '--tab-bar-option-color': textColor,
148
- '--tab-bar-option-width': setTabWidth,
149
- '--tab-bar-option-flex': setTabFlex,
150
- };
151
- }, [
152
- padding,
153
- iconSize,
154
- disabled,
155
- textColor,
156
- iconGap,
157
- setTabFlex,
158
- setTabWidth,
159
- setUnderline,
160
- ]);
161
- return (jsxRuntime.jsxs("div", { className: css.option, style: cssVars, ref: ref, "aria-selected": selected, onMouseEnter: handleMouseOver, onMouseLeave: handleMouseLeave, onClick: () => onClick(value), onKeyDown: () => onClick(value), children: [icon && (jsxRuntime.jsx("div", { className: css.icon, children: jsxRuntime.jsx(_types.Icon, { name: icon, size: iconSize, strokeColor: strokeColor }) })), label, count !== 0 && (jsxRuntime.jsx(Badge.Badge, { variant: 'light', hideNull: false, count: count }))] }));
162
- }, (prevProps, nextProps) => {
163
- // Custom comparison for performance
164
- return (prevProps.selected === nextProps.selected &&
165
- prevProps.underline === nextProps.underline &&
166
- prevProps.tabWidth === nextProps.tabWidth &&
167
- prevProps.disabled === nextProps.disabled &&
168
- prevProps.iconGap === nextProps.iconGap &&
169
- prevProps.iconSize === nextProps.iconSize &&
170
- prevProps.count === nextProps.count &&
171
- prevProps.label === nextProps.label &&
172
- prevProps.icon === nextProps.icon);
173
- });
174
- Option.displayName = 'TabOption';
175
-
176
- exports.TabBar = TabBar;