@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 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Checkbox/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,iEAA6D;AAC7D,+DAA2D;AAE3D,oCAAwC;AACxC,yCAAuC;AACvC,oCAAgC;AAChC,mCAAuC;AACvC,4CAAwC;AACxC,kCAA8B;AAC9B,kCAA8B;AAG9B,2CAAwB;AACxB,0CAAuB;AAEvB;;;;GAIG;AACI,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAE,EAAE;IAC/C,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,MAAM,EACN,WAAW,EACX,YAAY,EACZ,KAAK,EACL,aAAa,EACb,cAAc,EACd,SAAS,EACT,KAAK,EACL,SAAS,GACV,GAAG,EAAE,GAAG,gBAAQ,CAAC,YAAY,EAAE,GAAG,KAAK,EAAE,CAAA;IAE1C,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,kBAAkB,EAAE,UAAU,EAAE,GAC9D,IAAA,qBAAa,EAAC,KAAK,EAAE,aAAM,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAA;IAEhE,MAAM,YAAY,GAAyB;QACzC,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,QAAQ,EAAE,CAAC,CAAC,UAAU;QACtB,KAAK,EAAE,CAAC,CAAC,UAAU,EAAE,SAAS;QAC9B,OAAO,EAAE,KAAK;QACd,cAAc,EAAE,CAAC,CAAC,cAAc;KACjC,CAAA;IAED,MAAM,MAAM,GAAG,IAAA,2BAAY,EAAC,gBAAQ,CAAC,iBAAiB,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;IAE5E,MAAM,UAAU,GAAG,IAAA,iBAAW,EAAC;QAC7B,KAAK,EAAE,CAAC,CAAC,UAAU;QACnB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,cAAc,EAAE,CAAC,CAAC,cAAc;KACjC,CAAC,CAAA;IAEF,OAAO,CACL,wBAAC,aAAK,CAAC,QAAQ,IACb,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,EAC5D,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAC,UAAU,aAExB,wBAAC,aAAK,CAAC,OAAO,IAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,aAGnD,uBAAC,qBAAS,IACR,SAAS,EAAE,GAAG,SAAS,WAAW,EAClC,KAAK,EAAE,MAAM,CAAC,GAAG,EACjB,OAAO,EAAE,GAAG,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC,UAAU,CAAC,EAChD,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,OAAO,KAAK,EAAE;4BAAE,kBAAkB,EAAE,CAAC,CAAC,UAAU,CAAC,CAAA,CAAC,CAAC,EAC3F,QAAQ,EAAE,CAAC,CAAC,QAAQ,KAChB,UAAU,YAEd,uBAAC,WAAI,IAAC,KAAK,EAAE,MAAM,CAAC,gBAAgB,KAAM,UAAU,YAClD,uBAAC,WAAI,IAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,SAAS,GAAI,GACnE,GACG,EACZ,uBAAC,aAAK,CAAC,OAAO,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,GAAI,IAE1B,EAChB,uBAAC,aAAK,CAAC,MAAM,IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,GAAI,IACvB,CAClB,CAAA;AACH,CAAC,CAAA;AAjEY,QAAA,QAAQ,YAiEpB;AAED,gBAAQ,CAAC,iBAAiB,GAAG,UAAU,CAAA;AACvC,gBAAQ,CAAC,QAAQ,GAAG,CAAC,GAAG,aAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAA;AAC/E,gBAAQ,CAAC,WAAW,GAAG,SAAS,CAAA;AAChC,gBAAQ,CAAC,YAAY,GAAG;IACtB,SAAS,EAAE,OAAkB;CACJ,CAAA;AAE3B,mCAAgB,CAAC,iBAAiB,CAAC,gBAAQ,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/Checkbox/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/Checkbox/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,45 @@
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.Collapse = void 0;
18
+ const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
19
+ const useStylesFor_1 = require("../../lib/hooks/useStylesFor");
20
+ const WebStyleRegistry_1 = require("../../lib/WebStyleRegistry");
21
+ const react_1 = require("motion/react");
22
+ __exportStar(require("./styles"), exports);
23
+ __exportStar(require("./types"), exports);
24
+ /**
25
+ * Animates a content region between zero height (collapsed) and its natural height (expanded) using Framer Motion.
26
+ * Fully controlled — pass `open` from the caller; the component owns no toggle state of its own.
27
+ */
28
+ const Collapse = (props) => {
29
+ const { open, children, style, ...rest } = {
30
+ ...exports.Collapse.defaultProps,
31
+ ...props,
32
+ };
33
+ const styles = (0, useStylesFor_1.useStylesFor)(exports.Collapse.styleRegistryName, style);
34
+ return ((0, jsx_runtime_1.jsx)(react_1.motion.div, { initial: false, animate: { height: open ? 'auto' : 0, opacity: open ? 1 : 0 }, transition: { duration: 0.2 }, ...rest, style: open ? styles?.['wrapper:open'] : styles?.['wrapper:closed'], css: [styles.wrapper, open ? styles?.['wrapper:open'] : styles?.['wrapper:closed']], children: children }));
35
+ };
36
+ exports.Collapse = Collapse;
37
+ exports.Collapse.styleRegistryName = 'Collapse';
38
+ exports.Collapse.elements = ['wrapper'];
39
+ exports.Collapse.rootElement = 'wrapper';
40
+ exports.Collapse.withVariantTypes = (styles) => {
41
+ return exports.Collapse;
42
+ };
43
+ exports.Collapse.defaultProps = {};
44
+ WebStyleRegistry_1.WebStyleRegistry.registerComponent(exports.Collapse);
45
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Collapse/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,+DAA2D;AAE3D,iEAA6D;AAC7D,wCAAqC;AAErC,2CAAwB;AACxB,0CAAuB;AAEvB;;;GAGG;AACI,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAE,EAAE;IAC/C,MAAM,EACJ,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,GAAG,IAAI,EACR,GAAG;QACF,GAAG,gBAAQ,CAAC,YAAY;QACxB,GAAG,KAAK;KACT,CAAA;IAED,MAAM,MAAM,GAAG,IAAA,2BAAY,EAAC,gBAAQ,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;IAE9D,OAAO,CACL,uBAAC,cAAM,CAAC,GAAG,IACT,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAC7D,UAAU,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,KACzB,IAAI,EACR,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,CAAC,EACnE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,CAAC,CAAC,YAElF,QAAQ,GACE,CACd,CAAA;AACH,CAAC,CAAA;AAzBY,QAAA,QAAQ,YAyBpB;AAED,gBAAQ,CAAC,iBAAiB,GAAG,UAAU,CAAA;AACvC,gBAAQ,CAAC,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAA;AAC/B,gBAAQ,CAAC,WAAW,GAAG,SAAS,CAAA;AAEhC,gBAAQ,CAAC,gBAAgB,GAAG,CAAsB,MAAS,EAAE,EAAE;IAC7D,OAAO,gBAA+E,CAAA;AACxF,CAAC,CAAA;AAED,gBAAQ,CAAC,YAAY,GAAG,EAA4B,CAAA;AAEpD,mCAAgB,CAAC,iBAAiB,CAAC,gBAAQ,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/Collapse/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/Collapse/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,83 @@
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.ColorPicker = void 0;
18
+ const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
19
+ const react_1 = require("react");
20
+ const Button_1 = require("../Button");
21
+ const Collapse_1 = require("../Collapse");
22
+ const View_1 = require("../View");
23
+ const react_colorful_1 = require("react-colorful");
24
+ const types_1 = require("@codeleap/types");
25
+ const hooks_1 = require("@codeleap/hooks");
26
+ const useStylesFor_1 = require("../../lib/hooks/useStylesFor");
27
+ const WebStyleRegistry_1 = require("../../lib/WebStyleRegistry");
28
+ __exportStar(require("./styles"), exports);
29
+ __exportStar(require("./types"), exports);
30
+ const DefaultFooter = (props) => {
31
+ const { styles, clearIcon, handleClear, confirmIcon, handleConfirmation } = props;
32
+ return ((0, jsx_runtime_1.jsxs)(View_1.View, { style: styles.footerWrapper, children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { debugName: 'ColorPicker footer trash', name: clearIcon, onPress: handleClear, style: styles.clearIcon }), (0, jsx_runtime_1.jsx)(Button_1.Button, { debugName: 'ColorPicker footer check', name: confirmIcon, onPress: handleConfirmation, style: styles.confirmIcon })] }));
33
+ };
34
+ /**
35
+ * Color selection control that wraps any `react-colorful` picker in either an inline (`isPlain`) or collapsible-dropdown layout with optional confirm/clear footer actions.
36
+ * Internal color state is initialised from `initialColor`; `onConfirm` fires only when the user explicitly confirms (not on every picker drag).
37
+ * Uses: `Button`, `Collapse`, `View`
38
+ */
39
+ const ColorPicker = (props) => {
40
+ const { isPlain, initialColor, showFooter, icon, style, clearIcon, confirmIcon, onConfirm, onClear, closeOnConfirm, pickerComponent: PickerComponent, openPickerComponent: OpenPickerComponent, footerComponent: FooterComponent, openPickerProps, } = {
41
+ ...exports.ColorPicker.defaultProps,
42
+ ...props,
43
+ };
44
+ const styles = (0, useStylesFor_1.useStylesFor)(exports.ColorPicker.styleRegistryName, style);
45
+ const [visible, toggle] = (0, hooks_1.useConditionalState)(props?.visible, props?.toggle, { initialValue: false });
46
+ const [color, setColor] = (0, hooks_1.useState)(initialColor);
47
+ const handleConfirmation = (0, react_1.useCallback)((color) => {
48
+ onConfirm?.(color);
49
+ if (closeOnConfirm)
50
+ toggle(false);
51
+ }, []);
52
+ const handleClear = (0, react_1.useCallback)((initialColor) => {
53
+ setColor(initialColor);
54
+ if (types_1.TypeGuards.isFunction(onClear))
55
+ onClear?.();
56
+ }, []);
57
+ // Dragging to change the color in any other way does not seem to work for some reason.
58
+ const picker = (0, jsx_runtime_1.jsx)(View_1.View, { style: styles.picker, children: (0, jsx_runtime_1.jsx)(PickerComponent, { color: color, onChange: setColor }) });
59
+ const openColorPickerBtn = !!OpenPickerComponent ? ((0, jsx_runtime_1.jsx)(OpenPickerComponent, { color: color, visible: visible, toggle: () => toggle(!visible) })) : ((0, jsx_runtime_1.jsx)(Button_1.Button, { onPress: () => toggle(!visible), icon: icon, ...openPickerProps }));
60
+ return ((0, jsx_runtime_1.jsx)(View_1.View, { style: styles.wrapper, children: isPlain ? picker : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [openColorPickerBtn, (0, jsx_runtime_1.jsx)(Collapse_1.Collapse, { open: visible, style: [
61
+ styles.dropdown,
62
+ visible && styles['dropdown:open'],
63
+ ], children: (0, jsx_runtime_1.jsxs)(View_1.View, { style: styles.dropdownInnerWrapper, children: [picker, showFooter ? ((0, jsx_runtime_1.jsx)(FooterComponent, { color: color, handleConfirmation: () => handleConfirmation(color), handleClear: () => handleClear(initialColor), styles: styles, clearIcon: clearIcon, confirmIcon: confirmIcon })) : null] }) })] })) }));
64
+ };
65
+ exports.ColorPicker = ColorPicker;
66
+ exports.ColorPicker.styleRegistryName = 'ColorPicker';
67
+ exports.ColorPicker.elements = ['wrapper', 'picker', 'dropdown', 'dropdownInnerWrapper', 'footerWrapper', 'clearIcon', 'confirmIcon'];
68
+ exports.ColorPicker.rootElement = 'wrapper';
69
+ exports.ColorPicker.withVariantTypes = (styles) => {
70
+ return exports.ColorPicker;
71
+ };
72
+ exports.ColorPicker.defaultProps = {
73
+ pickerComponent: (props) => (0, jsx_runtime_1.jsx)(react_colorful_1.HexColorPicker, { ...props }),
74
+ footerComponent: DefaultFooter,
75
+ icon: 'edit',
76
+ clearIcon: 'trash',
77
+ confirmIcon: 'check',
78
+ showFooter: true,
79
+ isPlain: false,
80
+ closeOnConfirm: true,
81
+ };
82
+ WebStyleRegistry_1.WebStyleRegistry.registerComponent(exports.ColorPicker);
83
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ColorPicker/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/ColorPicker/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/ColorPicker/types.ts"],"names":[],"mappings":""}
@@ -42,8 +42,8 @@ export declare function useCropPicker({ aspect, minWidth: minW, minHeight: minH,
42
42
  handleCropChange: (newCrop: Crop) => void;
43
43
  handleConfirmCrop: () => Promise<void>;
44
44
  handleCancelCrop: () => void;
45
- setRelativeCrop: import("react").Dispatch<import("react").SetStateAction<Crop | undefined>>;
46
- crop: Crop | undefined;
45
+ setRelativeCrop: import("react").Dispatch<any>;
46
+ crop: any;
47
47
  image: HTMLImageElement;
48
48
  };
49
49
  //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useCropPicker = useCropPicker;
4
+ const react_1 = require("react");
5
+ const react_2 = require("react");
6
+ const utils_1 = require("./utils");
7
+ /**
8
+ * Manages crop state for a `CropPicker`, including image loading, crop selection with minimum-size enforcement, confirm/cancel handlers, and display-size calculation.
9
+ * Pass the return value to `CropPicker` via the `handle` prop.
10
+ */
11
+ function useCropPicker({ aspect, minWidth: minW, minHeight: minH, file, onCrop, }) {
12
+ const [image, setImage] = (0, react_2.useState)(null);
13
+ const [crop, setCrop] = (0, react_2.useState)();
14
+ const [relativeCrop, setRelativeCrop] = (0, react_2.useState)();
15
+ const [imageDimensions, setImageDimensions] = (0, react_2.useState)(null);
16
+ const cleanup = () => {
17
+ setRelativeCrop(null);
18
+ setCrop(undefined);
19
+ setImageDimensions(null);
20
+ setTimeout(() => setImage(null), 500);
21
+ };
22
+ const handleConfirmCrop = async () => {
23
+ const [preview, croppedBlob] = await (0, utils_1.cropImage)(image, relativeCrop);
24
+ const newImage = {
25
+ file: new File([croppedBlob], 'cropped.jpg', {
26
+ type: 'image/jpeg',
27
+ lastModified: Date.now(),
28
+ }),
29
+ preview,
30
+ };
31
+ onCrop(newImage);
32
+ setTimeout(() => cleanup());
33
+ };
34
+ const handleCancelCrop = () => {
35
+ onCrop(null);
36
+ setTimeout(() => cleanup());
37
+ };
38
+ const loadFile = (0, react_2.useCallback)(async (toReadFile) => {
39
+ const imageData = await (0, utils_1.readImage)(toReadFile);
40
+ const { naturalWidth, naturalHeight } = imageData;
41
+ const dimensions = (0, utils_1.calculateProportionalDimensions)(naturalWidth, naturalHeight);
42
+ setImageDimensions(dimensions);
43
+ const targetAspect = aspect || dimensions.aspectRatio;
44
+ const imageAspect = dimensions.aspectRatio;
45
+ let initialCrop;
46
+ if (aspect) {
47
+ const v = imageAspect >= targetAspect
48
+ ? {
49
+ width: ((naturalHeight * targetAspect) / naturalWidth) * 100,
50
+ height: 100,
51
+ }
52
+ : {
53
+ width: 100,
54
+ height: (naturalWidth / targetAspect / naturalHeight) * 100,
55
+ };
56
+ initialCrop = {
57
+ ...v,
58
+ x: (100 - v.width) / 2,
59
+ y: (100 - v.height) / 2,
60
+ unit: '%',
61
+ };
62
+ }
63
+ else {
64
+ initialCrop = {
65
+ width: 100,
66
+ height: 100,
67
+ x: 0,
68
+ y: 0,
69
+ unit: '%',
70
+ };
71
+ }
72
+ setCrop(initialCrop);
73
+ setRelativeCrop(initialCrop);
74
+ setImage(imageData);
75
+ }, []);
76
+ const getMinDimensions = (0, react_2.useCallback)(() => {
77
+ if (!imageDimensions)
78
+ return { minWidth: minW ?? 100, minHeight: minH ?? 100 };
79
+ const targetAspect = aspect || imageDimensions.aspectRatio;
80
+ const calculatedMinWidth = (minW ?? 100) * targetAspect;
81
+ const calculatedMinHeight = minH ?? 100;
82
+ return {
83
+ minWidth: Math.max(calculatedMinWidth, 50),
84
+ minHeight: Math.max(calculatedMinHeight, 50),
85
+ };
86
+ }, [aspect, imageDimensions, minW, minH]);
87
+ const handleCropChange = (0, react_2.useCallback)((newCrop) => {
88
+ if (!imageDimensions) {
89
+ setCrop(newCrop);
90
+ return;
91
+ }
92
+ const { minWidth, minHeight } = getMinDimensions();
93
+ setCrop({
94
+ ...newCrop,
95
+ width: newCrop.width < minWidth ? minWidth : newCrop.width,
96
+ height: newCrop.height < minHeight ? minHeight : newCrop.height,
97
+ });
98
+ }, [imageDimensions, getMinDimensions]);
99
+ const containerStyles = (0, react_1.useMemo)(() => {
100
+ if (!imageDimensions)
101
+ return {};
102
+ return {
103
+ width: imageDimensions.displayWidth,
104
+ height: imageDimensions.displayHeight,
105
+ maxWidth: '90vw',
106
+ maxHeight: '70vh',
107
+ margin: '0 auto',
108
+ };
109
+ }, [imageDimensions]);
110
+ const imageStyles = (0, react_1.useMemo)(() => {
111
+ if (!imageDimensions)
112
+ return {};
113
+ return {
114
+ width: imageDimensions.displayWidth,
115
+ height: imageDimensions.displayHeight,
116
+ objectFit: 'contain',
117
+ };
118
+ }, [imageDimensions]);
119
+ (0, react_2.useEffect)(() => {
120
+ loadFile(file);
121
+ }, []);
122
+ return {
123
+ containerStyles,
124
+ imageStyles,
125
+ handleCropChange,
126
+ handleConfirmCrop,
127
+ handleCancelCrop,
128
+ setRelativeCrop,
129
+ crop,
130
+ image,
131
+ };
132
+ }
133
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/components/CropPicker/hooks.ts"],"names":[],"mappings":"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"}
@@ -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.CropPicker = void 0;
18
+ const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
19
+ const styles_1 = require("@codeleap/styles");
20
+ const WebStyleRegistry_1 = require("../../lib/WebStyleRegistry");
21
+ const useStylesFor_1 = require("../../lib/hooks/useStylesFor");
22
+ const View_1 = require("../View");
23
+ const ActivityIndicator_1 = require("../ActivityIndicator");
24
+ require("react-image-crop/dist/ReactCrop.css");
25
+ const ReactCrop = require('react-image-crop').Component;
26
+ __exportStar(require("./styles"), exports);
27
+ __exportStar(require("./types"), exports);
28
+ __exportStar(require("./hooks"), exports);
29
+ /**
30
+ * Image crop editor that wraps react-image-crop and delegates all crop state to a `useCropPicker` handle.
31
+ * Renders a loading spinner while the image is being decoded; renders nothing when `handle` is not provided.
32
+ */
33
+ const CropPicker = (props) => {
34
+ const { style, handle, reactCrop, aspect, children, } = {
35
+ ...exports.CropPicker.defaultProps,
36
+ ...props,
37
+ };
38
+ const styles = (0, useStylesFor_1.useStylesFor)(exports.CropPicker.styleRegistryName, style);
39
+ const compositionStyles = (0, styles_1.useCompositionStyles)(['indicator'], styles);
40
+ if (!handle)
41
+ return null;
42
+ const { image, crop, setRelativeCrop, handleCropChange, } = handle;
43
+ return ((0, jsx_runtime_1.jsxs)(View_1.View, { style: styles.wrapper, children: [!image?.src ? ((0, jsx_runtime_1.jsx)(ActivityIndicator_1.ActivityIndicator, { style: compositionStyles.indicator, debugName: 'CropPickerLoading' })) : ((0, jsx_runtime_1.jsx)(ReactCrop, { ...reactCrop, crop: crop, onChange: handleCropChange, onComplete: (_, relCrop) => setRelativeCrop(relCrop), style: styles.crop, aspect: aspect ?? reactCrop?.aspect, children: (0, jsx_runtime_1.jsx)("img", { src: image.src,
44
+ // @ts-ignore
45
+ css: [styles?.image] }) })), children] }));
46
+ };
47
+ exports.CropPicker = CropPicker;
48
+ exports.CropPicker.styleRegistryName = 'CropPicker';
49
+ exports.CropPicker.elements = ['crop', 'image', 'wrapper', 'indicator'];
50
+ exports.CropPicker.rootElement = 'crop';
51
+ exports.CropPicker.withVariantTypes = (styles) => {
52
+ return exports.CropPicker;
53
+ };
54
+ exports.CropPicker.defaultProps = {};
55
+ WebStyleRegistry_1.WebStyleRegistry.registerComponent(exports.CropPicker);
56
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/CropPicker/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,6CAA8F;AAC9F,iEAA6D;AAC7D,+DAA2D;AAC3D,kCAA8B;AAC9B,4DAAwD;AAIxD,+CAA4C;AAC5C,MAAM,SAAS,GAAsB,OAAO,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAA;AAE1E,2CAAwB;AACxB,0CAAuB;AACvB,0CAAuB;AAEvB;;;GAGG;AACI,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAE,EAAE;IACnD,MAAM,EACJ,KAAK,EACL,MAAM,EACN,SAAS,EACT,MAAM,EACN,QAAQ,GACT,GAAG;QACF,GAAG,kBAAU,CAAC,YAAY;QAC1B,GAAG,KAAK;KACT,CAAA;IAED,MAAM,MAAM,GAAG,IAAA,2BAAY,EAAC,kBAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;IAChE,MAAM,iBAAiB,GAAG,IAAA,6BAAoB,EAAC,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAA;IAErE,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IAExB,MAAM,EACJ,KAAK,EACL,IAAI,EACJ,eAAe,EACf,gBAAgB,GACjB,GAAG,MAAM,CAAA;IAEV,OAAO,CACL,wBAAC,WAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,aACxB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CACb,uBAAC,qCAAiB,IAAC,KAAK,EAAE,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAC,mBAAmB,GAAG,CACxF,CAAC,CAAC,CAAC,CACF,uBAAC,SAAS,OACJ,SAAS,EACb,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,EACpD,KAAK,EAAE,MAAM,CAAC,IAAI,EAClB,MAAM,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,YAEnC,gCACE,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,aAAa;oBACb,GAAG,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,GACpB,GACQ,CACb,EACA,QAAQ,IACJ,CACR,CAAA;AACH,CAAC,CAAA;AA/CY,QAAA,UAAU,cA+CtB;AAED,kBAAU,CAAC,iBAAiB,GAAG,YAAY,CAAA;AAC3C,kBAAU,CAAC,QAAQ,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAA;AAC/D,kBAAU,CAAC,WAAW,GAAG,MAAM,CAAA;AAC/B,kBAAU,CAAC,gBAAgB,GAAG,CAAsB,MAAS,EAAE,EAAE;IAC/D,OAAO,kBAAmF,CAAA;AAC5F,CAAC,CAAA;AAED,kBAAU,CAAC,YAAY,GAAG,EAA8B,CAAA;AAExD,mCAAgB,CAAC,iBAAiB,CAAC,kBAAU,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/CropPicker/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/CropPicker/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.calculateProportionalDimensions = void 0;
4
+ exports.readImage = readImage;
5
+ exports.cropImage = cropImage;
6
+ /** Reads a `File` or `Blob` as a data-URL and resolves with a loaded `HTMLImageElement`. */
7
+ function readImage(file) {
8
+ return new Promise((resolve, reject) => {
9
+ const reader = new FileReader();
10
+ reader.onload = () => {
11
+ const image = new Image();
12
+ image.onload = () => resolve(image);
13
+ image.onerror = () => reject(new Error('Failed to load image'));
14
+ image.src = reader.result;
15
+ };
16
+ reader.onerror = () => reject(new Error('Failed to read file'));
17
+ reader.readAsDataURL(file);
18
+ });
19
+ }
20
+ /**
21
+ * Renders the specified percentage-unit `crop` region of `image` onto an off-screen canvas and returns a `[dataURL, Blob]` tuple.
22
+ * The output blob is always `image/png` at quality 1.
23
+ */
24
+ async function cropImage(image, crop) {
25
+ if (!crop.width || !crop.height) {
26
+ throw new Error('Invalid crop dimensions');
27
+ }
28
+ const canvas = document.createElement('canvas');
29
+ const ctx = canvas.getContext('2d', { willReadFrequently: true });
30
+ if (!ctx) {
31
+ throw new Error('Could not get canvas 2d context');
32
+ }
33
+ const scaleX = image.naturalWidth / 100;
34
+ const scaleY = image.naturalHeight / 100;
35
+ canvas.width = crop.width * scaleX;
36
+ canvas.height = crop.height * scaleY;
37
+ ctx.drawImage(image, crop.x * scaleX, crop.y * scaleY, canvas.width, canvas.height, 0, 0, canvas.width, canvas.height);
38
+ try {
39
+ const blob = await new Promise((resolve, reject) => {
40
+ canvas.toBlob(blob => blob ? resolve(blob) : reject(new Error('Canvas is empty')), 'image/png', 1);
41
+ });
42
+ const croppedImage = await readImage(blob);
43
+ return [croppedImage.src, blob];
44
+ }
45
+ catch (error) {
46
+ throw new Error(`Failed to crop image: ${error instanceof Error ? error.message : String(error)}`);
47
+ }
48
+ }
49
+ /**
50
+ * Scales natural image dimensions down to fit within a 600×400 display budget while preserving aspect ratio.
51
+ * Returns both the original natural dimensions and the calculated display dimensions.
52
+ */
53
+ const calculateProportionalDimensions = (naturalWidth, naturalHeight) => {
54
+ const aspectRatio = naturalWidth / naturalHeight;
55
+ const maxWidth = 600;
56
+ const maxHeight = 400;
57
+ let displayWidth = naturalWidth;
58
+ let displayHeight = naturalHeight;
59
+ if (displayHeight > maxHeight) {
60
+ displayHeight = maxHeight;
61
+ displayWidth = displayHeight * aspectRatio;
62
+ }
63
+ if (displayWidth > maxWidth) {
64
+ displayWidth = maxWidth;
65
+ displayHeight = displayWidth / aspectRatio;
66
+ }
67
+ return {
68
+ naturalWidth,
69
+ naturalHeight,
70
+ displayWidth: Math.round(displayWidth),
71
+ displayHeight: Math.round(displayHeight),
72
+ aspectRatio,
73
+ };
74
+ };
75
+ exports.calculateProportionalDimensions = calculateProportionalDimensions;
76
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/components/CropPicker/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
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.DatePicker = DatePicker;
18
+ const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
19
+ const react_1 = require("react");
20
+ const react_aria_components_1 = require("react-aria-components");
21
+ const date_1 = require("@internationalized/date");
22
+ const hooks_1 = require("@codeleap/hooks");
23
+ const form_1 = require("@codeleap/form");
24
+ const View_1 = require("../View");
25
+ const Calendar_1 = require("../Calendar");
26
+ const WebStyleRegistry_1 = require("../../lib/WebStyleRegistry");
27
+ const useStylesFor_1 = require("../../lib/hooks/useStylesFor");
28
+ const Field_1 = require("../Field");
29
+ __exportStar(require("./styles"), exports);
30
+ __exportStar(require("./types"), exports);
31
+ function dateToCalendarDate(date) {
32
+ if (!date)
33
+ return null;
34
+ return new date_1.CalendarDate(date.getFullYear(), date.getMonth() + 1, date.getDate());
35
+ }
36
+ function calendarDateToDate(cal) {
37
+ return cal.toDate((0, date_1.getLocalTimeZone)());
38
+ }
39
+ function defaultFormatDate(date) {
40
+ return date.toLocaleDateString(undefined, { day: '2-digit', month: '2-digit', year: 'numeric' });
41
+ }
42
+ /**
43
+ * Date selection control that pairs a fully custom trigger element with a `react-aria-components` `Popover` containing a `Calendar`.
44
+ * Converts native `Date` values to/from `@internationalized/date` `CalendarDate` for the calendar; closes the popover after a date is selected.
45
+ * Uses: `View`, `Calendar`
46
+ */
47
+ function DatePicker(props) {
48
+ const { value, onValueChange, field, style, defaultValue, renderTrigger, calendarProps, minDate, maxDate, disabled, visible: providedVisible, toggle: providedToggle, formatDate, label, helper, placeholder, forceError, } = { ...DatePicker.defaultProps, ...props };
49
+ const styles = (0, useStylesFor_1.useStylesFor)(DatePicker.styleRegistryName, style);
50
+ const triggerRef = (0, react_1.useRef)(null);
51
+ const [isOpen, setIsOpen] = (0, hooks_1.useConditionalState)(providedVisible, providedToggle, { initialValue: false });
52
+ const { inputValue, onInputValueChange, validation } = (0, Field_1.useFieldInput)(field, form_1.fields.date, { value, onValueChange });
53
+ const hasError = validation?.showError || !!forceError;
54
+ const errorMessage = validation?.message || forceError;
55
+ const formattedValue = inputValue ? (formatDate ?? defaultFormatDate)(inputValue) : '';
56
+ const handleCalendarChange = (date) => {
57
+ onInputValueChange(calendarDateToDate(date));
58
+ setIsOpen(false);
59
+ };
60
+ return ((0, jsx_runtime_1.jsxs)(View_1.View, { style: styles.wrapper, children: [renderTrigger?.({
61
+ ref: triggerRef,
62
+ value: inputValue ?? null,
63
+ formattedValue,
64
+ isOpen,
65
+ onPress: () => setIsOpen(!isOpen),
66
+ disabled: !!disabled,
67
+ style: styles.trigger,
68
+ label,
69
+ placeholder,
70
+ helper,
71
+ error: hasError ? errorMessage : undefined,
72
+ hasValue: !!inputValue,
73
+ }), (0, jsx_runtime_1.jsx)(react_aria_components_1.Popover, { triggerRef: triggerRef, isOpen: isOpen, onOpenChange: setIsOpen, css: styles.popover, children: (0, jsx_runtime_1.jsx)(Calendar_1.Calendar, { value: dateToCalendarDate(inputValue) ?? undefined, onChange: handleCalendarChange, minValue: dateToCalendarDate(minDate) ?? undefined, maxValue: dateToCalendarDate(maxDate) ?? undefined, defaultValue: dateToCalendarDate(defaultValue) ?? undefined, ...calendarProps }) })] }));
74
+ }
75
+ DatePicker.styleRegistryName = 'DatePicker';
76
+ DatePicker.elements = ['wrapper', 'popover', 'trigger'];
77
+ DatePicker.rootElement = 'wrapper';
78
+ DatePicker.withVariantTypes = (styles) => {
79
+ return DatePicker;
80
+ };
81
+ DatePicker.defaultProps = {
82
+ minDate: new Date(1910, 0, 1),
83
+ maxDate: new Date(),
84
+ disabled: false,
85
+ };
86
+ WebStyleRegistry_1.WebStyleRegistry.registerComponent(DatePicker);
87
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/DatePicker/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/DatePicker/styles.ts"],"names":[],"mappings":""}