polpo 0.1.7 → 0.1.8

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 (391) hide show
  1. package/dist/components.cjs +31 -0
  2. package/dist/components.cjs.map +1 -0
  3. package/dist/components.d.cts +1866 -0
  4. package/dist/components.d.ts +1866 -0
  5. package/dist/components.js +31 -0
  6. package/dist/components.js.map +1 -0
  7. package/dist/{get-modal-position-drle0OjP.d.cts → get-modal-position-C5jQsaGx.d.cts} +1 -1
  8. package/dist/{get-modal-position-drle0OjP.d.ts → get-modal-position-C5jQsaGx.d.ts} +1 -1
  9. package/dist/helpers.cjs +1 -1
  10. package/dist/helpers.cjs.map +1 -1
  11. package/dist/helpers.d.cts +2 -2
  12. package/dist/helpers.d.ts +2 -2
  13. package/dist/helpers.js +1 -1
  14. package/dist/helpers.js.map +1 -1
  15. package/dist/hooks.cjs +1 -1
  16. package/dist/hooks.cjs.map +1 -1
  17. package/dist/hooks.d.cts +15 -13
  18. package/dist/hooks.d.ts +15 -13
  19. package/dist/hooks.js +1 -1
  20. package/dist/hooks.js.map +1 -1
  21. package/dist/layouts.cjs +4 -0
  22. package/dist/layouts.cjs.map +1 -0
  23. package/dist/{ui.d.cts → layouts.d.cts} +237 -2202
  24. package/dist/{ui.d.ts → layouts.d.ts} +237 -2202
  25. package/dist/layouts.js +4 -0
  26. package/dist/layouts.js.map +1 -0
  27. package/dist/types.cjs +3 -0
  28. package/dist/types.cjs.map +1 -0
  29. package/dist/types.d.cts +8 -0
  30. package/dist/types.d.ts +8 -0
  31. package/dist/types.js +2 -0
  32. package/dist/types.js.map +1 -0
  33. package/dist/{use-modal-transition-XQHye62R.d.cts → use-modal-transition-C0lyjvkD.d.ts} +4 -4
  34. package/dist/{use-modal-transition-DPZFWFFf.d.ts → use-modal-transition-C7DzbnY5.d.cts} +4 -4
  35. package/package.json +76 -76
  36. package/.eslintrc.cjs +0 -9
  37. package/.storybook/decorators.tsx +0 -61
  38. package/.storybook/main.ts +0 -47
  39. package/.storybook/manager-head.html +0 -2
  40. package/.storybook/manager.ts +0 -7
  41. package/.storybook/preview-head.html +0 -2
  42. package/.storybook/preview.ts +0 -38
  43. package/.storybook/theme.ts +0 -47
  44. package/.turbo/turbo-lint.log +0 -4
  45. package/README.md +0 -65
  46. package/dist/chunk-CF5MBMWG.js +0 -3
  47. package/dist/chunk-CF5MBMWG.js.map +0 -1
  48. package/dist/chunk-MAWW6AA7.js +0 -3
  49. package/dist/chunk-MAWW6AA7.js.map +0 -1
  50. package/dist/ui.cjs +0 -2279
  51. package/dist/ui.cjs.map +0 -1
  52. package/dist/ui.js +0 -2279
  53. package/dist/ui.js.map +0 -1
  54. package/src/components/accordion/accordion-item.stories.tsx +0 -128
  55. package/src/components/accordion/accordion-item.tsx +0 -119
  56. package/src/components/accordion/accordion.stories.tsx +0 -74
  57. package/src/components/accordion/accordion.style.ts +0 -42
  58. package/src/components/accordion/accordion.tsx +0 -74
  59. package/src/components/accordion/index.ts +0 -2
  60. package/src/components/buttons/button/button.stories.tsx +0 -103
  61. package/src/components/buttons/button/button.style.ts +0 -152
  62. package/src/components/buttons/button/button.tsx +0 -107
  63. package/src/components/buttons/button/index.ts +0 -1
  64. package/src/components/buttons/index.ts +0 -1
  65. package/src/components/cards/flip-card/flip-card.stories.tsx +0 -61
  66. package/src/components/cards/flip-card/flip-card.style.ts +0 -45
  67. package/src/components/cards/flip-card/flip-card.tsx +0 -55
  68. package/src/components/cards/flip-card/index.ts +0 -1
  69. package/src/components/cards/hover-card/hover-card.stories.tsx +0 -45
  70. package/src/components/cards/hover-card/hover-card.style.ts +0 -13
  71. package/src/components/cards/hover-card/hover-card.tsx +0 -71
  72. package/src/components/cards/hover-card/index.ts +0 -1
  73. package/src/components/cards/index.ts +0 -3
  74. package/src/components/cards/slide-card/index.ts +0 -1
  75. package/src/components/cards/slide-card/slide-card.stories.tsx +0 -47
  76. package/src/components/cards/slide-card/slide-card.tsx +0 -42
  77. package/src/components/cursor/cursor.stories.tsx +0 -36
  78. package/src/components/cursor/cursor.style.ts +0 -73
  79. package/src/components/cursor/cursor.tsx +0 -49
  80. package/src/components/cursor/index.ts +0 -1
  81. package/src/components/form/checkbox/checkbox.stories.tsx +0 -85
  82. package/src/components/form/checkbox/checkbox.style.ts +0 -109
  83. package/src/components/form/checkbox/checkbox.tsx +0 -120
  84. package/src/components/form/checkbox/index.ts +0 -1
  85. package/src/components/form/controller/controller.tsx +0 -42
  86. package/src/components/form/controller/index.ts +0 -1
  87. package/src/components/form/date-picker/date-picker.stories.tsx +0 -38
  88. package/src/components/form/date-picker/date-picker.tsx +0 -67
  89. package/src/components/form/date-picker/index.ts +0 -1
  90. package/src/components/form/field/field.stories.tsx +0 -52
  91. package/src/components/form/field/field.style.ts +0 -94
  92. package/src/components/form/field/field.tsx +0 -86
  93. package/src/components/form/field/field.types.ts +0 -34
  94. package/src/components/form/field/index.ts +0 -2
  95. package/src/components/form/form.stories.types.tsx +0 -50
  96. package/src/components/form/form.types.ts +0 -37
  97. package/src/components/form/index.ts +0 -14
  98. package/src/components/form/input/index.ts +0 -1
  99. package/src/components/form/input/input.stories.tsx +0 -41
  100. package/src/components/form/input/input.tsx +0 -73
  101. package/src/components/form/input-color/index.ts +0 -1
  102. package/src/components/form/input-color/input-color.stories.tsx +0 -46
  103. package/src/components/form/input-color/input-color.style.ts +0 -94
  104. package/src/components/form/input-color/input-color.tsx +0 -162
  105. package/src/components/form/input-file/index.ts +0 -1
  106. package/src/components/form/input-file/input-file.stories.tsx +0 -40
  107. package/src/components/form/input-file/input-file.style.ts +0 -143
  108. package/src/components/form/input-file/input-file.tsx +0 -214
  109. package/src/components/form/input-password/index.ts +0 -1
  110. package/src/components/form/input-password/input-password.stories.tsx +0 -37
  111. package/src/components/form/input-password/input-password.tsx +0 -83
  112. package/src/components/form/radio/index.ts +0 -1
  113. package/src/components/form/radio/radio.stories.tsx +0 -68
  114. package/src/components/form/radio/radio.style.ts +0 -79
  115. package/src/components/form/radio/radio.tsx +0 -106
  116. package/src/components/form/select/data.stories.json +0 -452
  117. package/src/components/form/select/index.ts +0 -1
  118. package/src/components/form/select/option.tsx +0 -101
  119. package/src/components/form/select/options.tsx +0 -161
  120. package/src/components/form/select/select.stories.tsx +0 -369
  121. package/src/components/form/select/select.style.ts +0 -116
  122. package/src/components/form/select/select.tsx +0 -312
  123. package/src/components/form/select/select.types.ts +0 -97
  124. package/src/components/form/slider/index.ts +0 -1
  125. package/src/components/form/slider/slider.stories.tsx +0 -40
  126. package/src/components/form/slider/slider.style.ts +0 -92
  127. package/src/components/form/slider/slider.tsx +0 -108
  128. package/src/components/form/switch/index.ts +0 -1
  129. package/src/components/form/switch/switch.stories.tsx +0 -88
  130. package/src/components/form/switch/switch.style.ts +0 -137
  131. package/src/components/form/switch/switch.tsx +0 -177
  132. package/src/components/form/textarea/index.ts +0 -1
  133. package/src/components/form/textarea/textarea.stories.tsx +0 -43
  134. package/src/components/form/textarea/textarea.style.ts +0 -7
  135. package/src/components/form/textarea/textarea.tsx +0 -76
  136. package/src/components/icon/icon.stories.tsx +0 -63
  137. package/src/components/icon/icon.tsx +0 -64
  138. package/src/components/icon/icons/index.ts +0 -18
  139. package/src/components/icon/icons/object.tsx +0 -482
  140. package/src/components/icon/icons/social.tsx +0 -88
  141. package/src/components/icon/icons/symbol.tsx +0 -776
  142. package/src/components/icon/index.ts +0 -5
  143. package/src/components/image/image.stories.tsx +0 -25
  144. package/src/components/image/image.tsx +0 -7
  145. package/src/components/image/index.ts +0 -1
  146. package/src/components/index.ts +0 -17
  147. package/src/components/infinity-scroll/index.ts +0 -1
  148. package/src/components/infinity-scroll/infinity-scroll.stories.tsx +0 -118
  149. package/src/components/infinity-scroll/infinity-scroll.style.ts +0 -30
  150. package/src/components/infinity-scroll/infinity-scroll.tsx +0 -53
  151. package/src/components/line/index.ts +0 -1
  152. package/src/components/line/line.stories.tsx +0 -66
  153. package/src/components/line/line.style.ts +0 -57
  154. package/src/components/line/line.tsx +0 -76
  155. package/src/components/loaders/icons/box-1.tsx +0 -31
  156. package/src/components/loaders/icons/box-2.tsx +0 -30
  157. package/src/components/loaders/icons/box-3.tsx +0 -66
  158. package/src/components/loaders/icons/clock-1.tsx +0 -25
  159. package/src/components/loaders/icons/clock-2.tsx +0 -58
  160. package/src/components/loaders/icons/dots-1.tsx +0 -194
  161. package/src/components/loaders/icons/dots-2.tsx +0 -15
  162. package/src/components/loaders/icons/dots-3.tsx +0 -38
  163. package/src/components/loaders/icons/dots-4.tsx +0 -90
  164. package/src/components/loaders/icons/dots-5.tsx +0 -30
  165. package/src/components/loaders/icons/dots-6.tsx +0 -72
  166. package/src/components/loaders/icons/dots-7.tsx +0 -51
  167. package/src/components/loaders/icons/dots-8.tsx +0 -42
  168. package/src/components/loaders/icons/dots-9.tsx +0 -27
  169. package/src/components/loaders/icons/lines-1.tsx +0 -96
  170. package/src/components/loaders/icons/lines-2.tsx +0 -48
  171. package/src/components/loaders/icons/pulse-1.tsx +0 -69
  172. package/src/components/loaders/icons/pulse-2.tsx +0 -69
  173. package/src/components/loaders/icons/pulse-3.tsx +0 -105
  174. package/src/components/loaders/icons/pulse-4.tsx +0 -105
  175. package/src/components/loaders/icons/pulse-5.tsx +0 -56
  176. package/src/components/loaders/icons/spinner-1.tsx +0 -162
  177. package/src/components/loaders/icons/spinner-2.tsx +0 -147
  178. package/src/components/loaders/icons/spinner-3.tsx +0 -35
  179. package/src/components/loaders/icons/spinner-4.tsx +0 -16
  180. package/src/components/loaders/index.ts +0 -1
  181. package/src/components/loaders/simple-loader/index.ts +0 -1
  182. package/src/components/loaders/simple-loader/simple-loader.stories.tsx +0 -42
  183. package/src/components/loaders/simple-loader/simple-loader.style.ts +0 -12
  184. package/src/components/loaders/simple-loader/simple-loader.tsx +0 -99
  185. package/src/components/modals/action-modal/action-modal.stories.tsx +0 -157
  186. package/src/components/modals/action-modal/action-modal.style.ts +0 -117
  187. package/src/components/modals/action-modal/action-modal.tsx +0 -148
  188. package/src/components/modals/action-modal/index.ts +0 -1
  189. package/src/components/modals/aside-modal/aside-modal.stories.tsx +0 -81
  190. package/src/components/modals/aside-modal/aside-modal.style.ts +0 -88
  191. package/src/components/modals/aside-modal/aside-modal.tsx +0 -64
  192. package/src/components/modals/aside-modal/index.ts +0 -1
  193. package/src/components/modals/confirmation-modal/confirmation-modal.stories.tsx +0 -62
  194. package/src/components/modals/confirmation-modal/confirmation-modal.style.ts +0 -17
  195. package/src/components/modals/confirmation-modal/confirmation-modal.tsx +0 -43
  196. package/src/components/modals/confirmation-modal/index.ts +0 -1
  197. package/src/components/modals/index.ts +0 -6
  198. package/src/components/modals/menu/index.ts +0 -1
  199. package/src/components/modals/menu/menu.stories.tsx +0 -79
  200. package/src/components/modals/menu/menu.style.ts +0 -103
  201. package/src/components/modals/menu/menu.tsx +0 -186
  202. package/src/components/modals/modal/backdrop.tsx +0 -70
  203. package/src/components/modals/modal/index.ts +0 -2
  204. package/src/components/modals/modal/modal.stories.tsx +0 -328
  205. package/src/components/modals/modal/modal.style.ts +0 -70
  206. package/src/components/modals/modal/modal.tsx +0 -106
  207. package/src/components/modals/portal/index.ts +0 -1
  208. package/src/components/modals/portal/portal.tsx +0 -21
  209. package/src/components/ripple/index.ts +0 -1
  210. package/src/components/ripple/ripple.stories.tsx +0 -38
  211. package/src/components/ripple/ripple.style.ts +0 -33
  212. package/src/components/ripple/ripple.tsx +0 -65
  213. package/src/components/smart-table/index.ts +0 -1
  214. package/src/components/smart-table/smart-table.column.tsx +0 -63
  215. package/src/components/smart-table/smart-table.helpers.tsx +0 -59
  216. package/src/components/smart-table/smart-table.hooks.ts +0 -27
  217. package/src/components/smart-table/smart-table.row.tsx +0 -29
  218. package/src/components/smart-table/smart-table.stories.tsx +0 -301
  219. package/src/components/smart-table/smart-table.style.ts +0 -102
  220. package/src/components/smart-table/smart-table.tsx +0 -112
  221. package/src/components/smart-table/smart-table.types.ts +0 -41
  222. package/src/components/tabs/index.ts +0 -1
  223. package/src/components/tabs/tabs-container.stories.tsx +0 -159
  224. package/src/components/tabs/tabs-list.tsx +0 -134
  225. package/src/components/tabs/tabs.stories.tsx +0 -68
  226. package/src/components/tabs/tabs.style.ts +0 -137
  227. package/src/components/tabs/tabs.tsx +0 -117
  228. package/src/components/tag/index.ts +0 -1
  229. package/src/components/tag/tag.stories.tsx +0 -48
  230. package/src/components/tag/tag.style.ts +0 -29
  231. package/src/components/tag/tag.tsx +0 -34
  232. package/src/components/tooltips/click-to-copy/click-to-copy.stories.tsx +0 -39
  233. package/src/components/tooltips/click-to-copy/click-to-copy.tsx +0 -41
  234. package/src/components/tooltips/click-to-copy/index.ts +0 -1
  235. package/src/components/tooltips/index.ts +0 -2
  236. package/src/components/tooltips/tooltip/index.ts +0 -1
  237. package/src/components/tooltips/tooltip/tooltip.stories.tsx +0 -38
  238. package/src/components/tooltips/tooltip/tooltip.style.ts +0 -93
  239. package/src/components/tooltips/tooltip/tooltip.tsx +0 -59
  240. package/src/components/typography/index.ts +0 -2
  241. package/src/components/typography/typography.constants.ts +0 -43
  242. package/src/components/typography/typography.stories.tsx +0 -108
  243. package/src/components/typography/typography.style.ts +0 -76
  244. package/src/components/typography/typography.tsx +0 -100
  245. package/src/contexts/fetch-context/fetch-context.tsx +0 -114
  246. package/src/contexts/fetch-context/index.ts +0 -1
  247. package/src/contexts/form-context/form-context.tsx +0 -43
  248. package/src/contexts/form-context/index.ts +0 -1
  249. package/src/contexts/index.ts +0 -3
  250. package/src/contexts/theme-context/index.ts +0 -3
  251. package/src/contexts/theme-context/theme-context.tsx +0 -158
  252. package/src/contexts/theme-context/theme.animations.ts +0 -269
  253. package/src/contexts/theme-context/theme.defaults.ts +0 -209
  254. package/src/contexts/theme-context/theme.style.ts +0 -78
  255. package/src/contexts/theme-context/themes.ts +0 -98
  256. package/src/core/http-client.d.ts +0 -11
  257. package/src/core/http-client.d.ts.map +0 -1
  258. package/src/core/http-client.ts +0 -49
  259. package/src/core/index.d.ts +0 -2
  260. package/src/core/index.d.ts.map +0 -1
  261. package/src/core/index.ts +0 -1
  262. package/src/core/variants/color.ts +0 -9
  263. package/src/core/variants/index.ts +0 -3
  264. package/src/core/variants/radius.ts +0 -27
  265. package/src/core/variants/size.ts +0 -19
  266. package/src/helpers/format-bytes.ts +0 -11
  267. package/src/helpers/format-dates.ts +0 -11
  268. package/src/helpers/get-modal-position-relative-to-screen.ts +0 -86
  269. package/src/helpers/get-modal-position.ts +0 -211
  270. package/src/helpers/index.ts +0 -5
  271. package/src/helpers/text/index.ts +0 -1
  272. package/src/helpers/text/to-capitalize.ts +0 -17
  273. package/src/hooks/index.ts +0 -29
  274. package/src/hooks/use-async.ts +0 -88
  275. package/src/hooks/use-classnames.ts +0 -13
  276. package/src/hooks/use-click-outside.ts +0 -32
  277. package/src/hooks/use-constant.ts +0 -3
  278. package/src/hooks/use-cookie.ts +0 -124
  279. package/src/hooks/use-debounce.ts +0 -15
  280. package/src/hooks/use-dimensions.ts +0 -19
  281. package/src/hooks/use-dom-container.ts +0 -35
  282. package/src/hooks/use-event-listener.ts +0 -71
  283. package/src/hooks/use-file-reader.ts +0 -69
  284. package/src/hooks/use-geolocation.ts +0 -63
  285. package/src/hooks/use-hover.ts +0 -17
  286. package/src/hooks/use-in-view.ts +0 -18
  287. package/src/hooks/use-input-handlers.ts +0 -49
  288. package/src/hooks/use-intersection-observer.ts +0 -19
  289. package/src/hooks/use-media-query.ts +0 -25
  290. package/src/hooks/use-modal-in-container.ts +0 -85
  291. package/src/hooks/use-modal-transition.ts +0 -64
  292. package/src/hooks/use-modal.ts +0 -21
  293. package/src/hooks/use-mouse-position.ts +0 -64
  294. package/src/hooks/use-online-status.ts +0 -12
  295. package/src/hooks/use-render-count.ts +0 -11
  296. package/src/hooks/use-resize-observer.ts +0 -18
  297. package/src/hooks/use-safe-dispatch.ts +0 -22
  298. package/src/hooks/use-scroll.ts +0 -31
  299. package/src/hooks/use-state-history.ts +0 -22
  300. package/src/hooks/use-toggle-values.ts +0 -14
  301. package/src/hooks/use-toggle.ts +0 -11
  302. package/src/hooks/use-viewport.ts +0 -38
  303. package/src/index.ts +0 -5
  304. package/src/layouts/flex/flex.tsx +0 -75
  305. package/src/layouts/flex/index.ts +0 -1
  306. package/src/layouts/grid/grid.tsx +0 -86
  307. package/src/layouts/grid/index.ts +0 -1
  308. package/src/layouts/index.ts +0 -3
  309. package/src/layouts/section-layout/index.ts +0 -1
  310. package/src/layouts/section-layout/section-layout.stories.tsx +0 -55
  311. package/src/layouts/section-layout/section-layout.style.ts +0 -21
  312. package/src/layouts/section-layout/section-layout.tsx +0 -46
  313. package/src/stories/GettingStarted.mdx +0 -62
  314. package/src/types/generics.ts +0 -68
  315. package/src/types/index.ts +0 -1
  316. package/svg/Name=airplane, Category=object.svg +0 -3
  317. package/svg/Name=arrow-circle, Category=symbol.svg +0 -3
  318. package/svg/Name=arrow-down, Category=symbol.svg +0 -3
  319. package/svg/Name=arrow-left, Category=symbol.svg +0 -3
  320. package/svg/Name=arrow-right, Category=symbol.svg +0 -3
  321. package/svg/Name=arrow-up, Category=symbol.svg +0 -3
  322. package/svg/Name=bell, Category=object.svg +0 -3
  323. package/svg/Name=bicycle, Category=object.svg +0 -3
  324. package/svg/Name=book-open, Category=object.svg +0 -3
  325. package/svg/Name=book-solid, Category=object.svg +0 -6
  326. package/svg/Name=box-shadow, Category=symbol.svg +0 -5
  327. package/svg/Name=calendar, Category=object.svg +0 -3
  328. package/svg/Name=camera, Category=object.svg +0 -3
  329. package/svg/Name=caret-down, Category=symbol.svg +0 -3
  330. package/svg/Name=caret-left, Category=symbol.svg +0 -3
  331. package/svg/Name=caret-right, Category=symbol.svg +0 -3
  332. package/svg/Name=caret-up, Category=symbol.svg +0 -3
  333. package/svg/Name=checkmark, Category=symbol.svg +0 -3
  334. package/svg/Name=clean-computer, Category=object.svg +0 -10
  335. package/svg/Name=codepen, Category=social.svg +0 -3
  336. package/svg/Name=creative, Category=symbol.svg +0 -5
  337. package/svg/Name=cross, Category=symbol.svg +0 -4
  338. package/svg/Name=crossed-flags, Category=object.svg +0 -4
  339. package/svg/Name=cv, Category=symbol.svg +0 -5
  340. package/svg/Name=design-ui, Category=symbol.svg +0 -9
  341. package/svg/Name=document, Category=object.svg +0 -3
  342. package/svg/Name=door-closed, Category=object.svg +0 -3
  343. package/svg/Name=door-open, Category=object.svg +0 -3
  344. package/svg/Name=double-caret-down, Category=symbol.svg +0 -4
  345. package/svg/Name=double-caret-left, Category=symbol.svg +0 -4
  346. package/svg/Name=double-caret-righ, Category=symbol.svg +0 -4
  347. package/svg/Name=double-caret-up, Category=symbol.svg +0 -4
  348. package/svg/Name=download, Category=symbol.svg +0 -5
  349. package/svg/Name=dropper, Category=object.svg +0 -5
  350. package/svg/Name=envelope, Category=object.svg +0 -3
  351. package/svg/Name=exclamation-close, Category=symbol.svg +0 -4
  352. package/svg/Name=exclamation-open, Category=symbol.svg +0 -4
  353. package/svg/Name=external-link, Category=symbol.svg +0 -3
  354. package/svg/Name=eye, Category=object.svg +0 -4
  355. package/svg/Name=eye-hidden, Category=object.svg +0 -7
  356. package/svg/Name=facebook, Category=social.svg +0 -3
  357. package/svg/Name=form, Category=symbol.svg +0 -8
  358. package/svg/Name=game-control, Category=object.svg +0 -3
  359. package/svg/Name=gear, Category=object.svg +0 -3
  360. package/svg/Name=github, Category=social.svg +0 -3
  361. package/svg/Name=house, Category=object.svg +0 -3
  362. package/svg/Name=hyphen, Category=symbol.svg +0 -3
  363. package/svg/Name=info, Category=symbol.svg +0 -3
  364. package/svg/Name=instagram, Category=social.svg +0 -3
  365. package/svg/Name=link, Category=symbol.svg +0 -5
  366. package/svg/Name=linkedin, Category=social.svg +0 -3
  367. package/svg/Name=magnifying-glass, Category=object.svg +0 -3
  368. package/svg/Name=message, Category=symbol.svg +0 -4
  369. package/svg/Name=moon, Category=object.svg +0 -5
  370. package/svg/Name=npm, Category=social.svg +0 -3
  371. package/svg/Name=order-list, Category=symbol.svg +0 -7
  372. package/svg/Name=pencil, Category=object.svg +0 -3
  373. package/svg/Name=pin-location, Category=symbol.svg +0 -3
  374. package/svg/Name=question-mark-close, Category=symbol.svg +0 -3
  375. package/svg/Name=question-mark-open, Category=symbol.svg +0 -3
  376. package/svg/Name=share, Category=symbol.svg +0 -5
  377. package/svg/Name=spinner, Category=symbol.svg +0 -9
  378. package/svg/Name=star, Category=object.svg +0 -3
  379. package/svg/Name=star-empty, Category=object.svg +0 -3
  380. package/svg/Name=sun, Category=object.svg +0 -11
  381. package/svg/Name=text-shadow, Category=symbol.svg +0 -4
  382. package/svg/Name=thinking, Category=symbol.svg +0 -3
  383. package/svg/Name=trash-can, Category=object.svg +0 -4
  384. package/svg/Name=upload, Category=symbol.svg +0 -5
  385. package/svg/Name=user, Category=symbol.svg +0 -4
  386. package/svg/Name=warning, Category=symbol.svg +0 -5
  387. package/svg/Name=whatsapp, Category=social.svg +0 -3
  388. package/svgconfig.json +0 -4
  389. package/tsconfig.json +0 -15
  390. package/tsup.config.cjs +0 -21
  391. package/vite.config.ts +0 -14
