solid-tiny-ui 0.4.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (369) hide show
  1. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/alert/alert.js +5 -0
  2. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/alert/alert.jsx +5 -0
  3. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/buttons/basic-button/basic-button.js +1 -1
  4. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/buttons/basic-button/basic-button.jsx +1 -1
  5. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/drawer/drawer-helper.js +5 -0
  6. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/drawer/drawer-helper.jsx +5 -0
  7. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/drawer/drawer.js +5 -0
  8. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/drawer/drawer.jsx +5 -0
  9. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/field/field.js +5 -0
  10. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/field/field.jsx +5 -0
  11. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/checkbox/checkbox.js +5 -0
  12. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/checkbox/checkbox.jsx +5 -0
  13. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/combobox/combobox.js +5 -0
  14. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/combobox/combobox.jsx +5 -0
  15. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/number-input/number-input.js +5 -0
  16. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/number-input/number-input.jsx +5 -0
  17. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/password-input/password-input.js +5 -0
  18. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/password-input/password-input.jsx +5 -0
  19. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/radio-group/radio-group.js +5 -0
  20. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/radio-group/radio-group.jsx +5 -0
  21. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/switcher/switcher.js +5 -0
  22. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/switcher/switcher.jsx +5 -0
  23. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/text-field/text-field.js +5 -0
  24. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/text-field/text-field.jsx +5 -0
  25. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/textarea/textarea.js +5 -0
  26. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/textarea/textarea.jsx +5 -0
  27. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/time-picker/time-picker.js +5 -0
  28. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/form-components/time-picker/time-picker.jsx +5 -0
  29. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/modal/modal-helper.js +1 -1
  30. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/modal/modal-helper.jsx +1 -1
  31. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/modal/modal.js +1 -1
  32. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/modal/modal.jsx +1 -1
  33. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/pagination/pagination.js +5 -0
  34. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/pagination/pagination.jsx +5 -0
  35. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/popover/popover.js +1 -1
  36. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/popover/popover.jsx +1 -1
  37. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/spin/spin.js +1 -1
  38. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/spin/spin.jsx +1 -1
  39. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/tabs/tabs.js +1 -1
  40. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/tabs/tabs.jsx +1 -1
  41. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/toaster/toaster.js +5 -0
  42. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/toaster/toaster.jsx +5 -0
  43. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/tooltip/tooltip.js +1 -1
  44. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/tooltip/tooltip.jsx +1 -1
  45. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/visually-hidden/visually-hidden.js +5 -0
  46. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/visually-hidden/visually-hidden.jsx +5 -0
  47. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/root-provider/global.js +1 -1
  48. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/root-provider/global.jsx +1 -1
  49. package/dist/components/alert/alert.d.ts +25 -0
  50. package/dist/components/alert/alert.js +186 -0
  51. package/dist/components/alert/alert.jsx +73 -0
  52. package/dist/components/alert/index.d.ts +1 -0
  53. package/dist/components/alert/index.js +1 -0
  54. package/dist/components/alert/index.jsx +1 -0
  55. package/dist/components/buttons/basic-button/basic-button.d.ts +2 -2
  56. package/dist/components/buttons/basic-button/basic-button.js +20 -29
  57. package/dist/components/buttons/basic-button/basic-button.jsx +6 -7
  58. package/dist/components/buttons/state-button/state-button.d.ts +2 -2
  59. package/dist/components/buttons/state-button/state-button.js +2 -2
  60. package/dist/components/buttons/state-button/state-button.jsx +2 -2
  61. package/dist/components/drawer/helpers.d.ts +25 -0
  62. package/dist/components/drawer/helpers.js +104 -0
  63. package/dist/components/drawer/helpers.jsx +60 -0
  64. package/dist/components/drawer/index.d.ts +42 -0
  65. package/dist/components/drawer/index.js +95 -0
  66. package/dist/components/drawer/index.jsx +57 -0
  67. package/dist/components/field/index.d.ts +10 -0
  68. package/dist/components/field/index.js +11 -0
  69. package/dist/components/field/index.jsx +11 -0
  70. package/dist/components/field/parts.d.ts +24 -0
  71. package/dist/components/field/parts.js +69 -0
  72. package/dist/components/field/parts.jsx +41 -0
  73. package/dist/components/form-components/checkbox/checkbox.d.ts +26 -0
  74. package/dist/components/form-components/checkbox/checkbox.js +118 -0
  75. package/dist/components/form-components/checkbox/checkbox.jsx +42 -0
  76. package/dist/components/form-components/checkbox/index.d.ts +1 -0
  77. package/dist/components/form-components/checkbox/index.js +1 -0
  78. package/dist/components/form-components/checkbox/index.jsx +1 -0
  79. package/dist/components/form-components/checkbox-group/checkbox-group.d.ts +26 -0
  80. package/dist/components/form-components/checkbox-group/checkbox-group.js +76 -0
  81. package/dist/components/form-components/checkbox-group/checkbox-group.jsx +34 -0
  82. package/dist/components/form-components/checkbox-group/index.d.ts +1 -0
  83. package/dist/components/form-components/checkbox-group/index.js +1 -0
  84. package/dist/components/form-components/checkbox-group/index.jsx +1 -0
  85. package/dist/components/{combobox → form-components/combobox}/combobox.d.ts +6 -4
  86. package/dist/components/{combobox → form-components/combobox}/combobox.js +18 -14
  87. package/dist/components/{combobox → form-components/combobox}/combobox.jsx +10 -10
  88. package/dist/components/form-components/index.d.ts +19 -0
  89. package/dist/components/form-components/index.js +19 -0
  90. package/dist/components/form-components/index.jsx +19 -0
  91. package/dist/components/form-components/number-input/index.d.ts +1 -0
  92. package/dist/components/form-components/number-input/index.js +1 -0
  93. package/dist/components/form-components/number-input/index.jsx +1 -0
  94. package/dist/components/form-components/number-input/number-input.d.ts +33 -0
  95. package/dist/components/form-components/number-input/number-input.js +113 -0
  96. package/dist/components/form-components/number-input/number-input.jsx +59 -0
  97. package/dist/components/form-components/password-input/index.d.ts +1 -0
  98. package/dist/components/form-components/password-input/index.js +1 -0
  99. package/dist/components/form-components/password-input/index.jsx +1 -0
  100. package/dist/components/form-components/password-input/password-input.d.ts +31 -0
  101. package/dist/components/form-components/password-input/password-input.js +95 -0
  102. package/dist/components/form-components/password-input/password-input.jsx +36 -0
  103. package/dist/components/form-components/radio-group/index.d.ts +1 -0
  104. package/dist/components/form-components/radio-group/index.js +1 -0
  105. package/dist/components/form-components/radio-group/index.jsx +1 -0
  106. package/dist/components/form-components/radio-group/radio-group.d.ts +26 -0
  107. package/dist/components/form-components/radio-group/radio-group.js +118 -0
  108. package/dist/components/form-components/radio-group/radio-group.jsx +45 -0
  109. package/dist/components/form-components/switcher/index.d.ts +1 -0
  110. package/dist/components/form-components/switcher/index.js +1 -0
  111. package/dist/components/form-components/switcher/index.jsx +1 -0
  112. package/dist/components/form-components/switcher/switcher.d.ts +23 -0
  113. package/dist/components/form-components/switcher/switcher.js +92 -0
  114. package/dist/components/form-components/switcher/switcher.jsx +32 -0
  115. package/dist/components/form-components/text-field/index.d.ts +1 -0
  116. package/dist/components/form-components/text-field/index.js +1 -0
  117. package/dist/components/form-components/text-field/index.jsx +1 -0
  118. package/dist/components/form-components/text-field/text-field.d.ts +30 -0
  119. package/dist/components/form-components/text-field/text-field.js +112 -0
  120. package/dist/components/form-components/text-field/text-field.jsx +40 -0
  121. package/dist/components/{textarea → form-components/textarea}/textarea.d.ts +5 -2
  122. package/dist/components/form-components/textarea/textarea.js +55 -0
  123. package/dist/components/form-components/textarea/textarea.jsx +24 -0
  124. package/dist/components/form-components/time-picker/index.d.ts +27 -0
  125. package/dist/components/form-components/time-picker/index.js +106 -0
  126. package/dist/components/form-components/time-picker/index.jsx +44 -0
  127. package/dist/components/form-components/time-picker/panel.js +185 -0
  128. package/dist/components/form-components/time-picker/panel.jsx +108 -0
  129. package/dist/components/form-components/time-picker/trigger.js +68 -0
  130. package/dist/components/form-components/time-picker/trigger.jsx +37 -0
  131. package/dist/components/modal/helpers.js +1 -1
  132. package/dist/components/modal/helpers.jsx +1 -1
  133. package/dist/components/modal/index.d.ts +5 -8
  134. package/dist/components/modal/index.js +13 -10
  135. package/dist/components/modal/index.jsx +7 -4
  136. package/dist/components/pagination/index.d.ts +1 -0
  137. package/dist/components/pagination/index.js +1 -0
  138. package/dist/components/pagination/index.jsx +1 -0
  139. package/dist/components/pagination/pagination.d.ts +32 -0
  140. package/dist/components/pagination/pagination.js +336 -0
  141. package/dist/components/pagination/pagination.jsx +104 -0
  142. package/dist/components/popover/index.js +4 -3
  143. package/dist/components/popover/index.jsx +2 -1
  144. package/dist/components/progress/circle-progress.d.ts +7 -0
  145. package/dist/components/progress/circle-progress.js +33 -14
  146. package/dist/components/progress/circle-progress.jsx +15 -12
  147. package/dist/components/progress/line-progress.d.ts +2 -2
  148. package/dist/components/progress/line-progress.js +6 -5
  149. package/dist/components/progress/line-progress.jsx +6 -5
  150. package/dist/components/progress/loading-bar.d.ts +2 -2
  151. package/dist/components/spin/spin-ring.d.ts +2 -2
  152. package/dist/components/spin/spin-ring.js +1 -1
  153. package/dist/components/spin/spin-ring.jsx +1 -1
  154. package/dist/components/spin/spin.js +8 -7
  155. package/dist/components/spin/spin.jsx +6 -5
  156. package/dist/components/tabs/index.d.ts +7 -0
  157. package/dist/components/tabs/index.js +40 -12
  158. package/dist/components/tabs/index.jsx +9 -7
  159. package/dist/components/toaster/context.js +31 -0
  160. package/dist/components/toaster/context.jsx +31 -0
  161. package/dist/components/toaster/icon.js +50 -0
  162. package/dist/components/toaster/icon.jsx +27 -0
  163. package/dist/components/toaster/index.d.ts +3 -0
  164. package/dist/components/toaster/index.js +2 -0
  165. package/dist/components/toaster/index.jsx +2 -0
  166. package/dist/components/toaster/locator.js +67 -0
  167. package/dist/components/toaster/locator.jsx +54 -0
  168. package/dist/components/toaster/one-toaster.js +146 -0
  169. package/dist/components/toaster/one-toaster.jsx +104 -0
  170. package/dist/components/toaster/provider.d.ts +11 -0
  171. package/dist/components/toaster/provider.js +64 -0
  172. package/dist/components/toaster/provider.jsx +51 -0
  173. package/dist/components/toaster/type.d.ts +15 -0
  174. package/dist/components/toaster/use-toaster.d.ts +48 -0
  175. package/dist/components/toaster/use-toaster.js +72 -0
  176. package/dist/components/toaster/use-toaster.jsx +72 -0
  177. package/dist/components/tooltip/tooltip.d.ts +7 -0
  178. package/dist/components/tooltip/tooltip.js +9 -2
  179. package/dist/components/tooltip/tooltip.jsx +4 -2
  180. package/dist/components/visually-hidden/index.js +19 -0
  181. package/dist/components/visually-hidden/index.jsx +12 -0
  182. package/dist/icons/arrow-down-s-line.d.ts +3 -2
  183. package/dist/icons/arrow-down-s-line.js +4 -4
  184. package/dist/icons/arrow-down-s-line.jsx +2 -2
  185. package/dist/icons/arrow-left.d.ts +7 -0
  186. package/dist/icons/arrow-left.js +13 -0
  187. package/dist/icons/arrow-left.jsx +11 -0
  188. package/dist/icons/arrow-right.d.ts +7 -0
  189. package/dist/icons/arrow-right.js +13 -0
  190. package/dist/icons/arrow-right.jsx +11 -0
  191. package/dist/icons/check-bold.d.ts +7 -0
  192. package/dist/icons/check-bold.js +13 -0
  193. package/dist/icons/check-bold.jsx +11 -0
  194. package/dist/icons/check-line.d.ts +7 -0
  195. package/dist/icons/check-line.js +13 -0
  196. package/dist/icons/check-line.jsx +11 -0
  197. package/dist/icons/checkbox-circle-line.d.ts +7 -0
  198. package/dist/icons/checkbox-circle-line.js +13 -0
  199. package/dist/icons/checkbox-circle-line.jsx +11 -0
  200. package/dist/icons/close-line.d.ts +3 -2
  201. package/dist/icons/close-line.js +4 -4
  202. package/dist/icons/close-line.jsx +2 -2
  203. package/dist/icons/common.d.ts +9 -0
  204. package/dist/icons/common.js +12 -2
  205. package/dist/icons/common.jsx +1 -1
  206. package/dist/icons/ellipsis.d.ts +7 -0
  207. package/dist/icons/ellipsis.js +13 -0
  208. package/dist/icons/ellipsis.jsx +11 -0
  209. package/dist/icons/error-warning-line.d.ts +7 -0
  210. package/dist/icons/error-warning-line.js +13 -0
  211. package/dist/icons/error-warning-line.jsx +11 -0
  212. package/dist/icons/eye-line.d.ts +7 -0
  213. package/dist/icons/eye-line.js +13 -0
  214. package/dist/icons/eye-line.jsx +11 -0
  215. package/dist/icons/eye-off-line.d.ts +7 -0
  216. package/dist/icons/eye-off-line.js +13 -0
  217. package/dist/icons/eye-off-line.jsx +11 -0
  218. package/dist/icons/index.d.ts +13 -1
  219. package/dist/icons/index.js +13 -1
  220. package/dist/icons/index.jsx +13 -1
  221. package/dist/icons/information-line.d.ts +7 -0
  222. package/dist/icons/information-line.js +13 -0
  223. package/dist/icons/information-line.jsx +11 -0
  224. package/dist/icons/loading.d.ts +13 -0
  225. package/dist/icons/loading.js +18 -0
  226. package/dist/icons/loading.jsx +19 -0
  227. package/dist/icons/subtract.d.ts +7 -0
  228. package/dist/icons/subtract.js +13 -0
  229. package/dist/icons/subtract.jsx +11 -0
  230. package/dist/index.d.ts +23 -8
  231. package/dist/index.js +23 -9
  232. package/dist/index.jsx +23 -9
  233. package/dist/layout/flex/index.d.ts +5 -4
  234. package/dist/layout/flex/index.js +25 -15
  235. package/dist/layout/flex/index.jsx +23 -10
  236. package/dist/layout/index.d.ts +1 -2
  237. package/dist/layout/index.js +0 -1
  238. package/dist/layout/index.jsx +0 -1
  239. package/dist/primitives/animated-group/context.d.ts +9 -9
  240. package/dist/primitives/animated-group/panel.js +14 -13
  241. package/dist/primitives/animated-group/panel.jsx +7 -6
  242. package/dist/primitives/animated-group/root.d.ts +4 -4
  243. package/dist/primitives/animated-group/root.js +2 -3
  244. package/dist/primitives/animated-group/root.jsx +2 -3
  245. package/dist/primitives/checkbox/context.d.ts +63 -0
  246. package/dist/primitives/checkbox/context.js +13 -0
  247. package/dist/primitives/checkbox/context.jsx +13 -0
  248. package/dist/primitives/checkbox/index.d.ts +26 -0
  249. package/dist/primitives/checkbox/index.js +13 -0
  250. package/dist/primitives/checkbox/index.jsx +13 -0
  251. package/dist/primitives/checkbox/parts.d.ts +10 -0
  252. package/dist/primitives/checkbox/parts.js +62 -0
  253. package/dist/primitives/checkbox/parts.jsx +28 -0
  254. package/dist/primitives/checkbox/root.d.ts +16 -0
  255. package/dist/primitives/checkbox/root.js +25 -0
  256. package/dist/primitives/checkbox/root.jsx +24 -0
  257. package/dist/primitives/checkbox-group/context.js +21 -0
  258. package/dist/primitives/checkbox-group/context.jsx +21 -0
  259. package/dist/primitives/checkbox-group/index.js +12 -0
  260. package/dist/primitives/checkbox-group/index.jsx +12 -0
  261. package/dist/primitives/checkbox-group/parts.js +33 -0
  262. package/dist/primitives/checkbox-group/parts.jsx +21 -0
  263. package/dist/primitives/checkbox-group/root.js +24 -0
  264. package/dist/primitives/checkbox-group/root.jsx +23 -0
  265. package/dist/primitives/fake-scroll-list/context.js +30 -0
  266. package/dist/primitives/fake-scroll-list/context.jsx +30 -0
  267. package/dist/primitives/fake-scroll-list/index.d.ts +52 -0
  268. package/dist/primitives/fake-scroll-list/index.js +36 -0
  269. package/dist/primitives/fake-scroll-list/index.jsx +36 -0
  270. package/dist/primitives/fake-scroll-list/item.d.ts +11 -0
  271. package/dist/primitives/fake-scroll-list/item.js +30 -0
  272. package/dist/primitives/fake-scroll-list/item.jsx +13 -0
  273. package/dist/primitives/fake-scroll-list/listbox.d.ts +8 -0
  274. package/dist/primitives/fake-scroll-list/listbox.js +72 -0
  275. package/dist/primitives/fake-scroll-list/listbox.jsx +61 -0
  276. package/dist/primitives/fake-scroll-list/root.d.ts +15 -0
  277. package/dist/primitives/fake-scroll-list/root.js +52 -0
  278. package/dist/primitives/fake-scroll-list/root.jsx +40 -0
  279. package/dist/primitives/floating/content.js +12 -11
  280. package/dist/primitives/floating/content.jsx +7 -6
  281. package/dist/primitives/floating/context.d.ts +10 -9
  282. package/dist/primitives/floating/context.js +1 -1
  283. package/dist/primitives/floating/context.jsx +1 -1
  284. package/dist/primitives/floating/index.d.ts +3 -2
  285. package/dist/primitives/floating/trigger.js +1 -1
  286. package/dist/primitives/floating/trigger.jsx +1 -1
  287. package/dist/primitives/floating/types.d.ts +2 -1
  288. package/dist/primitives/index.d.ts +8 -1
  289. package/dist/primitives/index.js +8 -3
  290. package/dist/primitives/index.jsx +8 -3
  291. package/dist/primitives/listbox/listbox.d.ts +3 -3
  292. package/dist/primitives/modal/content.d.ts +3 -3
  293. package/dist/primitives/modal/content.js +2 -3
  294. package/dist/primitives/modal/content.jsx +2 -3
  295. package/dist/primitives/modal/context.d.ts +16 -29
  296. package/dist/primitives/modal/context.js +2 -4
  297. package/dist/primitives/modal/context.jsx +2 -4
  298. package/dist/primitives/modal/index.d.ts +5 -8
  299. package/dist/primitives/modal/portal.js +1 -1
  300. package/dist/primitives/modal/portal.jsx +1 -1
  301. package/dist/primitives/modal/root.d.ts +2 -3
  302. package/dist/primitives/modal/root.js +10 -10
  303. package/dist/primitives/modal/root.jsx +10 -10
  304. package/dist/primitives/pagination/context.d.ts +89 -0
  305. package/dist/primitives/pagination/context.js +88 -0
  306. package/dist/primitives/pagination/context.jsx +88 -0
  307. package/dist/primitives/pagination/index.d.ts +33 -0
  308. package/dist/primitives/pagination/index.js +12 -0
  309. package/dist/primitives/pagination/index.jsx +12 -0
  310. package/dist/primitives/pagination/items.d.ts +9 -0
  311. package/dist/primitives/pagination/items.js +19 -0
  312. package/dist/primitives/pagination/items.jsx +11 -0
  313. package/dist/primitives/pagination/root.d.ts +16 -0
  314. package/dist/primitives/pagination/root.js +24 -0
  315. package/dist/primitives/pagination/root.jsx +23 -0
  316. package/dist/primitives/radio-group/context.d.ts +91 -0
  317. package/dist/primitives/radio-group/context.js +16 -0
  318. package/dist/primitives/radio-group/context.jsx +16 -0
  319. package/dist/primitives/radio-group/index.d.ts +34 -0
  320. package/dist/primitives/radio-group/index.js +15 -0
  321. package/dist/primitives/radio-group/index.jsx +15 -0
  322. package/dist/primitives/radio-group/item.d.ts +19 -0
  323. package/dist/primitives/radio-group/item.js +74 -0
  324. package/dist/primitives/radio-group/item.jsx +44 -0
  325. package/dist/primitives/radio-group/root.d.ts +14 -0
  326. package/dist/primitives/radio-group/root.js +23 -0
  327. package/dist/primitives/radio-group/root.jsx +22 -0
  328. package/dist/root-provider/context.d.ts +16 -9
  329. package/dist/root-provider/context.js +4 -1
  330. package/dist/root-provider/context.jsx +4 -1
  331. package/dist/root-provider/gen-colors.js +138 -0
  332. package/dist/root-provider/gen-colors.jsx +138 -0
  333. package/dist/root-provider/provider.js +4 -3
  334. package/dist/root-provider/provider.jsx +3 -2
  335. package/dist/utils/duration.js +10 -0
  336. package/dist/utils/duration.jsx +10 -0
  337. package/dist/utils/index.js +1 -4
  338. package/dist/utils/index.jsx +1 -4
  339. package/dist/utils/types.d.ts +4 -8
  340. package/package.json +9 -8
  341. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/combobox/combobox.js +0 -5
  342. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/combobox/combobox.jsx +0 -5
  343. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/input/input.js +0 -5
  344. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/input/input.jsx +0 -5
  345. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/textarea/textarea.js +0 -5
  346. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/textarea/textarea.jsx +0 -5
  347. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/layout/input-compact/input-compact.js +0 -5
  348. package/dist/_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/layout/input-compact/input-compact.jsx +0 -5
  349. package/dist/components/input/index.d.ts +0 -1
  350. package/dist/components/input/index.js +0 -1
  351. package/dist/components/input/index.jsx +0 -1
  352. package/dist/components/input/input.d.ts +0 -15
  353. package/dist/components/input/input.js +0 -44
  354. package/dist/components/input/input.jsx +0 -16
  355. package/dist/components/textarea/textarea.js +0 -49
  356. package/dist/components/textarea/textarea.jsx +0 -24
  357. package/dist/layout/input-compact/index.d.ts +0 -13
  358. package/dist/layout/input-compact/index.js +0 -42
  359. package/dist/layout/input-compact/index.jsx +0 -32
  360. package/dist/root-provider/gen-brand.js +0 -55
  361. package/dist/root-provider/gen-brand.jsx +0 -55
  362. package/dist/utils/types.js +0 -7
  363. package/dist/utils/types.jsx +0 -7
  364. /package/dist/components/{combobox → form-components/combobox}/index.d.ts +0 -0
  365. /package/dist/components/{combobox → form-components/combobox}/index.js +0 -0
  366. /package/dist/components/{combobox → form-components/combobox}/index.jsx +0 -0
  367. /package/dist/components/{textarea → form-components/textarea}/index.d.ts +0 -0
  368. /package/dist/components/{textarea → form-components/textarea}/index.js +0 -0
  369. /package/dist/components/{textarea → form-components/textarea}/index.jsx +0 -0
