@stevederico/skateboard-ui 3.0.1 → 3.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1984) hide show
  1. package/App.jsx +13 -13
  2. package/CHANGELOG.md +69 -0
  3. package/README.md +59 -65
  4. package/components/AuthOverlay.jsx +4 -4
  5. package/components/ProtectedRoute.jsx +1 -1
  6. package/components/ThemeToggle.jsx +1 -1
  7. package/components/UpgradeSheet.jsx +2 -2
  8. package/components/core/DynamicIcon.jsx +110 -0
  9. package/components/layout/Header.jsx +50 -0
  10. package/components/layout/Layout.jsx +60 -0
  11. package/components/layout/Sidebar.jsx +124 -0
  12. package/components/layout/TabBar.jsx +70 -0
  13. package/components/views/LandingView.jsx +207 -0
  14. package/components/views/NotFound.jsx +27 -0
  15. package/components/views/PaymentView.jsx +118 -0
  16. package/components/views/SettingsView.jsx +199 -0
  17. package/components/views/SignInView.jsx +171 -0
  18. package/components/views/SignOutView.jsx +54 -0
  19. package/components/views/SignUpView.jsx +208 -0
  20. package/components/views/TextView.jsx +48 -0
  21. package/hooks/useAuthGate.js +1 -1
  22. package/index.js +1 -1
  23. package/package.json +43 -46
  24. package/shadcn/lib/base-ui/LICENSE +21 -0
  25. package/shadcn/lib/base-ui/_chunk-01rqe37g.js +70 -0
  26. package/shadcn/lib/base-ui/_chunk-0h5sskyw.js +347 -0
  27. package/shadcn/lib/base-ui/_chunk-0xhx4g7r.js +57 -0
  28. package/shadcn/lib/base-ui/_chunk-1e6khrvm.js +218 -0
  29. package/shadcn/lib/base-ui/_chunk-1s41sngz.js +302 -0
  30. package/shadcn/lib/base-ui/_chunk-20rtfsz9.js +23 -0
  31. package/shadcn/lib/base-ui/_chunk-2tyt8f8r.js +6034 -0
  32. package/shadcn/lib/base-ui/_chunk-3f31ka8n.js +11 -0
  33. package/shadcn/lib/base-ui/_chunk-3h6zpchb.js +89 -0
  34. package/shadcn/lib/base-ui/_chunk-4s0k3h7t.js +114 -0
  35. package/shadcn/lib/base-ui/_chunk-502wngfc.js +598 -0
  36. package/shadcn/lib/base-ui/_chunk-536jvgeq.js +68 -0
  37. package/shadcn/lib/base-ui/_chunk-611pz5sm.js +10 -0
  38. package/shadcn/lib/base-ui/_chunk-65zw5gs2.js +15 -0
  39. package/shadcn/lib/base-ui/_chunk-6b17g8t7.js +34 -0
  40. package/shadcn/lib/base-ui/_chunk-6xevjepc.js +15 -0
  41. package/shadcn/lib/base-ui/_chunk-71zm6zgv.js +16 -0
  42. package/shadcn/lib/base-ui/_chunk-7fmjymvh.js +32 -0
  43. package/shadcn/lib/base-ui/_chunk-7jjzay8b.js +176 -0
  44. package/shadcn/lib/base-ui/_chunk-7v1t86x1.js +43 -0
  45. package/shadcn/lib/base-ui/_chunk-85vrgzwr.js +227 -0
  46. package/shadcn/lib/base-ui/_chunk-8jz3hb7q.js +9 -0
  47. package/shadcn/lib/base-ui/_chunk-8kh3xk78.js +35 -0
  48. package/shadcn/lib/base-ui/_chunk-97tas84n.js +67 -0
  49. package/shadcn/lib/base-ui/_chunk-9nyxkvte.js +13 -0
  50. package/shadcn/lib/base-ui/_chunk-a8fwg9d0.js +52 -0
  51. package/shadcn/lib/base-ui/_chunk-agc6ew3g.js +29 -0
  52. package/shadcn/lib/base-ui/_chunk-aqwsk46c.js +64 -0
  53. package/shadcn/lib/base-ui/_chunk-atd5kq5q.js +803 -0
  54. package/shadcn/lib/base-ui/_chunk-atnkefgd.js +104 -0
  55. package/shadcn/lib/base-ui/_chunk-b40erthe.js +7 -0
  56. package/shadcn/lib/base-ui/_chunk-b5jsqt97.js +50 -0
  57. package/shadcn/lib/base-ui/_chunk-bk7n9s9e.js +15 -0
  58. package/shadcn/lib/base-ui/_chunk-c3572b5x.js +19 -0
  59. package/shadcn/lib/base-ui/_chunk-cwr896nf.js +25 -0
  60. package/shadcn/lib/base-ui/_chunk-drfb9kp2.js +27 -0
  61. package/shadcn/lib/base-ui/_chunk-ds8fnpjj.js +0 -0
  62. package/shadcn/lib/base-ui/_chunk-ek863ta9.js +82 -0
  63. package/shadcn/lib/base-ui/_chunk-f09cp81f.js +12 -0
  64. package/shadcn/lib/base-ui/_chunk-f5d01bp9.js +0 -0
  65. package/shadcn/lib/base-ui/_chunk-f9tgee1q.js +21 -0
  66. package/shadcn/lib/base-ui/_chunk-fch5cba8.js +84 -0
  67. package/shadcn/lib/base-ui/_chunk-gfce3j3z.js +18 -0
  68. package/shadcn/lib/base-ui/_chunk-ha06w2pp.js +2391 -0
  69. package/shadcn/lib/base-ui/_chunk-hzgetm70.js +23 -0
  70. package/shadcn/lib/base-ui/_chunk-j0eqdjta.js +39 -0
  71. package/shadcn/lib/base-ui/_chunk-k1e5fvcj.js +48 -0
  72. package/shadcn/lib/base-ui/_chunk-k4mc2kan.js +81 -0
  73. package/shadcn/lib/base-ui/_chunk-kfz96xv1.js +128 -0
  74. package/shadcn/lib/base-ui/_chunk-m45547cc.js +15 -0
  75. package/shadcn/lib/base-ui/_chunk-mbn76q14.js +184 -0
  76. package/shadcn/lib/base-ui/_chunk-mvv30fkv.js +9 -0
  77. package/shadcn/lib/base-ui/_chunk-mznt6ktj.js +33 -0
  78. package/shadcn/lib/base-ui/_chunk-n7dnqnbw.js +7 -0
  79. package/shadcn/lib/base-ui/_chunk-nya71ccw.js +546 -0
  80. package/shadcn/lib/base-ui/_chunk-p6qynd6r.js +146 -0
  81. package/shadcn/lib/base-ui/_chunk-q3nee19r.js +323 -0
  82. package/shadcn/lib/base-ui/_chunk-q7yw9mz4.js +385 -0
  83. package/shadcn/lib/base-ui/_chunk-qce0xt57.js +107 -0
  84. package/shadcn/lib/base-ui/_chunk-qgzhcjsj.js +14 -0
  85. package/shadcn/lib/base-ui/_chunk-qt6r015s.js +38 -0
  86. package/shadcn/lib/base-ui/_chunk-r0vsdknk.js +4 -0
  87. package/shadcn/lib/base-ui/_chunk-sx6vkz01.js +150 -0
  88. package/shadcn/lib/base-ui/_chunk-szcr6mhk.js +6 -0
  89. package/shadcn/lib/base-ui/_chunk-t7j3rbpv.js +67 -0
  90. package/shadcn/lib/base-ui/_chunk-tmfmrzwe.js +39 -0
  91. package/shadcn/lib/base-ui/_chunk-v92ycsfj.js +9 -0
  92. package/shadcn/lib/base-ui/_chunk-vdc01ss3.js +6 -0
  93. package/shadcn/lib/base-ui/_chunk-vjbnhhg1.js +26 -0
  94. package/shadcn/lib/base-ui/_chunk-w68yxg9d.js +21 -0
  95. package/shadcn/lib/base-ui/_chunk-wana68v3.js +477 -0
  96. package/shadcn/lib/base-ui/_chunk-wtw745qd.js +12 -0
  97. package/shadcn/lib/base-ui/_chunk-xb7ph1ka.js +6 -0
  98. package/shadcn/lib/base-ui/_chunk-xfagb0fq.js +28 -0
  99. package/shadcn/lib/base-ui/_chunk-xxhqanfd.js +16 -0
  100. package/shadcn/lib/base-ui/_chunk-y887e46p.js +15 -0
  101. package/shadcn/lib/base-ui/_chunk-ymj1dpqg.js +14 -0
  102. package/shadcn/lib/base-ui/accordion.js +650 -0
  103. package/shadcn/lib/base-ui/alert-dialog.js +138 -0
  104. package/shadcn/lib/base-ui/avatar.js +235 -0
  105. package/shadcn/lib/base-ui/button.js +52 -0
  106. package/shadcn/lib/base-ui/checkbox.js +454 -0
  107. package/shadcn/lib/base-ui/collapsible.js +283 -0
  108. package/shadcn/lib/base-ui/context-menu.js +324 -0
  109. package/shadcn/lib/base-ui/dialog.js +71 -0
  110. package/shadcn/lib/base-ui/input.js +1028 -0
  111. package/shadcn/lib/base-ui/menu.js +61 -0
  112. package/shadcn/lib/base-ui/menubar.js +157 -0
  113. package/shadcn/lib/base-ui/merge-props.js +15 -0
  114. package/shadcn/lib/base-ui/navigation-menu.js +1854 -0
  115. package/shadcn/lib/base-ui/popover.js +1090 -0
  116. package/shadcn/lib/base-ui/preview-card.js +709 -0
  117. package/shadcn/lib/base-ui/progress.js +278 -0
  118. package/shadcn/lib/base-ui/radio-group.js +247 -0
  119. package/shadcn/lib/base-ui/radio.js +382 -0
  120. package/shadcn/lib/base-ui/scroll-area.js +1061 -0
  121. package/shadcn/lib/base-ui/select.js +2438 -0
  122. package/shadcn/lib/base-ui/separator.js +11 -0
  123. package/shadcn/lib/base-ui/slider.js +1595 -0
  124. package/shadcn/lib/base-ui/switch.js +333 -0
  125. package/shadcn/lib/base-ui/tabs.js +892 -0
  126. package/shadcn/lib/base-ui/toggle-group.js +152 -0
  127. package/shadcn/lib/base-ui/toggle.js +133 -0
  128. package/shadcn/lib/base-ui/tooltip.js +791 -0
  129. package/shadcn/lib/base-ui/use-render.js +15 -0
  130. package/shadcn/lib/tailwind-merge.js +3312 -0
  131. package/shadcn/lib/utils.js +1 -1
  132. package/shadcn/ui/accordion.jsx +1 -1
  133. package/shadcn/ui/alert-dialog.jsx +1 -1
  134. package/shadcn/ui/avatar.jsx +1 -1
  135. package/shadcn/ui/badge.jsx +2 -2
  136. package/shadcn/ui/breadcrumb.jsx +2 -2
  137. package/shadcn/ui/button-group.jsx +2 -2
  138. package/shadcn/ui/button.jsx +1 -1
  139. package/shadcn/ui/calendar.jsx +1 -1
  140. package/shadcn/ui/checkbox.jsx +1 -1
  141. package/shadcn/ui/collapsible.jsx +1 -1
  142. package/shadcn/ui/command.jsx +1 -1
  143. package/shadcn/ui/context-menu.jsx +1 -1
  144. package/shadcn/ui/dialog.jsx +1 -1
  145. package/shadcn/ui/drawer.jsx +176 -74
  146. package/shadcn/ui/dropdown-menu.jsx +1 -1
  147. package/shadcn/ui/hover-card.jsx +1 -1
  148. package/shadcn/ui/input.jsx +1 -1
  149. package/shadcn/ui/item.jsx +2 -2
  150. package/shadcn/ui/menubar.jsx +2 -2
  151. package/shadcn/ui/navigation-menu.jsx +1 -1
  152. package/shadcn/ui/popover.jsx +1 -1
  153. package/shadcn/ui/progress.jsx +1 -1
  154. package/shadcn/ui/radio-group.jsx +2 -2
  155. package/shadcn/ui/scroll-area.jsx +1 -1
  156. package/shadcn/ui/select.jsx +1 -1
  157. package/shadcn/ui/separator.jsx +1 -1
  158. package/shadcn/ui/sheet.jsx +1 -1
  159. package/shadcn/ui/sidebar.jsx +3 -3
  160. package/shadcn/ui/slider.jsx +1 -1
  161. package/shadcn/ui/switch.jsx +1 -1
  162. package/shadcn/ui/tabs.jsx +1 -1
  163. package/shadcn/ui/toggle-group.jsx +2 -2
  164. package/shadcn/ui/toggle.jsx +1 -1
  165. package/shadcn/ui/tooltip.jsx +1 -1
  166. package/styles.css +31 -0
  167. package/.claude/worktrees/strange-feistel-abc494/App.jsx +0 -179
  168. package/.claude/worktrees/strange-feistel-abc494/CHANGELOG.md +0 -687
  169. package/.claude/worktrees/strange-feistel-abc494/MIGRATION.md +0 -230
  170. package/.claude/worktrees/strange-feistel-abc494/README.md +0 -1252
  171. package/.claude/worktrees/strange-feistel-abc494/components/AuthOverlay.jsx +0 -74
  172. package/.claude/worktrees/strange-feistel-abc494/components/ErrorBoundary.jsx +0 -106
  173. package/.claude/worktrees/strange-feistel-abc494/components/ProtectedRoute.jsx +0 -66
  174. package/.claude/worktrees/strange-feistel-abc494/components/Sheet.jsx +0 -61
  175. package/.claude/worktrees/strange-feistel-abc494/components/ThemeToggle.jsx +0 -53
  176. package/.claude/worktrees/strange-feistel-abc494/components/UpgradeSheet.jsx +0 -127
  177. package/.claude/worktrees/strange-feistel-abc494/components.json +0 -21
  178. package/.claude/worktrees/strange-feistel-abc494/core/DynamicIcon.jsx +0 -110
  179. package/.claude/worktrees/strange-feistel-abc494/fonts/GeistMonoVF.woff2 +0 -0
  180. package/.claude/worktrees/strange-feistel-abc494/fonts/GeistVF.woff2 +0 -0
  181. package/.claude/worktrees/strange-feistel-abc494/hooks/useAuthGate.js +0 -37
  182. package/.claude/worktrees/strange-feistel-abc494/index.js +0 -3
  183. package/.claude/worktrees/strange-feistel-abc494/jsconfig.json +0 -9
  184. package/.claude/worktrees/strange-feistel-abc494/layout/Header.jsx +0 -50
  185. package/.claude/worktrees/strange-feistel-abc494/layout/Layout.jsx +0 -60
  186. package/.claude/worktrees/strange-feistel-abc494/layout/Sidebar.jsx +0 -124
  187. package/.claude/worktrees/strange-feistel-abc494/layout/TabBar.jsx +0 -70
  188. package/.claude/worktrees/strange-feistel-abc494/package.json +0 -146
  189. package/.claude/worktrees/strange-feistel-abc494/shadcn/hooks/use-mobile.js +0 -19
  190. package/.claude/worktrees/strange-feistel-abc494/shadcn/lib/utils.js +0 -6
  191. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/accordion.jsx +0 -77
  192. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/alert-dialog.jsx +0 -172
  193. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/alert.jsx +0 -77
  194. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/aspect-ratio.jsx +0 -21
  195. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/avatar.jsx +0 -107
  196. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/badge.jsx +0 -45
  197. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/breadcrumb.jsx +0 -124
  198. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/button-group.jsx +0 -82
  199. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/button.jsx +0 -61
  200. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/calendar.jsx +0 -177
  201. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/card.jsx +0 -114
  202. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/carousel.jsx +0 -195
  203. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/chart.jsx +0 -312
  204. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/checkbox.jsx +0 -29
  205. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/collapsible.jsx +0 -21
  206. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/command.jsx +0 -178
  207. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/context-menu.jsx +0 -239
  208. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/dialog.jsx +0 -150
  209. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/drawer.jsx +0 -130
  210. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/dropdown-menu.jsx +0 -248
  211. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/empty.jsx +0 -110
  212. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/field.jsx +0 -229
  213. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/hover-card.jsx +0 -45
  214. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/input-group.jsx +0 -149
  215. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/input.jsx +0 -23
  216. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/item.jsx +0 -203
  217. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/kbd.jsx +0 -30
  218. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/label.jsx +0 -20
  219. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/menubar.jsx +0 -265
  220. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/navigation-menu.jsx +0 -159
  221. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/pagination.jsx +0 -122
  222. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/popover.jsx +0 -91
  223. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/progress.jsx +0 -82
  224. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/radio-group.jsx +0 -43
  225. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/resizable.jsx +0 -47
  226. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/scroll-area.jsx +0 -48
  227. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/select.jsx +0 -187
  228. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/separator.jsx +0 -24
  229. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/sheet.jsx +0 -140
  230. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/sidebar.jsx +0 -668
  231. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/skeleton.jsx +0 -15
  232. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/slider.jsx +0 -51
  233. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/sonner.jsx +0 -50
  234. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/spinner.jsx +0 -17
  235. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/switch.jsx +0 -26
  236. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/table.jsx +0 -123
  237. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/tabs.jsx +0 -79
  238. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/textarea.jsx +0 -20
  239. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/toggle-group.jsx +0 -75
  240. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/toggle.jsx +0 -43
  241. package/.claude/worktrees/strange-feistel-abc494/shadcn/ui/tooltip.jsx +0 -61
  242. package/.claude/worktrees/strange-feistel-abc494/styles.css +0 -300
  243. package/.claude/worktrees/strange-feistel-abc494/views/LandingView.jsx +0 -207
  244. package/.claude/worktrees/strange-feistel-abc494/views/NotFound.jsx +0 -27
  245. package/.claude/worktrees/strange-feistel-abc494/views/PaymentView.jsx +0 -118
  246. package/.claude/worktrees/strange-feistel-abc494/views/SettingsView.jsx +0 -199
  247. package/.claude/worktrees/strange-feistel-abc494/views/SignInView.jsx +0 -171
  248. package/.claude/worktrees/strange-feistel-abc494/views/SignOutView.jsx +0 -54
  249. package/.claude/worktrees/strange-feistel-abc494/views/SignUpView.jsx +0 -208
  250. package/.claude/worktrees/strange-feistel-abc494/views/TextView.jsx +0 -48
  251. package/MIGRATION.md +0 -230
  252. package/components.json +0 -21
  253. package/core/Context.jsx +0 -251
  254. package/core/DynamicIcon.jsx +0 -110
  255. package/core/Utilities.js +0 -1031
  256. package/icons/AArrowDown.jsx +0 -12
  257. package/icons/AArrowUp.jsx +0 -12
  258. package/icons/ALargeSmall.jsx +0 -12
  259. package/icons/Accessibility.jsx +0 -13
  260. package/icons/Activity.jsx +0 -9
  261. package/icons/AirVent.jsx +0 -12
  262. package/icons/Airplay.jsx +0 -10
  263. package/icons/AlarmClock.jsx +0 -14
  264. package/icons/AlarmClockCheck.jsx +0 -14
  265. package/icons/AlarmClockMinus.jsx +0 -14
  266. package/icons/AlarmClockOff.jsx +0 -14
  267. package/icons/AlarmClockPlus.jsx +0 -15
  268. package/icons/AlarmSmoke.jsx +0 -13
  269. package/icons/Album.jsx +0 -10
  270. package/icons/AlignCenterHorizontal.jsx +0 -13
  271. package/icons/AlignCenterVertical.jsx +0 -13
  272. package/icons/AlignEndHorizontal.jsx +0 -11
  273. package/icons/AlignEndVertical.jsx +0 -11
  274. package/icons/AlignHorizontalDistributeCenter.jsx +0 -14
  275. package/icons/AlignHorizontalDistributeEnd.jsx +0 -12
  276. package/icons/AlignHorizontalDistributeStart.jsx +0 -12
  277. package/icons/AlignHorizontalJustifyCenter.jsx +0 -11
  278. package/icons/AlignHorizontalJustifyEnd.jsx +0 -11
  279. package/icons/AlignHorizontalJustifyStart.jsx +0 -11
  280. package/icons/AlignHorizontalSpaceAround.jsx +0 -11
  281. package/icons/AlignHorizontalSpaceBetween.jsx +0 -12
  282. package/icons/AlignStartHorizontal.jsx +0 -11
  283. package/icons/AlignStartVertical.jsx +0 -11
  284. package/icons/AlignVerticalDistributeCenter.jsx +0 -14
  285. package/icons/AlignVerticalDistributeEnd.jsx +0 -12
  286. package/icons/AlignVerticalDistributeStart.jsx +0 -12
  287. package/icons/AlignVerticalJustifyCenter.jsx +0 -11
  288. package/icons/AlignVerticalJustifyEnd.jsx +0 -11
  289. package/icons/AlignVerticalJustifyStart.jsx +0 -11
  290. package/icons/AlignVerticalSpaceAround.jsx +0 -11
  291. package/icons/AlignVerticalSpaceBetween.jsx +0 -12
  292. package/icons/Ambulance.jsx +0 -16
  293. package/icons/Ampersand.jsx +0 -10
  294. package/icons/Ampersands.jsx +0 -10
  295. package/icons/Amphora.jsx +0 -14
  296. package/icons/Anchor.jsx +0 -12
  297. package/icons/Angry.jsx +0 -14
  298. package/icons/Annoyed.jsx +0 -12
  299. package/icons/Antenna.jsx +0 -14
  300. package/icons/Anvil.jsx +0 -13
  301. package/icons/Aperture.jsx +0 -15
  302. package/icons/AppWindow.jsx +0 -12
  303. package/icons/AppWindowMac.jsx +0 -12
  304. package/icons/Apple.jsx +0 -10
  305. package/icons/Archive.jsx +0 -11
  306. package/icons/ArchiveRestore.jsx +0 -13
  307. package/icons/ArchiveX.jsx +0 -12
  308. package/icons/Armchair.jsx +0 -12
  309. package/icons/ArrowBigDown.jsx +0 -9
  310. package/icons/ArrowBigDownDash.jsx +0 -10
  311. package/icons/ArrowBigLeft.jsx +0 -9
  312. package/icons/ArrowBigLeftDash.jsx +0 -10
  313. package/icons/ArrowBigRight.jsx +0 -9
  314. package/icons/ArrowBigRightDash.jsx +0 -10
  315. package/icons/ArrowBigUp.jsx +0 -9
  316. package/icons/ArrowBigUpDash.jsx +0 -10
  317. package/icons/ArrowDown.jsx +0 -10
  318. package/icons/ArrowDown01.jsx +0 -13
  319. package/icons/ArrowDown10.jsx +0 -13
  320. package/icons/ArrowDownAZ.jsx +0 -13
  321. package/icons/ArrowDownFromLine.jsx +0 -11
  322. package/icons/ArrowDownLeft.jsx +0 -10
  323. package/icons/ArrowDownNarrowWide.jsx +0 -13
  324. package/icons/ArrowDownRight.jsx +0 -10
  325. package/icons/ArrowDownToDot.jsx +0 -11
  326. package/icons/ArrowDownToLine.jsx +0 -11
  327. package/icons/ArrowDownUp.jsx +0 -12
  328. package/icons/ArrowDownWideNarrow.jsx +0 -13
  329. package/icons/ArrowDownZA.jsx +0 -13
  330. package/icons/ArrowLeft.jsx +0 -10
  331. package/icons/ArrowLeftFromLine.jsx +0 -11
  332. package/icons/ArrowLeftRight.jsx +0 -12
  333. package/icons/ArrowLeftToLine.jsx +0 -11
  334. package/icons/ArrowRight.jsx +0 -10
  335. package/icons/ArrowRightFromLine.jsx +0 -11
  336. package/icons/ArrowRightLeft.jsx +0 -12
  337. package/icons/ArrowRightToLine.jsx +0 -11
  338. package/icons/ArrowUp.jsx +0 -10
  339. package/icons/ArrowUp01.jsx +0 -13
  340. package/icons/ArrowUp10.jsx +0 -13
  341. package/icons/ArrowUpAZ.jsx +0 -13
  342. package/icons/ArrowUpDown.jsx +0 -12
  343. package/icons/ArrowUpFromDot.jsx +0 -11
  344. package/icons/ArrowUpFromLine.jsx +0 -11
  345. package/icons/ArrowUpLeft.jsx +0 -10
  346. package/icons/ArrowUpNarrowWide.jsx +0 -13
  347. package/icons/ArrowUpRight.jsx +0 -10
  348. package/icons/ArrowUpToLine.jsx +0 -11
  349. package/icons/ArrowUpWideNarrow.jsx +0 -13
  350. package/icons/ArrowUpZA.jsx +0 -13
  351. package/icons/ArrowsUpFromLine.jsx +0 -13
  352. package/icons/Asterisk.jsx +0 -11
  353. package/icons/Astroid.jsx +0 -9
  354. package/icons/AtSign.jsx +0 -10
  355. package/icons/Atom.jsx +0 -11
  356. package/icons/AudioLines.jsx +0 -14
  357. package/icons/AudioWaveform.jsx +0 -9
  358. package/icons/Award.jsx +0 -10
  359. package/icons/Axe.jsx +0 -10
  360. package/icons/Axis3d.jsx +0 -12
  361. package/icons/Baby.jsx +0 -12
  362. package/icons/Backpack.jsx +0 -13
  363. package/icons/Badge.jsx +0 -9
  364. package/icons/BadgeAlert.jsx +0 -11
  365. package/icons/BadgeCent.jsx +0 -11
  366. package/icons/BadgeCheck.jsx +0 -10
  367. package/icons/BadgeDollarSign.jsx +0 -11
  368. package/icons/BadgeEuro.jsx +0 -11
  369. package/icons/BadgeIndianRupee.jsx +0 -12
  370. package/icons/BadgeInfo.jsx +0 -11
  371. package/icons/BadgeJapaneseYen.jsx +0 -13
  372. package/icons/BadgeMinus.jsx +0 -10
  373. package/icons/BadgePercent.jsx +0 -12
  374. package/icons/BadgePlus.jsx +0 -11
  375. package/icons/BadgePoundSterling.jsx +0 -12
  376. package/icons/BadgeQuestionMark.jsx +0 -11
  377. package/icons/BadgeRussianRuble.jsx +0 -11
  378. package/icons/BadgeSwissFranc.jsx +0 -12
  379. package/icons/BadgeTurkishLira.jsx +0 -11
  380. package/icons/BadgeX.jsx +0 -11
  381. package/icons/BaggageClaim.jsx +0 -13
  382. package/icons/Balloon.jsx +0 -11
  383. package/icons/Ban.jsx +0 -10
  384. package/icons/Banana.jsx +0 -10
  385. package/icons/Bandage.jsx +0 -15
  386. package/icons/Banknote.jsx +0 -11
  387. package/icons/BanknoteArrowDown.jsx +0 -14
  388. package/icons/BanknoteArrowUp.jsx +0 -14
  389. package/icons/BanknoteX.jsx +0 -14
  390. package/icons/Barcode.jsx +0 -13
  391. package/icons/Barrel.jsx +0 -13
  392. package/icons/Baseline.jsx +0 -11
  393. package/icons/Bath.jsx +0 -13
  394. package/icons/Battery.jsx +0 -10
  395. package/icons/BatteryCharging.jsx +0 -12
  396. package/icons/BatteryFull.jsx +0 -13
  397. package/icons/BatteryLow.jsx +0 -11
  398. package/icons/BatteryMedium.jsx +0 -12
  399. package/icons/BatteryPlus.jsx +0 -13
  400. package/icons/BatteryWarning.jsx +0 -13
  401. package/icons/Beaker.jsx +0 -11
  402. package/icons/Bean.jsx +0 -10
  403. package/icons/BeanOff.jsx +0 -12
  404. package/icons/Bed.jsx +0 -12
  405. package/icons/BedDouble.jsx +0 -12
  406. package/icons/BedSingle.jsx +0 -11
  407. package/icons/Beef.jsx +0 -11
  408. package/icons/BeefOff.jsx +0 -14
  409. package/icons/Beer.jsx +0 -13
  410. package/icons/BeerOff.jsx +0 -16
  411. package/icons/Bell.jsx +0 -10
  412. package/icons/BellCheck.jsx +0 -12
  413. package/icons/BellDot.jsx +0 -11
  414. package/icons/BellElectric.jsx +0 -14
  415. package/icons/BellMinus.jsx +0 -11
  416. package/icons/BellOff.jsx +0 -12
  417. package/icons/BellPlus.jsx +0 -12
  418. package/icons/BellRing.jsx +0 -12
  419. package/icons/BetweenHorizontalEnd.jsx +0 -11
  420. package/icons/BetweenHorizontalStart.jsx +0 -11
  421. package/icons/BetweenVerticalEnd.jsx +0 -11
  422. package/icons/BetweenVerticalStart.jsx +0 -11
  423. package/icons/BicepsFlexed.jsx +0 -11
  424. package/icons/Bike.jsx +0 -12
  425. package/icons/Binary.jsx +0 -14
  426. package/icons/Binoculars.jsx +0 -14
  427. package/icons/Biohazard.jsx +0 -18
  428. package/icons/Bird.jsx +0 -14
  429. package/icons/Birdhouse.jsx +0 -14
  430. package/icons/Bitcoin.jsx +0 -9
  431. package/icons/Blend.jsx +0 -10
  432. package/icons/Blinds.jsx +0 -15
  433. package/icons/Blocks.jsx +0 -10
  434. package/icons/Bluetooth.jsx +0 -9
  435. package/icons/BluetoothConnected.jsx +0 -11
  436. package/icons/BluetoothOff.jsx +0 -11
  437. package/icons/BluetoothSearching.jsx +0 -11
  438. package/icons/Bold.jsx +0 -9
  439. package/icons/Bolt.jsx +0 -10
  440. package/icons/Bomb.jsx +0 -11
  441. package/icons/Bone.jsx +0 -9
  442. package/icons/Book.jsx +0 -9
  443. package/icons/BookA.jsx +0 -11
  444. package/icons/BookAlert.jsx +0 -11
  445. package/icons/BookAudio.jsx +0 -12
  446. package/icons/BookCheck.jsx +0 -10
  447. package/icons/BookCopy.jsx +0 -11
  448. package/icons/BookDashed.jsx +0 -19
  449. package/icons/BookDown.jsx +0 -11
  450. package/icons/BookHeadphones.jsx +0 -12
  451. package/icons/BookHeart.jsx +0 -10
  452. package/icons/BookImage.jsx +0 -11
  453. package/icons/BookKey.jsx +0 -13
  454. package/icons/BookLock.jsx +0 -12
  455. package/icons/BookMarked.jsx +0 -10
  456. package/icons/BookMinus.jsx +0 -10
  457. package/icons/BookOpen.jsx +0 -10
  458. package/icons/BookOpenCheck.jsx +0 -11
  459. package/icons/BookOpenText.jsx +0 -14
  460. package/icons/BookPlus.jsx +0 -11
  461. package/icons/BookSearch.jsx +0 -12
  462. package/icons/BookText.jsx +0 -11
  463. package/icons/BookType.jsx +0 -12
  464. package/icons/BookUp.jsx +0 -11
  465. package/icons/BookUp2.jsx +0 -13
  466. package/icons/BookUser.jsx +0 -11
  467. package/icons/BookX.jsx +0 -11
  468. package/icons/Bookmark.jsx +0 -9
  469. package/icons/BookmarkCheck.jsx +0 -10
  470. package/icons/BookmarkMinus.jsx +0 -10
  471. package/icons/BookmarkOff.jsx +0 -11
  472. package/icons/BookmarkPlus.jsx +0 -11
  473. package/icons/BookmarkX.jsx +0 -11
  474. package/icons/BoomBox.jsx +0 -15
  475. package/icons/Bot.jsx +0 -14
  476. package/icons/BotMessageSquare.jsx +0 -14
  477. package/icons/BotOff.jsx +0 -15
  478. package/icons/BottleWine.jsx +0 -10
  479. package/icons/BowArrow.jsx +0 -13
  480. package/icons/Box.jsx +0 -11
  481. package/icons/Boxes.jsx +0 -20
  482. package/icons/Braces.jsx +0 -10
  483. package/icons/Brackets.jsx +0 -10
  484. package/icons/Brain.jsx +0 -16
  485. package/icons/BrainCircuit.jsx +0 -21
  486. package/icons/BrainCog.jsx +0 -23
  487. package/icons/BrickWall.jsx +0 -16
  488. package/icons/BrickWallFire.jsx +0 -15
  489. package/icons/BrickWallShield.jsx +0 -16
  490. package/icons/Briefcase.jsx +0 -10
  491. package/icons/BriefcaseBusiness.jsx +0 -12
  492. package/icons/BriefcaseConveyorBelt.jsx +0 -15
  493. package/icons/BriefcaseMedical.jsx +0 -14
  494. package/icons/BringToFront.jsx +0 -11
  495. package/icons/Brush.jsx +0 -11
  496. package/icons/BrushCleaning.jsx +0 -12
  497. package/icons/Bubbles.jsx +0 -12
  498. package/icons/Bug.jsx +0 -19
  499. package/icons/BugOff.jsx +0 -20
  500. package/icons/BugPlay.jsx +0 -17
  501. package/icons/Building.jsx +0 -19
  502. package/icons/Building2.jsx +0 -13
  503. package/icons/Bus.jsx +0 -15
  504. package/icons/BusFront.jsx +0 -17
  505. package/icons/Cable.jsx +0 -15
  506. package/icons/CableCar.jsx +0 -16
  507. package/icons/Cake.jsx +0 -17
  508. package/icons/CakeSlice.jsx +0 -12
  509. package/icons/Calculator.jsx +0 -18
  510. package/icons/Calendar.jsx +0 -12
  511. package/icons/Calendar1.jsx +0 -13
  512. package/icons/CalendarArrowDown.jsx +0 -14
  513. package/icons/CalendarArrowUp.jsx +0 -14
  514. package/icons/CalendarCheck.jsx +0 -13
  515. package/icons/CalendarCheck2.jsx +0 -13
  516. package/icons/CalendarClock.jsx +0 -14
  517. package/icons/CalendarCog.jsx +0 -21
  518. package/icons/CalendarDays.jsx +0 -18
  519. package/icons/CalendarFold.jsx +0 -13
  520. package/icons/CalendarHeart.jsx +0 -13
  521. package/icons/CalendarMinus.jsx +0 -13
  522. package/icons/CalendarMinus2.jsx +0 -13
  523. package/icons/CalendarOff.jsx +0 -14
  524. package/icons/CalendarPlus.jsx +0 -14
  525. package/icons/CalendarPlus2.jsx +0 -14
  526. package/icons/CalendarRange.jsx +0 -16
  527. package/icons/CalendarSearch.jsx +0 -14
  528. package/icons/CalendarSync.jsx +0 -16
  529. package/icons/CalendarX.jsx +0 -14
  530. package/icons/CalendarX2.jsx +0 -14
  531. package/icons/Calendars.jsx +0 -14
  532. package/icons/Camera.jsx +0 -10
  533. package/icons/CameraOff.jsx +0 -12
  534. package/icons/Candy.jsx +0 -13
  535. package/icons/CandyCane.jsx +0 -13
  536. package/icons/CandyOff.jsx +0 -15
  537. package/icons/Cannabis.jsx +0 -10
  538. package/icons/CannabisOff.jsx +0 -14
  539. package/icons/Captions.jsx +0 -10
  540. package/icons/CaptionsOff.jsx +0 -14
  541. package/icons/Car.jsx +0 -12
  542. package/icons/CarFront.jsx +0 -14
  543. package/icons/CarTaxiFront.jsx +0 -15
  544. package/icons/Caravan.jsx +0 -12
  545. package/icons/CardSim.jsx +0 -12
  546. package/icons/Carrot.jsx +0 -11
  547. package/icons/CaseLower.jsx +0 -12
  548. package/icons/CaseSensitive.jsx +0 -12
  549. package/icons/CaseUpper.jsx +0 -11
  550. package/icons/CassetteTape.jsx +0 -13
  551. package/icons/Cast.jsx +0 -12
  552. package/icons/Castle.jsx +0 -16
  553. package/icons/Cat.jsx +0 -12
  554. package/icons/Cctv.jsx +0 -13
  555. package/icons/CctvOff.jsx +0 -14
  556. package/icons/ChartArea.jsx +0 -10
  557. package/icons/ChartBar.jsx +0 -12
  558. package/icons/ChartBarBig.jsx +0 -11
  559. package/icons/ChartBarDecreasing.jsx +0 -12
  560. package/icons/ChartBarIncreasing.jsx +0 -12
  561. package/icons/ChartBarStacked.jsx +0 -13
  562. package/icons/ChartCandlestick.jsx +0 -15
  563. package/icons/ChartColumn.jsx +0 -12
  564. package/icons/ChartColumnBig.jsx +0 -11
  565. package/icons/ChartColumnDecreasing.jsx +0 -12
  566. package/icons/ChartColumnIncreasing.jsx +0 -12
  567. package/icons/ChartColumnStacked.jsx +0 -13
  568. package/icons/ChartGantt.jsx +0 -12
  569. package/icons/ChartLine.jsx +0 -10
  570. package/icons/ChartNetwork.jsx +0 -15
  571. package/icons/ChartNoAxesColumn.jsx +0 -11
  572. package/icons/ChartNoAxesColumnDecreasing.jsx +0 -11
  573. package/icons/ChartNoAxesColumnIncreasing.jsx +0 -11
  574. package/icons/ChartNoAxesCombined.jsx +0 -14
  575. package/icons/ChartNoAxesGantt.jsx +0 -11
  576. package/icons/ChartPie.jsx +0 -10
  577. package/icons/ChartScatter.jsx +0 -14
  578. package/icons/ChartSpline.jsx +0 -10
  579. package/icons/Check.jsx +0 -9
  580. package/icons/CheckCheck.jsx +0 -10
  581. package/icons/CheckLine.jsx +0 -11
  582. package/icons/ChefHat.jsx +0 -10
  583. package/icons/Cherry.jsx +0 -12
  584. package/icons/ChessBishop.jsx +0 -12
  585. package/icons/ChessKing.jsx +0 -12
  586. package/icons/ChessKnight.jsx +0 -13
  587. package/icons/ChessPawn.jsx +0 -13
  588. package/icons/ChessQueen.jsx +0 -16
  589. package/icons/ChessRook.jsx +0 -15
  590. package/icons/ChevronDown.jsx +0 -9
  591. package/icons/ChevronFirst.jsx +0 -10
  592. package/icons/ChevronLast.jsx +0 -10
  593. package/icons/ChevronLeft.jsx +0 -9
  594. package/icons/ChevronRight.jsx +0 -9
  595. package/icons/ChevronUp.jsx +0 -9
  596. package/icons/ChevronsDown.jsx +0 -10
  597. package/icons/ChevronsDownUp.jsx +0 -10
  598. package/icons/ChevronsLeft.jsx +0 -10
  599. package/icons/ChevronsLeftRight.jsx +0 -10
  600. package/icons/ChevronsLeftRightEllipsis.jsx +0 -13
  601. package/icons/ChevronsRight.jsx +0 -10
  602. package/icons/ChevronsRightLeft.jsx +0 -10
  603. package/icons/ChevronsUp.jsx +0 -10
  604. package/icons/ChevronsUpDown.jsx +0 -10
  605. package/icons/Church.jsx +0 -13
  606. package/icons/Cigarette.jsx +0 -13
  607. package/icons/CigaretteOff.jsx +0 -14
  608. package/icons/Circle.jsx +0 -9
  609. package/icons/CircleAlert.jsx +0 -11
  610. package/icons/CircleArrowDown.jsx +0 -11
  611. package/icons/CircleArrowLeft.jsx +0 -11
  612. package/icons/CircleArrowOutDownLeft.jsx +0 -11
  613. package/icons/CircleArrowOutDownRight.jsx +0 -11
  614. package/icons/CircleArrowOutUpLeft.jsx +0 -11
  615. package/icons/CircleArrowOutUpRight.jsx +0 -11
  616. package/icons/CircleArrowRight.jsx +0 -11
  617. package/icons/CircleArrowUp.jsx +0 -11
  618. package/icons/CircleCheck.jsx +0 -10
  619. package/icons/CircleCheckBig.jsx +0 -10
  620. package/icons/CircleChevronDown.jsx +0 -10
  621. package/icons/CircleChevronLeft.jsx +0 -10
  622. package/icons/CircleChevronRight.jsx +0 -10
  623. package/icons/CircleChevronUp.jsx +0 -10
  624. package/icons/CircleDashed.jsx +0 -16
  625. package/icons/CircleDivide.jsx +0 -12
  626. package/icons/CircleDollarSign.jsx +0 -11
  627. package/icons/CircleDot.jsx +0 -10
  628. package/icons/CircleDotDashed.jsx +0 -17
  629. package/icons/CircleEllipsis.jsx +0 -12
  630. package/icons/CircleEqual.jsx +0 -11
  631. package/icons/CircleFadingArrowUp.jsx +0 -15
  632. package/icons/CircleFadingPlus.jsx +0 -15
  633. package/icons/CircleGauge.jsx +0 -11
  634. package/icons/CircleMinus.jsx +0 -10
  635. package/icons/CircleOff.jsx +0 -11
  636. package/icons/CircleParking.jsx +0 -10
  637. package/icons/CircleParkingOff.jsx +0 -14
  638. package/icons/CirclePause.jsx +0 -11
  639. package/icons/CirclePercent.jsx +0 -12
  640. package/icons/CirclePile.jsx +0 -14
  641. package/icons/CirclePlay.jsx +0 -10
  642. package/icons/CirclePlus.jsx +0 -11
  643. package/icons/CirclePoundSterling.jsx +0 -12
  644. package/icons/CirclePower.jsx +0 -11
  645. package/icons/CircleQuestionMark.jsx +0 -11
  646. package/icons/CircleSlash.jsx +0 -10
  647. package/icons/CircleSlash2.jsx +0 -10
  648. package/icons/CircleSmall.jsx +0 -9
  649. package/icons/CircleStar.jsx +0 -10
  650. package/icons/CircleStop.jsx +0 -10
  651. package/icons/CircleUser.jsx +0 -11
  652. package/icons/CircleUserRound.jsx +0 -11
  653. package/icons/CircleX.jsx +0 -11
  654. package/icons/CircuitBoard.jsx +0 -13
  655. package/icons/Citrus.jsx +0 -12
  656. package/icons/Clapperboard.jsx +0 -12
  657. package/icons/Clipboard.jsx +0 -10
  658. package/icons/ClipboardCheck.jsx +0 -11
  659. package/icons/ClipboardClock.jsx +0 -13
  660. package/icons/ClipboardCopy.jsx +0 -13
  661. package/icons/ClipboardList.jsx +0 -14
  662. package/icons/ClipboardMinus.jsx +0 -11
  663. package/icons/ClipboardPaste.jsx +0 -13
  664. package/icons/ClipboardPen.jsx +0 -12
  665. package/icons/ClipboardPenLine.jsx +0 -13
  666. package/icons/ClipboardPlus.jsx +0 -12
  667. package/icons/ClipboardType.jsx +0 -13
  668. package/icons/ClipboardX.jsx +0 -12
  669. package/icons/Clock.jsx +0 -10
  670. package/icons/Clock1.jsx +0 -10
  671. package/icons/Clock10.jsx +0 -10
  672. package/icons/Clock11.jsx +0 -10
  673. package/icons/Clock12.jsx +0 -10
  674. package/icons/Clock2.jsx +0 -10
  675. package/icons/Clock3.jsx +0 -10
  676. package/icons/Clock4.jsx +0 -10
  677. package/icons/Clock5.jsx +0 -10
  678. package/icons/Clock6.jsx +0 -10
  679. package/icons/Clock7.jsx +0 -10
  680. package/icons/Clock8.jsx +0 -10
  681. package/icons/Clock9.jsx +0 -10
  682. package/icons/ClockAlert.jsx +0 -12
  683. package/icons/ClockArrowDown.jsx +0 -12
  684. package/icons/ClockArrowUp.jsx +0 -12
  685. package/icons/ClockCheck.jsx +0 -11
  686. package/icons/ClockFading.jsx +0 -14
  687. package/icons/ClockPlus.jsx +0 -12
  688. package/icons/ClosedCaption.jsx +0 -11
  689. package/icons/Cloud.jsx +0 -9
  690. package/icons/CloudAlert.jsx +0 -11
  691. package/icons/CloudBackup.jsx +0 -11
  692. package/icons/CloudCheck.jsx +0 -10
  693. package/icons/CloudCog.jsx +0 -17
  694. package/icons/CloudDownload.jsx +0 -11
  695. package/icons/CloudDrizzle.jsx +0 -15
  696. package/icons/CloudFog.jsx +0 -11
  697. package/icons/CloudHail.jsx +0 -15
  698. package/icons/CloudLightning.jsx +0 -10
  699. package/icons/CloudMoon.jsx +0 -10
  700. package/icons/CloudMoonRain.jsx +0 -12
  701. package/icons/CloudOff.jsx +0 -11
  702. package/icons/CloudRain.jsx +0 -12
  703. package/icons/CloudRainWind.jsx +0 -12
  704. package/icons/CloudSnow.jsx +0 -15
  705. package/icons/CloudSun.jsx +0 -14
  706. package/icons/CloudSunRain.jsx +0 -16
  707. package/icons/CloudSync.jsx +0 -13
  708. package/icons/CloudUpload.jsx +0 -11
  709. package/icons/Cloudy.jsx +0 -10
  710. package/icons/Clover.jsx +0 -11
  711. package/icons/Club.jsx +0 -10
  712. package/icons/Code.jsx +0 -10
  713. package/icons/CodeXml.jsx +0 -11
  714. package/icons/Coffee.jsx +0 -12
  715. package/icons/Cog.jsx +0 -22
  716. package/icons/Coins.jsx +0 -12
  717. package/icons/Columns2.jsx +0 -10
  718. package/icons/Columns3.jsx +0 -11
  719. package/icons/Columns3Cog.jsx +0 -20
  720. package/icons/Columns4.jsx +0 -12
  721. package/icons/Combine.jsx +0 -14
  722. package/icons/Command.jsx +0 -9
  723. package/icons/Compass.jsx +0 -10
  724. package/icons/Component.jsx +0 -12
  725. package/icons/Computer.jsx +0 -12
  726. package/icons/ConciergeBell.jsx +0 -12
  727. package/icons/Cone.jsx +0 -10
  728. package/icons/Construction.jsx +0 -16
  729. package/icons/Contact.jsx +0 -13
  730. package/icons/ContactRound.jsx +0 -13
  731. package/icons/Container.jsx +0 -13
  732. package/icons/Contrast.jsx +0 -10
  733. package/icons/Cookie.jsx +0 -14
  734. package/icons/CookingPot.jsx +0 -12
  735. package/icons/Copy.jsx +0 -10
  736. package/icons/CopyCheck.jsx +0 -11
  737. package/icons/CopyMinus.jsx +0 -11
  738. package/icons/CopyPlus.jsx +0 -12
  739. package/icons/CopySlash.jsx +0 -11
  740. package/icons/CopyX.jsx +0 -12
  741. package/icons/Copyleft.jsx +0 -10
  742. package/icons/Copyright.jsx +0 -10
  743. package/icons/CornerDownLeft.jsx +0 -10
  744. package/icons/CornerDownRight.jsx +0 -10
  745. package/icons/CornerLeftDown.jsx +0 -10
  746. package/icons/CornerLeftUp.jsx +0 -10
  747. package/icons/CornerRightDown.jsx +0 -10
  748. package/icons/CornerRightUp.jsx +0 -10
  749. package/icons/CornerUpLeft.jsx +0 -10
  750. package/icons/CornerUpRight.jsx +0 -10
  751. package/icons/Cpu.jsx +0 -22
  752. package/icons/CreativeCommons.jsx +0 -11
  753. package/icons/CreditCard.jsx +0 -10
  754. package/icons/Croissant.jsx +0 -13
  755. package/icons/Crop.jsx +0 -10
  756. package/icons/Cross.jsx +0 -9
  757. package/icons/Crosshair.jsx +0 -13
  758. package/icons/Crown.jsx +0 -10
  759. package/icons/Cuboid.jsx +0 -11
  760. package/icons/CupSoda.jsx +0 -12
  761. package/icons/Currency.jsx +0 -13
  762. package/icons/Cylinder.jsx +0 -10
  763. package/icons/Dam.jsx +0 -15
  764. package/icons/Database.jsx +0 -11
  765. package/icons/DatabaseBackup.jsx +0 -14
  766. package/icons/DatabaseSearch.jsx +0 -14
  767. package/icons/DatabaseZap.jsx +0 -13
  768. package/icons/DecimalsArrowLeft.jsx +0 -12
  769. package/icons/DecimalsArrowRight.jsx +0 -13
  770. package/icons/Delete.jsx +0 -11
  771. package/icons/Dessert.jsx +0 -11
  772. package/icons/Diameter.jsx +0 -13
  773. package/icons/Diamond.jsx +0 -9
  774. package/icons/DiamondMinus.jsx +0 -10
  775. package/icons/DiamondPercent.jsx +0 -12
  776. package/icons/DiamondPlus.jsx +0 -11
  777. package/icons/Dice1.jsx +0 -10
  778. package/icons/Dice2.jsx +0 -11
  779. package/icons/Dice3.jsx +0 -12
  780. package/icons/Dice4.jsx +0 -13
  781. package/icons/Dice5.jsx +0 -14
  782. package/icons/Dice6.jsx +0 -15
  783. package/icons/Dices.jsx +0 -14
  784. package/icons/Diff.jsx +0 -11
  785. package/icons/Disc.jsx +0 -10
  786. package/icons/Disc2.jsx +0 -11
  787. package/icons/Disc3.jsx +0 -12
  788. package/icons/DiscAlbum.jsx +0 -11
  789. package/icons/Divide.jsx +0 -11
  790. package/icons/Dna.jsx +0 -19
  791. package/icons/DnaOff.jsx +0 -18
  792. package/icons/Dock.jsx +0 -11
  793. package/icons/Dog.jsx +0 -13
  794. package/icons/DollarSign.jsx +0 -10
  795. package/icons/Donut.jsx +0 -10
  796. package/icons/DoorClosed.jsx +0 -11
  797. package/icons/DoorClosedLocked.jsx +0 -13
  798. package/icons/DoorOpen.jsx +0 -13
  799. package/icons/Dot.jsx +0 -9
  800. package/icons/Download.jsx +0 -11
  801. package/icons/DraftingCompass.jsx +0 -13
  802. package/icons/Drama.jsx +0 -16
  803. package/icons/Drill.jsx +0 -14
  804. package/icons/Drone.jsx +0 -17
  805. package/icons/Droplet.jsx +0 -9
  806. package/icons/DropletOff.jsx +0 -11
  807. package/icons/Droplets.jsx +0 -10
  808. package/icons/Drum.jsx +0 -15
  809. package/icons/Drumstick.jsx +0 -10
  810. package/icons/Dumbbell.jsx +0 -13
  811. package/icons/Ear.jsx +0 -10
  812. package/icons/EarOff.jsx +0 -13
  813. package/icons/Earth.jsx +0 -12
  814. package/icons/EarthLock.jsx +0 -14
  815. package/icons/Eclipse.jsx +0 -10
  816. package/icons/Egg.jsx +0 -9
  817. package/icons/EggFried.jsx +0 -10
  818. package/icons/EggOff.jsx +0 -11
  819. package/icons/Ellipse.jsx +0 -9
  820. package/icons/Ellipsis.jsx +0 -11
  821. package/icons/EllipsisVertical.jsx +0 -11
  822. package/icons/Equal.jsx +0 -10
  823. package/icons/EqualApproximately.jsx +0 -10
  824. package/icons/EqualNot.jsx +0 -11
  825. package/icons/Eraser.jsx +0 -10
  826. package/icons/EthernetPort.jsx +0 -13
  827. package/icons/Euro.jsx +0 -11
  828. package/icons/EvCharger.jsx +0 -13
  829. package/icons/Expand.jsx +0 -16
  830. package/icons/ExternalLink.jsx +0 -11
  831. package/icons/Eye.jsx +0 -10
  832. package/icons/EyeClosed.jsx +0 -13
  833. package/icons/EyeOff.jsx +0 -12
  834. package/icons/Factory.jsx +0 -12
  835. package/icons/Fan.jsx +0 -10
  836. package/icons/FastForward.jsx +0 -10
  837. package/icons/Feather.jsx +0 -11
  838. package/icons/Fence.jsx +0 -15
  839. package/icons/FerrisWheel.jsx +0 -17
  840. package/icons/File.jsx +0 -10
  841. package/icons/FileArchive.jsx +0 -14
  842. package/icons/FileAxis3d.jsx +0 -12
  843. package/icons/FileBadge.jsx +0 -12
  844. package/icons/FileBox.jsx +0 -13
  845. package/icons/FileBraces.jsx +0 -12
  846. package/icons/FileBracesCorner.jsx +0 -12
  847. package/icons/FileChartColumn.jsx +0 -13
  848. package/icons/FileChartColumnIncreasing.jsx +0 -13
  849. package/icons/FileChartLine.jsx +0 -11
  850. package/icons/FileChartPie.jsx +0 -12
  851. package/icons/FileCheck.jsx +0 -11
  852. package/icons/FileCheckCorner.jsx +0 -11
  853. package/icons/FileClock.jsx +0 -12
  854. package/icons/FileCode.jsx +0 -12
  855. package/icons/FileCodeCorner.jsx +0 -12
  856. package/icons/FileCog.jsx +0 -20
  857. package/icons/FileDiff.jsx +0 -12
  858. package/icons/FileDigit.jsx +0 -13
  859. package/icons/FileDown.jsx +0 -12
  860. package/icons/FileExclamationPoint.jsx +0 -11
  861. package/icons/FileHeadphone.jsx +0 -11
  862. package/icons/FileHeart.jsx +0 -11
  863. package/icons/FileImage.jsx +0 -12
  864. package/icons/FileInput.jsx +0 -12
  865. package/icons/FileKey.jsx +0 -13
  866. package/icons/FileLock.jsx +0 -12
  867. package/icons/FileMinus.jsx +0 -11
  868. package/icons/FileMinusCorner.jsx +0 -11
  869. package/icons/FileMusic.jsx +0 -12
  870. package/icons/FileOutput.jsx +0 -12
  871. package/icons/FilePen.jsx +0 -11
  872. package/icons/FilePenLine.jsx +0 -12
  873. package/icons/FilePlay.jsx +0 -11
  874. package/icons/FilePlus.jsx +0 -12
  875. package/icons/FilePlusCorner.jsx +0 -12
  876. package/icons/FileQuestionMark.jsx +0 -11
  877. package/icons/FileScan.jsx +0 -14
  878. package/icons/FileSearch.jsx +0 -12
  879. package/icons/FileSearchCorner.jsx +0 -12
  880. package/icons/FileSignal.jsx +0 -13
  881. package/icons/FileSliders.jsx +0 -14
  882. package/icons/FileSpreadsheet.jsx +0 -14
  883. package/icons/FileStack.jsx +0 -11
  884. package/icons/FileSymlink.jsx +0 -11
  885. package/icons/FileTerminal.jsx +0 -12
  886. package/icons/FileText.jsx +0 -13
  887. package/icons/FileType.jsx +0 -13
  888. package/icons/FileTypeCorner.jsx +0 -13
  889. package/icons/FileUp.jsx +0 -12
  890. package/icons/FileUser.jsx +0 -12
  891. package/icons/FileVideoCamera.jsx +0 -12
  892. package/icons/FileVolume.jsx +0 -12
  893. package/icons/FileX.jsx +0 -12
  894. package/icons/FileXCorner.jsx +0 -12
  895. package/icons/Files.jsx +0 -11
  896. package/icons/Film.jsx +0 -16
  897. package/icons/FingerprintPattern.jsx +0 -17
  898. package/icons/FireExtinguisher.jsx +0 -14
  899. package/icons/Fish.jsx +0 -14
  900. package/icons/FishOff.jsx +0 -11
  901. package/icons/FishSymbol.jsx +0 -9
  902. package/icons/FishingHook.jsx +0 -11
  903. package/icons/FishingRod.jsx +0 -11
  904. package/icons/Flag.jsx +0 -9
  905. package/icons/FlagOff.jsx +0 -12
  906. package/icons/FlagTriangleLeft.jsx +0 -9
  907. package/icons/FlagTriangleRight.jsx +0 -9
  908. package/icons/Flame.jsx +0 -9
  909. package/icons/FlameKindling.jsx +0 -11
  910. package/icons/Flashlight.jsx +0 -11
  911. package/icons/FlashlightOff.jsx +0 -13
  912. package/icons/FlaskConical.jsx +0 -11
  913. package/icons/FlaskConicalOff.jsx +0 -14
  914. package/icons/FlaskRound.jsx +0 -11
  915. package/icons/FlipHorizontal2.jsx +0 -14
  916. package/icons/FlipVertical2.jsx +0 -14
  917. package/icons/Flower.jsx +0 -18
  918. package/icons/Flower2.jsx +0 -13
  919. package/icons/Focus.jsx +0 -13
  920. package/icons/FoldHorizontal.jsx +0 -16
  921. package/icons/FoldVertical.jsx +0 -16
  922. package/icons/Folder.jsx +0 -9
  923. package/icons/FolderArchive.jsx +0 -12
  924. package/icons/FolderBookmark.jsx +0 -10
  925. package/icons/FolderCheck.jsx +0 -10
  926. package/icons/FolderClock.jsx +0 -11
  927. package/icons/FolderClosed.jsx +0 -10
  928. package/icons/FolderCode.jsx +0 -11
  929. package/icons/FolderCog.jsx +0 -18
  930. package/icons/FolderDot.jsx +0 -10
  931. package/icons/FolderDown.jsx +0 -11
  932. package/icons/FolderGit.jsx +0 -12
  933. package/icons/FolderGit2.jsx +0 -12
  934. package/icons/FolderHeart.jsx +0 -10
  935. package/icons/FolderInput.jsx +0 -11
  936. package/icons/FolderKanban.jsx +0 -12
  937. package/icons/FolderKey.jsx +0 -12
  938. package/icons/FolderLock.jsx +0 -11
  939. package/icons/FolderMinus.jsx +0 -10
  940. package/icons/FolderOpen.jsx +0 -9
  941. package/icons/FolderOpenDot.jsx +0 -10
  942. package/icons/FolderOutput.jsx +0 -11
  943. package/icons/FolderPen.jsx +0 -10
  944. package/icons/FolderPlus.jsx +0 -11
  945. package/icons/FolderRoot.jsx +0 -11
  946. package/icons/FolderSearch.jsx +0 -11
  947. package/icons/FolderSearch2.jsx +0 -11
  948. package/icons/FolderSymlink.jsx +0 -10
  949. package/icons/FolderSync.jsx +0 -13
  950. package/icons/FolderTree.jsx +0 -12
  951. package/icons/FolderUp.jsx +0 -11
  952. package/icons/FolderX.jsx +0 -11
  953. package/icons/Folders.jsx +0 -10
  954. package/icons/Footprints.jsx +0 -12
  955. package/icons/Forklift.jsx +0 -15
  956. package/icons/Form.jsx +0 -12
  957. package/icons/Forward.jsx +0 -10
  958. package/icons/Frame.jsx +0 -12
  959. package/icons/Frown.jsx +0 -12
  960. package/icons/Fuel.jsx +0 -12
  961. package/icons/Fullscreen.jsx +0 -13
  962. package/icons/Funnel.jsx +0 -9
  963. package/icons/FunnelPlus.jsx +0 -11
  964. package/icons/FunnelX.jsx +0 -11
  965. package/icons/GalleryHorizontal.jsx +0 -11
  966. package/icons/GalleryHorizontalEnd.jsx +0 -11
  967. package/icons/GalleryThumbnails.jsx +0 -13
  968. package/icons/GalleryVertical.jsx +0 -11
  969. package/icons/GalleryVerticalEnd.jsx +0 -11
  970. package/icons/Gamepad.jsx +0 -13
  971. package/icons/Gamepad2.jsx +0 -13
  972. package/icons/GamepadDirectional.jsx +0 -16
  973. package/icons/Gauge.jsx +0 -10
  974. package/icons/Gavel.jsx +0 -13
  975. package/icons/Gem.jsx +0 -11
  976. package/icons/GeorgianLari.jsx +0 -12
  977. package/icons/Ghost.jsx +0 -11
  978. package/icons/Gift.jsx +0 -12
  979. package/icons/GitBranch.jsx +0 -11
  980. package/icons/GitBranchMinus.jsx +0 -12
  981. package/icons/GitBranchPlus.jsx +0 -14
  982. package/icons/GitCommitHorizontal.jsx +0 -11
  983. package/icons/GitCommitVertical.jsx +0 -11
  984. package/icons/GitCompare.jsx +0 -12
  985. package/icons/GitCompareArrows.jsx +0 -14
  986. package/icons/GitFork.jsx +0 -13
  987. package/icons/GitGraph.jsx +0 -14
  988. package/icons/GitMerge.jsx +0 -11
  989. package/icons/GitMergeConflict.jsx +0 -13
  990. package/icons/GitPullRequest.jsx +0 -12
  991. package/icons/GitPullRequestArrow.jsx +0 -13
  992. package/icons/GitPullRequestClosed.jsx +0 -14
  993. package/icons/GitPullRequestCreate.jsx +0 -13
  994. package/icons/GitPullRequestCreateArrow.jsx +0 -14
  995. package/icons/GitPullRequestDraft.jsx +0 -13
  996. package/icons/GlassWater.jsx +0 -10
  997. package/icons/Glasses.jsx +0 -13
  998. package/icons/Globe.jsx +0 -11
  999. package/icons/GlobeLock.jsx +0 -12
  1000. package/icons/GlobeOff.jsx +0 -15
  1001. package/icons/GlobeX.jsx +0 -11
  1002. package/icons/Goal.jsx +0 -11
  1003. package/icons/Gpu.jsx +0 -13
  1004. package/icons/GraduationCap.jsx +0 -11
  1005. package/icons/Grape.jsx +0 -17
  1006. package/icons/Grid2x2.jsx +0 -11
  1007. package/icons/Grid2x2Check.jsx +0 -10
  1008. package/icons/Grid2x2Plus.jsx +0 -11
  1009. package/icons/Grid2x2X.jsx +0 -11
  1010. package/icons/Grid3x2.jsx +0 -12
  1011. package/icons/Grid3x3.jsx +0 -13
  1012. package/icons/Grip.jsx +0 -17
  1013. package/icons/GripHorizontal.jsx +0 -14
  1014. package/icons/GripVertical.jsx +0 -14
  1015. package/icons/Group.jsx +0 -14
  1016. package/icons/Guitar.jsx +0 -12
  1017. package/icons/Ham.jsx +0 -12
  1018. package/icons/Hamburger.jsx +0 -12
  1019. package/icons/Hammer.jsx +0 -11
  1020. package/icons/Hand.jsx +0 -12
  1021. package/icons/HandCoins.jsx +0 -13
  1022. package/icons/HandFist.jsx +0 -12
  1023. package/icons/HandGrab.jsx +0 -13
  1024. package/icons/HandHeart.jsx +0 -12
  1025. package/icons/HandHelping.jsx +0 -11
  1026. package/icons/HandMetal.jsx +0 -12
  1027. package/icons/HandPlatter.jsx +0 -14
  1028. package/icons/Handbag.jsx +0 -10
  1029. package/icons/Handshake.jsx +0 -13
  1030. package/icons/HardDrive.jsx +0 -12
  1031. package/icons/HardDriveDownload.jsx +0 -13
  1032. package/icons/HardDriveUpload.jsx +0 -13
  1033. package/icons/HardHat.jsx +0 -12
  1034. package/icons/Hash.jsx +0 -12
  1035. package/icons/HatGlasses.jsx +0 -13
  1036. package/icons/Haze.jsx +0 -16
  1037. package/icons/Hd.jsx +0 -13
  1038. package/icons/HdmiPort.jsx +0 -10
  1039. package/icons/Heading.jsx +0 -11
  1040. package/icons/Heading1.jsx +0 -12
  1041. package/icons/Heading2.jsx +0 -12
  1042. package/icons/Heading3.jsx +0 -13
  1043. package/icons/Heading4.jsx +0 -13
  1044. package/icons/Heading5.jsx +0 -13
  1045. package/icons/Heading6.jsx +0 -13
  1046. package/icons/HeadphoneOff.jsx +0 -13
  1047. package/icons/Headphones.jsx +0 -9
  1048. package/icons/Headset.jsx +0 -10
  1049. package/icons/Heart.jsx +0 -9
  1050. package/icons/HeartCrack.jsx +0 -10
  1051. package/icons/HeartHandshake.jsx +0 -9
  1052. package/icons/HeartMinus.jsx +0 -10
  1053. package/icons/HeartOff.jsx +0 -11
  1054. package/icons/HeartPlus.jsx +0 -11
  1055. package/icons/HeartPulse.jsx +0 -10
  1056. package/icons/HeartX.jsx +0 -11
  1057. package/icons/Heater.jsx +0 -18
  1058. package/icons/Helicopter.jsx +0 -16
  1059. package/icons/Hexagon.jsx +0 -9
  1060. package/icons/Highlighter.jsx +0 -10
  1061. package/icons/History.jsx +0 -11
  1062. package/icons/Hop.jsx +0 -16
  1063. package/icons/HopOff.jsx +0 -17
  1064. package/icons/Hospital.jsx +0 -13
  1065. package/icons/Hotel.jsx +0 -18
  1066. package/icons/Hourglass.jsx +0 -12
  1067. package/icons/House.jsx +0 -10
  1068. package/icons/HouseHeart.jsx +0 -10
  1069. package/icons/HousePlug.jsx +0 -12
  1070. package/icons/HousePlus.jsx +0 -12
  1071. package/icons/HouseWifi.jsx +0 -12
  1072. package/icons/IceCreamBowl.jsx +0 -11
  1073. package/icons/IceCreamCone.jsx +0 -11
  1074. package/icons/IdCard.jsx +0 -13
  1075. package/icons/IdCardLanyard.jsx +0 -13
  1076. package/icons/Image.jsx +0 -11
  1077. package/icons/ImageDown.jsx +0 -12
  1078. package/icons/ImageMinus.jsx +0 -12
  1079. package/icons/ImageOff.jsx +0 -14
  1080. package/icons/ImagePlay.jsx +0 -12
  1081. package/icons/ImagePlus.jsx +0 -13
  1082. package/icons/ImageUp.jsx +0 -12
  1083. package/icons/ImageUpscale.jsx +0 -16
  1084. package/icons/Images.jsx +0 -12
  1085. package/icons/Import.jsx +0 -11
  1086. package/icons/Inbox.jsx +0 -10
  1087. package/icons/IndianRupee.jsx +0 -13
  1088. package/icons/Infinity.jsx +0 -9
  1089. package/icons/Info.jsx +0 -11
  1090. package/icons/InspectionPanel.jsx +0 -13
  1091. package/icons/Italic.jsx +0 -11
  1092. package/icons/IterationCcw.jsx +0 -10
  1093. package/icons/IterationCw.jsx +0 -10
  1094. package/icons/JapaneseYen.jsx +0 -11
  1095. package/icons/Joystick.jsx +0 -12
  1096. package/icons/Kanban.jsx +0 -11
  1097. package/icons/Kayak.jsx +0 -12
  1098. package/icons/Key.jsx +0 -11
  1099. package/icons/KeyRound.jsx +0 -10
  1100. package/icons/KeySquare.jsx +0 -11
  1101. package/icons/Keyboard.jsx +0 -17
  1102. package/icons/KeyboardMusic.jsx +0 -17
  1103. package/icons/KeyboardOff.jsx +0 -18
  1104. package/icons/LICENSE +0 -43
  1105. package/icons/Lamp.jsx +0 -11
  1106. package/icons/LampCeiling.jsx +0 -11
  1107. package/icons/LampDesk.jsx +0 -12
  1108. package/icons/LampFloor.jsx +0 -11
  1109. package/icons/LampWallDown.jsx +0 -11
  1110. package/icons/LampWallUp.jsx +0 -11
  1111. package/icons/LandPlot.jsx +0 -12
  1112. package/icons/Landmark.jsx +0 -14
  1113. package/icons/Languages.jsx +0 -14
  1114. package/icons/Laptop.jsx +0 -10
  1115. package/icons/LaptopMinimal.jsx +0 -10
  1116. package/icons/LaptopMinimalCheck.jsx +0 -11
  1117. package/icons/Lasso.jsx +0 -11
  1118. package/icons/LassoSelect.jsx +0 -13
  1119. package/icons/Laugh.jsx +0 -12
  1120. package/icons/Layers.jsx +0 -11
  1121. package/icons/Layers2.jsx +0 -10
  1122. package/icons/LayersMinus.jsx +0 -13
  1123. package/icons/LayersPlus.jsx +0 -13
  1124. package/icons/LayoutDashboard.jsx +0 -12
  1125. package/icons/LayoutGrid.jsx +0 -12
  1126. package/icons/LayoutList.jsx +0 -14
  1127. package/icons/LayoutPanelLeft.jsx +0 -11
  1128. package/icons/LayoutPanelTop.jsx +0 -11
  1129. package/icons/LayoutTemplate.jsx +0 -11
  1130. package/icons/Leaf.jsx +0 -10
  1131. package/icons/LeafyGreen.jsx +0 -10
  1132. package/icons/Lectern.jsx +0 -11
  1133. package/icons/LensConcave.jsx +0 -9
  1134. package/icons/LensConvex.jsx +0 -10
  1135. package/icons/Library.jsx +0 -12
  1136. package/icons/LibraryBig.jsx +0 -11
  1137. package/icons/LifeBuoy.jsx +0 -14
  1138. package/icons/Ligature.jsx +0 -13
  1139. package/icons/Lightbulb.jsx +0 -11
  1140. package/icons/LightbulbOff.jsx +0 -13
  1141. package/icons/LineDotRightHorizontal.jsx +0 -10
  1142. package/icons/LineSquiggle.jsx +0 -9
  1143. package/icons/LineStyle.jsx +0 -14
  1144. package/icons/Link.jsx +0 -10
  1145. package/icons/Link2.jsx +0 -11
  1146. package/icons/Link2Off.jsx +0 -12
  1147. package/icons/List.jsx +0 -14
  1148. package/icons/ListCheck.jsx +0 -12
  1149. package/icons/ListChecks.jsx +0 -13
  1150. package/icons/ListChevronsDownUp.jsx +0 -13
  1151. package/icons/ListChevronsUpDown.jsx +0 -13
  1152. package/icons/ListCollapse.jsx +0 -13
  1153. package/icons/ListEnd.jsx +0 -13
  1154. package/icons/ListFilter.jsx +0 -11
  1155. package/icons/ListFilterPlus.jsx +0 -13
  1156. package/icons/ListIndentDecrease.jsx +0 -12
  1157. package/icons/ListIndentIncrease.jsx +0 -12
  1158. package/icons/ListMinus.jsx +0 -12
  1159. package/icons/ListMusic.jsx +0 -13
  1160. package/icons/ListOrdered.jsx +0 -14
  1161. package/icons/ListPlus.jsx +0 -13
  1162. package/icons/ListRestart.jsx +0 -13
  1163. package/icons/ListStart.jsx +0 -13
  1164. package/icons/ListTodo.jsx +0 -13
  1165. package/icons/ListTree.jsx +0 -13
  1166. package/icons/ListVideo.jsx +0 -12
  1167. package/icons/ListX.jsx +0 -13
  1168. package/icons/Loader.jsx +0 -16
  1169. package/icons/LoaderCircle.jsx +0 -9
  1170. package/icons/LoaderPinwheel.jsx +0 -12
  1171. package/icons/Locate.jsx +0 -13
  1172. package/icons/LocateFixed.jsx +0 -14
  1173. package/icons/LocateOff.jsx +0 -15
  1174. package/icons/Lock.jsx +0 -10
  1175. package/icons/LockKeyhole.jsx +0 -11
  1176. package/icons/LockKeyholeOpen.jsx +0 -11
  1177. package/icons/LockOpen.jsx +0 -10
  1178. package/icons/LogIn.jsx +0 -11
  1179. package/icons/LogOut.jsx +0 -11
  1180. package/icons/Logs.jsx +0 -17
  1181. package/icons/Lollipop.jsx +0 -11
  1182. package/icons/Luggage.jsx +0 -13
  1183. package/icons/Magnet.jsx +0 -11
  1184. package/icons/Mail.jsx +0 -10
  1185. package/icons/MailCheck.jsx +0 -11
  1186. package/icons/MailMinus.jsx +0 -11
  1187. package/icons/MailOpen.jsx +0 -10
  1188. package/icons/MailPlus.jsx +0 -12
  1189. package/icons/MailQuestionMark.jsx +0 -12
  1190. package/icons/MailSearch.jsx +0 -13
  1191. package/icons/MailWarning.jsx +0 -12
  1192. package/icons/MailX.jsx +0 -12
  1193. package/icons/Mailbox.jsx +0 -12
  1194. package/icons/Mails.jsx +0 -11
  1195. package/icons/Map.jsx +0 -11
  1196. package/icons/MapMinus.jsx +0 -12
  1197. package/icons/MapPin.jsx +0 -10
  1198. package/icons/MapPinCheck.jsx +0 -11
  1199. package/icons/MapPinCheckInside.jsx +0 -10
  1200. package/icons/MapPinHouse.jsx +0 -12
  1201. package/icons/MapPinMinus.jsx +0 -11
  1202. package/icons/MapPinMinusInside.jsx +0 -10
  1203. package/icons/MapPinOff.jsx +0 -13
  1204. package/icons/MapPinPen.jsx +0 -11
  1205. package/icons/MapPinPlus.jsx +0 -12
  1206. package/icons/MapPinPlusInside.jsx +0 -11
  1207. package/icons/MapPinSearch.jsx +0 -12
  1208. package/icons/MapPinX.jsx +0 -12
  1209. package/icons/MapPinXInside.jsx +0 -11
  1210. package/icons/MapPinned.jsx +0 -11
  1211. package/icons/MapPlus.jsx +0 -13
  1212. package/icons/Mars.jsx +0 -11
  1213. package/icons/MarsStroke.jsx +0 -12
  1214. package/icons/Martini.jsx +0 -11
  1215. package/icons/Maximize.jsx +0 -12
  1216. package/icons/Maximize2.jsx +0 -12
  1217. package/icons/Medal.jsx +0 -14
  1218. package/icons/Megaphone.jsx +0 -11
  1219. package/icons/MegaphoneOff.jsx +0 -13
  1220. package/icons/Meh.jsx +0 -12
  1221. package/icons/MemoryStick.jsx +0 -19
  1222. package/icons/Menu.jsx +0 -11
  1223. package/icons/Merge.jsx +0 -11
  1224. package/icons/MessageCircle.jsx +0 -9
  1225. package/icons/MessageCircleCheck.jsx +0 -10
  1226. package/icons/MessageCircleCode.jsx +0 -11
  1227. package/icons/MessageCircleDashed.jsx +0 -16
  1228. package/icons/MessageCircleHeart.jsx +0 -10
  1229. package/icons/MessageCircleMore.jsx +0 -12
  1230. package/icons/MessageCircleOff.jsx +0 -11
  1231. package/icons/MessageCirclePlus.jsx +0 -11
  1232. package/icons/MessageCircleQuestionMark.jsx +0 -11
  1233. package/icons/MessageCircleReply.jsx +0 -11
  1234. package/icons/MessageCircleWarning.jsx +0 -11
  1235. package/icons/MessageCircleX.jsx +0 -11
  1236. package/icons/MessageSquare.jsx +0 -9
  1237. package/icons/MessageSquareCheck.jsx +0 -10
  1238. package/icons/MessageSquareCode.jsx +0 -11
  1239. package/icons/MessageSquareDashed.jsx +0 -18
  1240. package/icons/MessageSquareDiff.jsx +0 -12
  1241. package/icons/MessageSquareDot.jsx +0 -10
  1242. package/icons/MessageSquareHeart.jsx +0 -10
  1243. package/icons/MessageSquareLock.jsx +0 -11
  1244. package/icons/MessageSquareMore.jsx +0 -12
  1245. package/icons/MessageSquareOff.jsx +0 -11
  1246. package/icons/MessageSquarePlus.jsx +0 -11
  1247. package/icons/MessageSquareQuote.jsx +0 -11
  1248. package/icons/MessageSquareReply.jsx +0 -11
  1249. package/icons/MessageSquareShare.jsx +0 -11
  1250. package/icons/MessageSquareText.jsx +0 -12
  1251. package/icons/MessageSquareWarning.jsx +0 -11
  1252. package/icons/MessageSquareX.jsx +0 -11
  1253. package/icons/MessagesSquare.jsx +0 -10
  1254. package/icons/Metronome.jsx +0 -12
  1255. package/icons/Mic.jsx +0 -11
  1256. package/icons/MicOff.jsx +0 -14
  1257. package/icons/MicVocal.jsx +0 -11
  1258. package/icons/Microchip.jsx +0 -18
  1259. package/icons/Microscope.jsx +0 -14
  1260. package/icons/Microwave.jsx +0 -13
  1261. package/icons/Milestone.jsx +0 -11
  1262. package/icons/Milk.jsx +0 -11
  1263. package/icons/MilkOff.jsx +0 -12
  1264. package/icons/Minimize.jsx +0 -12
  1265. package/icons/Minimize2.jsx +0 -12
  1266. package/icons/Minus.jsx +0 -9
  1267. package/icons/MirrorRectangular.jsx +0 -11
  1268. package/icons/MirrorRound.jsx +0 -13
  1269. package/icons/Monitor.jsx +0 -11
  1270. package/icons/MonitorCheck.jsx +0 -12
  1271. package/icons/MonitorCloud.jsx +0 -12
  1272. package/icons/MonitorCog.jsx +0 -20
  1273. package/icons/MonitorDot.jsx +0 -12
  1274. package/icons/MonitorDown.jsx +0 -13
  1275. package/icons/MonitorOff.jsx +0 -13
  1276. package/icons/MonitorPause.jsx +0 -13
  1277. package/icons/MonitorPlay.jsx +0 -12
  1278. package/icons/MonitorSmartphone.jsx +0 -12
  1279. package/icons/MonitorSpeaker.jsx +0 -13
  1280. package/icons/MonitorStop.jsx +0 -12
  1281. package/icons/MonitorUp.jsx +0 -13
  1282. package/icons/MonitorX.jsx +0 -13
  1283. package/icons/Moon.jsx +0 -9
  1284. package/icons/MoonStar.jsx +0 -11
  1285. package/icons/Motorbike.jsx +0 -13
  1286. package/icons/Mountain.jsx +0 -9
  1287. package/icons/MountainSnow.jsx +0 -10
  1288. package/icons/Mouse.jsx +0 -10
  1289. package/icons/MouseLeft.jsx +0 -11
  1290. package/icons/MouseOff.jsx +0 -12
  1291. package/icons/MousePointer.jsx +0 -10
  1292. package/icons/MousePointer2.jsx +0 -9
  1293. package/icons/MousePointer2Off.jsx +0 -11
  1294. package/icons/MousePointerBan.jsx +0 -11
  1295. package/icons/MousePointerClick.jsx +0 -13
  1296. package/icons/MouseRight.jsx +0 -11
  1297. package/icons/Move.jsx +0 -14
  1298. package/icons/Move3d.jsx +0 -12
  1299. package/icons/MoveDiagonal.jsx +0 -11
  1300. package/icons/MoveDiagonal2.jsx +0 -11
  1301. package/icons/MoveDown.jsx +0 -10
  1302. package/icons/MoveDownLeft.jsx +0 -10
  1303. package/icons/MoveDownRight.jsx +0 -10
  1304. package/icons/MoveHorizontal.jsx +0 -11
  1305. package/icons/MoveLeft.jsx +0 -10
  1306. package/icons/MoveRight.jsx +0 -10
  1307. package/icons/MoveUp.jsx +0 -10
  1308. package/icons/MoveUpLeft.jsx +0 -10
  1309. package/icons/MoveUpRight.jsx +0 -10
  1310. package/icons/MoveVertical.jsx +0 -11
  1311. package/icons/Music.jsx +0 -11
  1312. package/icons/Music2.jsx +0 -10
  1313. package/icons/Music3.jsx +0 -10
  1314. package/icons/Music4.jsx +0 -12
  1315. package/icons/Navigation.jsx +0 -9
  1316. package/icons/Navigation2.jsx +0 -9
  1317. package/icons/Navigation2Off.jsx +0 -11
  1318. package/icons/NavigationOff.jsx +0 -11
  1319. package/icons/Network.jsx +0 -13
  1320. package/icons/Newspaper.jsx +0 -12
  1321. package/icons/Nfc.jsx +0 -12
  1322. package/icons/NonBinary.jsx +0 -12
  1323. package/icons/Notebook.jsx +0 -14
  1324. package/icons/NotebookPen.jsx +0 -14
  1325. package/icons/NotebookTabs.jsx +0 -17
  1326. package/icons/NotebookText.jsx +0 -16
  1327. package/icons/NotepadText.jsx +0 -15
  1328. package/icons/NotepadTextDashed.jsx +0 -21
  1329. package/icons/Nut.jsx +0 -11
  1330. package/icons/NutOff.jsx +0 -13
  1331. package/icons/Octagon.jsx +0 -9
  1332. package/icons/OctagonAlert.jsx +0 -11
  1333. package/icons/OctagonMinus.jsx +0 -10
  1334. package/icons/OctagonPause.jsx +0 -11
  1335. package/icons/OctagonX.jsx +0 -11
  1336. package/icons/Omega.jsx +0 -9
  1337. package/icons/Option.jsx +0 -10
  1338. package/icons/Orbit.jsx +0 -13
  1339. package/icons/Origami.jsx +0 -11
  1340. package/icons/Package.jsx +0 -12
  1341. package/icons/Package2.jsx +0 -11
  1342. package/icons/PackageCheck.jsx +0 -13
  1343. package/icons/PackageMinus.jsx +0 -13
  1344. package/icons/PackageOpen.jsx +0 -12
  1345. package/icons/PackagePlus.jsx +0 -14
  1346. package/icons/PackageSearch.jsx +0 -14
  1347. package/icons/PackageX.jsx +0 -14
  1348. package/icons/PaintBucket.jsx +0 -12
  1349. package/icons/PaintRoller.jsx +0 -11
  1350. package/icons/Paintbrush.jsx +0 -11
  1351. package/icons/PaintbrushVertical.jsx +0 -12
  1352. package/icons/Palette.jsx +0 -13
  1353. package/icons/Panda.jsx +0 -14
  1354. package/icons/PanelBottom.jsx +0 -10
  1355. package/icons/PanelBottomClose.jsx +0 -11
  1356. package/icons/PanelBottomDashed.jsx +0 -13
  1357. package/icons/PanelBottomOpen.jsx +0 -11
  1358. package/icons/PanelLeft.jsx +0 -10
  1359. package/icons/PanelLeftClose.jsx +0 -11
  1360. package/icons/PanelLeftDashed.jsx +0 -13
  1361. package/icons/PanelLeftOpen.jsx +0 -11
  1362. package/icons/PanelLeftRightDashed.jsx +0 -17
  1363. package/icons/PanelRight.jsx +0 -10
  1364. package/icons/PanelRightClose.jsx +0 -11
  1365. package/icons/PanelRightDashed.jsx +0 -13
  1366. package/icons/PanelRightOpen.jsx +0 -11
  1367. package/icons/PanelTop.jsx +0 -10
  1368. package/icons/PanelTopBottomDashed.jsx +0 -17
  1369. package/icons/PanelTopClose.jsx +0 -11
  1370. package/icons/PanelTopDashed.jsx +0 -13
  1371. package/icons/PanelTopOpen.jsx +0 -11
  1372. package/icons/PanelsLeftBottom.jsx +0 -11
  1373. package/icons/PanelsRightBottom.jsx +0 -11
  1374. package/icons/PanelsTopLeft.jsx +0 -11
  1375. package/icons/Paperclip.jsx +0 -9
  1376. package/icons/Parentheses.jsx +0 -10
  1377. package/icons/ParkingMeter.jsx +0 -13
  1378. package/icons/PartyPopper.jsx +0 -17
  1379. package/icons/Pause.jsx +0 -10
  1380. package/icons/PawPrint.jsx +0 -12
  1381. package/icons/PcCase.jsx +0 -12
  1382. package/icons/Pen.jsx +0 -9
  1383. package/icons/PenLine.jsx +0 -10
  1384. package/icons/PenOff.jsx +0 -11
  1385. package/icons/PenTool.jsx +0 -12
  1386. package/icons/Pencil.jsx +0 -10
  1387. package/icons/PencilLine.jsx +0 -11
  1388. package/icons/PencilOff.jsx +0 -12
  1389. package/icons/PencilRuler.jsx +0 -14
  1390. package/icons/Pentagon.jsx +0 -9
  1391. package/icons/Percent.jsx +0 -11
  1392. package/icons/PersonStanding.jsx +0 -12
  1393. package/icons/PhilippinePeso.jsx +0 -11
  1394. package/icons/Phone.jsx +0 -9
  1395. package/icons/PhoneCall.jsx +0 -11
  1396. package/icons/PhoneForwarded.jsx +0 -11
  1397. package/icons/PhoneIncoming.jsx +0 -11
  1398. package/icons/PhoneMissed.jsx +0 -11
  1399. package/icons/PhoneOff.jsx +0 -11
  1400. package/icons/PhoneOutgoing.jsx +0 -11
  1401. package/icons/Pi.jsx +0 -11
  1402. package/icons/Piano.jsx +0 -14
  1403. package/icons/Pickaxe.jsx +0 -12
  1404. package/icons/PictureInPicture.jsx +0 -13
  1405. package/icons/PictureInPicture2.jsx +0 -10
  1406. package/icons/PiggyBank.jsx +0 -11
  1407. package/icons/Pilcrow.jsx +0 -11
  1408. package/icons/PilcrowLeft.jsx +0 -13
  1409. package/icons/PilcrowRight.jsx +0 -13
  1410. package/icons/Pill.jsx +0 -10
  1411. package/icons/PillBottle.jsx +0 -11
  1412. package/icons/Pin.jsx +0 -10
  1413. package/icons/PinOff.jsx +0 -12
  1414. package/icons/Pipette.jsx +0 -11
  1415. package/icons/Pizza.jsx +0 -13
  1416. package/icons/Plane.jsx +0 -9
  1417. package/icons/PlaneLanding.jsx +0 -10
  1418. package/icons/PlaneTakeoff.jsx +0 -10
  1419. package/icons/Play.jsx +0 -9
  1420. package/icons/Plug.jsx +0 -12
  1421. package/icons/Plug2.jsx +0 -13
  1422. package/icons/PlugZap.jsx +0 -13
  1423. package/icons/Plus.jsx +0 -10
  1424. package/icons/PocketKnife.jsx +0 -13
  1425. package/icons/Podcast.jsx +0 -12
  1426. package/icons/Pointer.jsx +0 -13
  1427. package/icons/PointerOff.jsx +0 -14
  1428. package/icons/Popcorn.jsx +0 -12
  1429. package/icons/Popsicle.jsx +0 -10
  1430. package/icons/PoundSterling.jsx +0 -12
  1431. package/icons/Power.jsx +0 -10
  1432. package/icons/PowerOff.jsx +0 -12
  1433. package/icons/Presentation.jsx +0 -11
  1434. package/icons/Printer.jsx +0 -11
  1435. package/icons/PrinterCheck.jsx +0 -12
  1436. package/icons/PrinterX.jsx +0 -13
  1437. package/icons/Projector.jsx +0 -14
  1438. package/icons/Proportions.jsx +0 -11
  1439. package/icons/Puzzle.jsx +0 -9
  1440. package/icons/Pyramid.jsx +0 -10
  1441. package/icons/QrCode.jsx +0 -20
  1442. package/icons/Quote.jsx +0 -10
  1443. package/icons/Rabbit.jsx +0 -13
  1444. package/icons/Radar.jsx +0 -16
  1445. package/icons/Radiation.jsx +0 -12
  1446. package/icons/Radical.jsx +0 -9
  1447. package/icons/Radio.jsx +0 -13
  1448. package/icons/RadioOff.jsx +0 -14
  1449. package/icons/RadioReceiver.jsx +0 -12
  1450. package/icons/RadioTower.jsx +0 -15
  1451. package/icons/Radius.jsx +0 -12
  1452. package/icons/Rainbow.jsx +0 -11
  1453. package/icons/Rat.jsx +0 -13
  1454. package/icons/Ratio.jsx +0 -10
  1455. package/icons/Receipt.jsx +0 -11
  1456. package/icons/ReceiptCent.jsx +0 -11
  1457. package/icons/ReceiptEuro.jsx +0 -11
  1458. package/icons/ReceiptIndianRupee.jsx +0 -12
  1459. package/icons/ReceiptJapaneseYen.jsx +0 -13
  1460. package/icons/ReceiptPoundSterling.jsx +0 -12
  1461. package/icons/ReceiptRussianRuble.jsx +0 -11
  1462. package/icons/ReceiptSwissFranc.jsx +0 -12
  1463. package/icons/ReceiptText.jsx +0 -12
  1464. package/icons/ReceiptTurkishLira.jsx +0 -11
  1465. package/icons/RectangleCircle.jsx +0 -10
  1466. package/icons/RectangleEllipsis.jsx +0 -12
  1467. package/icons/RectangleGoggles.jsx +0 -9
  1468. package/icons/RectangleHorizontal.jsx +0 -9
  1469. package/icons/RectangleVertical.jsx +0 -9
  1470. package/icons/Recycle.jsx +0 -14
  1471. package/icons/Redo.jsx +0 -10
  1472. package/icons/Redo2.jsx +0 -10
  1473. package/icons/RedoDot.jsx +0 -11
  1474. package/icons/RefreshCcw.jsx +0 -12
  1475. package/icons/RefreshCcwDot.jsx +0 -13
  1476. package/icons/RefreshCw.jsx +0 -12
  1477. package/icons/RefreshCwOff.jsx +0 -15
  1478. package/icons/Refrigerator.jsx +0 -11
  1479. package/icons/Regex.jsx +0 -12
  1480. package/icons/RemoveFormatting.jsx +0 -13
  1481. package/icons/Repeat.jsx +0 -12
  1482. package/icons/Repeat1.jsx +0 -13
  1483. package/icons/Repeat2.jsx +0 -12
  1484. package/icons/RepeatOff.jsx +0 -15
  1485. package/icons/Replace.jsx +0 -15
  1486. package/icons/ReplaceAll.jsx +0 -17
  1487. package/icons/Reply.jsx +0 -10
  1488. package/icons/ReplyAll.jsx +0 -11
  1489. package/icons/Rewind.jsx +0 -10
  1490. package/icons/Ribbon.jsx +0 -13
  1491. package/icons/Road.jsx +0 -12
  1492. package/icons/Rocket.jsx +0 -12
  1493. package/icons/RockingChair.jsx +0 -12
  1494. package/icons/RollerCoaster.jsx +0 -15
  1495. package/icons/Rose.jsx +0 -13
  1496. package/icons/Rotate3d.jsx +0 -11
  1497. package/icons/RotateCcw.jsx +0 -10
  1498. package/icons/RotateCcwKey.jsx +0 -13
  1499. package/icons/RotateCcwSquare.jsx +0 -11
  1500. package/icons/RotateCw.jsx +0 -10
  1501. package/icons/RotateCwSquare.jsx +0 -11
  1502. package/icons/Route.jsx +0 -11
  1503. package/icons/RouteOff.jsx +0 -15
  1504. package/icons/Router.jsx +0 -14
  1505. package/icons/Rows2.jsx +0 -10
  1506. package/icons/Rows3.jsx +0 -11
  1507. package/icons/Rows4.jsx +0 -12
  1508. package/icons/Rss.jsx +0 -11
  1509. package/icons/Ruler.jsx +0 -13
  1510. package/icons/RulerDimensionLine.jsx +0 -16
  1511. package/icons/RussianRuble.jsx +0 -10
  1512. package/icons/Sailboat.jsx +0 -11
  1513. package/icons/Salad.jsx +0 -13
  1514. package/icons/Sandwich.jsx +0 -13
  1515. package/icons/Satellite.jsx +0 -13
  1516. package/icons/SatelliteDish.jsx +0 -12
  1517. package/icons/SaudiRiyal.jsx +0 -12
  1518. package/icons/Save.jsx +0 -11
  1519. package/icons/SaveAll.jsx +0 -12
  1520. package/icons/SaveOff.jsx +0 -15
  1521. package/icons/Scale.jsx +0 -13
  1522. package/icons/Scale3d.jsx +0 -12
  1523. package/icons/Scaling.jsx +0 -12
  1524. package/icons/Scan.jsx +0 -12
  1525. package/icons/ScanBarcode.jsx +0 -15
  1526. package/icons/ScanEye.jsx +0 -14
  1527. package/icons/ScanFace.jsx +0 -15
  1528. package/icons/ScanHeart.jsx +0 -13
  1529. package/icons/ScanLine.jsx +0 -13
  1530. package/icons/ScanQrCode.jsx +0 -16
  1531. package/icons/ScanSearch.jsx +0 -14
  1532. package/icons/ScanText.jsx +0 -15
  1533. package/icons/School.jsx +0 -14
  1534. package/icons/Scissors.jsx +0 -13
  1535. package/icons/ScissorsLineDashed.jsx +0 -15
  1536. package/icons/Scooter.jsx +0 -12
  1537. package/icons/ScreenShare.jsx +0 -13
  1538. package/icons/ScreenShareOff.jsx +0 -13
  1539. package/icons/Scroll.jsx +0 -10
  1540. package/icons/ScrollText.jsx +0 -12
  1541. package/icons/Search.jsx +0 -10
  1542. package/icons/SearchAlert.jsx +0 -12
  1543. package/icons/SearchCheck.jsx +0 -11
  1544. package/icons/SearchCode.jsx +0 -12
  1545. package/icons/SearchSlash.jsx +0 -11
  1546. package/icons/SearchX.jsx +0 -12
  1547. package/icons/Section.jsx +0 -10
  1548. package/icons/Send.jsx +0 -10
  1549. package/icons/SendHorizontal.jsx +0 -10
  1550. package/icons/SendToBack.jsx +0 -12
  1551. package/icons/SeparatorHorizontal.jsx +0 -11
  1552. package/icons/SeparatorVertical.jsx +0 -11
  1553. package/icons/Server.jsx +0 -12
  1554. package/icons/ServerCog.jsx +0 -20
  1555. package/icons/ServerCrash.jsx +0 -13
  1556. package/icons/ServerOff.jsx +0 -14
  1557. package/icons/Settings.jsx +0 -10
  1558. package/icons/Settings2.jsx +0 -12
  1559. package/icons/Shapes.jsx +0 -11
  1560. package/icons/Share.jsx +0 -11
  1561. package/icons/Share2.jsx +0 -13
  1562. package/icons/Sheet.jsx +0 -13
  1563. package/icons/Shell.jsx +0 -9
  1564. package/icons/ShelvingUnit.jsx +0 -15
  1565. package/icons/Shield.jsx +0 -9
  1566. package/icons/ShieldAlert.jsx +0 -11
  1567. package/icons/ShieldBan.jsx +0 -10
  1568. package/icons/ShieldCheck.jsx +0 -10
  1569. package/icons/ShieldCog.jsx +0 -18
  1570. package/icons/ShieldCogCorner.jsx +0 -18
  1571. package/icons/ShieldEllipsis.jsx +0 -12
  1572. package/icons/ShieldHalf.jsx +0 -10
  1573. package/icons/ShieldMinus.jsx +0 -10
  1574. package/icons/ShieldOff.jsx +0 -11
  1575. package/icons/ShieldPlus.jsx +0 -11
  1576. package/icons/ShieldQuestionMark.jsx +0 -11
  1577. package/icons/ShieldUser.jsx +0 -11
  1578. package/icons/ShieldX.jsx +0 -11
  1579. package/icons/Ship.jsx +0 -13
  1580. package/icons/ShipWheel.jsx +0 -18
  1581. package/icons/Shirt.jsx +0 -9
  1582. package/icons/ShoppingBag.jsx +0 -11
  1583. package/icons/ShoppingBasket.jsx +0 -15
  1584. package/icons/ShoppingCart.jsx +0 -11
  1585. package/icons/Shovel.jsx +0 -11
  1586. package/icons/ShowerHead.jsx +0 -18
  1587. package/icons/Shredder.jsx +0 -15
  1588. package/icons/Shrimp.jsx +0 -13
  1589. package/icons/Shrink.jsx +0 -12
  1590. package/icons/Shrub.jsx +0 -11
  1591. package/icons/Shuffle.jsx +0 -13
  1592. package/icons/Sigma.jsx +0 -9
  1593. package/icons/Signal.jsx +0 -13
  1594. package/icons/SignalHigh.jsx +0 -12
  1595. package/icons/SignalLow.jsx +0 -10
  1596. package/icons/SignalMedium.jsx +0 -11
  1597. package/icons/SignalZero.jsx +0 -9
  1598. package/icons/Signature.jsx +0 -10
  1599. package/icons/Signpost.jsx +0 -11
  1600. package/icons/SignpostBig.jsx +0 -12
  1601. package/icons/Siren.jsx +0 -16
  1602. package/icons/SkipBack.jsx +0 -10
  1603. package/icons/SkipForward.jsx +0 -10
  1604. package/icons/Skull.jsx +0 -12
  1605. package/icons/Slash.jsx +0 -9
  1606. package/icons/Slice.jsx +0 -9
  1607. package/icons/SlidersHorizontal.jsx +0 -17
  1608. package/icons/SlidersVertical.jsx +0 -17
  1609. package/icons/Smartphone.jsx +0 -10
  1610. package/icons/SmartphoneCharging.jsx +0 -10
  1611. package/icons/SmartphoneNfc.jsx +0 -12
  1612. package/icons/Smile.jsx +0 -12
  1613. package/icons/SmilePlus.jsx +0 -14
  1614. package/icons/Snail.jsx +0 -13
  1615. package/icons/Snowflake.jsx +0 -20
  1616. package/icons/SoapDispenserDroplet.jsx +0 -12
  1617. package/icons/Sofa.jsx +0 -13
  1618. package/icons/SolarPanel.jsx +0 -15
  1619. package/icons/Soup.jsx +0 -14
  1620. package/icons/Space.jsx +0 -9
  1621. package/icons/Spade.jsx +0 -10
  1622. package/icons/Sparkle.jsx +0 -9
  1623. package/icons/Sparkles.jsx +0 -12
  1624. package/icons/Speaker.jsx +0 -12
  1625. package/icons/Speech.jsx +0 -11
  1626. package/icons/SpellCheck.jsx +0 -11
  1627. package/icons/SpellCheck2.jsx +0 -11
  1628. package/icons/Spline.jsx +0 -11
  1629. package/icons/SplinePointer.jsx +0 -12
  1630. package/icons/Split.jsx +0 -12
  1631. package/icons/Spool.jsx +0 -10
  1632. package/icons/SportShoe.jsx +0 -11
  1633. package/icons/Spotlight.jsx +0 -13
  1634. package/icons/SprayCan.jsx +0 -18
  1635. package/icons/Sprout.jsx +0 -11
  1636. package/icons/Square.jsx +0 -9
  1637. package/icons/SquareActivity.jsx +0 -10
  1638. package/icons/SquareArrowDown.jsx +0 -11
  1639. package/icons/SquareArrowDownLeft.jsx +0 -11
  1640. package/icons/SquareArrowDownRight.jsx +0 -11
  1641. package/icons/SquareArrowLeft.jsx +0 -11
  1642. package/icons/SquareArrowOutDownLeft.jsx +0 -11
  1643. package/icons/SquareArrowOutDownRight.jsx +0 -11
  1644. package/icons/SquareArrowOutUpLeft.jsx +0 -11
  1645. package/icons/SquareArrowOutUpRight.jsx +0 -11
  1646. package/icons/SquareArrowRight.jsx +0 -11
  1647. package/icons/SquareArrowRightEnter.jsx +0 -11
  1648. package/icons/SquareArrowRightExit.jsx +0 -11
  1649. package/icons/SquareArrowUp.jsx +0 -11
  1650. package/icons/SquareArrowUpLeft.jsx +0 -11
  1651. package/icons/SquareArrowUpRight.jsx +0 -11
  1652. package/icons/SquareAsterisk.jsx +0 -12
  1653. package/icons/SquareBottomDashedScissors.jsx +0 -22
  1654. package/icons/SquareCenterlineDashedHorizontal.jsx +0 -14
  1655. package/icons/SquareCenterlineDashedVertical.jsx +0 -14
  1656. package/icons/SquareChartGantt.jsx +0 -12
  1657. package/icons/SquareCheck.jsx +0 -10
  1658. package/icons/SquareCheckBig.jsx +0 -10
  1659. package/icons/SquareChevronDown.jsx +0 -10
  1660. package/icons/SquareChevronLeft.jsx +0 -10
  1661. package/icons/SquareChevronRight.jsx +0 -10
  1662. package/icons/SquareChevronUp.jsx +0 -10
  1663. package/icons/SquareCode.jsx +0 -11
  1664. package/icons/SquareDashed.jsx +0 -20
  1665. package/icons/SquareDashedBottom.jsx +0 -11
  1666. package/icons/SquareDashedBottomCode.jsx +0 -13
  1667. package/icons/SquareDashedKanban.jsx +0 -23
  1668. package/icons/SquareDashedMousePointer.jsx +0 -18
  1669. package/icons/SquareDashedText.jsx +0 -23
  1670. package/icons/SquareDashedTopSolid.jsx +0 -17
  1671. package/icons/SquareDivide.jsx +0 -12
  1672. package/icons/SquareDot.jsx +0 -10
  1673. package/icons/SquareEqual.jsx +0 -11
  1674. package/icons/SquareFunction.jsx +0 -11
  1675. package/icons/SquareKanban.jsx +0 -12
  1676. package/icons/SquareLibrary.jsx +0 -12
  1677. package/icons/SquareM.jsx +0 -10
  1678. package/icons/SquareMenu.jsx +0 -12
  1679. package/icons/SquareMinus.jsx +0 -10
  1680. package/icons/SquareMousePointer.jsx +0 -10
  1681. package/icons/SquareParking.jsx +0 -10
  1682. package/icons/SquareParkingOff.jsx +0 -13
  1683. package/icons/SquarePause.jsx +0 -11
  1684. package/icons/SquarePen.jsx +0 -10
  1685. package/icons/SquarePercent.jsx +0 -12
  1686. package/icons/SquarePi.jsx +0 -12
  1687. package/icons/SquarePilcrow.jsx +0 -12
  1688. package/icons/SquarePlay.jsx +0 -10
  1689. package/icons/SquarePlus.jsx +0 -11
  1690. package/icons/SquarePower.jsx +0 -11
  1691. package/icons/SquareRadical.jsx +0 -10
  1692. package/icons/SquareRoundCorner.jsx +0 -10
  1693. package/icons/SquareScissors.jsx +0 -14
  1694. package/icons/SquareSigma.jsx +0 -10
  1695. package/icons/SquareSlash.jsx +0 -10
  1696. package/icons/SquareSplitHorizontal.jsx +0 -11
  1697. package/icons/SquareSplitVertical.jsx +0 -11
  1698. package/icons/SquareSquare.jsx +0 -10
  1699. package/icons/SquareStack.jsx +0 -11
  1700. package/icons/SquareStar.jsx +0 -10
  1701. package/icons/SquareStop.jsx +0 -10
  1702. package/icons/SquareTerminal.jsx +0 -11
  1703. package/icons/SquareUser.jsx +0 -11
  1704. package/icons/SquareUserRound.jsx +0 -11
  1705. package/icons/SquareX.jsx +0 -11
  1706. package/icons/SquaresExclude.jsx +0 -10
  1707. package/icons/SquaresIntersect.jsx +0 -19
  1708. package/icons/SquaresSubtract.jsx +0 -14
  1709. package/icons/SquaresUnite.jsx +0 -9
  1710. package/icons/Squircle.jsx +0 -9
  1711. package/icons/SquircleDashed.jsx +0 -16
  1712. package/icons/Squirrel.jsx +0 -12
  1713. package/icons/Stamp.jsx +0 -11
  1714. package/icons/Star.jsx +0 -9
  1715. package/icons/StarHalf.jsx +0 -9
  1716. package/icons/StarOff.jsx +0 -11
  1717. package/icons/StepBack.jsx +0 -10
  1718. package/icons/StepForward.jsx +0 -10
  1719. package/icons/Stethoscope.jsx +0 -13
  1720. package/icons/Sticker.jsx +0 -13
  1721. package/icons/StickyNote.jsx +0 -10
  1722. package/icons/Stone.jsx +0 -11
  1723. package/icons/Store.jsx +0 -11
  1724. package/icons/StretchHorizontal.jsx +0 -10
  1725. package/icons/StretchVertical.jsx +0 -10
  1726. package/icons/Strikethrough.jsx +0 -11
  1727. package/icons/Subscript.jsx +0 -11
  1728. package/icons/Sun.jsx +0 -17
  1729. package/icons/SunDim.jsx +0 -17
  1730. package/icons/SunMedium.jsx +0 -17
  1731. package/icons/SunMoon.jsx +0 -13
  1732. package/icons/SunSnow.jsx +0 -19
  1733. package/icons/Sunrise.jsx +0 -16
  1734. package/icons/Sunset.jsx +0 -16
  1735. package/icons/Superscript.jsx +0 -11
  1736. package/icons/SwatchBook.jsx +0 -12
  1737. package/icons/SwissFranc.jsx +0 -11
  1738. package/icons/SwitchCamera.jsx +0 -13
  1739. package/icons/Sword.jsx +0 -12
  1740. package/icons/Swords.jsx +0 -16
  1741. package/icons/Syringe.jsx +0 -14
  1742. package/icons/Table.jsx +0 -12
  1743. package/icons/Table2.jsx +0 -9
  1744. package/icons/TableCellsMerge.jsx +0 -13
  1745. package/icons/TableCellsSplit.jsx +0 -12
  1746. package/icons/TableColumnsSplit.jsx +0 -19
  1747. package/icons/TableOfContents.jsx +0 -14
  1748. package/icons/TableProperties.jsx +0 -12
  1749. package/icons/TableRowsSplit.jsx +0 -19
  1750. package/icons/Tablet.jsx +0 -10
  1751. package/icons/TabletSmartphone.jsx +0 -11
  1752. package/icons/Tablets.jsx +0 -12
  1753. package/icons/Tag.jsx +0 -10
  1754. package/icons/Tags.jsx +0 -11
  1755. package/icons/Tally1.jsx +0 -9
  1756. package/icons/Tally2.jsx +0 -10
  1757. package/icons/Tally3.jsx +0 -11
  1758. package/icons/Tally4.jsx +0 -12
  1759. package/icons/Tally5.jsx +0 -13
  1760. package/icons/Tangent.jsx +0 -12
  1761. package/icons/Target.jsx +0 -11
  1762. package/icons/Telescope.jsx +0 -15
  1763. package/icons/Tent.jsx +0 -12
  1764. package/icons/TentTree.jsx +0 -15
  1765. package/icons/Terminal.jsx +0 -10
  1766. package/icons/TestTube.jsx +0 -11
  1767. package/icons/TestTubeDiagonal.jsx +0 -11
  1768. package/icons/TestTubes.jsx +0 -14
  1769. package/icons/TextAlignCenter.jsx +0 -11
  1770. package/icons/TextAlignEnd.jsx +0 -11
  1771. package/icons/TextAlignJustify.jsx +0 -11
  1772. package/icons/TextAlignStart.jsx +0 -11
  1773. package/icons/TextCursor.jsx +0 -11
  1774. package/icons/TextCursorInput.jsx +0 -13
  1775. package/icons/TextInitial.jsx +0 -13
  1776. package/icons/TextQuote.jsx +0 -12
  1777. package/icons/TextSearch.jsx +0 -13
  1778. package/icons/TextWrap.jsx +0 -12
  1779. package/icons/Theater.jsx +0 -17
  1780. package/icons/Thermometer.jsx +0 -9
  1781. package/icons/ThermometerSnowflake.jsx +0 -16
  1782. package/icons/ThermometerSun.jsx +0 -14
  1783. package/icons/ThumbsDown.jsx +0 -10
  1784. package/icons/ThumbsUp.jsx +0 -10
  1785. package/icons/Ticket.jsx +0 -12
  1786. package/icons/TicketCheck.jsx +0 -10
  1787. package/icons/TicketMinus.jsx +0 -10
  1788. package/icons/TicketPercent.jsx +0 -12
  1789. package/icons/TicketPlus.jsx +0 -11
  1790. package/icons/TicketSlash.jsx +0 -10
  1791. package/icons/TicketX.jsx +0 -11
  1792. package/icons/Tickets.jsx +0 -13
  1793. package/icons/TicketsPlane.jsx +0 -15
  1794. package/icons/Timeline.jsx +0 -16
  1795. package/icons/Timer.jsx +0 -11
  1796. package/icons/TimerOff.jsx +0 -13
  1797. package/icons/TimerReset.jsx +0 -12
  1798. package/icons/ToggleLeft.jsx +0 -10
  1799. package/icons/ToggleRight.jsx +0 -10
  1800. package/icons/Toilet.jsx +0 -10
  1801. package/icons/ToolCase.jsx +0 -12
  1802. package/icons/Toolbox.jsx +0 -13
  1803. package/icons/Tornado.jsx +0 -13
  1804. package/icons/Torus.jsx +0 -10
  1805. package/icons/Touchpad.jsx +0 -11
  1806. package/icons/TouchpadOff.jsx +0 -14
  1807. package/icons/TowelRack.jsx +0 -11
  1808. package/icons/TowerControl.jsx +0 -15
  1809. package/icons/ToyBrick.jsx +0 -11
  1810. package/icons/Tractor.jsx +0 -17
  1811. package/icons/TrafficCone.jsx +0 -12
  1812. package/icons/TrainFront.jsx +0 -14
  1813. package/icons/TrainFrontTunnel.jsx +0 -15
  1814. package/icons/TrainTrack.jsx +0 -15
  1815. package/icons/TramFront.jsx +0 -15
  1816. package/icons/Transgender.jsx +0 -16
  1817. package/icons/Trash.jsx +0 -11
  1818. package/icons/Trash2.jsx +0 -13
  1819. package/icons/TreeDeciduous.jsx +0 -10
  1820. package/icons/TreePalm.jsx +0 -12
  1821. package/icons/TreePine.jsx +0 -10
  1822. package/icons/Trees.jsx +0 -12
  1823. package/icons/TrendingDown.jsx +0 -10
  1824. package/icons/TrendingUp.jsx +0 -10
  1825. package/icons/TrendingUpDown.jsx +0 -12
  1826. package/icons/Triangle.jsx +0 -9
  1827. package/icons/TriangleAlert.jsx +0 -11
  1828. package/icons/TriangleDashed.jsx +0 -17
  1829. package/icons/TriangleRight.jsx +0 -9
  1830. package/icons/Trophy.jsx +0 -14
  1831. package/icons/Truck.jsx +0 -13
  1832. package/icons/TruckElectric.jsx +0 -15
  1833. package/icons/TurkishLira.jsx +0 -11
  1834. package/icons/Turntable.jsx +0 -12
  1835. package/icons/Turtle.jsx +0 -12
  1836. package/icons/Tv.jsx +0 -10
  1837. package/icons/TvMinimal.jsx +0 -10
  1838. package/icons/TvMinimalPlay.jsx +0 -11
  1839. package/icons/Type.jsx +0 -11
  1840. package/icons/TypeOutline.jsx +0 -9
  1841. package/icons/Umbrella.jsx +0 -11
  1842. package/icons/UmbrellaOff.jsx +0 -13
  1843. package/icons/Underline.jsx +0 -10
  1844. package/icons/Undo.jsx +0 -10
  1845. package/icons/Undo2.jsx +0 -10
  1846. package/icons/UndoDot.jsx +0 -11
  1847. package/icons/UnfoldHorizontal.jsx +0 -16
  1848. package/icons/UnfoldVertical.jsx +0 -16
  1849. package/icons/Ungroup.jsx +0 -10
  1850. package/icons/University.jsx +0 -15
  1851. package/icons/Unlink.jsx +0 -14
  1852. package/icons/Unlink2.jsx +0 -9
  1853. package/icons/Unplug.jsx +0 -14
  1854. package/icons/Upload.jsx +0 -11
  1855. package/icons/Usb.jsx +0 -15
  1856. package/icons/User.jsx +0 -10
  1857. package/icons/UserCheck.jsx +0 -11
  1858. package/icons/UserCog.jsx +0 -19
  1859. package/icons/UserKey.jsx +0 -13
  1860. package/icons/UserLock.jsx +0 -12
  1861. package/icons/UserMinus.jsx +0 -11
  1862. package/icons/UserPen.jsx +0 -11
  1863. package/icons/UserPlus.jsx +0 -12
  1864. package/icons/UserRound.jsx +0 -10
  1865. package/icons/UserRoundCheck.jsx +0 -11
  1866. package/icons/UserRoundCog.jsx +0 -19
  1867. package/icons/UserRoundKey.jsx +0 -13
  1868. package/icons/UserRoundMinus.jsx +0 -11
  1869. package/icons/UserRoundPen.jsx +0 -11
  1870. package/icons/UserRoundPlus.jsx +0 -12
  1871. package/icons/UserRoundSearch.jsx +0 -12
  1872. package/icons/UserRoundX.jsx +0 -12
  1873. package/icons/UserSearch.jsx +0 -12
  1874. package/icons/UserStar.jsx +0 -11
  1875. package/icons/UserX.jsx +0 -12
  1876. package/icons/Users.jsx +0 -12
  1877. package/icons/UsersRound.jsx +0 -11
  1878. package/icons/Utensils.jsx +0 -11
  1879. package/icons/UtensilsCrossed.jsx +0 -12
  1880. package/icons/UtilityPole.jsx +0 -15
  1881. package/icons/Van.jsx +0 -13
  1882. package/icons/Variable.jsx +0 -12
  1883. package/icons/Vault.jsx +0 -18
  1884. package/icons/VectorSquare.jsx +0 -16
  1885. package/icons/Vegan.jsx +0 -11
  1886. package/icons/VenetianMask.jsx +0 -11
  1887. package/icons/Venus.jsx +0 -11
  1888. package/icons/VenusAndMars.jsx +0 -13
  1889. package/icons/Vibrate.jsx +0 -11
  1890. package/icons/VibrateOff.jsx +0 -13
  1891. package/icons/Video.jsx +0 -10
  1892. package/icons/VideoOff.jsx +0 -11
  1893. package/icons/Videotape.jsx +0 -13
  1894. package/icons/View.jsx +0 -12
  1895. package/icons/Voicemail.jsx +0 -11
  1896. package/icons/Volleyball.jsx +0 -14
  1897. package/icons/Volume.jsx +0 -9
  1898. package/icons/Volume1.jsx +0 -10
  1899. package/icons/Volume2.jsx +0 -11
  1900. package/icons/VolumeOff.jsx +0 -13
  1901. package/icons/VolumeX.jsx +0 -11
  1902. package/icons/Vote.jsx +0 -11
  1903. package/icons/Wallet.jsx +0 -10
  1904. package/icons/WalletCards.jsx +0 -11
  1905. package/icons/WalletMinimal.jsx +0 -10
  1906. package/icons/Wallpaper.jsx +0 -13
  1907. package/icons/Wand.jsx +0 -17
  1908. package/icons/WandSparkles.jsx +0 -16
  1909. package/icons/Warehouse.jsx +0 -12
  1910. package/icons/WashingMachine.jsx +0 -13
  1911. package/icons/Watch.jsx +0 -12
  1912. package/icons/WavesArrowDown.jsx +0 -12
  1913. package/icons/WavesArrowUp.jsx +0 -12
  1914. package/icons/WavesHorizontal.jsx +0 -11
  1915. package/icons/WavesLadder.jsx +0 -13
  1916. package/icons/WavesVertical.jsx +0 -11
  1917. package/icons/Waypoints.jsx +0 -15
  1918. package/icons/Webcam.jsx +0 -12
  1919. package/icons/Webhook.jsx +0 -11
  1920. package/icons/WebhookOff.jsx +0 -15
  1921. package/icons/Weight.jsx +0 -10
  1922. package/icons/WeightTilde.jsx +0 -11
  1923. package/icons/Wheat.jsx +0 -16
  1924. package/icons/WheatOff.jsx +0 -18
  1925. package/icons/WholeWord.jsx +0 -13
  1926. package/icons/Wifi.jsx +0 -12
  1927. package/icons/WifiCog.jsx +0 -20
  1928. package/icons/WifiHigh.jsx +0 -11
  1929. package/icons/WifiLow.jsx +0 -10
  1930. package/icons/WifiOff.jsx +0 -15
  1931. package/icons/WifiPen.jsx +0 -12
  1932. package/icons/WifiSync.jsx +0 -15
  1933. package/icons/WifiZero.jsx +0 -9
  1934. package/icons/Wind.jsx +0 -11
  1935. package/icons/WindArrowDown.jsx +0 -12
  1936. package/icons/Wine.jsx +0 -12
  1937. package/icons/WineOff.jsx +0 -13
  1938. package/icons/Workflow.jsx +0 -11
  1939. package/icons/Worm.jsx +0 -11
  1940. package/icons/Wrench.jsx +0 -9
  1941. package/icons/X.jsx +0 -10
  1942. package/icons/XLineTop.jsx +0 -11
  1943. package/icons/Zap.jsx +0 -9
  1944. package/icons/ZapOff.jsx +0 -12
  1945. package/icons/ZodiacAquarius.jsx +0 -10
  1946. package/icons/ZodiacAries.jsx +0 -10
  1947. package/icons/ZodiacCancer.jsx +0 -12
  1948. package/icons/ZodiacCapricorn.jsx +0 -11
  1949. package/icons/ZodiacGemini.jsx +0 -12
  1950. package/icons/ZodiacLeo.jsx +0 -10
  1951. package/icons/ZodiacLibra.jsx +0 -10
  1952. package/icons/ZodiacOphiuchus.jsx +0 -10
  1953. package/icons/ZodiacPisces.jsx +0 -11
  1954. package/icons/ZodiacSagittarius.jsx +0 -11
  1955. package/icons/ZodiacScorpio.jsx +0 -12
  1956. package/icons/ZodiacTaurus.jsx +0 -10
  1957. package/icons/ZodiacVirgo.jsx +0 -12
  1958. package/icons/ZoomIn.jsx +0 -12
  1959. package/icons/ZoomOut.jsx +0 -11
  1960. package/icons/_Icon.jsx +0 -28
  1961. package/icons/index.js +0 -1948
  1962. package/jsconfig.json +0 -9
  1963. package/layout/Header.jsx +0 -50
  1964. package/layout/Layout.jsx +0 -60
  1965. package/layout/Sidebar.jsx +0 -124
  1966. package/layout/TabBar.jsx +0 -70
  1967. package/scripts/vendor-icons.js +0 -132
  1968. package/shadcn/ui/carousel.jsx +0 -195
  1969. package/shadcn/ui/chart.jsx +0 -312
  1970. package/shadcn/ui/resizable.jsx +0 -47
  1971. package/stevederico-skateboard-ui-3.0.1.tgz +0 -0
  1972. package/views/LandingView.jsx +0 -207
  1973. package/views/NotFound.jsx +0 -27
  1974. package/views/PaymentView.jsx +0 -118
  1975. package/views/SettingsView.jsx +0 -199
  1976. package/views/SignInView.jsx +0 -171
  1977. package/views/SignOutView.jsx +0 -54
  1978. package/views/SignUpView.jsx +0 -208
  1979. package/views/TextView.jsx +0 -48
  1980. /package/{core → components/core}/Calendar.jsx +0 -0
  1981. /package/{core → components/core}/Command.jsx +0 -0
  1982. /package/{.claude/worktrees/strange-feistel-abc494 → components}/core/Context.jsx +0 -0
  1983. /package/{core → components/core}/ThemeProvider.jsx +0 -0
  1984. /package/{.claude/worktrees/strange-feistel-abc494 → components}/core/Utilities.js +0 -0
