@smitch/breeze 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (473) hide show
  1. package/.npmignore +14 -0
  2. package/README.md +485 -0
  3. package/index.d.ts +1 -0
  4. package/index.js +1 -0
  5. package/lib/@hooks/useWindowWidth.js +17 -0
  6. package/lib/@hooks/useWindowWidth.js.map +1 -0
  7. package/lib/@utils/merge.js +35 -0
  8. package/lib/@utils/merge.js.map +1 -0
  9. package/lib/accordion/Accordion.js +28 -0
  10. package/lib/accordion/Accordion.js.map +1 -0
  11. package/lib/accordion/atoms/AccordionCard.js +9 -0
  12. package/lib/accordion/atoms/AccordionCard.js.map +1 -0
  13. package/lib/accordion/atoms/AccordionHead.js +23 -0
  14. package/lib/accordion/atoms/AccordionHead.js.map +1 -0
  15. package/lib/accordion/atoms/AccordionItem.js +10 -0
  16. package/lib/accordion/atoms/AccordionItem.js.map +1 -0
  17. package/lib/accordion/atoms/AccordionSection.js +8 -0
  18. package/lib/accordion/atoms/AccordionSection.js.map +1 -0
  19. package/lib/accordion/atoms/index.js +5 -0
  20. package/lib/accordion/atoms/index.js.map +1 -0
  21. package/lib/accordion/index.js +3 -0
  22. package/lib/accordion/index.js.map +1 -0
  23. package/lib/accordion/types/index.js +2 -0
  24. package/lib/accordion/types/index.js.map +1 -0
  25. package/lib/alert/Alert.js +42 -0
  26. package/lib/alert/Alert.js.map +1 -0
  27. package/lib/alert/index.js +2 -0
  28. package/lib/alert/index.js.map +1 -0
  29. package/lib/alert/types/index.js +2 -0
  30. package/lib/alert/types/index.js.map +1 -0
  31. package/lib/autocomplete/Autocomplete.js +9 -0
  32. package/lib/autocomplete/Autocomplete.js.map +1 -0
  33. package/lib/autocomplete/index.js +2 -0
  34. package/lib/autocomplete/index.js.map +1 -0
  35. package/lib/autocomplete/types/index.js +2 -0
  36. package/lib/autocomplete/types/index.js.map +1 -0
  37. package/lib/badge/Badge.js +57 -0
  38. package/lib/badge/Badge.js.map +1 -0
  39. package/lib/badge/index.js +2 -0
  40. package/lib/badge/index.js.map +1 -0
  41. package/lib/badge/types/index.js +2 -0
  42. package/lib/badge/types/index.js.map +1 -0
  43. package/lib/blockquote/Blockquote.js +22 -0
  44. package/lib/blockquote/Blockquote.js.map +1 -0
  45. package/lib/blockquote/index.js +2 -0
  46. package/lib/blockquote/index.js.map +1 -0
  47. package/lib/blockquote/types/index.js +2 -0
  48. package/lib/blockquote/types/index.js.map +1 -0
  49. package/lib/breadcrumbs/Breadcrumbs.js +47 -0
  50. package/lib/breadcrumbs/Breadcrumbs.js.map +1 -0
  51. package/lib/breadcrumbs/index.js +2 -0
  52. package/lib/breadcrumbs/index.js.map +1 -0
  53. package/lib/breadcrumbs/types/index.js +2 -0
  54. package/lib/breadcrumbs/types/index.js.map +1 -0
  55. package/lib/button/Button.js +76 -0
  56. package/lib/button/Button.js.map +1 -0
  57. package/lib/button/index.js +3 -0
  58. package/lib/button/index.js.map +1 -0
  59. package/lib/button/types/index.js +2 -0
  60. package/lib/button/types/index.js.map +1 -0
  61. package/lib/button/variants/CloseButton.js +18 -0
  62. package/lib/button/variants/CloseButton.js.map +1 -0
  63. package/lib/button/variants/index.js +2 -0
  64. package/lib/button/variants/index.js.map +1 -0
  65. package/lib/button/variants/types/index.js +2 -0
  66. package/lib/button/variants/types/index.js.map +1 -0
  67. package/lib/buttongroup/ButtonGroup.js +35 -0
  68. package/lib/buttongroup/ButtonGroup.js.map +1 -0
  69. package/lib/buttongroup/index.js +2 -0
  70. package/lib/buttongroup/index.js.map +1 -0
  71. package/lib/buttongroup/types/index.js +2 -0
  72. package/lib/buttongroup/types/index.js.map +1 -0
  73. package/lib/card/Card.js +32 -0
  74. package/lib/card/Card.js.map +1 -0
  75. package/lib/card/atoms/CardBody.js +8 -0
  76. package/lib/card/atoms/CardBody.js.map +1 -0
  77. package/lib/card/atoms/CardFooter.js +9 -0
  78. package/lib/card/atoms/CardFooter.js.map +1 -0
  79. package/lib/card/atoms/CardHeader.js +8 -0
  80. package/lib/card/atoms/CardHeader.js.map +1 -0
  81. package/lib/card/atoms/CardImage.js +16 -0
  82. package/lib/card/atoms/CardImage.js.map +1 -0
  83. package/lib/card/index.js +6 -0
  84. package/lib/card/index.js.map +1 -0
  85. package/lib/card/types/index.js +2 -0
  86. package/lib/card/types/index.js.map +1 -0
  87. package/lib/carousel/Carousel.js +147 -0
  88. package/lib/carousel/Carousel.js.map +1 -0
  89. package/lib/carousel/index.js +2 -0
  90. package/lib/carousel/index.js.map +1 -0
  91. package/lib/carousel/types/index.js +2 -0
  92. package/lib/carousel/types/index.js.map +1 -0
  93. package/lib/charts/BarChart.js +24 -0
  94. package/lib/charts/BarChart.js.map +1 -0
  95. package/lib/charts/BubbleChart.js +24 -0
  96. package/lib/charts/BubbleChart.js.map +1 -0
  97. package/lib/charts/ChartWrap.js +69 -0
  98. package/lib/charts/ChartWrap.js.map +1 -0
  99. package/lib/charts/DoughnutChart.js +20 -0
  100. package/lib/charts/DoughnutChart.js.map +1 -0
  101. package/lib/charts/LineChart.js +24 -0
  102. package/lib/charts/LineChart.js.map +1 -0
  103. package/lib/charts/MixedChart.js +24 -0
  104. package/lib/charts/MixedChart.js.map +1 -0
  105. package/lib/charts/PieChart.js +20 -0
  106. package/lib/charts/PieChart.js.map +1 -0
  107. package/lib/charts/PolarAreaChart.js +23 -0
  108. package/lib/charts/PolarAreaChart.js.map +1 -0
  109. package/lib/charts/RadarChart.js +23 -0
  110. package/lib/charts/RadarChart.js.map +1 -0
  111. package/lib/charts/ScatterChart.js +24 -0
  112. package/lib/charts/ScatterChart.js.map +1 -0
  113. package/lib/charts/index.js +10 -0
  114. package/lib/charts/index.js.map +1 -0
  115. package/lib/charts/types/index.js +2 -0
  116. package/lib/charts/types/index.js.map +1 -0
  117. package/lib/checkbox/Checkbox.js +9 -0
  118. package/lib/checkbox/Checkbox.js.map +1 -0
  119. package/lib/checkbox/index.js +2 -0
  120. package/lib/checkbox/index.js.map +1 -0
  121. package/lib/checkbox/types/index.js +2 -0
  122. package/lib/checkbox/types/index.js.map +1 -0
  123. package/lib/clock/Clock.js +99 -0
  124. package/lib/clock/Clock.js.map +1 -0
  125. package/lib/clock/index.js +2 -0
  126. package/lib/clock/index.js.map +1 -0
  127. package/lib/clock/types/index.js +2 -0
  128. package/lib/clock/types/index.js.map +1 -0
  129. package/lib/codeblock/Codeblock.js +21 -0
  130. package/lib/codeblock/Codeblock.js.map +1 -0
  131. package/lib/codeblock/index.js +2 -0
  132. package/lib/codeblock/index.js.map +1 -0
  133. package/lib/codeblock/types/index.js +2 -0
  134. package/lib/codeblock/types/index.js.map +1 -0
  135. package/lib/counter/Counter.js +39 -0
  136. package/lib/counter/Counter.js.map +1 -0
  137. package/lib/counter/index.js +2 -0
  138. package/lib/counter/index.js.map +1 -0
  139. package/lib/counter/types/index.js +2 -0
  140. package/lib/counter/types/index.js.map +1 -0
  141. package/lib/datatable/DataTable.js +44 -0
  142. package/lib/datatable/DataTable.js.map +1 -0
  143. package/lib/datatable/index.js +2 -0
  144. package/lib/datatable/index.js.map +1 -0
  145. package/lib/datatable/types/index.js +2 -0
  146. package/lib/datatable/types/index.js.map +1 -0
  147. package/lib/dialog/Dialog.js +45 -0
  148. package/lib/dialog/Dialog.js.map +1 -0
  149. package/lib/dialog/hooks/useDisableBack.js +16 -0
  150. package/lib/dialog/hooks/useDisableBack.js.map +1 -0
  151. package/lib/dialog/index.js +2 -0
  152. package/lib/dialog/index.js.map +1 -0
  153. package/lib/dialog/types/index.js +2 -0
  154. package/lib/dialog/types/index.js.map +1 -0
  155. package/lib/drawer/Drawer.js +39 -0
  156. package/lib/drawer/Drawer.js.map +1 -0
  157. package/lib/drawer/index.js +2 -0
  158. package/lib/drawer/index.js.map +1 -0
  159. package/lib/drawer/types/index.js +2 -0
  160. package/lib/drawer/types/index.js.map +1 -0
  161. package/lib/dropdown/Dropdown.js +40 -0
  162. package/lib/dropdown/Dropdown.js.map +1 -0
  163. package/lib/dropdown/index.js +2 -0
  164. package/lib/dropdown/index.js.map +1 -0
  165. package/lib/dropdown/types/index.js +2 -0
  166. package/lib/dropdown/types/index.js.map +1 -0
  167. package/lib/figure/Figure.js +42 -0
  168. package/lib/figure/Figure.js.map +1 -0
  169. package/lib/figure/index.js +2 -0
  170. package/lib/figure/index.js.map +1 -0
  171. package/lib/figure/types/index.js +2 -0
  172. package/lib/figure/types/index.js.map +1 -0
  173. package/lib/fileupload/FileUpload.js +52 -0
  174. package/lib/fileupload/FileUpload.js.map +1 -0
  175. package/lib/fileupload/Files.js +22 -0
  176. package/lib/fileupload/Files.js.map +1 -0
  177. package/lib/fileupload/index.js +2 -0
  178. package/lib/fileupload/index.js.map +1 -0
  179. package/lib/fileupload/types/index.js +25 -0
  180. package/lib/fileupload/types/index.js.map +1 -0
  181. package/lib/form/Fieldset.js +9 -0
  182. package/lib/form/Fieldset.js.map +1 -0
  183. package/lib/form/Form.js +64 -0
  184. package/lib/form/Form.js.map +1 -0
  185. package/lib/form/Legend.js +21 -0
  186. package/lib/form/Legend.js.map +1 -0
  187. package/lib/form/RegisterForm.js +19 -0
  188. package/lib/form/RegisterForm.js.map +1 -0
  189. package/lib/form/index.js +5 -0
  190. package/lib/form/index.js.map +1 -0
  191. package/lib/form/types/index.js +2 -0
  192. package/lib/form/types/index.js.map +1 -0
  193. package/lib/gallery/Gallery.js +12 -0
  194. package/lib/gallery/Gallery.js.map +1 -0
  195. package/lib/gallery/index.js +2 -0
  196. package/lib/gallery/index.js.map +1 -0
  197. package/lib/gallery/types/index.js +2 -0
  198. package/lib/gallery/types/index.js.map +1 -0
  199. package/lib/heading/Heading.js +38 -0
  200. package/lib/heading/Heading.js.map +1 -0
  201. package/lib/heading/index.js +2 -0
  202. package/lib/heading/index.js.map +1 -0
  203. package/lib/heading/types/index.js +2 -0
  204. package/lib/heading/types/index.js.map +1 -0
  205. package/lib/hero/Hero.js +72 -0
  206. package/lib/hero/Hero.js.map +1 -0
  207. package/lib/hero/index.js +2 -0
  208. package/lib/hero/index.js.map +1 -0
  209. package/lib/hero/types/index.js +2 -0
  210. package/lib/hero/types/index.js.map +1 -0
  211. package/lib/icon/Icon.js +37 -0
  212. package/lib/icon/Icon.js.map +1 -0
  213. package/lib/icon/index.js +2 -0
  214. package/lib/icon/index.js.map +1 -0
  215. package/lib/icon/types/index.js +2 -0
  216. package/lib/icon/types/index.js.map +1 -0
  217. package/lib/index.js +52 -0
  218. package/lib/index.js.map +1 -0
  219. package/lib/input/Input.js +37 -0
  220. package/lib/input/Input.js.map +1 -0
  221. package/lib/input/index.js +2 -0
  222. package/lib/input/index.js.map +1 -0
  223. package/lib/input/types/index.js +2 -0
  224. package/lib/input/types/index.js.map +1 -0
  225. package/lib/label/Label.js +36 -0
  226. package/lib/label/Label.js.map +1 -0
  227. package/lib/label/index.js +2 -0
  228. package/lib/label/index.js.map +1 -0
  229. package/lib/label/types/index.js +2 -0
  230. package/lib/label/types/index.js.map +1 -0
  231. package/lib/loading/Loading.js +71 -0
  232. package/lib/loading/Loading.js.map +1 -0
  233. package/lib/loading/index.js +3 -0
  234. package/lib/loading/index.js.map +1 -0
  235. package/lib/loading/spinners/Bars.js +7 -0
  236. package/lib/loading/spinners/Bars.js.map +1 -0
  237. package/lib/loading/spinners/Clock.js +7 -0
  238. package/lib/loading/spinners/Clock.js.map +1 -0
  239. package/lib/loading/spinners/Dots.js +7 -0
  240. package/lib/loading/spinners/Dots.js.map +1 -0
  241. package/lib/loading/spinners/Pulse.js +7 -0
  242. package/lib/loading/spinners/Pulse.js.map +1 -0
  243. package/lib/loading/spinners/Spindots.js +7 -0
  244. package/lib/loading/spinners/Spindots.js.map +1 -0
  245. package/lib/loading/spinners/Spinner.js +7 -0
  246. package/lib/loading/spinners/Spinner.js.map +1 -0
  247. package/lib/loading/spinners/Wifi.js +7 -0
  248. package/lib/loading/spinners/Wifi.js.map +1 -0
  249. package/lib/loading/spinners/index.js +8 -0
  250. package/lib/loading/spinners/index.js.map +1 -0
  251. package/lib/loading/types/index.js +2 -0
  252. package/lib/loading/types/index.js.map +1 -0
  253. package/lib/map/LazyMap.js +146 -0
  254. package/lib/map/LazyMap.js.map +1 -0
  255. package/lib/map/LazyMapCircle.js +14 -0
  256. package/lib/map/LazyMapCircle.js.map +1 -0
  257. package/lib/map/LazyMapLine.js +13 -0
  258. package/lib/map/LazyMapLine.js.map +1 -0
  259. package/lib/map/LazyMapMarker.js +72 -0
  260. package/lib/map/LazyMapMarker.js.map +1 -0
  261. package/lib/map/LazyMapPolygon.js +9 -0
  262. package/lib/map/LazyMapPolygon.js.map +1 -0
  263. package/lib/map/LazyMapRectangle.js +12 -0
  264. package/lib/map/LazyMapRectangle.js.map +1 -0
  265. package/lib/map/Map.js +34 -0
  266. package/lib/map/Map.js.map +1 -0
  267. package/lib/map/MapCircle.js +34 -0
  268. package/lib/map/MapCircle.js.map +1 -0
  269. package/lib/map/MapLine.js +34 -0
  270. package/lib/map/MapLine.js.map +1 -0
  271. package/lib/map/MapMarker.js +34 -0
  272. package/lib/map/MapMarker.js.map +1 -0
  273. package/lib/map/MapPolygon.js +34 -0
  274. package/lib/map/MapPolygon.js.map +1 -0
  275. package/lib/map/MapRectangle.js +34 -0
  276. package/lib/map/MapRectangle.js.map +1 -0
  277. package/lib/map/index.js +7 -0
  278. package/lib/map/index.js.map +1 -0
  279. package/lib/map/tileOptions.js +33 -0
  280. package/lib/map/tileOptions.js.map +1 -0
  281. package/lib/map/types/index.js +2 -0
  282. package/lib/map/types/index.js.map +1 -0
  283. package/lib/modal/Modal.js +33 -0
  284. package/lib/modal/Modal.js.map +1 -0
  285. package/lib/modal/hooks/useDisableBack.js +14 -0
  286. package/lib/modal/hooks/useDisableBack.js.map +1 -0
  287. package/lib/modal/index.js +2 -0
  288. package/lib/modal/index.js.map +1 -0
  289. package/lib/modal/types/index.js +2 -0
  290. package/lib/modal/types/index.js.map +1 -0
  291. package/lib/navbar/NavBar.js +17 -0
  292. package/lib/navbar/NavBar.js.map +1 -0
  293. package/lib/navbar/NavBrand.js +9 -0
  294. package/lib/navbar/NavBrand.js.map +1 -0
  295. package/lib/navbar/NavLinks.js +27 -0
  296. package/lib/navbar/NavLinks.js.map +1 -0
  297. package/lib/navbar/index.js +2 -0
  298. package/lib/navbar/index.js.map +1 -0
  299. package/lib/navbar/types/index.js +2 -0
  300. package/lib/navbar/types/index.js.map +1 -0
  301. package/lib/pagination/Pagination.js +42 -0
  302. package/lib/pagination/Pagination.js.map +1 -0
  303. package/lib/pagination/index.js +2 -0
  304. package/lib/pagination/index.js.map +1 -0
  305. package/lib/pagination/types/index.js +2 -0
  306. package/lib/pagination/types/index.js.map +1 -0
  307. package/lib/passwordinput/PasswordInput.js +22 -0
  308. package/lib/passwordinput/PasswordInput.js.map +1 -0
  309. package/lib/passwordinput/index.js +2 -0
  310. package/lib/passwordinput/index.js.map +1 -0
  311. package/lib/passwordinput/types/index.js +2 -0
  312. package/lib/passwordinput/types/index.js.map +1 -0
  313. package/lib/pictogram/Pictogram.js +21 -0
  314. package/lib/pictogram/Pictogram.js.map +1 -0
  315. package/lib/pictogram/index.js +2 -0
  316. package/lib/pictogram/index.js.map +1 -0
  317. package/lib/pictogram/types/index.js +2 -0
  318. package/lib/pictogram/types/index.js.map +1 -0
  319. package/lib/placeholder/PlaceHolder.js +28 -0
  320. package/lib/placeholder/PlaceHolder.js.map +1 -0
  321. package/lib/placeholder/index.js +2 -0
  322. package/lib/placeholder/index.js.map +1 -0
  323. package/lib/placeholder/types/index.js +2 -0
  324. package/lib/placeholder/types/index.js.map +1 -0
  325. package/lib/progress/Progress.js +26 -0
  326. package/lib/progress/Progress.js.map +1 -0
  327. package/lib/progress/index.js +2 -0
  328. package/lib/progress/index.js.map +1 -0
  329. package/lib/progress/types/index.js +2 -0
  330. package/lib/progress/types/index.js.map +1 -0
  331. package/lib/radiogroup/RadioGroup.js +28 -0
  332. package/lib/radiogroup/RadioGroup.js.map +1 -0
  333. package/lib/radiogroup/index.js +2 -0
  334. package/lib/radiogroup/index.js.map +1 -0
  335. package/lib/radiogroup/types/index.js +2 -0
  336. package/lib/radiogroup/types/index.js.map +1 -0
  337. package/lib/rangeinput/RangeInput.js +45 -0
  338. package/lib/rangeinput/RangeInput.js.map +1 -0
  339. package/lib/rangeinput/index.js +2 -0
  340. package/lib/rangeinput/index.js.map +1 -0
  341. package/lib/rangeinput/types/index.js +2 -0
  342. package/lib/rangeinput/types/index.js.map +1 -0
  343. package/lib/ratings/Ratings.js +25 -0
  344. package/lib/ratings/Ratings.js.map +1 -0
  345. package/lib/ratings/index.js +2 -0
  346. package/lib/ratings/index.js.map +1 -0
  347. package/lib/ratings/types/index.js +2 -0
  348. package/lib/ratings/types/index.js.map +1 -0
  349. package/lib/searchinput/SearchInput.js +22 -0
  350. package/lib/searchinput/SearchInput.js.map +1 -0
  351. package/lib/searchinput/index.js +2 -0
  352. package/lib/searchinput/index.js.map +1 -0
  353. package/lib/searchinput/types/index.js +2 -0
  354. package/lib/searchinput/types/index.js.map +1 -0
  355. package/lib/select/Select.js +34 -0
  356. package/lib/select/Select.js.map +1 -0
  357. package/lib/select/index.js +2 -0
  358. package/lib/select/index.js.map +1 -0
  359. package/lib/select/types/index.js +2 -0
  360. package/lib/select/types/index.js.map +1 -0
  361. package/lib/sidebar/Sidebar.js +56 -0
  362. package/lib/sidebar/Sidebar.js.map +1 -0
  363. package/lib/sidebar/index.js +2 -0
  364. package/lib/sidebar/index.js.map +1 -0
  365. package/lib/sidebar/types/index.js +2 -0
  366. package/lib/sidebar/types/index.js.map +1 -0
  367. package/lib/socialshare/SocialShare.js +64 -0
  368. package/lib/socialshare/SocialShare.js.map +1 -0
  369. package/lib/socialshare/buttons/BlueskyButton.js +18 -0
  370. package/lib/socialshare/buttons/BlueskyButton.js.map +1 -0
  371. package/lib/socialshare/buttons/EmailButton.js +16 -0
  372. package/lib/socialshare/buttons/EmailButton.js.map +1 -0
  373. package/lib/socialshare/buttons/FacebookButton.js +16 -0
  374. package/lib/socialshare/buttons/FacebookButton.js.map +1 -0
  375. package/lib/socialshare/buttons/LinkedinButton.js +16 -0
  376. package/lib/socialshare/buttons/LinkedinButton.js.map +1 -0
  377. package/lib/socialshare/buttons/PinterestButton.js +19 -0
  378. package/lib/socialshare/buttons/PinterestButton.js.map +1 -0
  379. package/lib/socialshare/buttons/RedditButton.js +19 -0
  380. package/lib/socialshare/buttons/RedditButton.js.map +1 -0
  381. package/lib/socialshare/buttons/SlackButton.js +17 -0
  382. package/lib/socialshare/buttons/SlackButton.js.map +1 -0
  383. package/lib/socialshare/buttons/TelegramButton.js +19 -0
  384. package/lib/socialshare/buttons/TelegramButton.js.map +1 -0
  385. package/lib/socialshare/buttons/WhatsappButton.js +16 -0
  386. package/lib/socialshare/buttons/WhatsappButton.js.map +1 -0
  387. package/lib/socialshare/buttons/XButton.js +19 -0
  388. package/lib/socialshare/buttons/XButton.js.map +1 -0
  389. package/lib/socialshare/index.js +12 -0
  390. package/lib/socialshare/index.js.map +1 -0
  391. package/lib/socialshare/types/index.js +2 -0
  392. package/lib/socialshare/types/index.js.map +1 -0
  393. package/lib/statbar/StatBar.js +15 -0
  394. package/lib/statbar/StatBar.js.map +1 -0
  395. package/lib/statbar/index.js +2 -0
  396. package/lib/statbar/index.js.map +1 -0
  397. package/lib/statbar/types/index.js +2 -0
  398. package/lib/statbar/types/index.js.map +1 -0
  399. package/lib/switch/Switch.js +55 -0
  400. package/lib/switch/Switch.js.map +1 -0
  401. package/lib/switch/index.js +2 -0
  402. package/lib/switch/index.js.map +1 -0
  403. package/lib/switch/types/index.js +2 -0
  404. package/lib/switch/types/index.js.map +1 -0
  405. package/lib/tabs/Tab.js +6 -0
  406. package/lib/tabs/Tab.js.map +1 -0
  407. package/lib/tabs/TabBar.js +18 -0
  408. package/lib/tabs/TabBar.js.map +1 -0
  409. package/lib/tabs/Tabs.js +59 -0
  410. package/lib/tabs/Tabs.js.map +1 -0
  411. package/lib/tabs/index.js +2 -0
  412. package/lib/tabs/index.js.map +1 -0
  413. package/lib/tabs/types/index.js +2 -0
  414. package/lib/tabs/types/index.js.map +1 -0
  415. package/lib/textarea/TextArea.js +17 -0
  416. package/lib/textarea/TextArea.js.map +1 -0
  417. package/lib/textarea/index.js +2 -0
  418. package/lib/textarea/index.js.map +1 -0
  419. package/lib/textarea/types/index.js +2 -0
  420. package/lib/textarea/types/index.js.map +1 -0
  421. package/lib/textinput/TextInput.js +18 -0
  422. package/lib/textinput/TextInput.js.map +1 -0
  423. package/lib/textinput/index.js +2 -0
  424. package/lib/textinput/index.js.map +1 -0
  425. package/lib/textinput/types/index.js +2 -0
  426. package/lib/textinput/types/index.js.map +1 -0
  427. package/lib/ticker/Ticker.js +21 -0
  428. package/lib/ticker/Ticker.js.map +1 -0
  429. package/lib/ticker/index.js +2 -0
  430. package/lib/ticker/index.js.map +1 -0
  431. package/lib/ticker/types/index.js +2 -0
  432. package/lib/ticker/types/index.js.map +1 -0
  433. package/lib/toast/Toast.js +76 -0
  434. package/lib/toast/Toast.js.map +1 -0
  435. package/lib/toast/index.js +2 -0
  436. package/lib/toast/index.js.map +1 -0
  437. package/lib/toast/types/index.js +2 -0
  438. package/lib/toast/types/index.js.map +1 -0
  439. package/lib/twitterembed/TwitterEmbed.js +123 -0
  440. package/lib/twitterembed/TwitterEmbed.js.map +1 -0
  441. package/lib/twitterembed/index.js +2 -0
  442. package/lib/twitterembed/index.js.map +1 -0
  443. package/lib/twitterembed/types/index.js +2 -0
  444. package/lib/twitterembed/types/index.js.map +1 -0
  445. package/lib/videoplayer/Video.js +130 -0
  446. package/lib/videoplayer/Video.js.map +1 -0
  447. package/lib/videoplayer/VideoControls.js +63 -0
  448. package/lib/videoplayer/VideoControls.js.map +1 -0
  449. package/lib/videoplayer/VideoPlayer.js +66 -0
  450. package/lib/videoplayer/VideoPlayer.js.map +1 -0
  451. package/lib/videoplayer/VideoTracks.js +9 -0
  452. package/lib/videoplayer/VideoTracks.js.map +1 -0
  453. package/lib/videoplayer/controls/CaptionsControl.js +15 -0
  454. package/lib/videoplayer/controls/CaptionsControl.js.map +1 -0
  455. package/lib/videoplayer/controls/FullscreenControl.js +8 -0
  456. package/lib/videoplayer/controls/FullscreenControl.js.map +1 -0
  457. package/lib/videoplayer/controls/PipControl.js +8 -0
  458. package/lib/videoplayer/controls/PipControl.js.map +1 -0
  459. package/lib/videoplayer/controls/SoundControl.js +8 -0
  460. package/lib/videoplayer/controls/SoundControl.js.map +1 -0
  461. package/lib/videoplayer/controls/index.js +5 -0
  462. package/lib/videoplayer/controls/index.js.map +1 -0
  463. package/lib/videoplayer/index.js +3 -0
  464. package/lib/videoplayer/index.js.map +1 -0
  465. package/lib/videoplayer/types/index.js +2 -0
  466. package/lib/videoplayer/types/index.js.map +1 -0
  467. package/lib/youtubeembed/YoutubeEmbed.js +33 -0
  468. package/lib/youtubeembed/YoutubeEmbed.js.map +1 -0
  469. package/lib/youtubeembed/index.js +2 -0
  470. package/lib/youtubeembed/index.js.map +1 -0
  471. package/lib/youtubeembed/types/index.js +2 -0
  472. package/lib/youtubeembed/types/index.js.map +1 -0
  473. package/package.json +39 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyMapMarker.js","sourceRoot":"","sources":["../../../src/ui/map/LazyMapMarker.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAClD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAqB,IAAI,EAAgB,MAAM,SAAS,CAAA;AAI/D,IAAM,OAAO,GAAG,yBAAyB,CAAA;AAEzC,IAAM,aAAa,GAAG,UAAC,EASN;QARhB,QAAQ,cAAA,EACR,YAAY,kBAAA,EACZ,QAAQ,cAAA,EACR,MAAM,YAAA,EACN,QAAQ,cAAA,EACR,SAAS,eAAA,EACT,SAAS,eAAA,EACT,SAAS,eAAA;IAEH,IAAA,KAAsC,QAAQ,CAAC,QAAQ,CAAC,EAAvD,cAAc,QAAA,EAAE,iBAAiB,QAAsB,CAAA;IAC9D,IAAM,GAAG,GAAG,MAAM,EAAE,CAAA;IAEpB,SAAS,CAAC;QACT,IAAM,iBAAiB,GAAG,UAAC,CAAoB;YAC9C,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;QAC5B,CAAC,CAAA;QAED,IAAI,SAAS;YAAE,GAAG,CAAC,EAAE,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAA;QAEpD,OAAO;YACN,IAAI,SAAS;gBAAE,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAA;QACtD,CAAC,CAAA;IACF,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAA;IAEpB,IAAM,IAAI,GAAG,QAAQ;QACpB,CAAC,CAAC,aAAa,CAAC,EAAE,QAAQ,UAAA,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QAC/D,CAAC,CAAC,MAAM;YACP,CAAC,CAAC,aAAa,CAAC,EAAE,MAAM,QAAA,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;YAC7D,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAA;IAEtB,IAAM,aAAa,GAAG,UAAC,KAAmB;QACzC,IAAI,CAAC,SAAS;YAAE,OAAM;QACtB,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;QAC3B,IAAM,WAAW,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;QACtC,iBAAiB,CAAC,WAAW,CAAC,CAAA;QAC9B,UAAU,CAAC;YACV,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;QAC5C,CAAC,EAAE,GAAG,CAAC,CAAA;QACP,IAAI,SAAS;YAAE,SAAS,CAAC,WAAW,CAAC,CAAA;IACtC,CAAC,CAAA;IAED,OAAO,CACN,KAAC,MAAM,IACN,QAAQ,EAAE,cAAc,EACxB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE;YACd,OAAO,EAAE,aAAa;SACtB,YAEA,YAAY,CAAC,CAAC,CAAC,CACf,KAAC,KAAK,cAAE,YAAY,GAAS,CAC7B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACf,KAAC,KAAK,cACJ,CAAC;gBACD,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;oBACnC,OAAO,eAAQ,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAU,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,CAAA;gBACpF,CAAC;qBAAM,IAAI,KAAK,IAAI,cAAc,IAAI,KAAK,IAAI,cAAc,EAAE,CAAC;oBAC/D,OAAO,eAAQ,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAU,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,CAAA;gBACtF,CAAC;gBACD,OAAO,kBAAkB,CAAA;YAC1B,CAAC,CAAC,EAAE,GACG,CACR,CAAC,CAAC,CAAC,IAAI,GACA,CACT,CAAA;AACF,CAAC,CAAA;AAED,eAAe,aAAa,CAAA;AAE5B,MAAM,CAAC,IAAM,aAAa,GAAG,UAAC,EAAuD;QAArD,QAAQ,cAAA,EAAE,MAAM,YAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,KAAK,WAAA;IACjE,IAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,UAAG,KAAK,CAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAEzC,IAAM,WAAW,GAAG,IAAI,eAAe,CAAC;QACvC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;QACrB,EAAE,EAAE,MAAM,IAAI,cAAc;QAC5B,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,KAAK,IAAI,QAAQ;KACxB,CAAC,CAAA;IAEF,IAAI,OAAO,GAAG,EAAE,CAAA;IAEhB,QAAQ;QACP,CAAC,CAAC,CAAC,OAAO,GAAG,UAAG,OAAO,SAAG,SAAS,cAAI,IAAI,cAAI,QAAQ,SAAM,CAAC;QAC9D,CAAC,CAAC,CAAC,OAAO,GAAG,UAAG,OAAO,cAAI,WAAW,CAAC,QAAQ,EAAE,CAAE,CAAC,CAAA;IAErD,OAAO,IAAI,IAAI,CAAC;QACf,OAAO,SAAA;QACP,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACtB,UAAU,EAAE,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC;QAC5B,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC;KAC3B,CAAC,CAAA;AACH,CAAC,CAAA","sourcesContent":["'use client'\n\nimport React, { useState, useEffect } from 'react'\nimport { Marker, Popup, useMap } from 'react-leaflet'\nimport { LeafletMouseEvent, Icon, DragEndEvent } from 'leaflet'\n\nimport { MapMarkerProps, CustomIconProps } from './types'\n\nconst baseUrl = 'https://img.icons8.com/'\n\nconst LazyMapMarker = ({\n\tposition,\n\tpopupContent,\n\ticonName,\n\ticonId,\n\ticonSize,\n\ticonColor,\n\tdraggable,\n\tonDragEnd,\n}: MapMarkerProps) => {\n\tconst [markerPosition, setMarkerPosition] = useState(position)\n\tconst map = useMap()\n\n\tuseEffect(() => {\n\t\tconst handleDoubleClick = (e: LeafletMouseEvent) => {\n\t\t\tsetMarkerPosition(e.latlng)\n\t\t}\n\n\t\tif (draggable) map.on('dblclick', handleDoubleClick)\n\n\t\treturn () => {\n\t\t\tif (draggable) map.off('dblclick', handleDoubleClick)\n\t\t}\n\t}, [map, draggable])\n\n\tconst icon = iconName\n\t\t? UseCustomIcon({ iconName, size: iconSize, color: iconColor })\n\t\t: iconId\n\t\t\t? UseCustomIcon({ iconId, size: iconSize, color: iconColor })\n\t\t\t: new Icon.Default()\n\n\tconst handleDragEnd = (event: DragEndEvent) => {\n\t\tif (!draggable) return\n\t\tconst marker = event.target\n\t\tconst newPosition = marker.getLatLng()\n\t\tsetMarkerPosition(newPosition)\n\t\tsetTimeout(() => {\n\t\t\tmap.setView(newPosition, map.getZoom() + 1)\n\t\t}, 500)\n\t\tif (onDragEnd) onDragEnd(newPosition)\n\t}\n\n\treturn (\n\t\t<Marker\n\t\t\tposition={markerPosition}\n\t\t\ticon={icon}\n\t\t\tdraggable={draggable}\n\t\t\teventHandlers={{\n\t\t\t\tdragend: handleDragEnd,\n\t\t\t}}\n\t\t>\n\t\t\t{popupContent ? (\n\t\t\t\t<Popup>{popupContent}</Popup>\n\t\t\t) : draggable ? (\n\t\t\t\t<Popup>\n\t\t\t\t\t{(() => {\n\t\t\t\t\t\tif (Array.isArray(markerPosition)) {\n\t\t\t\t\t\t\treturn `Lat: ${markerPosition[0].toFixed(5)}, Lon: ${markerPosition[1].toFixed(5)}`\n\t\t\t\t\t\t} else if ('lat' in markerPosition && 'lng' in markerPosition) {\n\t\t\t\t\t\t\treturn `Lat: ${markerPosition.lat.toFixed(5)}, Lon: ${markerPosition.lng.toFixed(5)}`\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn 'Invalid position'\n\t\t\t\t\t})()}\n\t\t\t\t</Popup>\n\t\t\t) : null}\n\t\t</Marker>\n\t)\n}\n\nexport default LazyMapMarker\n\nexport const UseCustomIcon = ({ iconName, iconId, size = 40, color }: CustomIconProps): Icon => {\n\tconst colorPath = color ? `${color}` : ''\n\n\tconst queryParams = new URLSearchParams({\n\t\tsize: size.toString(),\n\t\tid: iconId || 'oStMNsdYhXTS',\n\t\tformat: 'png',\n\t\tcolor: color || '000000',\n\t})\n\n\tlet iconUrl = ''\n\n\ticonName\n\t\t? (iconUrl = `${baseUrl}${colorPath}/${size}/${iconName}.png`)\n\t\t: (iconUrl = `${baseUrl}?${queryParams.toString()}`)\n\n\treturn new Icon({\n\t\ticonUrl,\n\t\ticonSize: [size, size],\n\t\ticonAnchor: [size / 2, size],\n\t\tpopupAnchor: [0, -size / 2],\n\t})\n}\n"]}
@@ -0,0 +1,9 @@
1
+ 'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { Polygon, Popup } from 'react-leaflet';
4
+ var MapPolygon = function (_a) {
5
+ var positions = _a.positions, fill = _a.fill, stroke = _a.stroke, popupContent = _a.popupContent;
6
+ return (_jsx(Polygon, { positions: positions, fillColor: fill, stroke: stroke, children: popupContent && _jsx(Popup, { children: popupContent }) }));
7
+ };
8
+ export default MapPolygon;
9
+ //# sourceMappingURL=LazyMapPolygon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyMapPolygon.js","sourceRoot":"","sources":["../../../src/ui/map/LazyMapPolygon.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAGZ,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAG9C,IAAM,UAAU,GAAG,UAAC,EAA0D;QAAxD,SAAS,eAAA,EAAE,IAAI,UAAA,EAAE,MAAM,YAAA,EAAE,YAAY,kBAAA;IAC1D,OAAO,CACN,KAAC,OAAO,IACP,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,IAAI,EACf,MAAM,EAAE,MAAM,YAEb,YAAY,IAAI,KAAC,KAAK,cAAE,YAAY,GAAS,GACrC,CACV,CAAA;AACF,CAAC,CAAA;AAED,eAAe,UAAU,CAAA","sourcesContent":["'use client'\n\nimport React from 'react'\nimport { Polygon, Popup } from 'react-leaflet'\nimport { MapPolygonProps } from './types'\n\nconst MapPolygon = ({ positions, fill, stroke, popupContent }: MapPolygonProps) => {\n\treturn (\n\t\t<Polygon\n\t\t\tpositions={positions}\n\t\t\tfillColor={fill}\n\t\t\tstroke={stroke}\n\t\t>\n\t\t\t{popupContent && <Popup>{popupContent}</Popup>}\n\t\t</Polygon>\n\t)\n}\n\nexport default MapPolygon\n"]}
@@ -0,0 +1,12 @@
1
+ 'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { Rectangle, Popup } from 'react-leaflet';
4
+ var MapRectangle = function (_a) {
5
+ var bounds = _a.bounds, _b = _a.color, color = _b === void 0 ? '#3388ff' : _b, fillColor = _a.fillColor, popupContent = _a.popupContent;
6
+ return (_jsx(Rectangle, { bounds: bounds, pathOptions: {
7
+ color: color,
8
+ fillColor: fillColor,
9
+ }, children: popupContent && _jsx(Popup, { children: popupContent }) }));
10
+ };
11
+ export default MapRectangle;
12
+ //# sourceMappingURL=LazyMapRectangle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyMapRectangle.js","sourceRoot":"","sources":["../../../src/ui/map/LazyMapRectangle.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAGZ,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAGhD,IAAM,YAAY,GAAG,UAAC,EAKF;QAJnB,MAAM,YAAA,EACN,aAAiB,EAAjB,KAAK,mBAAG,SAAS,KAAA,EACjB,SAAS,eAAA,EACT,YAAY,kBAAA;IAEZ,OAAO,CACN,KAAC,SAAS,IACT,MAAM,EAAE,MAAM,EACd,WAAW,EAAE;YACZ,KAAK,OAAA;YACL,SAAS,WAAA;SACT,YAEA,YAAY,IAAI,KAAC,KAAK,cAAE,YAAY,GAAS,GACnC,CACZ,CAAA;AACF,CAAC,CAAA;AAED,eAAe,YAAY,CAAA","sourcesContent":["'use client'\n\nimport React from 'react'\nimport { Rectangle, Popup } from 'react-leaflet'\nimport { MapRectangleProps } from './types'\n\nconst MapRectangle = ({\n\tbounds,\n\tcolor = '#3388ff',\n\tfillColor,\n\tpopupContent,\n}: MapRectangleProps) => {\n\treturn (\n\t\t<Rectangle\n\t\t\tbounds={bounds}\n\t\t\tpathOptions={{\n\t\t\t\tcolor,\n\t\t\t\tfillColor,\n\t\t\t}}\n\t\t>\n\t\t\t{popupContent && <Popup>{popupContent}</Popup>}\n\t\t</Rectangle>\n\t)\n}\n\nexport default MapRectangle\n"]}
package/lib/map/Map.js ADDED
@@ -0,0 +1,34 @@
1
+ "use client";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ import { jsx as _jsx } from "react/jsx-runtime";
25
+ import dynamic from "next/dynamic";
26
+ var DynamicMap = dynamic(function () { return import("./LazyMap"); }, {
27
+ ssr: false,
28
+ });
29
+ var Map = function (_a) {
30
+ var children = _a.children, rest = __rest(_a, ["children"]);
31
+ return _jsx(DynamicMap, __assign({}, rest, { children: children }));
32
+ };
33
+ export default Map;
34
+ //# sourceMappingURL=Map.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Map.js","sourceRoot":"","sources":["../../../src/ui/map/Map.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;AAEb,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,IAAM,UAAU,GAAG,OAAO,CAAC,cAAM,OAAA,MAAM,CAAC,WAAW,CAAC,EAAnB,CAAmB,EAAE;IACpD,GAAG,EAAE,KAAK;CACX,CAAC,CAAC;AAIH,IAAM,GAAG,GAAG,UAAC,EAA+B;IAA7B,IAAA,QAAQ,cAAA,EAAK,IAAI,cAAnB,YAAqB,CAAF;IAC9B,OAAO,KAAC,UAAU,eAAK,IAAI,cAAG,QAAQ,IAAc,CAAC;AACvD,CAAC,CAAC;AAEF,eAAe,GAAG,CAAC","sourcesContent":["\"use client\";\n\nimport dynamic from \"next/dynamic\";\n\nconst DynamicMap = dynamic(() => import(\"./LazyMap\"), {\n ssr: false,\n});\n\nimport { MapProps } from \"./types\";\n\nconst Map = ({ children, ...rest }: MapProps) => {\n return <DynamicMap {...rest}>{children}</DynamicMap>;\n};\n\nexport default Map;\n"]}
@@ -0,0 +1,34 @@
1
+ 'use client';
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ import { jsx as _jsx } from "react/jsx-runtime";
25
+ import dynamic from 'next/dynamic';
26
+ var DynamicMapCircle = dynamic(function () { return import('./LazyMapCircle'); }, {
27
+ ssr: false,
28
+ });
29
+ var MapCircle = function (_a) {
30
+ var rest = __rest(_a, []);
31
+ return _jsx(DynamicMapCircle, __assign({}, rest));
32
+ };
33
+ export default MapCircle;
34
+ //# sourceMappingURL=MapCircle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MapCircle.js","sourceRoot":"","sources":["../../../src/ui/map/MapCircle.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;;;;;;;;;AAEZ,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,IAAM,gBAAgB,GAAG,OAAO,CAAC,cAAM,OAAA,MAAM,CAAC,iBAAiB,CAAC,EAAzB,CAAyB,EAAE;IACjE,GAAG,EAAE,KAAK;CACV,CAAC,CAAA;AAIF,IAAM,SAAS,GAAG,UAAC,EAA2B;QAAtB,IAAI,cAAT,EAAW,CAAF;IAC3B,OAAO,KAAC,gBAAgB,eAAK,IAAI,EAAI,CAAA;AACtC,CAAC,CAAA;AAED,eAAe,SAAS,CAAA","sourcesContent":["'use client'\n\nimport dynamic from 'next/dynamic'\n\nconst DynamicMapCircle = dynamic(() => import('./LazyMapCircle'), {\n\tssr: false,\n})\n\nimport { MapCircleProps } from './types'\n\nconst MapCircle = ({ ...rest }: MapCircleProps) => {\n\treturn <DynamicMapCircle {...rest} />\n}\n\nexport default MapCircle\n"]}
@@ -0,0 +1,34 @@
1
+ 'use client';
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ import { jsx as _jsx } from "react/jsx-runtime";
25
+ import dynamic from 'next/dynamic';
26
+ var DynamicMapLine = dynamic(function () { return import('./LazyMapLine'); }, {
27
+ ssr: false,
28
+ });
29
+ var MapLine = function (_a) {
30
+ var rest = __rest(_a, []);
31
+ return _jsx(DynamicMapLine, __assign({}, rest));
32
+ };
33
+ export default MapLine;
34
+ //# sourceMappingURL=MapLine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MapLine.js","sourceRoot":"","sources":["../../../src/ui/map/MapLine.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;;;;;;;;;AAEZ,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,IAAM,cAAc,GAAG,OAAO,CAAC,cAAM,OAAA,MAAM,CAAC,eAAe,CAAC,EAAvB,CAAuB,EAAE;IAC7D,GAAG,EAAE,KAAK;CACV,CAAC,CAAA;AAIF,IAAM,OAAO,GAAG,UAAC,EAAyB;QAApB,IAAI,cAAT,EAAW,CAAF;IACzB,OAAO,KAAC,cAAc,eAAK,IAAI,EAAI,CAAA;AACpC,CAAC,CAAA;AAED,eAAe,OAAO,CAAA","sourcesContent":["'use client'\n\nimport dynamic from 'next/dynamic'\n\nconst DynamicMapLine = dynamic(() => import('./LazyMapLine'), {\n\tssr: false,\n})\n\nimport { MapLineProps } from './types'\n\nconst MapLine = ({ ...rest }: MapLineProps) => {\n\treturn <DynamicMapLine {...rest} />\n}\n\nexport default MapLine\n"]}
@@ -0,0 +1,34 @@
1
+ 'use client';
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ import { jsx as _jsx } from "react/jsx-runtime";
25
+ import dynamic from 'next/dynamic';
26
+ var DynamicMapmarker = dynamic(function () { return import('./LazyMapMarker'); }, {
27
+ ssr: false,
28
+ });
29
+ var MapMarker = function (_a) {
30
+ var rest = __rest(_a, []);
31
+ return _jsx(DynamicMapmarker, __assign({}, rest));
32
+ };
33
+ export default MapMarker;
34
+ //# sourceMappingURL=MapMarker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MapMarker.js","sourceRoot":"","sources":["../../../src/ui/map/MapMarker.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;;;;;;;;;AAEZ,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,IAAM,gBAAgB,GAAG,OAAO,CAAC,cAAM,OAAA,MAAM,CAAC,iBAAiB,CAAC,EAAzB,CAAyB,EAAE;IACjE,GAAG,EAAE,KAAK;CACV,CAAC,CAAA;AAIF,IAAM,SAAS,GAAG,UAAC,EAA2B;QAAtB,IAAI,cAAT,EAAW,CAAF;IAC3B,OAAO,KAAC,gBAAgB,eAAK,IAAI,EAAI,CAAA;AACtC,CAAC,CAAA;AAED,eAAe,SAAS,CAAA","sourcesContent":["'use client'\n\nimport dynamic from 'next/dynamic'\n\nconst DynamicMapmarker = dynamic(() => import('./LazyMapMarker'), {\n\tssr: false,\n})\n\nimport { MapMarkerProps } from './types'\n\nconst MapMarker = ({ ...rest }: MapMarkerProps) => {\n\treturn <DynamicMapmarker {...rest} />\n}\n\nexport default MapMarker\n"]}
@@ -0,0 +1,34 @@
1
+ 'use client';
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ import { jsx as _jsx } from "react/jsx-runtime";
25
+ import dynamic from 'next/dynamic';
26
+ var DynamicMapPolygon = dynamic(function () { return import('./LazyMapPolygon'); }, {
27
+ ssr: false,
28
+ });
29
+ var MapPolygon = function (_a) {
30
+ var rest = __rest(_a, []);
31
+ return _jsx(DynamicMapPolygon, __assign({}, rest));
32
+ };
33
+ export default MapPolygon;
34
+ //# sourceMappingURL=MapPolygon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MapPolygon.js","sourceRoot":"","sources":["../../../src/ui/map/MapPolygon.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;;;;;;;;;AAEZ,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,IAAM,iBAAiB,GAAG,OAAO,CAAC,cAAM,OAAA,MAAM,CAAC,kBAAkB,CAAC,EAA1B,CAA0B,EAAE;IACnE,GAAG,EAAE,KAAK;CACV,CAAC,CAAA;AAIF,IAAM,UAAU,GAAG,UAAC,EAA4B;QAAvB,IAAI,cAAT,EAAW,CAAF;IAC5B,OAAO,KAAC,iBAAiB,eAAK,IAAI,EAAI,CAAA;AACvC,CAAC,CAAA;AAED,eAAe,UAAU,CAAA","sourcesContent":["'use client'\n\nimport dynamic from 'next/dynamic'\n\nconst DynamicMapPolygon = dynamic(() => import('./LazyMapPolygon'), {\n\tssr: false,\n})\n\nimport { MapPolygonProps } from './types'\n\nconst MapPolygon = ({ ...rest }: MapPolygonProps) => {\n\treturn <DynamicMapPolygon {...rest} />\n}\n\nexport default MapPolygon\n"]}
@@ -0,0 +1,34 @@
1
+ 'use client';
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ import { jsx as _jsx } from "react/jsx-runtime";
25
+ import dynamic from 'next/dynamic';
26
+ var DynamicMapRectangle = dynamic(function () { return import('./LazyMapRectangle'); }, {
27
+ ssr: false,
28
+ });
29
+ var MapRectangle = function (_a) {
30
+ var rest = __rest(_a, []);
31
+ return _jsx(DynamicMapRectangle, __assign({}, rest));
32
+ };
33
+ export default MapRectangle;
34
+ //# sourceMappingURL=MapRectangle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MapRectangle.js","sourceRoot":"","sources":["../../../src/ui/map/MapRectangle.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;;;;;;;;;AAEZ,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,IAAM,mBAAmB,GAAG,OAAO,CAAC,cAAM,OAAA,MAAM,CAAC,oBAAoB,CAAC,EAA5B,CAA4B,EAAE;IACvE,GAAG,EAAE,KAAK;CACV,CAAC,CAAA;AAIF,IAAM,YAAY,GAAG,UAAC,EAA8B;QAAzB,IAAI,cAAT,EAAW,CAAF;IAC9B,OAAO,KAAC,mBAAmB,eAAK,IAAI,EAAI,CAAA;AACzC,CAAC,CAAA;AAED,eAAe,YAAY,CAAA","sourcesContent":["'use client'\n\nimport dynamic from 'next/dynamic'\n\nconst DynamicMapRectangle = dynamic(() => import('./LazyMapRectangle'), {\n\tssr: false,\n})\n\nimport { MapRectangleProps } from './types'\n\nconst MapRectangle = ({ ...rest }: MapRectangleProps) => {\n\treturn <DynamicMapRectangle {...rest} />\n}\n\nexport default MapRectangle\n"]}
@@ -0,0 +1,7 @@
1
+ export { default as Map } from './Map';
2
+ export { default as MapMarker } from './MapMarker';
3
+ export { default as MapCircle } from './MapCircle';
4
+ export { default as MapPolygon } from './MapPolygon';
5
+ export { default as MapLine } from './MapLine';
6
+ export { default as MapRectangle } from './MapRectangle';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/map/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA","sourcesContent":["export { default as Map } from './Map'\nexport { default as MapMarker } from './MapMarker'\nexport { default as MapCircle } from './MapCircle'\nexport { default as MapPolygon } from './MapPolygon'\nexport { default as MapLine } from './MapLine'\nexport { default as MapRectangle } from './MapRectangle'\n"]}
@@ -0,0 +1,33 @@
1
+ export var tileOptions = [
2
+ {
3
+ name: 'OpenStreetMap',
4
+ url: 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
5
+ attribution: '&copy; OpenStreetMap contributors',
6
+ subdomains: undefined,
7
+ },
8
+ {
9
+ name: 'CartoDB Positron',
10
+ url: 'https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png',
11
+ attribution: '&copy; OpenStreetMap contributors &copy; CARTO',
12
+ subdomains: ['a', 'b', 'c'],
13
+ },
14
+ {
15
+ name: 'CartoDB Dark Matter',
16
+ url: 'https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png',
17
+ attribution: '&copy; OpenStreetMap contributors &copy; CARTO',
18
+ subdomains: ['a', 'b', 'c'],
19
+ },
20
+ {
21
+ name: 'OpenTopoMap',
22
+ url: 'https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png',
23
+ attribution: 'Map data: &copy; OpenStreetMap contributors, SRTM | Map style: &copy; OpenTopoMap (CC-BY-SA)',
24
+ subdomains: undefined,
25
+ },
26
+ {
27
+ name: 'Esri World Imagery',
28
+ url: 'https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}',
29
+ attribution: 'Tiles &copy; Esri &mdash; Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community',
30
+ subdomains: undefined,
31
+ },
32
+ ];
33
+ //# sourceMappingURL=tileOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tileOptions.js","sourceRoot":"","sources":["../../../src/ui/map/tileOptions.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,WAAW,GAAG;IAC1B;QACC,IAAI,EAAE,eAAe;QACrB,GAAG,EAAE,oDAAoD;QACzD,WAAW,EAAE,mCAAmC;QAChD,UAAU,EAAE,SAAS;KACrB;IACD;QACC,IAAI,EAAE,kBAAkB;QACxB,GAAG,EAAE,gEAAgE;QACrE,WAAW,EAAE,gDAAgD;QAC7D,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;KAC3B;IACD;QACC,IAAI,EAAE,qBAAqB;QAC3B,GAAG,EAAE,+DAA+D;QACpE,WAAW,EAAE,gDAAgD;QAC7D,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;KAC3B;IACD;QACC,IAAI,EAAE,aAAa;QACnB,GAAG,EAAE,kDAAkD;QACvD,WAAW,EACV,8FAA8F;QAC/F,UAAU,EAAE,SAAS;KACrB;IACD;QACC,IAAI,EAAE,oBAAoB;QAC1B,GAAG,EAAE,+FAA+F;QACpG,WAAW,EACV,+IAA+I;QAChJ,UAAU,EAAE,SAAS;KACrB;CACD,CAAA","sourcesContent":["export const tileOptions = [\n\t{\n\t\tname: 'OpenStreetMap',\n\t\turl: 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',\n\t\tattribution: '&copy; OpenStreetMap contributors',\n\t\tsubdomains: undefined,\n\t},\n\t{\n\t\tname: 'CartoDB Positron',\n\t\turl: 'https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png',\n\t\tattribution: '&copy; OpenStreetMap contributors &copy; CARTO',\n\t\tsubdomains: ['a', 'b', 'c'],\n\t},\n\t{\n\t\tname: 'CartoDB Dark Matter',\n\t\turl: 'https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png',\n\t\tattribution: '&copy; OpenStreetMap contributors &copy; CARTO',\n\t\tsubdomains: ['a', 'b', 'c'],\n\t},\n\t{\n\t\tname: 'OpenTopoMap',\n\t\turl: 'https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png',\n\t\tattribution:\n\t\t\t'Map data: &copy; OpenStreetMap contributors, SRTM | Map style: &copy; OpenTopoMap (CC-BY-SA)',\n\t\tsubdomains: undefined,\n\t},\n\t{\n\t\tname: 'Esri World Imagery',\n\t\turl: 'https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}',\n\t\tattribution:\n\t\t\t'Tiles &copy; Esri &mdash; Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community',\n\t\tsubdomains: undefined,\n\t},\n]\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/map/types/index.ts"],"names":[],"mappings":"","sourcesContent":["import { LatLngExpression, LatLngBoundsExpression } from \"leaflet\";\nimport { GeoJsonObject } from \"geojson\";\n\ninterface TileLayerOptions {\n name: string;\n url: string;\n minZoom?: number;\n maxZoom?: number;\n attribution: string;\n subdomains?: string[] | undefined;\n}\n\nexport interface MapProps {\n center?: LatLngExpression;\n bounds?: LatLngBoundsExpression;\n zoom?: number;\n zoomControl?: boolean;\n fullscreenControl?: boolean;\n fullscreenControlPosition?: \"topleft\" | \"topright\" | \"bottomleft\" | \"bottomright\";\n tilesControl?: boolean;\n tileIndex?: number;\n attributionControl?: boolean;\n customTiles?: TileLayerOptions[];\n dragging?: boolean;\n scrollWheelZoom?: boolean;\n doubleClickZoom?: boolean;\n geojson?: GeoJsonObject;\n layerColor?: string;\n layerFillColor?: string;\n className?: string;\n style?: React.CSSProperties;\n children?: React.ReactNode;\n onDblClick?: (position: LatLngExpression) => void;\n}\n\nexport interface MapMarkerProps {\n position: LatLngExpression;\n popupContent?: string;\n iconName?: string;\n iconId?: string;\n iconSize?: number;\n iconColor?: string;\n draggable?: boolean;\n onDragEnd?: (position: LatLngExpression) => void;\n}\n\nexport interface CustomIconProps {\n iconName?: string;\n iconId?: string;\n size?: number;\n color?: string;\n}\n\nexport interface MapCircleProps {\n position: LatLngExpression;\n radius: number;\n fill?: string;\n stroke?: boolean;\n fillOpacity?: number;\n opacity?: number;\n popupContent?: string;\n}\n\nexport interface MapPolygonProps {\n positions: LatLngExpression[] | LatLngExpression[][];\n fill?: string;\n stroke?: boolean;\n popupContent?: string;\n}\n\nexport interface MapLineProps {\n positions: LatLngExpression[];\n color?: string;\n weight?: number;\n dashArray?: string;\n popupContent?: string;\n}\n\nexport interface MapRectangleProps {\n bounds: LatLngBoundsExpression;\n color?: string;\n fillColor?: string;\n popupContent?: string;\n}\n"]}
@@ -0,0 +1,33 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useRef, useEffect, useMemo } from 'react';
4
+ import { twMerge } from 'tailwind-merge';
5
+ import { CloseButton } from '..';
6
+ import { useDisableBack } from './hooks/useDisableBack';
7
+ var defaultStyles = 'dialog border-none';
8
+ var themes = {
9
+ light: 'backdrop:bg-white',
10
+ dark: 'dark backdrop:bg-black',
11
+ };
12
+ var Modal = function (_a) {
13
+ var src = _a.src, caption = _a.caption, alt = _a.alt, onClick = _a.onClick, open = _a.open, _b = _a.theme, theme = _b === void 0 ? 'dark' : _b, _c = _a.className, className = _c === void 0 ? '' : _c;
14
+ useDisableBack();
15
+ var dialogRef = useRef(null);
16
+ var themeClasses = useMemo(function () { return themes[theme]; }, [theme]);
17
+ useEffect(function () {
18
+ if (dialogRef.current) {
19
+ var modal = dialogRef.current;
20
+ if (open) {
21
+ modal.showModal();
22
+ document.body.style.overflowY = 'hidden';
23
+ }
24
+ else {
25
+ modal.close();
26
+ document.body.style.overflowY = 'auto';
27
+ }
28
+ }
29
+ }, [open, dialogRef]);
30
+ return (_jsxs("dialog", { className: twMerge("dialog group border-none ".concat(themeClasses), className), ref: dialogRef, children: [_jsxs("figure", { children: [_jsx("img", { src: src, onClick: onClick, alt: alt, className: 'cursor-zoom-out' }), _jsx("figcaption", { className: 'text-center p-2 bg-light dark:bg-dark dark:text-light', children: caption })] }), _jsx(CloseButton, { onClick: onClick, layout: 'circle', size: 'lg', className: 'right-3 top-3' })] }));
31
+ };
32
+ export default Modal;
33
+ //# sourceMappingURL=Modal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../src/ui/modal/Modal.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAc,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAEzD,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,IAAI,CAAA;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAIvD,IAAM,aAAa,GAAG,qBAAqB,CAAA;AAE3C,IAAM,MAAM,GAAG;IACd,KAAK,EAAE,mBAAmB;IAC1B,IAAI,EAAE,wBAAwB;CAC9B,CAAA;AAED,IAAM,KAAK,GAAG,UAAC,EAQF;QAPZ,GAAG,SAAA,EACH,OAAO,aAAA,EACP,GAAG,SAAA,EACH,OAAO,aAAA,EACP,IAAI,UAAA,EACJ,aAAc,EAAd,KAAK,mBAAG,MAAM,KAAA,EACd,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA;IAEd,cAAc,EAAE,CAAA;IAChB,IAAI,SAAS,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAA;IAC/C,IAAM,YAAY,GAAG,OAAO,CAAC,cAAM,OAAA,MAAM,CAAC,KAAK,CAAC,EAAb,CAAa,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAE1D,SAAS,CAAC;QACT,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACvB,IAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAA;YAC/B,IAAI,IAAI,EAAE,CAAC;gBACV,KAAK,CAAC,SAAS,EAAE,CAAA;gBACjB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,QAAQ,CAAA;YACzC,CAAC;iBAAM,CAAC;gBACP,KAAK,CAAC,KAAK,EAAE,CAAA;gBACb,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAA;YACvC,CAAC;QACF,CAAC;IACF,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAA;IAErB,OAAO,CACN,kBACC,SAAS,EAAE,OAAO,CAAC,mCAA4B,YAAY,CAAE,EAAE,SAAS,CAAC,EACzE,GAAG,EAAE,SAAS,aAEd,6BACC,cACC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,SAAS,EAAC,iBAAiB,GAC1B,EACF,qBAAY,SAAS,EAAC,uDAAuD,YAC3E,OAAO,GACI,IACL,EAET,KAAC,WAAW,IACX,OAAO,EAAE,OAAO,EAChB,MAAM,EAAC,QAAQ,EACf,IAAI,EAAC,IAAI,EACT,SAAS,EAAC,eAAe,GACxB,IACM,CACT,CAAA;AACF,CAAC,CAAA;AAED,eAAe,KAAK,CAAA","sourcesContent":["'use client'\n\nimport React, { useRef, useEffect, useMemo } from 'react'\n\nimport { twMerge } from 'tailwind-merge'\n\nimport { CloseButton } from '..'\n\nimport { useDisableBack } from './hooks/useDisableBack'\n\nimport { ModalProps } from './types'\n\nconst defaultStyles = 'dialog border-none'\n\nconst themes = {\n\tlight: 'backdrop:bg-white',\n\tdark: 'dark backdrop:bg-black',\n}\n\nconst Modal = ({\n\tsrc,\n\tcaption,\n\talt,\n\tonClick,\n\topen,\n\ttheme = 'dark',\n\tclassName = '',\n}: ModalProps) => {\n\tuseDisableBack()\n\tlet dialogRef = useRef<HTMLDialogElement>(null)\n\tconst themeClasses = useMemo(() => themes[theme], [theme])\n\n\tuseEffect(() => {\n\t\tif (dialogRef.current) {\n\t\t\tconst modal = dialogRef.current\n\t\t\tif (open) {\n\t\t\t\tmodal.showModal()\n\t\t\t\tdocument.body.style.overflowY = 'hidden'\n\t\t\t} else {\n\t\t\t\tmodal.close()\n\t\t\t\tdocument.body.style.overflowY = 'auto'\n\t\t\t}\n\t\t}\n\t}, [open, dialogRef])\n\n\treturn (\n\t\t<dialog\n\t\t\tclassName={twMerge(`dialog group border-none ${themeClasses}`, className)}\n\t\t\tref={dialogRef}\n\t\t>\n\t\t\t<figure>\n\t\t\t\t<img\n\t\t\t\t\tsrc={src}\n\t\t\t\t\tonClick={onClick}\n\t\t\t\t\talt={alt}\n\t\t\t\t\tclassName='cursor-zoom-out'\n\t\t\t\t/>\n\t\t\t\t<figcaption className='text-center p-2 bg-light dark:bg-dark dark:text-light'>\n\t\t\t\t\t{caption}\n\t\t\t\t</figcaption>\n\t\t\t</figure>\n\n\t\t\t<CloseButton\n\t\t\t\tonClick={onClick}\n\t\t\t\tlayout='circle'\n\t\t\t\tsize='lg'\n\t\t\t\tclassName='right-3 top-3'\n\t\t\t/>\n\t\t</dialog>\n\t)\n}\n\nexport default Modal\n"]}
@@ -0,0 +1,14 @@
1
+ import { useEffect } from 'react';
2
+ export var useDisableBack = function () {
3
+ useEffect(function () {
4
+ window.history.pushState(null, document.title, window.location.href);
5
+ function onBackButtonEvent(e) {
6
+ e.preventDefault();
7
+ }
8
+ window.addEventListener('popstate', onBackButtonEvent);
9
+ return function () {
10
+ window.removeEventListener('popstate', onBackButtonEvent);
11
+ };
12
+ }, []);
13
+ };
14
+ //# sourceMappingURL=useDisableBack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDisableBack.js","sourceRoot":"","sources":["../../../../src/ui/modal/hooks/useDisableBack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,MAAM,CAAC,IAAM,cAAc,GAAG;IAC7B,SAAS,CAAC;QACT,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAEpE,SAAS,iBAAiB,CAAC,CAAQ;YAClC,CAAC,CAAC,cAAc,EAAE,CAAA;QACnB,CAAC;QAED,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAA;QAEtD,OAAO;YACN,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAA;QAC1D,CAAC,CAAA;IACF,CAAC,EAAE,EAAE,CAAC,CAAA;AACP,CAAC,CAAA","sourcesContent":["import { useEffect } from 'react'\n\nexport const useDisableBack = () => {\n\tuseEffect(() => {\n\t\twindow.history.pushState(null, document.title, window.location.href)\n\n\t\tfunction onBackButtonEvent(e: Event) {\n\t\t\te.preventDefault()\n\t\t}\n\n\t\twindow.addEventListener('popstate', onBackButtonEvent)\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener('popstate', onBackButtonEvent)\n\t\t}\n\t}, [])\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export { default as Modal } from './Modal';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/modal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA","sourcesContent":["export { default as Modal } from './Modal'\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/modal/types/index.ts"],"names":[],"mappings":"","sourcesContent":["export interface ModalProps extends React.HTMLAttributes<HTMLDialogElement> {\n\tsrc: string\n\talt: string\n\tcaption?: string\n\tclassName?: string | undefined\n\tonClick?: () => void\n\topen: boolean\n\ttheme?: 'light' | 'dark'\n}\n"]}
@@ -0,0 +1,17 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useMemo } from 'react';
4
+ import { twMerge } from 'tailwind-merge';
5
+ import NavLinks from './NavLinks';
6
+ import NavBrand from './NavBrand';
7
+ var placements = {
8
+ top: 'sticky top-0',
9
+ bottom: 'fixed bottom-0',
10
+ };
11
+ var NavBar = function (_a) {
12
+ var brand = _a.brand, brandSrc = _a.brandSrc, brandStyles = _a.brandStyles, links = _a.links, linkStyles = _a.linkStyles, _b = _a.btnBackground, btnBackground = _b === void 0 ? 'dark' : _b, _c = _a.btnColor, btnColor = _c === void 0 ? 'light' : _c, btnLayout = _a.btnLayout, btnSize = _a.btnSize, children = _a.children, _d = _a.navStyles, navStyles = _d === void 0 ? 'bg-slate-200 dark:bg-slate-600' : _d, onLinkClick = _a.onLinkClick, _e = _a.placement, placement = _e === void 0 ? 'top' : _e, _f = _a.prefetch, prefetch = _f === void 0 ? false : _f;
13
+ var placementClasses = useMemo(function () { return placements[placement]; }, [placement]);
14
+ return (_jsxs("nav", { className: twMerge("".concat(placementClasses, " left-0 w-full z-10 flex justify-between items-center px-4 py-2"), navStyles), children: [brand ? (_jsx(NavBrand, { brand: brand, src: brandSrc, brandStyles: brandStyles })) : (_jsx("div", {})), _jsxs("div", { className: 'flex flex-row-reverse lg:flex-row items-center gap-4', children: [_jsx(NavLinks, { links: links, linkStyles: linkStyles, placement: placement, btnBackground: btnBackground, btnColor: btnColor, btnLayout: btnLayout, btnSize: btnSize, onLinkClick: onLinkClick, prefetch: prefetch }), children] })] }));
15
+ };
16
+ export default NavBar;
17
+ //# sourceMappingURL=NavBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NavBar.js","sourceRoot":"","sources":["../../../src/ui/navbar/NavBar.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAc,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,QAAQ,MAAM,YAAY,CAAA;AACjC,OAAO,QAAQ,MAAM,YAAY,CAAA;AAGjC,IAAM,UAAU,GAAG;IAClB,GAAG,EAAE,cAAc;IACnB,MAAM,EAAE,gBAAgB;CACxB,CAAA;AAED,IAAM,MAAM,GAAG,UAAC,EAeF;QAdb,KAAK,WAAA,EACL,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,KAAK,WAAA,EACL,UAAU,gBAAA,EACV,qBAAsB,EAAtB,aAAa,mBAAG,MAAM,KAAA,EACtB,gBAAkB,EAAlB,QAAQ,mBAAG,OAAO,KAAA,EAClB,SAAS,eAAA,EACT,OAAO,aAAA,EACP,QAAQ,cAAA,EACR,iBAA4C,EAA5C,SAAS,mBAAG,gCAAgC,KAAA,EAC5C,WAAW,iBAAA,EACX,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA;IAEhB,IAAM,gBAAgB,GAAG,OAAO,CAAC,cAAM,OAAA,UAAU,CAAC,SAAS,CAAC,EAArB,CAAqB,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAC1E,OAAO,CACN,eACC,SAAS,EAAE,OAAO,CACjB,UAAG,gBAAgB,oEAAiE,EACpF,SAAS,CACT,aAEA,KAAK,CAAC,CAAC,CAAC,CACR,KAAC,QAAQ,IACR,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,QAAQ,EACb,WAAW,EAAE,WAAW,GACvB,CACF,CAAC,CAAC,CAAC,CACH,eAAW,CACX,EACD,eAAK,SAAS,EAAC,sDAAsD,aACpE,KAAC,QAAQ,IACR,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,GACjB,EACD,QAAQ,IACJ,IACD,CACN,CAAA;AACF,CAAC,CAAA;AAED,eAAe,MAAM,CAAA","sourcesContent":["'use client'\n\nimport React, { useMemo } from 'react'\nimport { twMerge } from 'tailwind-merge'\nimport NavLinks from './NavLinks'\nimport NavBrand from './NavBrand'\nimport { NavBarProps } from './types'\n\nconst placements = {\n\ttop: 'sticky top-0',\n\tbottom: 'fixed bottom-0',\n}\n\nconst NavBar = ({\n\tbrand,\n\tbrandSrc,\n\tbrandStyles,\n\tlinks,\n\tlinkStyles,\n\tbtnBackground = 'dark',\n\tbtnColor = 'light',\n\tbtnLayout,\n\tbtnSize,\n\tchildren,\n\tnavStyles = 'bg-slate-200 dark:bg-slate-600',\n\tonLinkClick,\n\tplacement = 'top',\n\tprefetch = false,\n}: NavBarProps) => {\n\tconst placementClasses = useMemo(() => placements[placement], [placement])\n\treturn (\n\t\t<nav\n\t\t\tclassName={twMerge(\n\t\t\t\t`${placementClasses} left-0 w-full z-10 flex justify-between items-center px-4 py-2`,\n\t\t\t\tnavStyles\n\t\t\t)}\n\t\t>\n\t\t\t{brand ? (\n\t\t\t\t<NavBrand\n\t\t\t\t\tbrand={brand}\n\t\t\t\t\tsrc={brandSrc}\n\t\t\t\t\tbrandStyles={brandStyles}\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<div></div>\n\t\t\t)}\n\t\t\t<div className='flex flex-row-reverse lg:flex-row items-center gap-4'>\n\t\t\t\t<NavLinks\n\t\t\t\t\tlinks={links}\n\t\t\t\t\tlinkStyles={linkStyles}\n\t\t\t\t\tplacement={placement}\n\t\t\t\t\tbtnBackground={btnBackground}\n\t\t\t\t\tbtnColor={btnColor}\n\t\t\t\t\tbtnLayout={btnLayout}\n\t\t\t\t\tbtnSize={btnSize}\n\t\t\t\t\tonLinkClick={onLinkClick}\n\t\t\t\t\tprefetch={prefetch}\n\t\t\t\t/>\n\t\t\t\t{children}\n\t\t\t</div>\n\t\t</nav>\n\t)\n}\n\nexport default NavBar\n"]}
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import Link from 'next/link';
3
+ import { twMerge } from 'tailwind-merge';
4
+ var NavBrand = function (_a) {
5
+ var brand = _a.brand, src = _a.src, brandStyles = _a.brandStyles, _b = _a.prefetch, prefetch = _b === void 0 ? false : _b;
6
+ return (_jsx("div", { className: twMerge("navbrand w-1/3 md:w-1/4 lg:w-1/5 xl:w-1/6", brandStyles), children: _jsx(Link, { href: '/', prefetch: prefetch, children: _jsx("img", { src: src, alt: brand }) }) }));
7
+ };
8
+ export default NavBrand;
9
+ //# sourceMappingURL=NavBrand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NavBrand.js","sourceRoot":"","sources":["../../../src/ui/navbar/NavBrand.tsx"],"names":[],"mappings":";AACA,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAIxC,IAAM,QAAQ,GAAG,UAAC,EAA4D;QAA1D,KAAK,WAAA,EAAE,GAAG,SAAA,EAAE,WAAW,iBAAA,EAAE,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA;IAC5D,OAAO,CACN,cAAK,SAAS,EAAE,OAAO,CAAC,2CAA2C,EAAE,WAAW,CAAC,YAChF,KAAC,IAAI,IACJ,IAAI,EAAC,GAAG,EACR,QAAQ,EAAE,QAAQ,YAElB,cACC,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,KAAK,GACT,GACI,GACF,CACN,CAAA;AACF,CAAC,CAAA;AAED,eAAe,QAAQ,CAAA","sourcesContent":["import React from 'react'\nimport Link from 'next/link'\nimport { twMerge } from 'tailwind-merge'\n\nimport { NavBrandProps } from './types'\n\nconst NavBrand = ({ brand, src, brandStyles, prefetch = false }: NavBrandProps) => {\n\treturn (\n\t\t<div className={twMerge(`navbrand w-1/3 md:w-1/4 lg:w-1/5 xl:w-1/6`, brandStyles)}>\n\t\t\t<Link\n\t\t\t\thref='/'\n\t\t\t\tprefetch={prefetch}\n\t\t\t>\n\t\t\t\t<img\n\t\t\t\t\tsrc={src}\n\t\t\t\t\talt={brand}\n\t\t\t\t/>\n\t\t\t</Link>\n\t\t</div>\n\t)\n}\n\nexport default NavBrand\n"]}
@@ -0,0 +1,27 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState, useMemo } from 'react';
3
+ import Link from 'next/link';
4
+ import { twMerge } from 'tailwind-merge';
5
+ import { Button } from '..';
6
+ var placements = {
7
+ top: 'top-full',
8
+ bottom: 'bottom-full',
9
+ };
10
+ var NavLinks = function (_a) {
11
+ var links = _a.links, _b = _a.linkStyles, linkStyles = _b === void 0 ? 'lg:text-dark dark:lg:text-light' : _b, btnBackground = _a.btnBackground, _c = _a.btnColor, btnColor = _c === void 0 ? 'light' : _c, _d = _a.btnLayout, btnLayout = _d === void 0 ? 'square' : _d, _e = _a.btnSize, btnSize = _e === void 0 ? 'md' : _e, _f = _a.placement, placement = _f === void 0 ? 'top' : _f, onLinkClick = _a.onLinkClick, _g = _a.prefetch, prefetch = _g === void 0 ? false : _g;
12
+ var _h = useState(false), isMobileMenuOpen = _h[0], setIsMobileMenuOpen = _h[1];
13
+ var placementClasses = useMemo(function () { return placements[placement]; }, [placement]);
14
+ var onblur = function () {
15
+ setTimeout(function () {
16
+ setIsMobileMenuOpen(false);
17
+ }, 100);
18
+ };
19
+ return (_jsxs("div", { children: [_jsx(Button, { btnBackground: btnBackground, btnColor: btnColor, size: btnSize, layout: btnLayout, title: 'Menu', className: 'lg:hidden focus:outline-none', onClick: function () { return setIsMobileMenuOpen(function (prev) { return !prev; }); }, onBlur: function () { return onblur(); }, suppressHydrationWarning: true, children: _jsx("svg", { xmlns: 'http://www.w3.org/2000/svg', fill: 'none', viewBox: '0 0 24 24', stroke: 'currentColor', className: 'w-[1em] h-[1em]', children: _jsx("path", { strokeLinecap: 'round', strokeLinejoin: 'round', strokeWidth: '2', d: isMobileMenuOpen ? 'M6 18L18 6M6 6l12 12' : 'M4 6h16M4 12h16M4 18h16' }) }) }), _jsx("div", { className: twMerge('menu flex gap-4 lg:flex-row lg:static lg:top-auto lg:bg-transparent lg:w-auto lg:h-auto', isMobileMenuOpen
20
+ ? "absolute ".concat(placementClasses, " left-0 dark:bg-slate-200 bg-slate-600 w-full flex-col h-auto py-4")
21
+ : 'hidden lg:flex'), children: links.map(function (link) { return (_jsx(Link, { href: link.href, prefetch: prefetch, className: twMerge('navbar-link px-4 py-0 lg:px-2 lg:py-0 lg:text-xl text-light dark:text-dark', linkStyles), onClick: function () {
22
+ setIsMobileMenuOpen(false);
23
+ onLinkClick === null || onLinkClick === void 0 ? void 0 : onLinkClick(link.name);
24
+ }, children: link.name }, link.name)); }) })] }));
25
+ };
26
+ export default NavLinks;
27
+ //# sourceMappingURL=NavLinks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NavLinks.js","sourceRoot":"","sources":["../../../src/ui/navbar/NavLinks.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAChD,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAA;AAG3B,IAAM,UAAU,GAAG;IAClB,GAAG,EAAE,UAAU;IACf,MAAM,EAAE,aAAa;CACrB,CAAA;AAED,IAAM,QAAQ,GAAG,UAAC,EAUH;QATd,KAAK,WAAA,EACL,kBAA8C,EAA9C,UAAU,mBAAG,iCAAiC,KAAA,EAC9C,aAAa,mBAAA,EACb,gBAAkB,EAAlB,QAAQ,mBAAG,OAAO,KAAA,EAClB,iBAAoB,EAApB,SAAS,mBAAG,QAAQ,KAAA,EACpB,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EACd,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,WAAW,iBAAA,EACX,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA;IAEV,IAAA,KAA0C,QAAQ,CAAC,KAAK,CAAC,EAAxD,gBAAgB,QAAA,EAAE,mBAAmB,QAAmB,CAAA;IAC/D,IAAM,gBAAgB,GAAG,OAAO,CAAC,cAAM,OAAA,UAAU,CAAC,SAAS,CAAC,EAArB,CAAqB,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAE1E,IAAM,MAAM,GAAG;QACd,UAAU,CAAC;YACV,mBAAmB,CAAC,KAAK,CAAC,CAAA;QAC3B,CAAC,EAAE,GAAG,CAAC,CAAA;IACR,CAAC,CAAA;IAED,OAAO,CACN,0BACC,KAAC,MAAM,IACN,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,SAAS,EACjB,KAAK,EAAC,MAAM,EACZ,SAAS,EAAC,8BAA8B,EACxC,OAAO,EAAE,cAAM,OAAA,mBAAmB,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,IAAI,EAAL,CAAK,CAAC,EAApC,CAAoC,EACnD,MAAM,EAAE,cAAM,OAAA,MAAM,EAAE,EAAR,CAAQ,EACtB,wBAAwB,EAAE,IAAI,YAE9B,cACC,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,WAAW,EACnB,MAAM,EAAC,cAAc,EACrB,SAAS,EAAC,iBAAiB,YAE3B,eACC,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,WAAW,EAAC,GAAG,EACf,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,yBAAyB,GACvE,GACG,GACE,EACT,cACC,SAAS,EAAE,OAAO,CACjB,yFAAyF,EACzF,gBAAgB;oBACf,CAAC,CAAC,mBAAY,gBAAgB,uEAAoE;oBAClG,CAAC,CAAC,gBAAgB,CACnB,YAEA,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,CACpB,KAAC,IAAI,IAEJ,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,OAAO,CACjB,4EAA4E,EAC5E,UAAU,CACV,EACD,OAAO,EAAE;wBACR,mBAAmB,CAAC,KAAK,CAAC,CAAA;wBAC1B,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAG,IAAI,CAAC,IAAI,CAAC,CAAA;oBACzB,CAAC,YAEA,IAAI,CAAC,IAAI,IAZL,IAAI,CAAC,IAAI,CAaR,CACP,EAhBoB,CAgBpB,CAAC,GACG,IACD,CACN,CAAA;AACF,CAAC,CAAA;AAED,eAAe,QAAQ,CAAA","sourcesContent":["import React, { useState, useMemo } from 'react'\nimport Link from 'next/link'\nimport { twMerge } from 'tailwind-merge'\nimport { Button } from '..'\nimport { NavLinkProps } from './types'\n\nconst placements = {\n\ttop: 'top-full',\n\tbottom: 'bottom-full',\n}\n\nconst NavLinks = ({\n\tlinks,\n\tlinkStyles = 'lg:text-dark dark:lg:text-light',\n\tbtnBackground,\n\tbtnColor = 'light',\n\tbtnLayout = 'square',\n\tbtnSize = 'md',\n\tplacement = 'top',\n\tonLinkClick,\n\tprefetch = false,\n}: NavLinkProps) => {\n\tconst [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false)\n\tconst placementClasses = useMemo(() => placements[placement], [placement])\n\n\tconst onblur = () => {\n\t\tsetTimeout(() => {\n\t\t\tsetIsMobileMenuOpen(false)\n\t\t}, 100)\n\t}\n\n\treturn (\n\t\t<div>\n\t\t\t<Button\n\t\t\t\tbtnBackground={btnBackground}\n\t\t\t\tbtnColor={btnColor}\n\t\t\t\tsize={btnSize}\n\t\t\t\tlayout={btnLayout}\n\t\t\t\ttitle='Menu'\n\t\t\t\tclassName='lg:hidden focus:outline-none'\n\t\t\t\tonClick={() => setIsMobileMenuOpen((prev) => !prev)}\n\t\t\t\tonBlur={() => onblur()}\n\t\t\t\tsuppressHydrationWarning={true}\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns='http://www.w3.org/2000/svg'\n\t\t\t\t\tfill='none'\n\t\t\t\t\tviewBox='0 0 24 24'\n\t\t\t\t\tstroke='currentColor'\n\t\t\t\t\tclassName='w-[1em] h-[1em]'\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\tstrokeLinecap='round'\n\t\t\t\t\t\tstrokeLinejoin='round'\n\t\t\t\t\t\tstrokeWidth='2'\n\t\t\t\t\t\td={isMobileMenuOpen ? 'M6 18L18 6M6 6l12 12' : 'M4 6h16M4 12h16M4 18h16'}\n\t\t\t\t\t/>\n\t\t\t\t</svg>\n\t\t\t</Button>\n\t\t\t<div\n\t\t\t\tclassName={twMerge(\n\t\t\t\t\t'menu flex gap-4 lg:flex-row lg:static lg:top-auto lg:bg-transparent lg:w-auto lg:h-auto',\n\t\t\t\t\tisMobileMenuOpen\n\t\t\t\t\t\t? `absolute ${placementClasses} left-0 dark:bg-slate-200 bg-slate-600 w-full flex-col h-auto py-4`\n\t\t\t\t\t\t: 'hidden lg:flex'\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{links.map((link) => (\n\t\t\t\t\t<Link\n\t\t\t\t\t\tkey={link.name}\n\t\t\t\t\t\thref={link.href}\n\t\t\t\t\t\tprefetch={prefetch}\n\t\t\t\t\t\tclassName={twMerge(\n\t\t\t\t\t\t\t'navbar-link px-4 py-0 lg:px-2 lg:py-0 lg:text-xl text-light dark:text-dark',\n\t\t\t\t\t\t\tlinkStyles\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\tsetIsMobileMenuOpen(false)\n\t\t\t\t\t\t\tonLinkClick?.(link.name)\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{link.name}\n\t\t\t\t\t</Link>\n\t\t\t\t))}\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n\nexport default NavLinks\n"]}
@@ -0,0 +1,2 @@
1
+ export { default as NavBar } from './NavBar';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/navbar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAA","sourcesContent":["export { default as NavBar } from './NavBar'\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ui/navbar/types/index.ts"],"names":[],"mappings":"","sourcesContent":["type colors = 'dark' | 'light' | 'info' | 'success' | 'warning' | 'danger' | 'primary' | 'secondary'\n\ntype ButtonColor = colors | 'current'\ntype ButtonBackground = colors | 'transparent'\ntype ButtonSize = 'sm' | 'md' | 'lg'\ntype ButtonLayout = 'rounded' | 'square' | 'circle'\n\nexport interface NavBarProps {\n\tnavStyles?: string\n\tbrand?: string\n\tbrandSrc?: string\n\tbrandStyles?: string\n\tlinks: NavLink[]\n\tlinkStyles?: string\n\tbtnBackground?: ButtonBackground\n\tbtnColor?: ButtonColor\n\tbtnLayout?: ButtonLayout\n\tbtnSize?: ButtonSize\n\tchildren?: React.ReactNode\n\tonLinkClick?: (name: string) => void\n\tplacement?: 'top' | 'bottom'\n\tprefetch?: boolean\n}\n\nexport interface NavLinkProps {\n\tlinks: NavLink[]\n\tlinkStyles?: string\n\tbtnBackground?: ButtonBackground\n\tbtnColor?: ButtonColor\n\tbtnLayout?: ButtonLayout\n\tbtnSize?: ButtonSize\n\tonLinkClick?: (name: string) => void\n\tplacement?: 'top' | 'bottom'\n\tprefetch?: boolean\n}\n\nexport interface NavBrandProps {\n\tbrand?: string\n\tsrc?: string\n\tbrandStyles?: string\n\tprefetch?: boolean\n}\n\nexport interface NavLink {\n\tname: string\n\thref: string\n}\n"]}
@@ -0,0 +1,42 @@
1
+ "use client";
2
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
3
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4
+ if (ar || !(i in from)) {
5
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
6
+ ar[i] = from[i];
7
+ }
8
+ }
9
+ return to.concat(ar || Array.prototype.slice.call(from));
10
+ };
11
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
12
+ import { useState, useEffect, useMemo } from "react";
13
+ import { twMerge } from "tailwind-merge";
14
+ import { roundUp } from "@smitch/js-lib";
15
+ import { HiChevronRight, HiChevronLeft, HiChevronDoubleRight, HiChevronDoubleLeft, } from "react-icons/hi";
16
+ import { ButtonGroup, Select, Button } from "..";
17
+ var sizes = {
18
+ md: "text-base",
19
+ lg: "text-lg",
20
+ xl: "text-xl",
21
+ };
22
+ var Pagination = function (_a) {
23
+ var _b = _a.page, page = _b === void 0 ? "1" : _b, _c = _a.feedback, feedback = _c === void 0 ? true : _c, _d = _a.feedbackLabel, feedbackLabel = _d === void 0 ? "Page" : _d, _e = _a.feedbackSeparator, feedbackSeparator = _e === void 0 ? "of" : _e, _f = _a.firstPageLabel, firstPageLabel = _f === void 0 ? "First Page" : _f, _g = _a.lastPageLabel, lastPageLabel = _g === void 0 ? "Last Page" : _g, _h = _a.prevPageLabel, prevPageLabel = _h === void 0 ? "Previous Page" : _h, _j = _a.nextPageLabel, nextPageLabel = _j === void 0 ? "Next Page" : _j, range = _a.range, results = _a.results, _k = _a.size, size = _k === void 0 ? "md" : _k, _l = _a.layout, layout = _l === void 0 ? "horizontal" : _l, _m = _a.gap, gap = _m === void 0 ? "none" : _m, _o = _a.rounded, rounded = _o === void 0 ? true : _o, _p = _a.icons, icons = _p === void 0 ? true : _p, _q = _a.minimal, minimal = _q === void 0 ? false : _q, btnBackground = _a.btnBackground, btnColor = _a.btnColor, _r = _a.btnShape, btnShape = _r === void 0 ? "default" : _r, onChange = _a.onChange, _s = _a.className, className = _s === void 0 ? "" : _s, style = _a.style;
24
+ var _t = useState(page), selectValue = _t[0], setSelectValue = _t[1];
25
+ useEffect(function () {
26
+ setSelectValue(page);
27
+ }, [page]);
28
+ var sizeClasses = useMemo(function () { return sizes[size]; }, [size]);
29
+ var handleChange = function (e) {
30
+ return onChange(e.currentTarget.value);
31
+ };
32
+ var handleOnClick = function (page) { return onChange(page); };
33
+ var totalPages = useMemo(function () {
34
+ return roundUp(results / range);
35
+ }, [results, range]);
36
+ var options = useMemo(function () {
37
+ return __spreadArray([], new Array(totalPages), true).map(function (_el, index) { return (index + 1).toString(); });
38
+ }, [totalPages]);
39
+ return (_jsxs("nav", { className: twMerge("pagination group flex flex-col items-center justify-center gap-1 ", className), style: style, "aria-label": "pagination", children: [_jsxs(ButtonGroup, { className: "pagination-buttons mb-1 ".concat(btnShape === "circle" ? "items-center" : ""), layout: layout, rounded: rounded, gap: gap, children: [_jsx(Button, { className: "".concat(minimal ? "hidden" : ""), title: firstPageLabel, onClick: function () { return handleOnClick("1"); }, disabled: page === "1", size: size, btnBackground: btnBackground, btnColor: btnColor, layout: btnShape, children: icons ? (_jsxs(_Fragment, { children: [_jsx(HiChevronDoubleLeft, { className: "mx-auto" }), _jsx("span", { className: "sr-only", children: firstPageLabel })] })) : ("First") }), _jsx(Button, { title: prevPageLabel, onClick: function () { return handleOnClick("".concat(Number(selectValue) - 1)); }, disabled: Number(selectValue) === 1, size: size, btnBackground: btnBackground, btnColor: btnColor, layout: btnShape, children: icons ? (_jsxs(_Fragment, { children: [_jsx(HiChevronLeft, { className: "mx-auto" }), _jsx("span", { className: "sr-only", children: prevPageLabel })] })) : ("Prev") }), _jsx(Select, { dropdownSize: size, className: "".concat(size, " border-gray-200 dark:border-gray-700 min-w-16 w-full text-center bg-light text-dark dark:bg-black dark:text-light"), defaultValue: selectValue, onChange: handleChange, nocaret: true, options: options, rounded: "none" }), _jsx(Button, { title: nextPageLabel, onClick: function () { return handleOnClick("".concat(Number(selectValue) + 1)); }, disabled: Number(selectValue) === totalPages, size: size, btnBackground: btnBackground, btnColor: btnColor, layout: btnShape, children: icons ? (_jsxs(_Fragment, { children: [_jsx(HiChevronRight, { className: "mx-auto" }), _jsx("span", { className: "sr-only", children: nextPageLabel })] })) : ("Next") }), _jsx(Button, { className: "".concat(minimal ? "hidden" : ""), title: lastPageLabel, onClick: function () { return handleOnClick(totalPages.toString()); }, disabled: Number(selectValue) === totalPages, size: size, btnBackground: btnBackground, btnColor: btnColor, layout: btnShape, children: icons ? (_jsxs(_Fragment, { children: [_jsx(HiChevronDoubleRight, { className: "mx-auto" }), _jsx("span", { className: "sr-only", children: lastPageLabel })] })) : ("Last") })] }), feedback ? (_jsxs("div", { className: "feedback mt-1 ".concat(sizeClasses), children: [feedbackLabel, " ", selectValue, " ", feedbackSeparator, " ", totalPages] })) : null] }));
40
+ };
41
+ export default Pagination;
42
+ //# sourceMappingURL=Pagination.js.map