@@ -0,0 +1,50 @@
1
+ import { IconCheckboxCircleLine } from "../../icons/checkbox-circle-line.js";
2
+ import { IconErrorWarningLine } from "../../icons/error-warning-line.js";
3
+ import { InformationLine } from "../../icons/information-line.js";
4
+ import { IconLoading } from "../../icons/loading.js";
5
+ import "../../icons/index.js";
6
+ import { createComponent, memo } from "solid-js/web";
7
+ import { Match, Switch } from "solid-js";
8
+
9
+ //#region src/components/toaster/icon.tsx
10
+ function ToasterIcon(props) {
11
+ return createComponent(Switch, { get children() {
12
+ return [
13
+ createComponent(Match, {
14
+ get when() {
15
+ return props.type === "info";
16
+ },
17
+ get children() {
18
+ return createComponent(InformationLine, { size: "20px" });
19
+ }
20
+ }),
21
+ createComponent(Match, {
22
+ get when() {
23
+ return props.type === "success";
24
+ },
25
+ get children() {
26
+ return createComponent(IconCheckboxCircleLine, { size: "20px" });
27
+ }
28
+ }),
29
+ createComponent(Match, {
30
+ get when() {
31
+ return props.type === "error" || props.type === "warning";
32
+ },
33
+ get children() {
34
+ return createComponent(IconErrorWarningLine, { size: "20px" });
35
+ }
36
+ }),
37
+ createComponent(Match, {
38
+ get when() {
39
+ return props.type === "loading";
40
+ },
41
+ get children() {
42
+ return createComponent(IconLoading, { size: "20px" });
43
+ }
44
+ })
45
+ ];
46
+ } });
47
+ }
48
+
49
+ //#endregion
50
+ export { ToasterIcon };
@@ -0,0 +1,27 @@
1
+ import { IconCheckboxCircleLine } from "../../icons/checkbox-circle-line.jsx";
2
+ import { IconErrorWarningLine } from "../../icons/error-warning-line.jsx";
3
+ import { InformationLine } from "../../icons/information-line.jsx";
4
+ import { IconLoading } from "../../icons/loading.jsx";
5
+ import "../../icons/index.jsx";
6
+ import { Match, Switch } from "solid-js";
7
+
8
+ //#region src/components/toaster/icon.tsx
9
+ function ToasterIcon(props) {
10
+ return <Switch>
11
+ <Match when={props.type === "info"}>
12
+ <InformationLine size="20px" />
13
+ </Match>
14
+ <Match when={props.type === "success"}>
15
+ <IconCheckboxCircleLine size="20px" />
16
+ </Match>
17
+ <Match when={props.type === "error" || props.type === "warning"}>
18
+ <IconErrorWarningLine size="20px" />
19
+ </Match>
20
+ <Match when={props.type === "loading"}>
21
+ <IconLoading size="20px" />
22
+ </Match>
23
+ </Switch>;
24
+ }
25
+
26
+ //#endregion
27
+ export { ToasterIcon };
@@ -0,0 +1,3 @@
1
+ import { Toast, ToastPosition, ToastType } from "./type.js";
2
+ import { TinyToasterProvider } from "./provider.js";
3
+ import { useToaster } from "./use-toaster.js";
@@ -0,0 +1,2 @@
1
+ import { TinyToasterProvider } from "./provider.js";
2
+ import { useToaster } from "./use-toaster.js";
@@ -0,0 +1,2 @@
1
+ import { TinyToasterProvider } from "./provider.jsx";
2
+ import { useToaster } from "./use-toaster.jsx";
@@ -0,0 +1,67 @@
1
+ import { Flex } from "../../layout/flex/index.js";
2
+ import "../../layout/index.js";
3
+ import { createComponent } from "solid-js/web";
4
+ import { createMemo } from "solid-js";
5
+
6
+ //#region src/components/toaster/locator.tsx
7
+ function ToasterLocator(props) {
8
+ const inset = createMemo(() => {
9
+ switch (props.position) {
10
+ case "top-left": return {
11
+ top: "0",
12
+ left: "0"
13
+ };
14
+ case "top-center": return {
15
+ top: "0",
16
+ left: "50%",
17
+ transform: "translateX(-50%)"
18
+ };
19
+ case "top-right": return {
20
+ top: "0",
21
+ right: "0"
22
+ };
23
+ case "bottom-left": return {
24
+ bottom: "0",
25
+ left: "0"
26
+ };
27
+ case "bottom-center": return {
28
+ bottom: "0",
29
+ left: "50%",
30
+ transform: "translateX(-50%)"
31
+ };
32
+ case "bottom-right": return {
33
+ bottom: "0",
34
+ right: "0"
35
+ };
36
+ default: return {};
37
+ }
38
+ });
39
+ const alignItems = createMemo(() => {
40
+ const pos = props.position;
41
+ if (pos.includes("left")) return "flex-start";
42
+ if (pos.includes("center")) return "center";
43
+ if (pos.includes("right")) return "flex-end";
44
+ });
45
+ return createComponent(Flex, {
46
+ get align() {
47
+ return alignItems();
48
+ },
49
+ get reverse() {
50
+ return props.position.startsWith("bottom");
51
+ },
52
+ get style() {
53
+ return {
54
+ position: "absolute",
55
+ width: "fit-content",
56
+ ...inset()
57
+ };
58
+ },
59
+ vertical: true,
60
+ get children() {
61
+ return props.children;
62
+ }
63
+ });
64
+ }
65
+
66
+ //#endregion
67
+ export { ToasterLocator };
@@ -0,0 +1,54 @@
1
+ import { Flex } from "../../layout/flex/index.jsx";
2
+ import "../../layout/index.jsx";
3
+ import { createMemo } from "solid-js";
4
+
5
+ //#region src/components/toaster/locator.tsx
6
+ function ToasterLocator(props) {
7
+ const inset = createMemo(() => {
8
+ switch (props.position) {
9
+ case "top-left": return {
10
+ top: "0",
11
+ left: "0"
12
+ };
13
+ case "top-center": return {
14
+ top: "0",
15
+ left: "50%",
16
+ transform: "translateX(-50%)"
17
+ };
18
+ case "top-right": return {
19
+ top: "0",
20
+ right: "0"
21
+ };
22
+ case "bottom-left": return {
23
+ bottom: "0",
24
+ left: "0"
25
+ };
26
+ case "bottom-center": return {
27
+ bottom: "0",
28
+ left: "50%",
29
+ transform: "translateX(-50%)"
30
+ };
31
+ case "bottom-right": return {
32
+ bottom: "0",
33
+ right: "0"
34
+ };
35
+ default: return {};
36
+ }
37
+ });
38
+ const alignItems = createMemo(() => {
39
+ const pos = props.position;
40
+ if (pos.includes("left")) return "flex-start";
41
+ if (pos.includes("center")) return "center";
42
+ if (pos.includes("right")) return "flex-end";
43
+ });
44
+ return <Flex align={alignItems()} reverse={props.position.startsWith("bottom")} style={{
45
+ position: "absolute",
46
+ width: "fit-content",
47
+ ...inset()
48
+ }} vertical>
49
+ {props.children}
50
+ </Flex>;
51
+ }
52
+
53
+ //#endregion
54
+ export { ToasterLocator };
@@ -0,0 +1,146 @@
1
+ import { context } from "./context.js";
2
+ import { ToasterIcon } from "./icon.js";
3
+ import { addEventListener, createComponent, effect, insert, memo, setAttribute, setStyleProperty, template, use } from "solid-js/web";
4
+ import { Show, children, createSignal, onMount } from "solid-js";
5
+ import { callMaybeCallableChild, createPresence, createWatch, dataIf } from "solid-tiny-utils";
6
+
7
+ //#region src/components/toaster/one-toaster.tsx
8
+ var _tmpl$ = /* @__PURE__ */ template(`<div style=width:100%;position:absolute>`), _tmpl$2 = /* @__PURE__ */ template(`<div class=tiny-toast__icon>`), _tmpl$3 = /* @__PURE__ */ template(`<div class=tiny-toast-wrapper role=presentation><div class=tiny-toast><div class=tiny-toast__content>`);
9
+ function HiddenAutoDismiss(props) {
10
+ let ref;
11
+ onMount(() => {
12
+ ref.offsetHeight;
13
+ createWatch(() => [props.duration, props.pause], ([duration, pause], prevInput) => {
14
+ if (prevInput) {
15
+ const [prevDuration] = prevInput;
16
+ if (duration !== prevDuration) ref.style.width = "100%";
17
+ }
18
+ const percent = ref.offsetWidth / ref.parentElement.offsetWidth;
19
+ if (percent === 0 && duration > 0) {
20
+ props.onEnd();
21
+ return;
22
+ }
23
+ if (pause) {
24
+ ref.style.width = `${percent * 100}%`;
25
+ ref.style.transition = "none";
26
+ } else {
27
+ ref.style.width = "0";
28
+ ref.style.transition = `width ${duration * percent}ms linear`;
29
+ }
30
+ });
31
+ });
32
+ return (() => {
33
+ var _el$ = _tmpl$();
34
+ var _ref$ = ref;
35
+ typeof _ref$ === "function" ? use(_ref$, _el$) : ref = _el$;
36
+ addEventListener(_el$, "transitionend", props.onEnd);
37
+ return _el$;
38
+ })();
39
+ }
40
+ function getElRealHeight(el) {
41
+ const prevAnimationName = el.style.animationName;
42
+ el.style.animationName = "none";
43
+ const height = el.offsetHeight;
44
+ el.style.animationName = prevAnimationName;
45
+ return height;
46
+ }
47
+ function OneToaster(props) {
48
+ const [state, actions] = context.useContext();
49
+ const [show, setShow] = createSignal(true);
50
+ const [height, setHeight] = createSignal(0);
51
+ const presence = createPresence(show, {
52
+ enterDuration: 400,
53
+ exitDuration: 350,
54
+ initialEnter: true
55
+ });
56
+ createWatch(presence.isMounted, (shouldMount) => {
57
+ if (!shouldMount) actions.removeToast(props.id);
58
+ });
59
+ createWatch(() => state.dismissSignal[props.id], (signal) => {
60
+ if (signal) setShow(false);
61
+ });
62
+ let ref;
63
+ onMount(() => {
64
+ createWatch(presence.phase, (phase) => {
65
+ if (["pre-enter", "exiting"].includes(phase)) setHeight(getElRealHeight(ref));
66
+ });
67
+ });
68
+ const icon = children(() => callMaybeCallableChild(props.icon, {
69
+ id: props.id,
70
+ type: props.type,
71
+ duration: props.duration,
72
+ position: props.position
73
+ }));
74
+ return createComponent(Show, {
75
+ get when() {
76
+ return presence.isMounted();
77
+ },
78
+ get children() {
79
+ var _el$2 = _tmpl$3(), _el$3 = _el$2.firstChild, _el$5 = _el$3.firstChild;
80
+ var _ref$2 = ref;
81
+ typeof _ref$2 === "function" ? use(_ref$2, _el$2) : ref = _el$2;
82
+ _el$2.addEventListener("mouseleave", () => {
83
+ actions.setState("pauseRemoval", false);
84
+ });
85
+ _el$2.addEventListener("mouseenter", () => {
86
+ actions.setState("pauseRemoval", true);
87
+ });
88
+ insert(_el$3, createComponent(Show, {
89
+ get when() {
90
+ return icon() || [
91
+ "info",
92
+ "success",
93
+ "warning",
94
+ "error",
95
+ "loading"
96
+ ].includes(props.type);
97
+ },
98
+ get children() {
99
+ var _el$4 = _tmpl$2();
100
+ insert(_el$4, () => icon() || createComponent(ToasterIcon, { get type() {
101
+ return props.type;
102
+ } }));
103
+ return _el$4;
104
+ }
105
+ }), _el$5);
106
+ insert(_el$5, () => callMaybeCallableChild(props.message, {
107
+ id: props.id,
108
+ type: props.type,
109
+ duration: props.duration,
110
+ position: props.position
111
+ }));
112
+ insert(_el$2, createComponent(HiddenAutoDismiss, {
113
+ get duration() {
114
+ return props.duration;
115
+ },
116
+ onEnd: () => {
117
+ setShow(false);
118
+ },
119
+ get pause() {
120
+ return state.pauseRemoval;
121
+ }
122
+ }), null);
123
+ effect((_p$) => {
124
+ var _v$ = dataIf(["entering", "pre-enter"].includes(presence.phase())), _v$2 = dataIf(["exiting"].includes(presence.phase())), _v$3 = presence.phase(), _v$4 = `${height()}px`, _v$5 = props.type, _v$6 = props.position.startsWith("top") ? "-20%" : "20%";
125
+ _v$ !== _p$.e && setAttribute(_el$2, "data-entering", _p$.e = _v$);
126
+ _v$2 !== _p$.t && setAttribute(_el$2, "data-exiting", _p$.t = _v$2);
127
+ _v$3 !== _p$.a && setAttribute(_el$2, "data-presence-phase", _p$.a = _v$3);
128
+ _v$4 !== _p$.o && setStyleProperty(_el$2, "--height", _p$.o = _v$4);
129
+ _v$5 !== _p$.i && setAttribute(_el$3, "data-type", _p$.i = _v$5);
130
+ _v$6 !== _p$.n && setStyleProperty(_el$3, "--from-y", _p$.n = _v$6);
131
+ return _p$;
132
+ }, {
133
+ e: void 0,
134
+ t: void 0,
135
+ a: void 0,
136
+ o: void 0,
137
+ i: void 0,
138
+ n: void 0
139
+ });
140
+ return _el$2;
141
+ }
142
+ });
143
+ }
144
+
145
+ //#endregion
146
+ export { OneToaster };
@@ -0,0 +1,104 @@
1
+ import { context } from "./context.jsx";
2
+ import { ToasterIcon } from "./icon.jsx";
3
+ import { Show, children, createSignal, onMount } from "solid-js";
4
+ import { callMaybeCallableChild, createPresence, createWatch, dataIf } from "solid-tiny-utils";
5
+
6
+ //#region src/components/toaster/one-toaster.tsx
7
+ function HiddenAutoDismiss(props) {
8
+ let ref;
9
+ onMount(() => {
10
+ ref.offsetHeight;
11
+ createWatch(() => [props.duration, props.pause], ([duration, pause], prevInput) => {
12
+ if (prevInput) {
13
+ const [prevDuration] = prevInput;
14
+ if (duration !== prevDuration) ref.style.width = "100%";
15
+ }
16
+ const percent = ref.offsetWidth / ref.parentElement.offsetWidth;
17
+ if (percent === 0 && duration > 0) {
18
+ props.onEnd();
19
+ return;
20
+ }
21
+ if (pause) {
22
+ ref.style.width = `${percent * 100}%`;
23
+ ref.style.transition = "none";
24
+ } else {
25
+ ref.style.width = "0";
26
+ ref.style.transition = `width ${duration * percent}ms linear`;
27
+ }
28
+ });
29
+ });
30
+ return <div onTransitionEnd={props.onEnd} ref={ref} style={{
31
+ width: "100%",
32
+ position: "absolute"
33
+ }} />;
34
+ }
35
+ function getElRealHeight(el) {
36
+ const prevAnimationName = el.style.animationName;
37
+ el.style.animationName = "none";
38
+ const height = el.offsetHeight;
39
+ el.style.animationName = prevAnimationName;
40
+ return height;
41
+ }
42
+ function OneToaster(props) {
43
+ const [state, actions] = context.useContext();
44
+ const [show, setShow] = createSignal(true);
45
+ const [height, setHeight] = createSignal(0);
46
+ const presence = createPresence(show, {
47
+ enterDuration: 400,
48
+ exitDuration: 350,
49
+ initialEnter: true
50
+ });
51
+ createWatch(presence.isMounted, (shouldMount) => {
52
+ if (!shouldMount) actions.removeToast(props.id);
53
+ });
54
+ createWatch(() => state.dismissSignal[props.id], (signal) => {
55
+ if (signal) setShow(false);
56
+ });
57
+ let ref;
58
+ onMount(() => {
59
+ createWatch(presence.phase, (phase) => {
60
+ if (["pre-enter", "exiting"].includes(phase)) setHeight(getElRealHeight(ref));
61
+ });
62
+ });
63
+ const icon = children(() => callMaybeCallableChild(props.icon, {
64
+ id: props.id,
65
+ type: props.type,
66
+ duration: props.duration,
67
+ position: props.position
68
+ }));
69
+ return <Show when={presence.isMounted()}>
70
+ <div class="tiny-toast-wrapper" data-entering={dataIf(["entering", "pre-enter"].includes(presence.phase()))} data-exiting={dataIf(["exiting"].includes(presence.phase()))} data-presence-phase={presence.phase()} onMouseEnter={() => {
71
+ actions.setState("pauseRemoval", true);
72
+ }} onMouseLeave={() => {
73
+ actions.setState("pauseRemoval", false);
74
+ }} ref={ref} role="presentation" style={{ "--height": `${height()}px` }}>
75
+ <div class="tiny-toast" data-type={props.type} style={{ "--from-y": props.position.startsWith("top") ? "-20%" : "20%" }}>
76
+ <Show when={icon() || [
77
+ "info",
78
+ "success",
79
+ "warning",
80
+ "error",
81
+ "loading"
82
+ ].includes(props.type)}>
83
+ <div class="tiny-toast__icon">
84
+ {icon() || <ToasterIcon type={props.type} />}
85
+ </div>
86
+ </Show>
87
+ <div class="tiny-toast__content">
88
+ {callMaybeCallableChild(props.message, {
89
+ id: props.id,
90
+ type: props.type,
91
+ duration: props.duration,
92
+ position: props.position
93
+ })}
94
+ </div>
95
+ </div>
96
+ <HiddenAutoDismiss duration={props.duration} onEnd={() => {
97
+ setShow(false);
98
+ }} pause={state.pauseRemoval} />
99
+ </div>
100
+ </Show>;
101
+ }
102
+
103
+ //#endregion
104
+ export { OneToaster };
@@ -0,0 +1,11 @@
1
+ import { ToastPosition } from "./type.js";
2
+ import { JSX } from "solid-js/jsx-runtime";
3
+
4
+ //#region src/components/toaster/provider.d.ts
5
+ declare function TinyToasterProvider(props: {
6
+ children: JSX.Element;
7
+ defaultDuration?: number;
8
+ defaultPosition?: ToastPosition;
9
+ }): JSX.Element;
10
+ //#endregion
11
+ export { TinyToasterProvider };
@@ -0,0 +1,64 @@
1
+ import toaster_default from "../../_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/toaster/toaster.js";
2
+ import { context } from "./context.js";
3
+ import { ToasterLocator } from "./locator.js";
4
+ import { OneToaster } from "./one-toaster.js";
5
+ import { For, Portal, createComponent, effect, insert, memo, setStyleProperty, template } from "solid-js/web";
6
+ import { mountStyle } from "solid-tiny-utils";
7
+
8
+ //#region src/components/toaster/provider.tsx
9
+ var _tmpl$ = /* @__PURE__ */ template(`<div style=position:fixed;pointer-events:none>`);
10
+ function ToasterContainer(props) {
11
+ return (() => {
12
+ var _el$ = _tmpl$();
13
+ insert(_el$, () => props.children);
14
+ effect((_p$) => {
15
+ var _v$ = props.zIndex ?? 9999, _v$2 = props.padding ? `${props.padding}px` : "16px";
16
+ _v$ !== _p$.e && setStyleProperty(_el$, "z-index", _p$.e = _v$);
17
+ _v$2 !== _p$.t && setStyleProperty(_el$, "inset", _p$.t = _v$2);
18
+ return _p$;
19
+ }, {
20
+ e: void 0,
21
+ t: void 0
22
+ });
23
+ return _el$;
24
+ })();
25
+ }
26
+ function TinyToasterProvider(props) {
27
+ mountStyle(toaster_default, "tiny-toaster");
28
+ const Context = context.initial({
29
+ defaultDuration: () => props.defaultDuration,
30
+ defaultPosition: () => props.defaultPosition
31
+ });
32
+ const [, actions] = Context.value;
33
+ const positions = [
34
+ "top-left",
35
+ "top-center",
36
+ "top-right",
37
+ "bottom-left",
38
+ "bottom-center",
39
+ "bottom-right"
40
+ ];
41
+ return createComponent(Context.Provider, { get children() {
42
+ return [createComponent(Portal, { get children() {
43
+ return createComponent(ToasterContainer, { get children() {
44
+ return createComponent(For, {
45
+ each: positions,
46
+ children: (pos) => createComponent(ToasterLocator, {
47
+ position: pos,
48
+ get children() {
49
+ return createComponent(For, {
50
+ get each() {
51
+ return actions.getToastsByPosition(pos);
52
+ },
53
+ children: (toast) => createComponent(OneToaster, toast)
54
+ });
55
+ }
56
+ })
57
+ });
58
+ } });
59
+ } }), memo(() => props.children)];
60
+ } });
61
+ }
62
+
63
+ //#endregion
64
+ export { TinyToasterProvider };
@@ -0,0 +1,51 @@
1
+ import toaster_default from "../../_virtual/__viteSafe__/home/runner/work/solid-tiny-ui/solid-tiny-ui/packages/core/src/components/toaster/toaster.jsx";
2
+ import { context } from "./context.jsx";
3
+ import { ToasterLocator } from "./locator.jsx";
4
+ import { OneToaster } from "./one-toaster.jsx";
5
+ import { mountStyle } from "solid-tiny-utils";
6
+ import { For, Portal } from "solid-js/web";
7
+
8
+ //#region src/components/toaster/provider.tsx
9
+ function ToasterContainer(props) {
10
+ return <div style={{
11
+ "z-index": props.zIndex ?? 9999,
12
+ position: "fixed",
13
+ inset: props.padding ? `${props.padding}px` : "16px",
14
+ "pointer-events": "none"
15
+ }}>
16
+ {props.children}
17
+ </div>;
18
+ }
19
+ function TinyToasterProvider(props) {
20
+ mountStyle(toaster_default, "tiny-toaster");
21
+ const Context = context.initial({
22
+ defaultDuration: () => props.defaultDuration,
23
+ defaultPosition: () => props.defaultPosition
24
+ });
25
+ const [, actions] = Context.value;
26
+ const positions = [
27
+ "top-left",
28
+ "top-center",
29
+ "top-right",
30
+ "bottom-left",
31
+ "bottom-center",
32
+ "bottom-right"
33
+ ];
34
+ return <Context.Provider>
35
+ <Portal>
36
+ <ToasterContainer>
37
+ <For each={positions}>
38
+ {(pos) => <ToasterLocator position={pos}>
39
+ <For each={actions.getToastsByPosition(pos)}>
40
+ {(toast) => <OneToaster {...toast} />}
41
+ </For>
42
+ </ToasterLocator>}
43
+ </For>
44
+ </ToasterContainer>
45
+ </Portal>
46
+ {props.children}
47
+ </Context.Provider>;
48
+ }
49
+
50
+ //#endregion
51
+ export { TinyToasterProvider };
@@ -0,0 +1,15 @@
1
+ import { MaybeCallableChild } from "solid-tiny-utils";
2
+
3
+ //#region src/components/toaster/type.d.ts
4
+ interface Toast {
5
+ id: string;
6
+ type: ToastType;
7
+ duration: number;
8
+ position: ToastPosition;
9
+ message: MaybeCallableChild<[Omit<Toast, "icon" | "message">]>;
10
+ icon: MaybeCallableChild<[Omit<Toast, "icon" | "message">]>;
11
+ }
12
+ type ToastPosition = "top-left" | "top-center" | "top-right" | "bottom-left" | "bottom-center" | "bottom-right";
13
+ type ToastType = "success" | "error" | "warning" | "info" | "blank" | "loading";
14
+ //#endregion
15
+ export { Toast, ToastPosition, ToastType };
@@ -0,0 +1,48 @@
1
+ import { Toast } from "./type.js";
2
+ import { MaybeCallableChild } from "solid-tiny-utils";
3
+
4
+ //#region src/components/toaster/use-toaster.d.ts
5
+ declare function useToaster(): ((msg: MaybeCallableChild<[{
6
+ id: string;
7
+ }]>, opt?: {
8
+ duration?: number;
9
+ position?: Toast["position"];
10
+ type?: Toast["type"];
11
+ icon?: Toast["icon"];
12
+ }) => string) & {
13
+ blank: (msg: MaybeCallableChild<[{
14
+ id: string;
15
+ }]>, opt?: Omit<Partial<Omit<Toast, "message" | "id">>, "type"> | undefined) => string;
16
+ loading: (msg: MaybeCallableChild<[{
17
+ id: string;
18
+ }]>, opt?: Omit<Partial<Omit<Toast, "message" | "id">>, "type" | "duration"> | undefined) => string;
19
+ success: (msg: MaybeCallableChild<[{
20
+ id: string;
21
+ }]>, opt?: Omit<Partial<Omit<Toast, "message" | "id">>, "type"> | undefined) => string;
22
+ error: (msg: MaybeCallableChild<[{
23
+ id: string;
24
+ }]>, opt?: Omit<Partial<Omit<Toast, "message" | "id">>, "type"> | undefined) => string;
25
+ info: (msg: MaybeCallableChild<[{
26
+ id: string;
27
+ }]>, opt?: Omit<Partial<Omit<Toast, "message" | "id">>, "type"> | undefined) => string;
28
+ warning: (msg: MaybeCallableChild<[{
29
+ id: string;
30
+ }]>, opt?: Omit<Partial<Omit<Toast, "message" | "id">>, "type"> | undefined) => string;
31
+ promise: <T>(promise: Promise<T>, phase: {
32
+ loading: MaybeCallableChild<[{
33
+ id: string;
34
+ }]>;
35
+ success: MaybeCallableChild<[{
36
+ id: string;
37
+ data: T;
38
+ }]>;
39
+ error: MaybeCallableChild<[{
40
+ id: string;
41
+ error: unknown;
42
+ }]>;
43
+ }) => void;
44
+ dismiss: (id: string) => void;
45
+ update: (id: string, updatedProps: Partial<Toast>) => void;
46
+ };
47
+ //#endregion
48
+ export { useToaster };