@@ -1,100 +0,0 @@
1
- import React, { HTMLAttributes, createElement, forwardRef, useMemo } from 'react';
2
- import { DefaultTheme, useTheme } from 'styled-components';
3
-
4
- import { ColorVariants } from '../../core/variants';
5
-
6
- import {
7
- TypographyVariant,
8
- TypographyVariantsClassNames,
9
- TypographyVariantsElements,
10
- TypographyWeight,
11
- } from './typography.constants';
12
-
13
- import { useClassNames } from '@polpo/hooks';
14
-
15
- const getTypographyColor = (theme: DefaultTheme, color?: `${ColorVariants}`): React.CSSProperties => {
16
- const typographyColors: Record<ColorVariants, React.CSSProperties> = {
17
- [ColorVariants.Primary]: { color: theme.colors.primary.main },
18
- [ColorVariants.Secondary]: { color: theme.colors.secondary.main },
19
- [ColorVariants.Tertiary]: { color: theme.colors.tertiary.main },
20
- [ColorVariants.Info]: { color: theme.colors.info.main },
21
- [ColorVariants.Active]: { color: theme.colors.active.main },
22
- [ColorVariants.Warning]: { color: theme.colors.warning.main },
23
- [ColorVariants.Alert]: { color: theme.colors.alert.main },
24
- };
25
-
26
- return (color && typographyColors[color]) ?? {};
27
- };
28
-
29
- export type TypographyProps = HTMLAttributes<HTMLElement | HTMLLabelElement> & {
30
- variant?: `${TypographyVariant}`;
31
- nowrap?: boolean | number;
32
- as?: keyof React.ReactHTML;
33
- weight?: `${TypographyWeight}`;
34
- children: React.ReactNode;
35
- noPadding?: boolean;
36
- htmlFor?: string;
37
- align?: React.CSSProperties['textAlign'];
38
- family?: 'primary' | 'code';
39
- recommendedWidth?: boolean;
40
- color?: `${ColorVariants}`;
41
- };
42
-
43
- export const TypographyComponent = (
44
- {
45
- variant = 'body',
46
- nowrap = false,
47
- className: customClassname = '',
48
- style = {},
49
- children,
50
- as,
51
- weight,
52
- family = 'primary',
53
- noPadding = false,
54
- align,
55
- color,
56
- htmlFor,
57
- recommendedWidth = false,
58
- ...props
59
- }: TypographyProps,
60
- ref: React.ForwardedRef<unknown>,
61
- ) => {
62
- const theme = useTheme();
63
- const className = useClassNames({
64
- [TypographyVariantsClassNames[variant]]: TypographyVariantsClassNames[variant] !== undefined,
65
- [customClassname]: !!customClassname,
66
- [weight ?? '']: !!weight,
67
- 'no-padding': noPadding,
68
- 'code-family': family === 'code',
69
- 'recommended-width': recommendedWidth,
70
- 'nowrap-max-lines': typeof nowrap === 'number',
71
- 'nowrap-max-lines-2': nowrap === 2,
72
- 'nowrap-max-lines-3': nowrap === 3,
73
- 'nowrap-max-lines-4': nowrap === 4,
74
- 'nowrap-max-lines-5': nowrap === 5,
75
- nowrap: nowrap === true,
76
- });
77
-
78
- const component = useMemo(
79
- () => TypographyVariantsElements[variant] ?? TypographyVariantsElements[TypographyVariant.BODY],
80
- [variant],
81
- );
82
-
83
- return createElement(
84
- as ?? component,
85
- {
86
- ...props,
87
- className,
88
- ref,
89
- htmlFor,
90
- style: {
91
- textAlign: align,
92
- ...getTypographyColor(theme, color),
93
- ...style,
94
- },
95
- },
96
- children,
97
- );
98
- };
99
-
100
- export const Typography = forwardRef(TypographyComponent);
@@ -1,114 +0,0 @@
1
- import axios, { AxiosInstance } from 'axios';
2
- import { createContext, useCallback, useContext, useEffect, useMemo, useState } from 'react';
3
-
4
- type UserT = {
5
- name: string;
6
- username: string;
7
- full_name: string;
8
- email: string;
9
- };
10
-
11
- type SessionT = {
12
- isAuthenticated: boolean;
13
- user: UserT | null;
14
- token: string | null;
15
- };
16
-
17
- type FetchContextT = SessionT & {
18
- httpClient: AxiosInstance;
19
- login: (user: UserT, token: string) => void;
20
- logout: () => void;
21
- };
22
-
23
- const FetchContext = createContext<FetchContextT | null>(null);
24
-
25
- type FetchProviderProps = {
26
- children: React.ReactNode;
27
- baseURL: string;
28
- };
29
-
30
- export const FetchProvider = ({ children, baseURL }: FetchProviderProps) => {
31
- const [session, setSession] = useState<SessionT>({
32
- isAuthenticated: false,
33
- user: null,
34
- token: null,
35
- });
36
-
37
- const getToken = useCallback(() => localStorage.getItem('token'), []);
38
-
39
- const updateSession = useCallback(() => {
40
- const user = localStorage.getItem('user');
41
- const token = getToken();
42
-
43
- setSession({
44
- isAuthenticated: token !== null,
45
- user: user !== null ? JSON.parse(user) : user,
46
- token: token,
47
- });
48
- }, [getToken]);
49
-
50
- useEffect(updateSession, [updateSession]);
51
-
52
- const login = useCallback(
53
- (user: UserT, token: string) => {
54
- localStorage.setItem('user', JSON.stringify(user));
55
- localStorage.setItem('token', token);
56
- updateSession();
57
- },
58
- [updateSession],
59
- );
60
-
61
- const logout = useCallback(() => {
62
- localStorage.clear();
63
- updateSession();
64
- }, [updateSession]);
65
-
66
- const httpClient = useMemo(() => {
67
- const instance = axios.create({
68
- baseURL: baseURL,
69
- headers: {
70
- 'Content-Type': 'application/json',
71
- },
72
- });
73
-
74
- instance.interceptors.request.use(req => {
75
- const token = getToken();
76
- token !== null && req.headers.setAuthorization(`Bearer ${token}`);
77
-
78
- return req;
79
- });
80
-
81
- instance.interceptors.response.use(
82
- response => Promise.resolve(response),
83
- error => {
84
- error.response.status === 401 && logout();
85
- Promise.reject(error);
86
- },
87
- );
88
-
89
- return instance;
90
- }, [baseURL, getToken, logout]);
91
-
92
- return (
93
- <FetchContext.Provider
94
- value={{
95
- ...session,
96
- httpClient,
97
- login,
98
- logout,
99
- }}
100
- >
101
- {children}
102
- </FetchContext.Provider>
103
- );
104
- };
105
-
106
- export const useFetch = (): FetchContextT => {
107
- const context = useContext(FetchContext);
108
-
109
- if (context === null) {
110
- throw new Error('useFetch must be used with in a FetchProvider');
111
- }
112
-
113
- return context;
114
- };
@@ -1 +0,0 @@
1
- export * from './fetch-context';
@@ -1,43 +0,0 @@
1
- import { yupResolver } from '@hookform/resolvers/yup';
2
- import { DefaultValues, FieldValues, FormProvider, Mode, SubmitHandler, useForm } from 'react-hook-form';
3
- import { AnyObjectSchema } from 'yup';
4
-
5
- type FormProps<T extends FieldValues> = {
6
- onSubmit: SubmitHandler<T>;
7
- children: React.ReactNode;
8
- className?: string;
9
- defaultValues?: DefaultValues<T>;
10
- mode?: Mode;
11
- reValidateMode?: Exclude<Mode, 'onTouched' | 'all'>;
12
- shouldFocusError?: boolean;
13
- style?: React.CSSProperties;
14
- schema?: AnyObjectSchema;
15
- };
16
-
17
- export const Form = <T extends FieldValues = FieldValues>({
18
- mode = 'onSubmit',
19
- reValidateMode = 'onBlur',
20
- onSubmit,
21
- className = '',
22
- style = {},
23
- defaultValues,
24
- shouldFocusError = false,
25
- children,
26
- schema,
27
- }: FormProps<T>): React.ReactElement => {
28
- const methods = useForm<T>({
29
- mode,
30
- defaultValues,
31
- reValidateMode,
32
- shouldFocusError,
33
- resolver: schema ? yupResolver(schema) : undefined,
34
- });
35
-
36
- return (
37
- <FormProvider {...methods}>
38
- <form autoComplete='off' onSubmit={methods.handleSubmit(onSubmit)} className={className} style={style}>
39
- {children}
40
- </form>
41
- </FormProvider>
42
- );
43
- };
@@ -1 +0,0 @@
1
- export * from './form-context';
@@ -1,3 +0,0 @@
1
- export * from './form-context';
2
- export * from './fetch-context';
3
- export * from './theme-context';
@@ -1,3 +0,0 @@
1
- export * from './themes';
2
- export * from './theme-context';
3
- export * from './theme.defaults';
@@ -1,158 +0,0 @@
1
- import React, { Suspense, useCallback, useContext, useEffect, useState } from 'react';
2
- import { ThemeProvider as StyledThemeProvider } from 'styled-components';
3
-
4
- import { TypographyStyle } from '../../components/typography/typography.style';
5
-
6
- import { GlobalAnimations } from './theme.animations';
7
- import { CommonTheme, DarkTheme, LightTheme, ThemeConstants } from './theme.defaults';
8
- import { GlobalStyles, ThemeStyle } from './theme.style';
9
- import { CommonThemeEntity, PaletteThemeEntity, ThemeConstantsEntity, ThemeEntity } from './themes';
10
-
11
- export enum THEME {
12
- LIGHT = 'light',
13
- DARK = 'dark',
14
- }
15
-
16
- type ThemeContext = {
17
- themeName: `${THEME}`;
18
- changeTheme: (theme: `${THEME}`) => void;
19
- toggleTheme: () => void;
20
- setSystemTheme: () => void;
21
- };
22
-
23
- const ThemeContext = React.createContext<ThemeContext | null>(null);
24
-
25
- type ThemeProviderProps = {
26
- children: React.ReactNode;
27
- commonTheme?: CommonThemeEntity;
28
- lightTheme?: PaletteThemeEntity;
29
- darkTheme?: PaletteThemeEntity;
30
- constants?: ThemeConstantsEntity;
31
- defaultTheme?: `${THEME}`;
32
- };
33
-
34
- export const ThemeProvider = ({
35
- children,
36
- commonTheme = CommonTheme,
37
- lightTheme = LightTheme,
38
- darkTheme = DarkTheme,
39
- constants = ThemeConstants,
40
- defaultTheme = THEME.DARK,
41
- }: ThemeProviderProps) => {
42
- const [themeName, setThemeName] = useState<`${THEME}`>(defaultTheme);
43
- const [systemThemeName, setSystemThemeName] = useState<`${THEME}`>(THEME.DARK);
44
- const [useSystemTheme, setUseSystemTheme] = useState(false);
45
-
46
- useEffect(() => {
47
- if ([THEME.DARK, THEME.LIGHT].includes(defaultTheme as THEME)) {
48
- setThemeName(defaultTheme);
49
- setUseSystemTheme(false);
50
- localStorage.setItem('theme-name', defaultTheme);
51
-
52
- return;
53
- }
54
-
55
- const savedTheme = localStorage.getItem('theme-name');
56
-
57
- if (!savedTheme || ![THEME.DARK, THEME.LIGHT].includes(savedTheme as THEME)) {
58
- setUseSystemTheme(true);
59
- localStorage.setItem('theme-name', 'system');
60
- } else {
61
- setThemeName(savedTheme as `${THEME}`);
62
- localStorage.setItem('theme-name', savedTheme);
63
- }
64
- }, [defaultTheme]);
65
-
66
- useEffect(() => {
67
- const mqListener = (e: MediaQueryListEvent) => {
68
- setSystemThemeName(e.matches ? THEME.DARK : THEME.LIGHT);
69
- };
70
-
71
- const darkThemeMq = window.matchMedia('(prefers-color-scheme: dark)');
72
- setSystemThemeName(darkThemeMq.matches ? THEME.DARK : THEME.LIGHT);
73
- darkThemeMq.addEventListener('change', mqListener);
74
-
75
- return () => darkThemeMq.removeEventListener('change', mqListener);
76
- }, []);
77
-
78
- const setSystemTheme = useCallback(() => {
79
- localStorage.setItem('theme-name', 'system');
80
- setUseSystemTheme(true);
81
- }, []);
82
-
83
- const changeTheme = useCallback(
84
- (themeName: `${THEME}`) => {
85
- setThemeName(themeName);
86
- localStorage.setItem('theme-name', themeName);
87
-
88
- if (useSystemTheme) {
89
- setUseSystemTheme(false);
90
- }
91
- },
92
- [useSystemTheme],
93
- );
94
-
95
- const toggleTheme = useCallback(() => {
96
- setThemeName(prev => {
97
- let theme = prev === 'light' ? 'dark' : 'light';
98
-
99
- if (useSystemTheme) {
100
- theme = systemThemeName === 'light' ? 'dark' : 'light';
101
- setUseSystemTheme(false);
102
- }
103
-
104
- localStorage.setItem('theme-name', theme);
105
-
106
- return theme as `${THEME}`;
107
- });
108
- }, [systemThemeName, useSystemTheme]);
109
-
110
- const themes: Record<THEME, ThemeEntity> = {
111
- light: {
112
- ...commonTheme,
113
- ...lightTheme,
114
- },
115
- dark: {
116
- ...commonTheme,
117
- ...darkTheme,
118
- },
119
- };
120
-
121
- return (
122
- <Suspense>
123
- <ThemeContext.Provider
124
- value={{
125
- themeName: useSystemTheme ? systemThemeName : themeName,
126
- changeTheme,
127
- toggleTheme,
128
- setSystemTheme,
129
- }}
130
- >
131
- <StyledThemeProvider
132
- theme={{
133
- name: useSystemTheme ? systemThemeName : themeName,
134
- colors: themes[useSystemTheme ? systemThemeName : themeName],
135
- constants: constants,
136
- }}
137
- >
138
- <GlobalStyles />
139
- <GlobalAnimations />
140
- <TypographyStyle />
141
- {children}
142
- </StyledThemeProvider>
143
- </ThemeContext.Provider>
144
- </Suspense>
145
- );
146
- };
147
-
148
- ThemeProvider.Wrapper = ThemeStyle;
149
-
150
- export const useMyTheme = () => {
151
- const context = useContext(ThemeContext);
152
-
153
- if (context === null) {
154
- throw new Error('useFetch must be used with in a ThemeProvider');
155
- }
156
-
157
- return context;
158
- };
@@ -1,269 +0,0 @@
1
- import { createGlobalStyle } from 'styled-components';
2
-
3
- export const GlobalAnimations = createGlobalStyle`
4
- @keyframes fadeIn {
5
- from {
6
- opacity: 0;
7
- }
8
- }
9
-
10
- @keyframes spin {
11
- to {
12
- transform: rotate(1turn);
13
- }
14
- }
15
-
16
- @keyframes slideIn-left {
17
- from {
18
- transform: translateX(-100%);
19
- }
20
- to {
21
- transform: translateX(0);
22
- }
23
- }
24
-
25
- @keyframes slideOut-left {
26
- from {
27
- transform: translateX(0);
28
- }
29
- to {
30
- transform: translateX(-100%);
31
- }
32
- }
33
-
34
- @keyframes slideIn-right {
35
- from {
36
- transform: translateX(100%);
37
- }
38
- to {
39
- transform: translateX(0);
40
- }
41
- }
42
-
43
- @keyframes slideOut-right {
44
- from {
45
- transform: translateX(0);
46
- }
47
- to {
48
- transform: translateX(100%);
49
- }
50
- }
51
-
52
- @keyframes slideIn-top {
53
- from {
54
- transform: translateY(-100%);
55
- }
56
- to {
57
- transform: translateY(0);
58
- }
59
- }
60
-
61
- @keyframes slideOut-top {
62
- from {
63
- transform: translateY(0);
64
- }
65
- to {
66
- transform: translateY(-100%);
67
- }
68
- }
69
-
70
- @keyframes slideIn-bottom {
71
- from {
72
- transform: translateY(100%);
73
- }
74
- to {
75
- transform: translateY(0);
76
- }
77
- }
78
-
79
- @keyframes slideOut-bottom {
80
- from {
81
- transform: translateY(0);
82
- }
83
- to {
84
- transform: translateY(100%);
85
- }
86
- }
87
-
88
- @keyframes bounceIn {
89
- from,
90
- 20%,
91
- 40%,
92
- 60%,
93
- 80%,
94
- to {
95
- animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
96
- }
97
-
98
- 0% {
99
- opacity: 0;
100
- transform: scale3d(0.3, 0.3, 0.3);
101
- }
102
-
103
- 20% {
104
- transform: scale3d(1.1, 1.1, 1.1);
105
- }
106
-
107
- 40% {
108
- transform: scale3d(0.9, 0.9, 0.9);
109
- }
110
-
111
- 60% {
112
- opacity: 1;
113
- transform: scale3d(1.03, 1.03, 1.03);
114
- }
115
-
116
- 80% {
117
- transform: scale3d(0.97, 0.97, 0.97);
118
- }
119
-
120
- to {
121
- opacity: 1;
122
- transform: scale3d(1, 1, 1);
123
- }
124
- }
125
-
126
- @keyframes bounceOut {
127
- 20% {
128
- transform: scale3d(1, 1, 1);
129
- opacity: 1;
130
- }
131
-
132
- 50%,
133
- 55% {
134
- opacity: 1;
135
- transform: scale3d(1.02, 1.02, 1.02);
136
- }
137
-
138
- to {
139
- opacity: 0;
140
- transform: scale3d(0.3, 0.3, 0.3);
141
- }
142
- }
143
-
144
- @keyframes headShake {
145
- 0% {
146
- transform: translateX(0);
147
- }
148
-
149
- 6.5% {
150
- transform: translateX(-6px) rotateY(-9deg);
151
- }
152
-
153
- 18.5% {
154
- transform: translateX(5px) rotateY(7deg);
155
- }
156
-
157
- 31.5% {
158
- transform: translateX(-3px) rotateY(-5deg);
159
- }
160
-
161
- 43.5% {
162
- transform: translateX(2px) rotateY(3deg);
163
- }
164
-
165
- 50% {
166
- transform: translateX(0);
167
- }
168
- }
169
-
170
- @keyframes pulse {
171
- 0% {
172
- transform: scale(1);
173
- }
174
- 50% {
175
- transform: scale(1.2);
176
- }
177
- 100% {
178
- transform: scale(1);
179
- }
180
- }
181
-
182
- @keyframes fadeInDown {
183
- from {
184
- opacity: 0;
185
- transform: translateY(-10px);
186
- }
187
- to {
188
- opacity: 1;
189
- transform: translateY(0);
190
- }
191
- }
192
-
193
- @keyframes fadeOutDown {
194
- from {
195
- opacity: 1;
196
- transform: translateY(0);
197
- }
198
- to {
199
- opacity: 0;
200
- transform: translateY(10px);
201
- }
202
- }
203
-
204
- @keyframes fadeInUp {
205
- from {
206
- opacity: 0;
207
- transform: translateY(10px);
208
- }
209
- to {
210
- opacity: 1;
211
- transform: translateY(0);
212
- }
213
- }
214
-
215
- @keyframes fadeOutUp {
216
- from {
217
- opacity: 1;
218
- transform: translateY(0);
219
- }
220
- to {
221
- opacity: 0;
222
- transform: translateY(-10px);
223
- }
224
- }
225
-
226
- @keyframes fadeInLeft {
227
- from {
228
- opacity: 0;
229
- transform: translateX(10px);
230
- }
231
- to {
232
- opacity: 1;
233
- transform: translateX(0);
234
- }
235
- }
236
-
237
- @keyframes fadeOutLeft {
238
- from {
239
- opacity: 1;
240
- transform: translateX(0);
241
- }
242
- to {
243
- opacity: 0;
244
- transform: translateX(-10px);
245
- }
246
- }
247
-
248
- @keyframes fadeInRight {
249
- from {
250
- opacity: 0;
251
- transform: translateX(-10px);
252
- }
253
- to {
254
- opacity: 1;
255
- transform: translateX(0);
256
- }
257
- }
258
-
259
- @keyframes fadeOutRight {
260
- from {
261
- opacity: 1;
262
- transform: translateX(0);
263
- }
264
- to {
265
- opacity: 0;
266
- transform: translateX(10px);
267
- }
268
- }
269
- `;