package/core/Utilities.js DELETED
@@ -1,1031 +0,0 @@
1
- import { useEffect, useState } from 'react';
2
- import { useInRouterContext, useNavigate } from 'react-router-dom';
3
- import { getDispatch } from './Context.jsx';
4
-
5
- // Constants will be initialized by the app shell
6
- // Use window object to avoid module duplication issues with Vite
7
- let _constants = null;
8
- if (typeof window !== 'undefined') {
9
- window.__SKATEBOARD_CONSTANTS__ = window.__SKATEBOARD_CONSTANTS__ || null;
10
- }
11
-
12
- // Check if localStorage is available (respects private mode, etc.)
13
- let _localStorageAvailable = null;
14
- function isLocalStorageAvailable() {
15
- if (_localStorageAvailable !== null) return _localStorageAvailable;
16
- try {
17
- const test = '__storage_test__';
18
- localStorage.setItem(test, test);
19
- localStorage.removeItem(test);
20
- _localStorageAvailable = true;
21
- return true;
22
- } catch (e) {
23
- console.warn('localStorage not available (private mode or quota exceeded):', e.message);
24
- _localStorageAvailable = false;
25
- return false;
26
- }
27
- }
28
-
29
- // Safe localStorage wrapper with error handling
30
- function safeSetItem(key, value) {
31
- if (!isLocalStorageAvailable()) {
32
- console.warn(`Could not save to localStorage: ${key} (storage unavailable)`);
33
- return false;
34
- }
35
- try {
36
- localStorage.setItem(key, value);
37
- return true;
38
- } catch (error) {
39
- if (error.name === 'QuotaExceededError') {
40
- console.error('localStorage quota exceeded - data not persisted');
41
- } else {
42
- console.error('localStorage setItem error:', error.message);
43
- }
44
- return false;
45
- }
46
- }
47
-
48
- function safeGetItem(key) {
49
- if (!isLocalStorageAvailable()) return null;
50
- try {
51
- return localStorage.getItem(key);
52
- } catch (error) {
53
- console.error('localStorage getItem error:', error.message);
54
- return null;
55
- }
56
- }
57
-
58
- function safeRemoveItem(key) {
59
- if (!isLocalStorageAvailable()) return false;
60
- try {
61
- localStorage.removeItem(key);
62
- return true;
63
- } catch (error) {
64
- console.error('localStorage removeItem error:', error.message);
65
- return false;
66
- }
67
- }
68
-
69
- /**
70
- * Initialize skateboard-ui utilities with app constants.
71
- *
72
- * MUST be called before any utility functions are used, including
73
- * before React components render. Stores constants in both module-level
74
- * variable and window.__SKATEBOARD_CONSTANTS__ to handle Vite module
75
- * duplication issues.
76
- *
77
- * @param {Object} constants - App configuration object
78
- * @param {string} constants.appName - Application name
79
- * @param {string} constants.devBackendURL - Development API base URL (include /api prefix)
80
- * @param {string} constants.backendURL - Production API base URL (include /api prefix)
81
- * @throws {Error} If constants is null/undefined
82
- *
83
- * @example
84
- * initializeUtilities({
85
- * appName: "MyApp",
86
- * devBackendURL: "http://localhost:8000/api",
87
- * backendURL: "https://api.myapp.com/api"
88
- * });
89
- */
90
- export function initializeUtilities(constants) {
91
- if (!constants) {
92
- throw new Error('initializeUtilities called with null/undefined constants');
93
- }
94
- // Store in both module and window to handle module duplication
95
- _constants = constants;
96
- if (typeof window !== 'undefined') {
97
- window.__SKATEBOARD_CONSTANTS__ = constants;
98
- }
99
- }
100
-
101
- /**
102
- * Get the app constants object.
103
- *
104
- * Returns constants from window.__SKATEBOARD_CONSTANTS__ (handles Vite
105
- * module duplication) or the module-level variable.
106
- *
107
- * @returns {Object} App constants
108
- * @throws {Error} If initializeUtilities() hasn't been called
109
- */
110
- export function getConstants() {
111
- // Check window object first (handles module duplication)
112
- if (typeof window !== 'undefined' && window.__SKATEBOARD_CONSTANTS__) {
113
- return window.__SKATEBOARD_CONSTANTS__;
114
- }
115
-
116
- if (!_constants) {
117
- throw new Error('Utilities not initialized. Call initializeUtilities(constants) first.');
118
- }
119
- return _constants;
120
- }
121
-
122
- /**
123
- * Read a browser cookie by name.
124
- *
125
- * For the "token" cookie, automatically prefixes with the app name.
126
- *
127
- * @param {string} name - Cookie name
128
- * @returns {string|null} Cookie value or null
129
- */
130
- export function getCookie(name) {
131
- // For token cookies, use app-specific name
132
- let cookieName = name;
133
- if (name === 'token') {
134
- cookieName = getAppKey('token');
135
- }
136
-
137
- const value = `; ${document.cookie}`;
138
- const parts = value.split(`; ${cookieName}=`);
139
- if (parts.length === 2) return parts.pop().split(';').shift();
140
- return null;
141
- }
142
-
143
- /**
144
- * Get CSRF token from cookie or localStorage.
145
- *
146
- * Reads CSRF token from csrf_token cookie (set by backend during signin/signup).
147
- * Falls back to localStorage for backwards compatibility. This token should be
148
- * sent in the X-CSRF-Token header for state-changing requests.
149
- *
150
- * @returns {string|null} CSRF token or null if not found
151
- *
152
- * @example
153
- * const csrfToken = getCSRFToken();
154
- * fetch('/api/endpoint', {
155
- * headers: { 'X-CSRF-Token': csrfToken }
156
- * });
157
- */
158
- export function getCSRFToken() {
159
- // Try cookie first (source of truth from backend)
160
- const csrfCookie = getCookie('csrf_token');
161
- if (csrfCookie) return csrfCookie;
162
-
163
- // Fallback to localStorage (for backwards compatibility)
164
- return safeGetItem(getAppKey('csrf'));
165
- }
166
-
167
- /**
168
- * Generate app-specific localStorage key.
169
- *
170
- * Creates namespaced keys using app name: `{appName}_{suffix}`
171
- * App name is normalized (lowercase, hyphens replace spaces)
172
- *
173
- * @param {string} suffix - Key suffix (e.g., 'csrf', 'user', 'theme')
174
- * @returns {string} Namespaced key
175
- *
176
- * @example
177
- * getAppKey('csrf') // "myapp_csrf"
178
- * getAppKey('user') // "myapp_user"
179
- * getAppKey('theme') // "myapp_theme"
180
- */
181
- export function getAppKey(suffix) {
182
- const appName = getConstants().appName || 'skateboard';
183
- return `${appName.toLowerCase().replace(/\s+/g, '-')}_${suffix}`;
184
- }
185
-
186
- /**
187
- * Check if user is authenticated.
188
- *
189
- * Uses localStorage (NOT cookies) for fast client-side validation.
190
- * Checks for both CSRF token and user data in localStorage.
191
- * If constants.noLogin is true, always returns true.
192
- *
193
- * Note: This is a client-side check only. ProtectedRoute performs
194
- * additional server-side validation via /me endpoint.
195
- *
196
- * @returns {boolean} True if authenticated or noLogin mode
197
- *
198
- * @see {@link ProtectedRoute} for server-side validation
199
- *
200
- * @example
201
- * if (isAuthenticated()) {
202
- * // Show authenticated UI
203
- * } else {
204
- * // Redirect to signin
205
- * }
206
- */
207
- export function isAuthenticated() {
208
- if (getConstants().noLogin === true) {
209
- return true;
210
- }
211
- const userKey = getAppKey('user');
212
- return Boolean(getCSRFToken()) && Boolean(safeGetItem(userKey));
213
- }
214
-
215
- /**
216
- * Get the backend API base URL based on environment.
217
- *
218
- * Returns devBackendURL in development mode, backendURL in production.
219
- * Endpoints should be concatenated: `${getBackendURL()}/endpoint`
220
- *
221
- * @returns {string} Base URL including /api prefix
222
- *
223
- * @example
224
- * const url = `${getBackendURL()}/signup`;
225
- * // Dev: "http://localhost:8000/api/signup"
226
- * // Prod: "https://api.myapp.com/api/signup"
227
- */
228
- export function getBackendURL() {
229
- let result = import.meta.env.DEV ? getConstants().devBackendURL : getConstants().backendURL;
230
- return result
231
- }
232
-
233
- /**
234
- * Check if the app is running inside a native WebKit wrapper (iOS/macOS).
235
- *
236
- * @returns {boolean} True if webkit.messageHandlers is available
237
- */
238
- export function isAppMode() {
239
- let a = !!(
240
- typeof window !== 'undefined' &&
241
- window.webkit &&
242
- window.webkit.messageHandlers
243
- );
244
- return a
245
- }
246
-
247
- /**
248
- * Fetch the current authenticated user from the backend.
249
- *
250
- * Calls GET /me with credentials and CSRF token.
251
- * Returns an empty object if constants.noLogin is true.
252
- *
253
- * @returns {Promise<Object|null>} User object or null on error
254
- *
255
- * @example
256
- * const user = await getCurrentUser();
257
- * if (user) dispatch({ type: 'SET_USER', payload: user });
258
- */
259
- export async function getCurrentUser() {
260
-
261
- if (getConstants().noLogin == true) {
262
- return {}
263
- }
264
-
265
- try {
266
- const csrfToken = getCSRFToken();
267
- const response = await fetch(`${getBackendURL()}/me`, {
268
- method: 'GET',
269
- credentials: 'include',
270
- headers: {
271
- 'Content-Type': 'application/json',
272
- ...(csrfToken && { 'X-CSRF-Token': csrfToken })
273
- },
274
- });
275
-
276
- if (!response.ok) {
277
- throw new Error(`HTTP error! status: ${response.status}`);
278
- }
279
-
280
- const data = await response.json();
281
- return data;
282
- } catch (error) {
283
- console.error('Error fetching user:', error);
284
- return null
285
- }
286
- }
287
-
288
- /**
289
- * Check if the current user has an active subscription.
290
- *
291
- * Calls GET /isSubscriber with credentials.
292
- * Returns false if constants.noLogin is true.
293
- *
294
- * @returns {Promise<boolean>} True if user is an active subscriber
295
- */
296
- export async function isSubscriber() {
297
- if (getConstants().noLogin == true) {
298
- return false
299
- }
300
-
301
- try{
302
- const csrfToken = getCSRFToken();
303
- const response = await fetch(`${getBackendURL()}/isSubscriber`, {
304
- method: 'GET',
305
- credentials: 'include',
306
- headers: {
307
- 'Content-Type': 'application/json',
308
- ...(csrfToken && { 'X-CSRF-Token': csrfToken })
309
- },
310
- });
311
-
312
- if (!response.ok) {
313
- throw new Error(`HTTP error! status: ${response.status}`);
314
- }
315
-
316
- const data = await response.json();
317
- if (data.isSubscriber === true) {
318
- return true;
319
- }
320
- return false;
321
- } catch (error) {
322
- console.error('Error checking subscription:', error);
323
- return false;
324
- }
325
- }
326
-
327
- /**
328
- * Log an analytics event. Stub for custom analytics integration.
329
- *
330
- * @param {string} event - Event name to log
331
- * @returns {Promise<void>}
332
- */
333
- export async function logEvent(event) {
334
- //insert analytics code here
335
- }
336
-
337
- /**
338
- * Open the Stripe billing portal for subscription management.
339
- *
340
- * Saves the current URL for redirect-back after portal return,
341
- * then redirects the browser to the Stripe portal URL.
342
- *
343
- * @param {string} stripeID - Stripe customer ID
344
- * @returns {Promise<void>}
345
- */
346
- export async function showManage(stripeID) {
347
- try {
348
- const csrfToken = getCSRFToken();
349
- const uri = `${getBackendURL()}/portal`;
350
- const response = await fetch(uri, {
351
- method: "POST",
352
- credentials: 'include',
353
- headers: {
354
- 'Content-Type': 'application/json',
355
- ...(csrfToken && { 'X-CSRF-Token': csrfToken })
356
- },
357
- body: JSON.stringify({ customerID: stripeID }),
358
- });
359
-
360
- if (response.ok) {
361
- const data = await response.json();
362
- if (data.url) {
363
- safeSetItem(getAppKey("beforeManageURL"), window.location.href);
364
- window.location.href = data.url; // Redirect to Stripe billing portal
365
- } else {
366
- console.error("No URL returned from server");
367
- }
368
- } else {
369
- console.error("Error with /portal. Status:", response.status);
370
- }
371
- } catch (error) {
372
- console.error("Request failed:", error);
373
- }
374
- }
375
-
376
- /**
377
- * Start a Stripe checkout session.
378
- *
379
- * Creates a checkout session via POST /checkout, saves the current URL
380
- * for redirect-back, then redirects to the Stripe checkout page.
381
- *
382
- * @param {string} email - Customer email for Stripe
383
- * @param {number} [productIndex=0] - Index into constants.stripeProducts
384
- * @returns {Promise<boolean>} True if redirect initiated, false on error
385
- */
386
- export async function showCheckout(email, productIndex = 0) {
387
- try {
388
- const csrfToken = getCSRFToken();
389
-
390
- const params = {
391
- lookup_key: getConstants().stripeProducts[productIndex].lookup_key,
392
- email: email
393
- };
394
-
395
- const uri = `${getBackendURL()}/checkout`;
396
- const response = await fetch(uri, {
397
- method: "POST",
398
- credentials: 'include',
399
- headers: {
400
- 'Content-Type': 'application/json',
401
- ...(csrfToken && { 'X-CSRF-Token': csrfToken })
402
- },
403
- body: JSON.stringify(params),
404
- });
405
-
406
- if (response.ok) {
407
- const data = await response.json();
408
- if (data.url) {
409
- // Save the current URL in localStorage before redirecting
410
- safeSetItem(getAppKey("beforeCheckoutURL"), window.location.href);
411
- // Redirect to payment checkout
412
- window.location.href = data.url;
413
- return true;
414
- } else {
415
- console.error("No URL returned from server");
416
- return false;
417
- }
418
- } else {
419
- console.error("Error with /checkout. Status:", response.status);
420
- return false;
421
- }
422
- } catch (error) {
423
- console.error("Checkout failed:", error);
424
- return false;
425
- }
426
- }
427
-
428
- /**
429
- * Check remaining usage quota for a given action.
430
- *
431
- * Calls POST /usage with operation "check".
432
- * Returns unlimited usage (-1) if constants.noLogin is true.
433
- *
434
- * @param {string} action - Action type to check usage for
435
- * @returns {Promise<{remaining: number, total: number, isSubscriber: boolean}>}
436
- */
437
- export async function getRemainingUsage(action) {
438
- if (getConstants().noLogin === true) {
439
- return { remaining: -1, total: -1, isSubscriber: true };
440
- }
441
-
442
- try {
443
- const csrfToken = getCSRFToken();
444
- const response = await fetch(`${getBackendURL()}/usage`, {
445
- method: 'POST',
446
- credentials: 'include',
447
- headers: {
448
- 'Content-Type': 'application/json',
449
- ...(csrfToken && { 'X-CSRF-Token': csrfToken })
450
- },
451
- body: JSON.stringify({ operation: 'check' })
452
- });
453
-
454
- if (!response.ok) {
455
- throw new Error(`HTTP error! status: ${response.status}`);
456
- }
457
-
458
- const data = await response.json();
459
- return data;
460
- } catch (error) {
461
- console.error('Error checking usage:', error);
462
- return { remaining: 0, total: 0, isSubscriber: false };
463
- }
464
- }
465
-
466
- /**
467
- * Track (decrement) usage for a given action.
468
- *
469
- * Calls POST /usage with operation "track".
470
- * Returns unlimited usage (-1) if constants.noLogin is true.
471
- * Returns usage data even when rate limited (HTTP 429).
472
- *
473
- * @param {string} action - Action type to track
474
- * @returns {Promise<{remaining: number, total: number, isSubscriber: boolean}>}
475
- */
476
- export async function trackUsage(action) {
477
- if (getConstants().noLogin === true) {
478
- return { remaining: -1, total: -1, isSubscriber: true };
479
- }
480
-
481
- try {
482
- const csrfToken = getCSRFToken();
483
- const response = await fetch(`${getBackendURL()}/usage`, {
484
- method: 'POST',
485
- credentials: 'include',
486
- headers: {
487
- 'Content-Type': 'application/json',
488
- ...(csrfToken && { 'X-CSRF-Token': csrfToken })
489
- },
490
- body: JSON.stringify({ operation: 'track' })
491
- });
492
-
493
- if (!response.ok) {
494
- const data = await response.json();
495
- if (response.status === 429) {
496
- // Usage limit reached
497
- console.warn('Usage limit reached:', data.error);
498
- return data; // Return the usage data even when limit reached
499
- }
500
- throw new Error(`HTTP error! status: ${response.status}`);
501
- }
502
-
503
- const data = await response.json();
504
- return data; // Return full usage data
505
- } catch (error) {
506
- console.error('Error tracking usage:', error);
507
- return { remaining: 0, total: 0, isSubscriber: false };
508
- }
509
- }
510
-
511
- /**
512
- * Show the upgrade sheet if the user is not a subscriber.
513
- *
514
- * Checks subscription status from localStorage user data.
515
- * Does nothing for active subscribers. Falls back to navigation
516
- * if the ref is unavailable.
517
- *
518
- * @param {React.RefObject} upgradeSheetRef - Ref to UpgradeSheet component
519
- * @returns {Promise<void>}
520
- */
521
- export async function showUpgradeSheet(upgradeSheetRef) {
522
- // Check subscription from user data in localStorage instead of API call
523
- const storedUser = safeGetItem(getAppKey('user'));
524
-
525
- let subscriber = false;
526
- if (storedUser && storedUser !== "undefined") {
527
- try {
528
- const user = JSON.parse(storedUser);
529
- subscriber = user?.subscription?.status === 'active' &&
530
- (!user?.subscription?.expires || user?.subscription?.expires > Math.floor(Date.now() / 1000));
531
- } catch (error) {
532
- console.error('Error parsing user data from storage:', error.message);
533
- subscriber = false;
534
- }
535
- }
536
-
537
- if (subscriber) {
538
- return; // Don't show upgrade sheet for subscribers
539
- }
540
-
541
- // Show the upgrade sheet using the ref
542
- if (upgradeSheetRef?.current) {
543
- upgradeSheetRef.current.show();
544
- } else {
545
- // Fallback to navigation if ref is not available
546
- window.location.href = '/app/stripe';
547
- }
548
- }
549
-
550
- /**
551
- * Convert a timestamp or Date to a formatted string.
552
- *
553
- * Handles both seconds and milliseconds timestamps, and Date objects.
554
- *
555
- * @param {number|Date} input - Unix timestamp (seconds or ms) or Date
556
- * @param {string} [format="DOB"] - Format: "DOB" | "ISO" | "ago" | "day-month-time" | "day" | "time" | "full" | "DOBT"
557
- * @returns {string} Formatted date string
558
- *
559
- * @example
560
- * timestampToString(1700000000, 'ago') // "2 months ago"
561
- * timestampToString(Date.now(), 'DOBT') // "3:45 PM"
562
- * timestampToString(new Date(), 'full') // "Monday, November 13 2023 10:00 AM"
563
- */
564
- export function timestampToString(input, format = "DOB") {
565
-
566
- let seconds = 0
567
-
568
- // Convert Date object to timestamp in seconds
569
- if (input instanceof Date) {
570
- seconds = input.getTime() / 1000;
571
- } else if (typeof input === 'number') {
572
- const digits = Math.abs(input).toString().length;
573
- if (digits > 11) {
574
- seconds = input / 1000
575
- } else {
576
- seconds = input
577
- }
578
- } else {
579
- return "BAD-INPUT";
580
- }
581
-
582
- // Ensure ts is in milliseconds
583
- const date = new Date(seconds * 1000);
584
-
585
- switch (format) {
586
- case "DOB":
587
- return date.toLocaleDateString();
588
- case "ISO":
589
- return date.toLocaleString();
590
- case "ago": {
591
- const now = new Date();
592
- const diffInSeconds = Math.floor((now - date) / 1000);
593
- const minute = 60, hour = minute * 60, day = hour * 24;
594
- const week = day * 7, month = day * 30, year = day * 365;
595
-
596
- if (diffInSeconds < minute) return 'a few seconds ago';
597
- if (diffInSeconds < hour) return `${Math.floor(diffInSeconds / minute)} minute${Math.floor(diffInSeconds / minute) > 1 ? 's' : ''} ago`;
598
- if (diffInSeconds < day) return `${Math.floor(diffInSeconds / hour)} hour${Math.floor(diffInSeconds / hour) > 1 ? 's' : ''} ago`;
599
- if (diffInSeconds < week) return `${Math.floor(diffInSeconds / day)} day${Math.floor(diffInSeconds / day) > 1 ? 's' : ''} ago`;
600
- if (diffInSeconds < month) return `${Math.floor(diffInSeconds / week)} week${Math.floor(diffInSeconds / week) > 1 ? 's' : ''} ago`;
601
- if (diffInSeconds < year) return `${Math.floor(diffInSeconds / month)} month${Math.floor(diffInSeconds / month) > 1 ? 's' : ''} ago`;
602
- return `${Math.floor(diffInSeconds / year)} year${Math.floor(diffInSeconds / year) > 1 ? 's' : ''} ago`;
603
- }
604
- case "day-month-time": {
605
- const shortDays = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
606
- const month = ('0' + (date.getMonth() + 1)).slice(-2);
607
- const day = ('0' + date.getDate()).slice(-2);
608
- let hours = date.getHours();
609
- const ampm = hours >= 12 ? 'PM' : 'AM';
610
- hours = hours % 12 || 12;
611
- const minutes = ('0' + date.getMinutes()).slice(-2);
612
- return `${shortDays[date.getDay()]} ${month}/${day}, ${hours}:${minutes} ${ampm}`;
613
- }
614
- case "day": {
615
- const days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
616
- return days[date.getDay()];
617
- }
618
- case 'time': {
619
- let hours = date.getHours();
620
- const ampm = hours >= 12 ? 'PM' : 'AM';
621
- hours = hours % 12 || 12;
622
- const minutes = ('0' + date.getMinutes()).slice(-2);
623
- return `${hours}:${minutes} ${ampm}`;
624
- }
625
- case "full": {
626
- const days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
627
- const months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
628
- let hours = date.getHours();
629
- const ampm = hours >= 12 ? 'PM' : 'AM';
630
- hours = hours % 12 || 12;
631
- const minutes = ('0' + date.getMinutes()).slice(-2);
632
- return `${days[date.getDay()]}, ${months[date.getMonth()]} ${date.getDate()} ${date.getFullYear()} ${hours}:${minutes} ${ampm}`;
633
- }
634
- case "DOBT": {
635
- const today = new Date();
636
- const isToday = date.toDateString() === today.toDateString();
637
- const yesterday = new Date();
638
- yesterday.setDate(today.getDate() - 1);
639
- const isYesterday = date.toDateString() === yesterday.toDateString();
640
-
641
- if (isToday) {
642
- return date.toLocaleString(undefined, { hour: 'numeric', minute: 'numeric' });
643
- } else if (isYesterday) {
644
- return `Yesterday, ${date.toLocaleString(undefined, { hour: 'numeric', minute: 'numeric' })}`;
645
- } else {
646
- const month = date.getMonth() + 1; // no leading zero
647
- const day = date.getDate(); // no leading zero
648
- let hours = date.getHours();
649
- const ampm = hours >= 12 ? 'PM' : 'AM';
650
- hours = hours % 12 || 12;
651
- // pad minutes to always show two digits
652
- const minutes = ('0' + date.getMinutes()).slice(-2);
653
- return `${month}/${day}/${date.getFullYear()} ${hours}:${minutes} ${ampm}`;
654
- }
655
- }
656
-
657
-
658
- default:
659
- return input;
660
- }
661
- }
662
-
663
- /**
664
- * Hook that sets the document title and removes dark mode on non-app pages.
665
- *
666
- * @param {Object} location - react-router location object
667
- */
668
- export function useAppSetup(location) {
669
- useEffect(() => {
670
- document.title = getConstants().appName;
671
- if (!location.pathname.toLowerCase().includes('app')) {
672
- document.documentElement.classList.remove('dark');
673
- document.body.classList.remove('dark');
674
- }
675
- }, [location.pathname]);
676
- }
677
-
678
- // ===== API REQUEST UTILITIES =====
679
-
680
- /**
681
- * Unified API request utility
682
- * Handles credentials, CSRF tokens, 401 redirects, and error handling
683
- *
684
- * @param {string} endpoint - API endpoint (e.g., '/deals')
685
- * @param {RequestInit} options - Fetch options (method, body, headers, etc.)
686
- * @returns {Promise<any>} - Parsed JSON response
687
- */
688
- export async function apiRequest(endpoint, options = {}) {
689
- const csrfToken = getCSRFToken();
690
- const needsCSRF = ['POST', 'PUT', 'DELETE', 'PATCH'].includes(
691
- (options.method || 'GET').toUpperCase()
692
- );
693
-
694
- // Set up timeout (default 30 seconds)
695
- const timeout = options.timeout || 30000;
696
- const controller = options.signal ? null : new AbortController();
697
- const signal = options.signal || controller?.signal;
698
- const timeoutId = controller ? setTimeout(() => controller.abort(), timeout) : null;
699
-
700
- let response;
701
- try {
702
- response = await fetch(`${getBackendURL()}${endpoint}`, {
703
- ...options,
704
- credentials: 'include',
705
- signal,
706
- headers: {
707
- 'Content-Type': 'application/json',
708
- ...(needsCSRF && csrfToken && { 'X-CSRF-Token': csrfToken }),
709
- ...options.headers
710
- }
711
- });
712
- } catch (error) {
713
- if (error.name === 'AbortError') {
714
- throw error; // Re-throw abort errors for useListData to handle
715
- }
716
- throw new Error(`Network error: ${error.message}`);
717
- } finally {
718
- if (timeoutId) clearTimeout(timeoutId);
719
- }
720
-
721
- // Handle 401 (redirect to signout, or show auth overlay and retry)
722
- if (response.status === 401) {
723
- if (getConstants().authOverlay !== true) {
724
- window.location.href = '/signout';
725
- throw new Error('Unauthorized');
726
- }
727
-
728
- // In authOverlay mode: show sign-in overlay, retry request after auth
729
- const dispatch = getDispatch();
730
- if (dispatch) {
731
- return new Promise((resolve, reject) => {
732
- dispatch({
733
- type: 'SHOW_AUTH_OVERLAY',
734
- payload: async () => {
735
- try {
736
- const result = await apiRequest(endpoint, options);
737
- resolve(result);
738
- } catch (err) {
739
- reject(err);
740
- }
741
- }
742
- });
743
- });
744
- }
745
-
746
- throw new Error('Unauthorized');
747
- }
748
-
749
- // Handle 403 CSRF token failures with auto-retry
750
- if (response.status === 403) {
751
- const errorBody = await response.json().catch(() => ({}));
752
-
753
- // If CSRF-related error, try to refresh session and retry once
754
- if (errorBody.error && errorBody.error.includes('CSRF')) {
755
- console.warn('CSRF token validation failed, attempting recovery...');
756
-
757
- // Fetch fresh user data (triggers CSRF token regeneration on backend)
758
- try {
759
- await fetch(`${getBackendURL()}/me`, {
760
- credentials: 'include'
761
- });
762
-
763
- // Retry original request with fresh token
764
- const newCsrfToken = getCSRFToken();
765
- return fetch(`${getBackendURL()}${endpoint}`, {
766
- ...options,
767
- credentials: 'include',
768
- signal,
769
- headers: {
770
- 'Content-Type': 'application/json',
771
- ...(needsCSRF && newCsrfToken && { 'X-CSRF-Token': newCsrfToken }),
772
- ...options.headers
773
- }
774
- }).then(retryResponse => {
775
- if (!retryResponse.ok) {
776
- throw new Error(`Retry failed: ${retryResponse.status} ${retryResponse.statusText}`);
777
- }
778
- return retryResponse.json();
779
- });
780
- } catch (retryError) {
781
- console.error('CSRF recovery failed:', retryError);
782
- throw new Error('CSRF validation failed - please refresh the page');
783
- }
784
- }
785
-
786
- throw new Error(`Forbidden: ${errorBody.error || response.statusText}`);
787
- }
788
-
789
- // Handle other errors
790
- if (!response.ok) {
791
- throw new Error(`Request failed: ${response.status} ${response.statusText}`);
792
- }
793
-
794
- // Parse JSON with error handling
795
- try {
796
- return await response.json();
797
- } catch (error) {
798
- throw new Error(`Invalid JSON response from server: ${error.message}`);
799
- }
800
- }
801
-
802
- /**
803
- * API request with query parameters
804
- *
805
- * @param {string} endpoint - API endpoint
806
- * @param {object} params - Query parameters
807
- * @param {RequestInit} options - Fetch options
808
- * @returns {Promise<any>}
809
- */
810
- export async function apiRequestWithParams(endpoint, params = {}, options = {}) {
811
- const queryString = new URLSearchParams(params).toString();
812
- const url = queryString ? `${endpoint}?${queryString}` : endpoint;
813
- return apiRequest(url, options);
814
- }
815
-
816
- // ===== CONSTANTS VALIDATION =====
817
-
818
- /**
819
- * Validate constants.json has all required fields with proper values
820
- * @param {object} constants - Constants object to validate
821
- * @returns {object} - Same constants if valid
822
- * @throws {Error} - If required fields are missing or invalid
823
- */
824
- export function validateConstants(constants) {
825
- const required = [
826
- { key: 'appName', type: 'string' },
827
- { key: 'appIcon', type: 'string' },
828
- { key: 'tagline', type: 'string' },
829
- { key: 'cta', type: 'string' },
830
- { key: 'backendURL', type: 'string' },
831
- { key: 'devBackendURL', type: 'string' },
832
- { key: 'features.title', type: 'string' },
833
- { key: 'features.items', type: 'array' },
834
- { key: 'companyName', type: 'string' },
835
- { key: 'companyWebsite', type: 'string' },
836
- { key: 'companyEmail', type: 'string' },
837
- ];
838
-
839
- const errors = required.filter(({ key, type }) => {
840
- const value = key.split('.').reduce((obj, k) => obj?.[k], constants);
841
-
842
- if (type === 'string') {
843
- // Must be non-empty string
844
- return !value || typeof value !== 'string' || value.trim().length === 0;
845
- } else if (type === 'array') {
846
- // Must be non-empty array
847
- return !Array.isArray(value) || value.length === 0;
848
- }
849
- return !value;
850
- }).map(({ key }) => key);
851
-
852
- if (errors.length > 0) {
853
- throw new Error(`Invalid constants configuration: ${errors.join(', ')} (must be non-empty strings/arrays)`);
854
- }
855
-
856
- return constants;
857
- }
858
-
859
-
860
- // ===== REACT HOOKS =====
861
-
862
- /**
863
- * Standard list data fetcher with optional sorting
864
- * @param {string} endpoint - API endpoint to fetch from
865
- * @param {function} sortFn - Optional sort function for results
866
- * @returns {object} - { data, loading, error, refetch }
867
- */
868
- export function useListData(endpoint, sortFn = null) {
869
- const [data, setData] = useState([]);
870
- const [loading, setLoading] = useState(true);
871
- const [error, setError] = useState(null);
872
-
873
- const fetchData = async (signal) => {
874
- setLoading(true);
875
- try {
876
- const result = await apiRequest(endpoint, { signal });
877
- const sorted = sortFn ? result.sort(sortFn) : result;
878
- setData(sorted);
879
- setError(null);
880
- } catch (err) {
881
- // Ignore abort errors
882
- if (err.name === 'AbortError') return;
883
- setError(err.message);
884
- } finally {
885
- setLoading(false);
886
- }
887
- };
888
-
889
- useEffect(() => {
890
- const controller = new AbortController();
891
- fetchData(controller.signal);
892
- return () => controller.abort();
893
- }, [endpoint, sortFn]);
894
-
895
- return { data, loading, error, refetch: () => fetchData() };
896
- }
897
-
898
- /**
899
- * Standard form state management
900
- * @param {object} initialValues - Initial form values
901
- * @param {function} onSubmit - Submit handler function
902
- * @returns {object} - { values, handleChange, handleSubmit, reset, submitting, error }
903
- */
904
- export function useForm(initialValues, onSubmit) {
905
- const [values, setValues] = useState(initialValues);
906
- const [submitting, setSubmitting] = useState(false);
907
- const [error, setError] = useState(null);
908
-
909
- const handleChange = (field) => (e) => {
910
- setValues(prev => ({ ...prev, [field]: e.target.value }));
911
- };
912
-
913
- const handleSubmit = async (e) => {
914
- e?.preventDefault();
915
- setSubmitting(true);
916
- setError(null);
917
- try {
918
- await onSubmit(values);
919
- setValues(initialValues);
920
- } catch (err) {
921
- setError(err.message);
922
- } finally {
923
- setSubmitting(false);
924
- }
925
- };
926
-
927
- const reset = () => setValues(initialValues);
928
-
929
- return { values, handleChange, handleSubmit, reset, submitting, error };
930
- }
931
-
932
-
933
- // ===== UI VISIBILITY CONTROLS =====
934
-
935
- /**
936
- * Programmatically show/hide the sidebar
937
- * @param {boolean} visible - Whether sidebar should be visible
938
- */
939
- export function setSidebarVisible(visible) {
940
- const dispatch = getDispatch();
941
- if (dispatch) {
942
- dispatch({ type: 'SET_SIDEBAR_VISIBLE', payload: visible });
943
- } else {
944
- console.warn('setSidebarVisible: Context not initialized');
945
- }
946
- }
947
-
948
- /**
949
- * Programmatically show/hide the tab bar
950
- * @param {boolean} visible - Whether tab bar should be visible
951
- */
952
- export function setTabBarVisible(visible) {
953
- const dispatch = getDispatch();
954
- if (dispatch) {
955
- dispatch({ type: 'SET_TABBAR_VISIBLE', payload: visible });
956
- } else {
957
- console.warn('setTabBarVisible: Context not initialized');
958
- }
959
- }
960
-
961
- /**
962
- * Show the sidebar
963
- */
964
- export function showSidebar() {
965
- setSidebarVisible(true);
966
- }
967
-
968
- /**
969
- * Hide the sidebar
970
- */
971
- export function hideSidebar() {
972
- setSidebarVisible(false);
973
- }
974
-
975
- /**
976
- * Show the tab bar
977
- */
978
- export function showTabBar() {
979
- setTabBarVisible(true);
980
- }
981
-
982
- /**
983
- * Hide the tab bar
984
- */
985
- export function hideTabBar() {
986
- setTabBarVisible(false);
987
- }
988
-
989
- /**
990
- * Set visibility for both sidebar and tab bar at once
991
- * @param {object} options - { sidebar: boolean, tabBar: boolean }
992
- */
993
- export function setUIVisibility({ sidebar, tabBar }) {
994
- const dispatch = getDispatch();
995
- if (dispatch) {
996
- const payload = {};
997
- if (sidebar !== undefined) payload.sidebarVisible = sidebar;
998
- if (tabBar !== undefined) payload.tabBarVisible = tabBar;
999
- dispatch({ type: 'SET_UI_VISIBILITY', payload });
1000
- } else {
1001
- console.warn('setUIVisibility: Context not initialized');
1002
- }
1003
- }
1004
-
1005
- /**
1006
- * Safe navigation hook that works with or without Router context.
1007
- *
1008
- * Falls back to window.location.href if no Router context is available
1009
- * (e.g., rendered in Portals or via module duplication).
1010
- *
1011
- * @returns {function} Navigate function (path, options?) => void
1012
- *
1013
- * @example
1014
- * const navigate = useSafeNavigate();
1015
- * navigate('/app');
1016
- * navigate('/app', { replace: true });
1017
- */
1018
- export function useSafeNavigate() {
1019
- const inRouter = useInRouterContext();
1020
- // Router presence is stable for a given component instance, so the
1021
- // conditional useNavigate call respects the rules of hooks at runtime.
1022
- const navigate = inRouter ? useNavigate() : null;
1023
-
1024
- if (!navigate) {
1025
- return (path) => { window.location.href = path; };
1026
- }
1027
-
1028
- return (path, options = {}) => {
1029
- navigate(path, { replace: !!options.replace, state: options.state });
1030
- };
1031
- }