@codeleap/web 7.0.0 → 7.0.2

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 (361) hide show
  1. package/dist/components/ActivityIndicator/index.js +46 -0
  2. package/dist/components/ActivityIndicator/index.js.map +1 -0
  3. package/dist/components/ActivityIndicator/styles.js +3 -0
  4. package/dist/components/ActivityIndicator/styles.js.map +1 -0
  5. package/dist/components/ActivityIndicator/types.js +3 -0
  6. package/dist/components/ActivityIndicator/types.js.map +1 -0
  7. package/dist/components/Badge/index.js +86 -0
  8. package/dist/components/Badge/index.js.map +1 -0
  9. package/dist/components/Badge/styles.js +3 -0
  10. package/dist/components/Badge/styles.js.map +1 -0
  11. package/dist/components/Badge/types.js +3 -0
  12. package/dist/components/Badge/types.js.map +1 -0
  13. package/dist/components/Button/index.js +69 -0
  14. package/dist/components/Button/index.js.map +1 -0
  15. package/dist/components/Button/styles.js +3 -0
  16. package/dist/components/Button/styles.js.map +1 -0
  17. package/dist/components/Button/types.js +3 -0
  18. package/dist/components/Button/types.js.map +1 -0
  19. package/dist/components/Calendar/index.js +67 -0
  20. package/dist/components/Calendar/index.js.map +1 -0
  21. package/dist/components/Calendar/styles.js +3 -0
  22. package/dist/components/Calendar/styles.js.map +1 -0
  23. package/dist/components/Calendar/types.js +3 -0
  24. package/dist/components/Calendar/types.js.map +1 -0
  25. package/dist/components/Carousel/index.js +171 -0
  26. package/dist/components/Carousel/index.js.map +1 -0
  27. package/dist/components/Carousel/styles.js +3 -0
  28. package/dist/components/Carousel/styles.js.map +1 -0
  29. package/dist/components/Carousel/types.js +3 -0
  30. package/dist/components/Carousel/types.js.map +1 -0
  31. package/dist/components/Checkbox/index.js +62 -0
  32. package/dist/components/Checkbox/index.js.map +1 -0
  33. package/dist/components/Checkbox/styles.js +3 -0
  34. package/dist/components/Checkbox/styles.js.map +1 -0
  35. package/dist/components/Checkbox/types.js +3 -0
  36. package/dist/components/Checkbox/types.js.map +1 -0
  37. package/dist/components/Collapse/index.js +45 -0
  38. package/dist/components/Collapse/index.js.map +1 -0
  39. package/dist/components/Collapse/styles.js +3 -0
  40. package/dist/components/Collapse/styles.js.map +1 -0
  41. package/dist/components/Collapse/types.js +3 -0
  42. package/dist/components/Collapse/types.js.map +1 -0
  43. package/dist/components/ColorPicker/index.js +83 -0
  44. package/dist/components/ColorPicker/index.js.map +1 -0
  45. package/dist/components/ColorPicker/styles.js +3 -0
  46. package/dist/components/ColorPicker/styles.js.map +1 -0
  47. package/dist/components/ColorPicker/types.js +3 -0
  48. package/dist/components/ColorPicker/types.js.map +1 -0
  49. package/dist/components/CropPicker/hooks.d.ts +2 -2
  50. package/dist/components/CropPicker/hooks.js +133 -0
  51. package/dist/components/CropPicker/hooks.js.map +1 -0
  52. package/dist/components/CropPicker/index.js +56 -0
  53. package/dist/components/CropPicker/index.js.map +1 -0
  54. package/dist/components/CropPicker/styles.js +3 -0
  55. package/dist/components/CropPicker/styles.js.map +1 -0
  56. package/dist/components/CropPicker/types.js +3 -0
  57. package/dist/components/CropPicker/types.js.map +1 -0
  58. package/dist/components/CropPicker/utils.js +76 -0
  59. package/dist/components/CropPicker/utils.js.map +1 -0
  60. package/dist/components/DatePicker/index.js +87 -0
  61. package/dist/components/DatePicker/index.js.map +1 -0
  62. package/dist/components/DatePicker/styles.js +3 -0
  63. package/dist/components/DatePicker/styles.js.map +1 -0
  64. package/dist/components/DatePicker/types.js +3 -0
  65. package/dist/components/DatePicker/types.js.map +1 -0
  66. package/dist/components/Drawer/index.js +68 -0
  67. package/dist/components/Drawer/index.js.map +1 -0
  68. package/dist/components/Drawer/styles.js +3 -0
  69. package/dist/components/Drawer/styles.js.map +1 -0
  70. package/dist/components/Drawer/types.js +3 -0
  71. package/dist/components/Drawer/types.js.map +1 -0
  72. package/dist/components/Dropzone/context.js +44 -0
  73. package/dist/components/Dropzone/context.js.map +1 -0
  74. package/dist/components/Dropzone/elements.js +57 -0
  75. package/dist/components/Dropzone/elements.js.map +1 -0
  76. package/dist/components/Dropzone/index.js +89 -0
  77. package/dist/components/Dropzone/index.js.map +1 -0
  78. package/dist/components/Dropzone/styles.js +3 -0
  79. package/dist/components/Dropzone/styles.js.map +1 -0
  80. package/dist/components/Dropzone/types.js +3 -0
  81. package/dist/components/Dropzone/types.js.map +1 -0
  82. package/dist/components/Dropzone/useDropzone.js +20 -0
  83. package/dist/components/Dropzone/useDropzone.js.map +1 -0
  84. package/dist/components/EmptyPlaceholder/index.js +86 -0
  85. package/dist/components/EmptyPlaceholder/index.js.map +1 -0
  86. package/dist/components/EmptyPlaceholder/styles.js +3 -0
  87. package/dist/components/EmptyPlaceholder/styles.js.map +1 -0
  88. package/dist/components/EmptyPlaceholder/types.js +3 -0
  89. package/dist/components/EmptyPlaceholder/types.js.map +1 -0
  90. package/dist/components/Field/context.js +58 -0
  91. package/dist/components/Field/context.js.map +1 -0
  92. package/dist/components/Field/elements.js +92 -0
  93. package/dist/components/Field/elements.js.map +1 -0
  94. package/dist/components/Field/index.js +55 -0
  95. package/dist/components/Field/index.js.map +1 -0
  96. package/dist/components/Field/styles.js +3 -0
  97. package/dist/components/Field/styles.js.map +1 -0
  98. package/dist/components/Field/types.js +3 -0
  99. package/dist/components/Field/types.js.map +1 -0
  100. package/dist/components/Field/useFieldInput.d.ts +1 -1
  101. package/dist/components/Field/useFieldInput.js +50 -0
  102. package/dist/components/Field/useFieldInput.js.map +1 -0
  103. package/dist/components/FileInput/index.js +73 -0
  104. package/dist/components/FileInput/index.js.map +1 -0
  105. package/dist/components/FileInput/types.js +3 -0
  106. package/dist/components/FileInput/types.js.map +1 -0
  107. package/dist/components/Icon/index.js +69 -0
  108. package/dist/components/Icon/index.js.map +1 -0
  109. package/dist/components/Icon/styles.js +3 -0
  110. package/dist/components/Icon/styles.js.map +1 -0
  111. package/dist/components/Icon/types.js +3 -0
  112. package/dist/components/Icon/types.js.map +1 -0
  113. package/dist/components/List/context.js +81 -0
  114. package/dist/components/List/context.js.map +1 -0
  115. package/dist/components/List/elements.js +164 -0
  116. package/dist/components/List/elements.js.map +1 -0
  117. package/dist/components/List/index.js +52 -0
  118. package/dist/components/List/index.js.map +1 -0
  119. package/dist/components/List/scroll.js +80 -0
  120. package/dist/components/List/scroll.js.map +1 -0
  121. package/dist/components/List/styles.js +3 -0
  122. package/dist/components/List/styles.js.map +1 -0
  123. package/dist/components/List/types.js +3 -0
  124. package/dist/components/List/types.js.map +1 -0
  125. package/dist/components/LoadingOverlay/index.js +50 -0
  126. package/dist/components/LoadingOverlay/index.js.map +1 -0
  127. package/dist/components/LoadingOverlay/styles.js +3 -0
  128. package/dist/components/LoadingOverlay/styles.js.map +1 -0
  129. package/dist/components/LoadingOverlay/types.js +3 -0
  130. package/dist/components/LoadingOverlay/types.js.map +1 -0
  131. package/dist/components/MaskedTextInput/index.js +52 -0
  132. package/dist/components/MaskedTextInput/index.js.map +1 -0
  133. package/dist/components/MaskedTextInput/mask.js +37 -0
  134. package/dist/components/MaskedTextInput/mask.js.map +1 -0
  135. package/dist/components/MaskedTextInput/types.js +3 -0
  136. package/dist/components/MaskedTextInput/types.js.map +1 -0
  137. package/dist/components/Modal/context.js +41 -0
  138. package/dist/components/Modal/context.js.map +1 -0
  139. package/dist/components/Modal/elements.js +74 -0
  140. package/dist/components/Modal/elements.js.map +1 -0
  141. package/dist/components/Modal/index.js +52 -0
  142. package/dist/components/Modal/index.js.map +1 -0
  143. package/dist/components/Modal/styles.js +3 -0
  144. package/dist/components/Modal/styles.js.map +1 -0
  145. package/dist/components/Modal/types.js +3 -0
  146. package/dist/components/Modal/types.js.map +1 -0
  147. package/dist/components/NumberIncrement/index.js +83 -0
  148. package/dist/components/NumberIncrement/index.js.map +1 -0
  149. package/dist/components/NumberIncrement/styles.js +3 -0
  150. package/dist/components/NumberIncrement/styles.js.map +1 -0
  151. package/dist/components/NumberIncrement/types.js +3 -0
  152. package/dist/components/NumberIncrement/types.js.map +1 -0
  153. package/dist/components/NumberIncrement/useNumberIncrement.js +116 -0
  154. package/dist/components/NumberIncrement/useNumberIncrement.js.map +1 -0
  155. package/dist/components/Overlay/index.js +62 -0
  156. package/dist/components/Overlay/index.js.map +1 -0
  157. package/dist/components/Overlay/styles.js +3 -0
  158. package/dist/components/Overlay/styles.js.map +1 -0
  159. package/dist/components/Overlay/types.js +3 -0
  160. package/dist/components/Overlay/types.js.map +1 -0
  161. package/dist/components/PaginationButtons/index.js +118 -0
  162. package/dist/components/PaginationButtons/index.js.map +1 -0
  163. package/dist/components/PaginationButtons/styles.js +3 -0
  164. package/dist/components/PaginationButtons/styles.js.map +1 -0
  165. package/dist/components/PaginationButtons/types.js +3 -0
  166. package/dist/components/PaginationButtons/types.js.map +1 -0
  167. package/dist/components/PaginationIndicator/index.js +59 -0
  168. package/dist/components/PaginationIndicator/index.js.map +1 -0
  169. package/dist/components/PaginationIndicator/styles.js +3 -0
  170. package/dist/components/PaginationIndicator/styles.js.map +1 -0
  171. package/dist/components/PaginationIndicator/types.js +3 -0
  172. package/dist/components/PaginationIndicator/types.js.map +1 -0
  173. package/dist/components/Progress/Bar/Segmented.js +41 -0
  174. package/dist/components/Progress/Bar/Segmented.js.map +1 -0
  175. package/dist/components/Progress/Bar/index.js +62 -0
  176. package/dist/components/Progress/Bar/index.js.map +1 -0
  177. package/dist/components/Progress/Bar/styles.js +3 -0
  178. package/dist/components/Progress/Bar/styles.js.map +1 -0
  179. package/dist/components/Progress/Bar/types.js +3 -0
  180. package/dist/components/Progress/Bar/types.js.map +1 -0
  181. package/dist/components/Progress/Circle/Segmented.js +64 -0
  182. package/dist/components/Progress/Circle/Segmented.js.map +1 -0
  183. package/dist/components/Progress/Circle/index.js +83 -0
  184. package/dist/components/Progress/Circle/index.js.map +1 -0
  185. package/dist/components/Progress/Circle/styles.js +3 -0
  186. package/dist/components/Progress/Circle/styles.js.map +1 -0
  187. package/dist/components/Progress/Circle/types.js +3 -0
  188. package/dist/components/Progress/Circle/types.js.map +1 -0
  189. package/dist/components/Progress/index.js +19 -0
  190. package/dist/components/Progress/index.js.map +1 -0
  191. package/dist/components/Progress/utils.js +7 -0
  192. package/dist/components/Progress/utils.js.map +1 -0
  193. package/dist/components/RadioInput/index.js +68 -0
  194. package/dist/components/RadioInput/index.js.map +1 -0
  195. package/dist/components/RadioInput/styles.js +3 -0
  196. package/dist/components/RadioInput/styles.js.map +1 -0
  197. package/dist/components/RadioInput/types.js +3 -0
  198. package/dist/components/RadioInput/types.js.map +1 -0
  199. package/dist/components/SearchInput/index.js +98 -0
  200. package/dist/components/SearchInput/index.js.map +1 -0
  201. package/dist/components/SectionFilters/index.js +166 -0
  202. package/dist/components/SectionFilters/index.js.map +1 -0
  203. package/dist/components/SectionFilters/styles.js +3 -0
  204. package/dist/components/SectionFilters/styles.js.map +1 -0
  205. package/dist/components/SectionFilters/types.js +3 -0
  206. package/dist/components/SectionFilters/types.js.map +1 -0
  207. package/dist/components/Select/context.js +162 -0
  208. package/dist/components/Select/context.js.map +1 -0
  209. package/dist/components/Select/elements.js +53 -0
  210. package/dist/components/Select/elements.js.map +1 -0
  211. package/dist/components/Select/index.js +70 -0
  212. package/dist/components/Select/index.js.map +1 -0
  213. package/dist/components/Select/styles.js +3 -0
  214. package/dist/components/Select/styles.js.map +1 -0
  215. package/dist/components/Select/types.js +3 -0
  216. package/dist/components/Select/types.js.map +1 -0
  217. package/dist/components/Select/useTriggerWidth.js +30 -0
  218. package/dist/components/Select/useTriggerWidth.js.map +1 -0
  219. package/dist/components/Slider/index.js +160 -0
  220. package/dist/components/Slider/index.js.map +1 -0
  221. package/dist/components/Slider/styles.js +3 -0
  222. package/dist/components/Slider/styles.js.map +1 -0
  223. package/dist/components/Slider/types.js +3 -0
  224. package/dist/components/Slider/types.js.map +1 -0
  225. package/dist/components/Switch/index.js +66 -0
  226. package/dist/components/Switch/index.js.map +1 -0
  227. package/dist/components/Switch/styles.js +3 -0
  228. package/dist/components/Switch/styles.js.map +1 -0
  229. package/dist/components/Switch/types.js +3 -0
  230. package/dist/components/Switch/types.js.map +1 -0
  231. package/dist/components/Tag/index.js +74 -0
  232. package/dist/components/Tag/index.js.map +1 -0
  233. package/dist/components/Tag/styles.js +3 -0
  234. package/dist/components/Tag/styles.js.map +1 -0
  235. package/dist/components/Tag/types.js +3 -0
  236. package/dist/components/Tag/types.js.map +1 -0
  237. package/dist/components/Text/index.js +115 -0
  238. package/dist/components/Text/index.js.map +1 -0
  239. package/dist/components/Text/styles.js +3 -0
  240. package/dist/components/Text/styles.js.map +1 -0
  241. package/dist/components/Text/types.js +3 -0
  242. package/dist/components/Text/types.js.map +1 -0
  243. package/dist/components/TextEditor/index.js +111 -0
  244. package/dist/components/TextEditor/index.js.map +1 -0
  245. package/dist/components/TextEditor/styles.js +3 -0
  246. package/dist/components/TextEditor/styles.js.map +1 -0
  247. package/dist/components/TextEditor/types.js +3 -0
  248. package/dist/components/TextEditor/types.js.map +1 -0
  249. package/dist/components/TextInput/index.js +86 -0
  250. package/dist/components/TextInput/index.js.map +1 -0
  251. package/dist/components/TextInput/styles.js +3 -0
  252. package/dist/components/TextInput/styles.js.map +1 -0
  253. package/dist/components/TextInput/types.js +3 -0
  254. package/dist/components/TextInput/types.js.map +1 -0
  255. package/dist/components/TextInput/useTextInput.d.ts +2 -2
  256. package/dist/components/TextInput/useTextInput.js +67 -0
  257. package/dist/components/TextInput/useTextInput.js.map +1 -0
  258. package/dist/components/Tooltip/index.js +115 -0
  259. package/dist/components/Tooltip/index.js.map +1 -0
  260. package/dist/components/Tooltip/styles.js +3 -0
  261. package/dist/components/Tooltip/styles.js.map +1 -0
  262. package/dist/components/Tooltip/types.js +3 -0
  263. package/dist/components/Tooltip/types.js.map +1 -0
  264. package/dist/components/Touchable/index.js +100 -0
  265. package/dist/components/Touchable/index.js.map +1 -0
  266. package/dist/components/Touchable/styles.js +3 -0
  267. package/dist/components/Touchable/styles.js.map +1 -0
  268. package/dist/components/Touchable/types.js +3 -0
  269. package/dist/components/Touchable/types.js.map +1 -0
  270. package/dist/components/View/index.js +56 -0
  271. package/dist/components/View/index.js.map +1 -0
  272. package/dist/components/View/styles.js +3 -0
  273. package/dist/components/View/styles.js.map +1 -0
  274. package/dist/components/View/types.js +3 -0
  275. package/dist/components/View/types.js.map +1 -0
  276. package/dist/components/components.js +58 -0
  277. package/dist/components/components.js.map +1 -0
  278. package/dist/index.js +21 -0
  279. package/dist/index.js.map +1 -0
  280. package/dist/lib/ListMasonry.js +95 -0
  281. package/dist/lib/ListMasonry.js.map +1 -0
  282. package/dist/lib/ThemeVariables.js +27 -0
  283. package/dist/lib/ThemeVariables.js.map +1 -0
  284. package/dist/lib/WebStyleRegistry.js +73 -0
  285. package/dist/lib/WebStyleRegistry.js.map +1 -0
  286. package/dist/lib/hooks/index.js +39 -0
  287. package/dist/lib/hooks/index.js.map +1 -0
  288. package/dist/lib/hooks/useAnimatedStyle.js +27 -0
  289. package/dist/lib/hooks/useAnimatedStyle.js.map +1 -0
  290. package/dist/lib/hooks/useAnimatedVariantStyles.js +23 -0
  291. package/dist/lib/hooks/useAnimatedVariantStyles.js.map +1 -0
  292. package/dist/lib/hooks/useAsyncSelect.js +60 -0
  293. package/dist/lib/hooks/useAsyncSelect.js.map +1 -0
  294. package/dist/lib/hooks/useBreakpointMatch.js +111 -0
  295. package/dist/lib/hooks/useBreakpointMatch.js.map +1 -0
  296. package/dist/lib/hooks/useClick.js +41 -0
  297. package/dist/lib/hooks/useClick.js.map +1 -0
  298. package/dist/lib/hooks/useClickOutside.js +34 -0
  299. package/dist/lib/hooks/useClickOutside.js.map +1 -0
  300. package/dist/lib/hooks/useFileInput.js +21 -0
  301. package/dist/lib/hooks/useFileInput.js.map +1 -0
  302. package/dist/lib/hooks/useIsomorphicEffect.js +10 -0
  303. package/dist/lib/hooks/useIsomorphicEffect.js.map +1 -0
  304. package/dist/lib/hooks/useKeydown.js +43 -0
  305. package/dist/lib/hooks/useKeydown.js.map +1 -0
  306. package/dist/lib/hooks/useListFocus.js +49 -0
  307. package/dist/lib/hooks/useListFocus.js.map +1 -0
  308. package/dist/lib/hooks/useMediaQuery.js +28 -0
  309. package/dist/lib/hooks/useMediaQuery.js.map +1 -0
  310. package/dist/lib/hooks/usePageExitBlocker.js +48 -0
  311. package/dist/lib/hooks/usePageExitBlocker.js.map +1 -0
  312. package/dist/lib/hooks/usePagination.js +93 -0
  313. package/dist/lib/hooks/usePagination.js.map +1 -0
  314. package/dist/lib/hooks/usePopState.js +35 -0
  315. package/dist/lib/hooks/usePopState.js.map +1 -0
  316. package/dist/lib/hooks/usePopoverDismiss.js +35 -0
  317. package/dist/lib/hooks/usePopoverDismiss.js.map +1 -0
  318. package/dist/lib/hooks/useRefresh.js +74 -0
  319. package/dist/lib/hooks/useRefresh.js.map +1 -0
  320. package/dist/lib/hooks/useScrollEffect.js +22 -0
  321. package/dist/lib/hooks/useScrollEffect.js.map +1 -0
  322. package/dist/lib/hooks/useSearchParams.js +51 -0
  323. package/dist/lib/hooks/useSearchParams.js.map +1 -0
  324. package/dist/lib/hooks/useStaticAnimationStyles.js +19 -0
  325. package/dist/lib/hooks/useStaticAnimationStyles.js.map +1 -0
  326. package/dist/lib/hooks/useStylesFor.js +40 -0
  327. package/dist/lib/hooks/useStylesFor.js.map +1 -0
  328. package/dist/lib/hooks/useTouchableEvents.js +37 -0
  329. package/dist/lib/hooks/useTouchableEvents.js.map +1 -0
  330. package/dist/lib/hooks/useWindowFocus.js +34 -0
  331. package/dist/lib/hooks/useWindowFocus.js.map +1 -0
  332. package/dist/lib/hooks/useWindowSize.js +32 -0
  333. package/dist/lib/hooks/useWindowSize.js.map +1 -0
  334. package/dist/lib/index.js +23 -0
  335. package/dist/lib/index.js.map +1 -0
  336. package/dist/lib/tools/index.js +20 -0
  337. package/dist/lib/tools/index.js.map +1 -0
  338. package/dist/lib/tools/localStorage.js +159 -0
  339. package/dist/lib/tools/localStorage.js.map +1 -0
  340. package/dist/lib/tools/mediaQuery.js +38 -0
  341. package/dist/lib/tools/mediaQuery.js.map +1 -0
  342. package/dist/lib/tools/modal.js +60 -0
  343. package/dist/lib/tools/modal.js.map +1 -0
  344. package/dist/lib/utils/attributes.js +26 -0
  345. package/dist/lib/utils/attributes.js.map +1 -0
  346. package/dist/lib/utils/cache.d.ts +2 -2
  347. package/dist/lib/utils/cache.js +17 -0
  348. package/dist/lib/utils/cache.js.map +1 -0
  349. package/dist/lib/utils/index.js +22 -0
  350. package/dist/lib/utils/index.js.map +1 -0
  351. package/dist/lib/utils/pollyfils/scroll.js +70 -0
  352. package/dist/lib/utils/pollyfils/scroll.js.map +1 -0
  353. package/dist/lib/utils/stopPropagation.js +22 -0
  354. package/dist/lib/utils/stopPropagation.js.map +1 -0
  355. package/dist/lib/utils/test.js +18 -0
  356. package/dist/lib/utils/test.js.map +1 -0
  357. package/dist/types/index.js +18 -0
  358. package/dist/types/index.js.map +1 -0
  359. package/dist/types/utility.js +3 -0
  360. package/dist/types/utility.js.map +1 -0
  361. package/package.json +18 -18
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.Tooltip = void 0;
21
+ const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
22
+ const react_1 = __importDefault(require("react"));
23
+ const react_tooltip_1 = require("@radix-ui/react-tooltip");
24
+ const hooks_1 = require("@codeleap/hooks");
25
+ const types_1 = require("@codeleap/types");
26
+ const View_1 = require("../View");
27
+ const lib_1 = require("../../lib");
28
+ const WebStyleRegistry_1 = require("../../lib/WebStyleRegistry");
29
+ const useStylesFor_1 = require("../../lib/hooks/useStylesFor");
30
+ __exportStar(require("./styles"), exports);
31
+ __exportStar(require("./types"), exports);
32
+ /**
33
+ * Contextual bubble that floats near a trigger element, supporting hover and/or press to open.
34
+ * Visibility can be fully controlled via `visible` / `toggle` or left to internal state.
35
+ * Uses: `View`, `useStylesFor`
36
+ */
37
+ const Tooltip = (props) => {
38
+ const allProps = {
39
+ ...exports.Tooltip.defaultProps,
40
+ ...props,
41
+ };
42
+ const { toggle: _toggle, visible: _visible, children, content: Content, triggerWrapperProps, triggerWrapper: TriggerWrapper, side, disabled, delayDuration, openOnPress, openOnHover, onOpen, onClose, onValueChange, onHover, onPress, contentProps, portalProps, arrowProps, triggerProps, providerProps, closeOnClickOutside, style, ...rest } = allProps;
43
+ const styles = (0, useStylesFor_1.useStylesFor)(exports.Tooltip.styleRegistryName, style);
44
+ const [visible, toggle] = (0, hooks_1.useConditionalState)(_visible, _toggle, { initialValue: false });
45
+ const tooltipDirectionStyle = react_1.default.useMemo(() => {
46
+ return side ? styles[`content:${side}`] : styles.content;
47
+ }, [side, styles]);
48
+ function handleToggle(_value, isToggle = true) {
49
+ if (disabled)
50
+ return;
51
+ if (_value === true) {
52
+ onOpen?.();
53
+ }
54
+ else {
55
+ onClose?.();
56
+ }
57
+ if (isToggle)
58
+ toggle(_value);
59
+ if (types_1.TypeGuards.isFunction(onValueChange))
60
+ onValueChange?.(_value);
61
+ }
62
+ const onOpenChange = react_1.default.useCallback((_open) => {
63
+ handleToggle(_open, false);
64
+ }, [handleToggle]);
65
+ const _onHover = (type) => {
66
+ if (!openOnHover || disabled)
67
+ return;
68
+ const value = !visible;
69
+ if (type === 'leave' && visible === false)
70
+ return;
71
+ handleToggle(value);
72
+ if (types_1.TypeGuards.isFunction(onHover))
73
+ onHover?.(type, value);
74
+ };
75
+ const _onPress = () => {
76
+ if (!openOnPress || disabled)
77
+ return;
78
+ const value = !visible;
79
+ handleToggle(value);
80
+ if (types_1.TypeGuards.isFunction(onPress))
81
+ onPress?.(value);
82
+ };
83
+ const triggerRef = react_1.default.useRef(null);
84
+ const contentRef = (0, lib_1.useClickOutsideElement)((isOutside) => {
85
+ if (isOutside && closeOnClickOutside && !openOnHover && visible) {
86
+ handleToggle(false);
87
+ }
88
+ }, [triggerRef]);
89
+ return ((0, jsx_runtime_1.jsx)(react_tooltip_1.Provider, { ...providerProps, children: (0, jsx_runtime_1.jsxs)(react_tooltip_1.Root, { delayDuration: delayDuration, open: visible, onOpenChange: onOpenChange, ...rest, children: [(0, jsx_runtime_1.jsx)(react_tooltip_1.Trigger, { onClick: _onPress, onMouseEnter: () => _onHover('enter'), onMouseLeave: () => _onHover('leave'), asChild: true, ref: triggerRef, ...triggerProps, css: styles.triggerWrapper, children: (0, jsx_runtime_1.jsx)(TriggerWrapper, { ...allProps, ...triggerWrapperProps, css: styles.triggerInnerWrapper, children: children }) }), (0, jsx_runtime_1.jsx)(react_tooltip_1.Portal, { ...portalProps, children: (0, jsx_runtime_1.jsxs)(react_tooltip_1.Content, { ref: contentRef, css: [tooltipDirectionStyle, styles.content], sideOffset: 2, side: side, ...contentProps, children: [types_1.TypeGuards.isFunction(Content)
90
+ ? (0, jsx_runtime_1.jsx)(Content, { ...allProps, visible: visible, toggle: toggle, variantsStyles: styles })
91
+ : Content, (0, jsx_runtime_1.jsx)(react_tooltip_1.Arrow, { ...arrowProps, css: styles.arrow })] }) })] }) }));
92
+ };
93
+ exports.Tooltip = Tooltip;
94
+ exports.Tooltip.styleRegistryName = 'Tooltip';
95
+ exports.Tooltip.elements = [
96
+ 'content',
97
+ 'arrow',
98
+ 'triggerWrapper',
99
+ 'triggerInnerWrapper',
100
+ ];
101
+ exports.Tooltip.rootElement = 'content';
102
+ exports.Tooltip.withVariantTypes = (styles) => {
103
+ return exports.Tooltip;
104
+ };
105
+ exports.Tooltip.defaultProps = {
106
+ openOnPress: true,
107
+ openOnHover: true,
108
+ disabled: false,
109
+ delayDuration: 0,
110
+ closeOnClickOutside: false,
111
+ side: 'bottom',
112
+ triggerWrapper: View_1.View,
113
+ };
114
+ WebStyleRegistry_1.WebStyleRegistry.registerComponent(exports.Tooltip);
115
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Tooltip/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/Tooltip/styles.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/Tooltip/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.Touchable = Touchable;
21
+ const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
22
+ const hooks_1 = require("@codeleap/hooks");
23
+ const types_1 = require("@codeleap/types");
24
+ const react_1 = __importDefault(require("react"));
25
+ const lib_1 = require("../../lib");
26
+ const test_1 = require("../../lib/utils/test");
27
+ const useStylesFor_1 = require("../../lib/hooks/useStylesFor");
28
+ const WebStyleRegistry_1 = require("../../lib/WebStyleRegistry");
29
+ __exportStar(require("./styles"), exports);
30
+ __exportStar(require("./types"), exports);
31
+ /**
32
+ * Click wrapper that normalises keyboard Enter presses as clicks, debounces
33
+ * repeated presses, propagates analytics events, and applies disabled state.
34
+ * Uses: `useStylesFor`, `WebStyleRegistry`
35
+ */
36
+ function Touchable(touchableProps) {
37
+ const allProps = {
38
+ ...Touchable.defaultProps,
39
+ ...touchableProps,
40
+ };
41
+ const { propagate, debounce, leadingDebounce, component, disabled, onPress, onClick, debugName, debugComponent, style, analyticsEnabled, analyticsName, analyticsData, ref, ...props } = allProps;
42
+ const styles = (0, useStylesFor_1.useStylesFor)(Touchable.styleRegistryName, style);
43
+ const pressed = react_1.default.useRef(!!leadingDebounce);
44
+ (0, hooks_1.onMount)(() => {
45
+ if (!!leadingDebounce && !!debounce) {
46
+ setTimeout(() => {
47
+ pressed.current = false;
48
+ }, debounce);
49
+ }
50
+ });
51
+ const Component = component;
52
+ const notPressable = !types_1.TypeGuards.isFunction(onPress) && !types_1.TypeGuards.isFunction(onClick);
53
+ const handleClick = (event) => {
54
+ if (disabled)
55
+ return;
56
+ if (!propagate)
57
+ (0, lib_1.stopPropagation)(event);
58
+ if (notPressable)
59
+ return;
60
+ const _onPress = () => {
61
+ if (event && (event?.type !== 'click' && event?.keyCode !== 13 && event?.key !== 'Enter'))
62
+ return null;
63
+ if (types_1.TypeGuards.isFunction(onClick))
64
+ onClick?.(event);
65
+ onPress?.();
66
+ };
67
+ if (types_1.TypeGuards.isNumber(debounce)) {
68
+ if (pressed.current) {
69
+ return;
70
+ }
71
+ pressed.current = true;
72
+ _onPress();
73
+ setTimeout(() => {
74
+ pressed.current = false;
75
+ }, debounce);
76
+ }
77
+ else {
78
+ _onPress();
79
+ }
80
+ };
81
+ const testId = (0, test_1.getTestId)(allProps);
82
+ return ((0, jsx_runtime_1.jsx)(Component, { ...props, disabled: disabled, onClick: handleClick, onKeyDown: handleClick, "aria-disabled": disabled || undefined, ref: ref, css: [
83
+ styles.wrapper,
84
+ disabled && styles?.['wrapper:disabled'],
85
+ ], "data-testid": testId }));
86
+ }
87
+ Touchable.styleRegistryName = 'Touchable';
88
+ Touchable.elements = ['wrapper'];
89
+ Touchable.rootElement = 'wrapper';
90
+ Touchable.defaultProps = {
91
+ propagate: true,
92
+ debounce: null,
93
+ component: 'button',
94
+ analyticsEnabled: false,
95
+ analyticsName: null,
96
+ analyticsData: {},
97
+ tabIndex: 0,
98
+ };
99
+ WebStyleRegistry_1.WebStyleRegistry.registerComponent(Touchable);
100
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Touchable/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/Touchable/styles.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/Touchable/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.View = View;
18
+ const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
19
+ const types_1 = require("@codeleap/types");
20
+ const react_1 = require("motion/react");
21
+ const test_1 = require("../../lib/utils/test");
22
+ const useStylesFor_1 = require("../../lib/hooks/useStylesFor");
23
+ const WebStyleRegistry_1 = require("../../lib/WebStyleRegistry");
24
+ __exportStar(require("./styles"), exports);
25
+ __exportStar(require("./types"), exports);
26
+ /**
27
+ * Generic layout wrapper that renders any DOM element with responsive styling,
28
+ * hover callbacks, and optional Framer Motion animation.
29
+ * Uses: `useStylesFor`, `WebStyleRegistry`
30
+ */
31
+ function View(viewProps) {
32
+ const { component, children, is, not, up, onHover, debugName, down, style, animated, animatedProps, ref, ...props } = {
33
+ ...View.defaultProps,
34
+ ...viewProps,
35
+ };
36
+ const styles = (0, useStylesFor_1.useStylesFor)(View.styleRegistryName, style);
37
+ const Component = animated ? (react_1.motion?.[component] || react_1.motion.div) : (component || 'div');
38
+ function handleHover(isMouseOverElement) {
39
+ onHover?.(isMouseOverElement);
40
+ }
41
+ const hoverProps = types_1.TypeGuards.isFunction(onHover) && {
42
+ onMouseEnter: () => handleHover(true),
43
+ onMouseLeave: () => handleHover(false),
44
+ };
45
+ const testId = (0, test_1.getTestId)(viewProps);
46
+ return ((0, jsx_runtime_1.jsx)(Component, { ...hoverProps, ...props, ...animatedProps, ref: ref, "data-testid": testId, css: styles.wrapper, children: children }));
47
+ }
48
+ View.styleRegistryName = 'View';
49
+ View.elements = ['wrapper'];
50
+ View.rootElement = 'wrapper';
51
+ View.defaultProps = {
52
+ component: 'div',
53
+ animated: false,
54
+ };
55
+ WebStyleRegistry_1.WebStyleRegistry.registerComponent(View);
56
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/View/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAiBA,oBA+CC;;AAhED,2CAA4C;AAE5C,wCAAqC;AAErC,+CAAgD;AAChD,+DAA2D;AAC3D,iEAA6D;AAG7D,2CAAwB;AACxB,0CAAuB;AAEvB;;;;GAIG;AACH,SAAgB,IAAI,CAAwB,SAAuB;IACjE,MAAM,EACJ,SAAS,EACT,QAAQ,EACR,EAAE,EACF,GAAG,EACH,EAAE,EACF,OAAO,EACP,SAAS,EACT,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,aAAa,EACb,GAAG,EACH,GAAG,KAAK,EACT,GAAG;QACF,GAAG,IAAI,CAAC,YAAY;QACpB,GAAG,SAAS;KACb,CAAA;IAED,MAAM,MAAM,GAAG,IAAA,2BAAY,EAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;IAE1D,MAAM,SAAS,GAAQ,QAAQ,CAAC,CAAC,CAAC,CAAC,cAAM,EAAE,CAAC,SAAmB,CAAC,IAAI,cAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC,CAAA;IAEtG,SAAS,WAAW,CAAC,kBAA2B;QAC9C,OAAO,EAAE,CAAC,kBAAkB,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM,UAAU,GAAG,kBAAU,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI;QACnD,YAAY,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC;QACrC,YAAY,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC;KACvC,CAAA;IAED,MAAM,MAAM,GAAG,IAAA,gBAAS,EAAC,SAAS,CAAC,CAAA;IAEnC,OAAO,CACL,uBAAC,SAAS,OACJ,UAAU,KACV,KAAK,KACL,aAAa,EACjB,GAAG,EAAE,GAAG,iBACK,MAAM,EACnB,GAAG,EAAE,MAAM,CAAC,OAAO,YAElB,QAAQ,GACC,CACb,CAAA;AACH,CAAC;AAED,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAA;AAC/B,IAAI,CAAC,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAA;AAC3B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;AAG5B,IAAI,CAAC,YAAY,GAAG;IAClB,SAAS,EAAE,KAAK;IAChB,QAAQ,EAAE,KAAK;CACM,CAAA;AAEvB,mCAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/View/styles.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/View/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./View"), exports);
18
+ __exportStar(require("./Icon"), exports);
19
+ __exportStar(require("./Touchable"), exports);
20
+ __exportStar(require("./Text"), exports);
21
+ __exportStar(require("./Slider"), exports);
22
+ __exportStar(require("./List"), exports);
23
+ __exportStar(require("./ActivityIndicator"), exports);
24
+ __exportStar(require("./Button"), exports);
25
+ __exportStar(require("./Modal"), exports);
26
+ __exportStar(require("./Checkbox"), exports);
27
+ __exportStar(require("./Collapse"), exports);
28
+ __exportStar(require("./Drawer"), exports);
29
+ __exportStar(require("./Overlay"), exports);
30
+ __exportStar(require("./TextInput"), exports);
31
+ __exportStar(require("./MaskedTextInput"), exports);
32
+ __exportStar(require("./RadioInput"), exports);
33
+ __exportStar(require("./Select"), exports);
34
+ __exportStar(require("./FileInput"), exports);
35
+ __exportStar(require("./Slider"), exports);
36
+ __exportStar(require("./List"), exports);
37
+ __exportStar(require("./LoadingOverlay"), exports);
38
+ __exportStar(require("./Switch"), exports);
39
+ __exportStar(require("./NumberIncrement"), exports);
40
+ __exportStar(require("./SearchInput"), exports);
41
+ __exportStar(require("./Tooltip"), exports);
42
+ __exportStar(require("./Field"), exports);
43
+ __exportStar(require("./Carousel"), exports);
44
+ __exportStar(require("./EmptyPlaceholder"), exports);
45
+ __exportStar(require("./Badge"), exports);
46
+ __exportStar(require("./CropPicker"), exports);
47
+ __exportStar(require("./Calendar"), exports);
48
+ __exportStar(require("./DatePicker"), exports);
49
+ __exportStar(require("./Dropzone"), exports);
50
+ __exportStar(require("./Progress"), exports);
51
+ __exportStar(require("./Tag"), exports);
52
+ __exportStar(require("./TextEditor"), exports);
53
+ __exportStar(require("./ColorPicker"), exports);
54
+ __exportStar(require("./PaginationButtons"), exports);
55
+ __exportStar(require("./SectionFilters"), exports);
56
+ __exportStar(require("./PaginationIndicator"), exports);
57
+ __exportStar(require("./Carousel"), exports);
58
+ //# sourceMappingURL=components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/components/components.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AACtB,yCAAsB;AACtB,8CAA2B;AAC3B,yCAAsB;AACtB,2CAAwB;AACxB,yCAAsB;AACtB,sDAAmC;AACnC,2CAAwB;AACxB,0CAAuB;AACvB,6CAA0B;AAC1B,6CAA0B;AAC1B,2CAAwB;AACxB,4CAAyB;AACzB,8CAA2B;AAC3B,oDAAiC;AACjC,+CAA4B;AAC5B,2CAAwB;AACxB,8CAA2B;AAC3B,2CAAwB;AACxB,yCAAsB;AACtB,mDAAgC;AAChC,2CAAwB;AACxB,oDAAiC;AACjC,gDAA6B;AAC7B,4CAAyB;AACzB,0CAAuB;AACvB,6CAA0B;AAC1B,qDAAkC;AAClC,0CAAuB;AACvB,+CAA4B;AAC5B,6CAA0B;AAC1B,+CAA4B;AAC5B,6CAA0B;AAC1B,6CAA0B;AAC1B,wCAAqB;AACrB,+CAA4B;AAC5B,gDAA6B;AAC7B,sDAAmC;AACnC,mDAAgC;AAChC,wDAAqC;AACrC,6CAA0B"}
package/dist/index.js ADDED
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./components/components"), exports);
18
+ __exportStar(require("./types"), exports);
19
+ __exportStar(require("./lib"), exports);
20
+ __exportStar(require("./lib/WebStyleRegistry"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,0CAAuB;AACvB,wCAAqB;AACrB,yDAAsC"}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.useMasonryReload = void 0;
7
+ exports.MasonryComponent = MasonryComponent;
8
+ exports.ListMasonry = ListMasonry;
9
+ const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
10
+ const react_1 = __importDefault(require("react"));
11
+ const window_size_1 = require("@react-hook/window-size");
12
+ const types_1 = require("@codeleap/types");
13
+ const EmptyPlaceholder_1 = require("../components/EmptyPlaceholder");
14
+ const masonic_1 = require("masonic");
15
+ function fillItems(arr, toCount, fillContent = {}) {
16
+ if (!arr || !types_1.TypeGuards.isArray(arr))
17
+ return [];
18
+ if (toCount === arr?.length)
19
+ return arr;
20
+ const diff = toCount - arr?.length;
21
+ if (diff < 0)
22
+ return arr;
23
+ const right = Array(diff).fill(fillContent);
24
+ return arr.concat(right);
25
+ }
26
+ const useMasonryReload = (args) => {
27
+ const { data, reloadTimeout = 350, } = args;
28
+ const [reloadingLayout, setReloadingLayout] = react_1.default.useState(false);
29
+ const previousLengthRef = react_1.default.useRef(data?.length ?? 0);
30
+ const updater = () => {
31
+ previousLengthRef.current = (data?.length ?? 0);
32
+ };
33
+ react_1.default.useEffect(() => {
34
+ if (previousLengthRef.current > data?.length) {
35
+ setReloadingLayout(true);
36
+ setTimeout(() => {
37
+ updater();
38
+ setTimeout(() => {
39
+ setReloadingLayout(false);
40
+ }, reloadTimeout);
41
+ }, reloadTimeout);
42
+ }
43
+ else {
44
+ updater();
45
+ }
46
+ }, [data?.length]);
47
+ return {
48
+ reloadingLayout,
49
+ setReloadingLayout,
50
+ previousLength: previousLengthRef.current,
51
+ };
52
+ };
53
+ exports.useMasonryReload = useMasonryReload;
54
+ function MasonryComponent(props) {
55
+ const containerRef = react_1.default.useRef(null);
56
+ const windowSize = (0, window_size_1.useWindowSize)({
57
+ initialWidth: props?.ssrWidth,
58
+ initialHeight: props?.ssrHeight,
59
+ });
60
+ const containerPosition = (0, masonic_1.useContainerPosition)(containerRef, windowSize);
61
+ const listProps = Object.assign({
62
+ offset: containerPosition?.offset,
63
+ width: containerPosition?.width || containerRef?.current?.clientWidth || windowSize?.[0],
64
+ height: windowSize?.[1],
65
+ containerRef,
66
+ scrollFps: props?.scrollFps || 12,
67
+ }, props);
68
+ const positioner = (0, masonic_1.usePositioner)({
69
+ width: listProps?.width,
70
+ columnGutter: listProps?.columnGutter,
71
+ columnWidth: listProps?.columnWidth,
72
+ columnCount: listProps?.columnCount,
73
+ maxColumnCount: listProps?.columnCount,
74
+ rowGutter: listProps?.rowGutter
75
+ });
76
+ const { scrollTop, isScrolling } = (0, masonic_1.useScroller)(listProps?.offset, listProps?.scrollFps);
77
+ const resizeObserver = (0, masonic_1.useResizeObserver)(positioner);
78
+ return (0, masonic_1.useMasonry)({
79
+ ...listProps,
80
+ resizeObserver,
81
+ positioner,
82
+ scrollTop,
83
+ isScrolling,
84
+ items: fillItems(props?.items, props?.previousItemsLength)
85
+ });
86
+ }
87
+ function ListMasonry(props) {
88
+ if (props?.reloadingLayout) {
89
+ return ((0, jsx_runtime_1.jsx)(EmptyPlaceholder_1.EmptyPlaceholder, { loading: true, title: '', description: null }));
90
+ }
91
+ else {
92
+ return ((0, jsx_runtime_1.jsx)(MasonryComponent, { ...props, items: props?.items || [] }));
93
+ }
94
+ }
95
+ //# sourceMappingURL=ListMasonry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListMasonry.js","sourceRoot":"","sources":["../../src/lib/ListMasonry.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ColorSchemeFoucScript = exports.ThemeVariables = void 0;
4
+ const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
5
+ const styles_1 = require("@codeleap/styles");
6
+ const toDeclarations = (vars) => Object.entries(vars).map(([n, v]) => ` ${n}: ${v};`).join('\n');
7
+ const ThemeVariables = ({ theme }) => {
8
+ const defaultVars = theme.getCssVariables();
9
+ const alternateColors = theme.alternateColors ?? {};
10
+ const blocks = [
11
+ `:root {\n${toDeclarations(defaultVars)}\n}`,
12
+ `[data-color-scheme="light"] {\n${toDeclarations(defaultVars)}\n}`,
13
+ ];
14
+ for (const scheme of Object.keys(alternateColors)) {
15
+ const vars = theme.getCssVariables(scheme);
16
+ if (scheme === 'dark') {
17
+ blocks.push(`@media (prefers-color-scheme: dark) {\n :root:not([data-color-scheme="light"]) {\n${toDeclarations(vars)}\n }\n}`);
18
+ }
19
+ blocks.push(`[data-color-scheme="${scheme}"] {\n${toDeclarations(vars)}\n}`);
20
+ }
21
+ return (0, jsx_runtime_1.jsx)("style", { dangerouslySetInnerHTML: { __html: blocks.join('\n\n') } });
22
+ };
23
+ exports.ThemeVariables = ThemeVariables;
24
+ const FOUC_SCRIPT = `(function(){try{var s=localStorage.getItem('${styles_1.DOM_COLOR_SCHEME_KEY}');if(s&&s!=='default')document.documentElement.dataset.colorScheme=s;}catch(e){}})()`;
25
+ const ColorSchemeFoucScript = () => ((0, jsx_runtime_1.jsx)("script", { dangerouslySetInnerHTML: { __html: FOUC_SCRIPT } }));
26
+ exports.ColorSchemeFoucScript = ColorSchemeFoucScript;
27
+ //# sourceMappingURL=ThemeVariables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeVariables.js","sourceRoot":"","sources":["../../src/lib/ThemeVariables.tsx"],"names":[],"mappings":";;;;AACA,6CAAuD;AAOvD,MAAM,cAAc,GAAG,CAAC,IAA4B,EAAE,EAAE,CACtD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAE3D,MAAM,cAAc,GAAG,CAAC,EAAE,KAAK,EAAkC,EAAE,EAAE;IAC1E,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,EAAE,CAAA;IAC3C,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,IAAI,EAAE,CAAA;IAEnD,MAAM,MAAM,GAAa;QACvB,YAAY,cAAc,CAAC,WAAW,CAAC,KAAK;QAC5C,kCAAkC,cAAc,CAAC,WAAW,CAAC,KAAK;KACnE,CAAA;IAED,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,GAAG,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QAC1C,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CACT,sFAAsF,cAAc,CAAC,IAAI,CAAC,UAAU,CACrH,CAAA;QACH,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,uBAAuB,MAAM,SAAS,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC9E,CAAC;IAED,OAAO,kCAAO,uBAAuB,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAI,CAAA;AAC5E,CAAC,CAAA;AApBY,QAAA,cAAc,kBAoB1B;AAED,MAAM,WAAW,GAAG,+CAA+C,6BAAoB,uFAAuF,CAAA;AAEvK,MAAM,qBAAqB,GAAG,GAAG,EAAE,CAAC,CACzC,mCAAQ,uBAAuB,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,GAAI,CAC7D,CAAA;AAFY,QAAA,qBAAqB,yBAEjC"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WebStyleRegistry = void 0;
4
+ const styles_1 = require("@codeleap/styles");
5
+ const persistor = new styles_1.StylePersistor({
6
+ set(key, value) {
7
+ if (typeof window === 'undefined')
8
+ return null;
9
+ return localStorage?.setItem(key, value);
10
+ },
11
+ get(key) {
12
+ if (typeof window === 'undefined')
13
+ return null;
14
+ return localStorage?.getItem(key);
15
+ },
16
+ del(key) {
17
+ if (typeof window === 'undefined')
18
+ return null;
19
+ return localStorage?.removeItem(key);
20
+ },
21
+ });
22
+ let instance;
23
+ const components = [];
24
+ /**
25
+ * Singleton style registry for the web platform.
26
+ *
27
+ * Extends `CodeleapStyleRegistry` with localStorage-backed style persistence
28
+ * and a variant-element map that tracks which HTML element tag should be used
29
+ * for each component variant.
30
+ *
31
+ * Only one instance exists per JS runtime. The first `new WebStyleRegistry()`
32
+ * call creates the instance; subsequent calls return the same object. Components
33
+ * register themselves via the static `WebStyleRegistry.registerComponent()` —
34
+ * call this at module level so registrations survive before the registry is
35
+ * instantiated (they are replayed on construction).
36
+ *
37
+ * Access the live singleton via `WebStyleRegistry.current`.
38
+ */
39
+ class WebStyleRegistry extends styles_1.CodeleapStyleRegistry {
40
+ variantElements = {};
41
+ constructor() {
42
+ super(persistor);
43
+ components.forEach((component) => {
44
+ this.registerComponent(component);
45
+ });
46
+ if (!instance) {
47
+ instance = this;
48
+ }
49
+ return instance;
50
+ }
51
+ /** Registers the HTML element tag to render for each variant of a component (e.g. `{ h1: 'h1', p: 'p' }`). */
52
+ registerVariantElements(componentName, elements) {
53
+ this.variantElements[componentName] = elements;
54
+ }
55
+ /** Returns the element tag registered for the given component variant, or `undefined` if none was registered. */
56
+ variantElementFor(componentName, variantName) {
57
+ return this.variantElements[componentName]?.[variantName];
58
+ }
59
+ createStyle(css) {
60
+ return css;
61
+ }
62
+ static get current() {
63
+ return instance;
64
+ }
65
+ static registerComponent(component) {
66
+ components.push(component);
67
+ if (instance) {
68
+ instance.registerComponent(component);
69
+ }
70
+ }
71
+ }
72
+ exports.WebStyleRegistry = WebStyleRegistry;
73
+ //# sourceMappingURL=WebStyleRegistry.js.map