@tulip-systems/core 0.8.2 → 0.8.3

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 (976) hide show
  1. package/dist/components/common/icons.d.mts +1 -2
  2. package/dist/components/common/icons.mjs +1 -2
  3. package/dist/components/common/status.d.mts +1 -2
  4. package/dist/components/common/status.mjs +1 -2
  5. package/dist/components/editor/components/content.client.d.mts +1 -2
  6. package/dist/components/editor/components/content.client.mjs +1 -2
  7. package/dist/components/editor/components/editor.client.d.mts +1 -2
  8. package/dist/components/editor/components/editor.client.mjs +1 -2
  9. package/dist/components/editor/components/menu-nodes.client.mjs +1 -2
  10. package/dist/components/editor/components/menu.client.d.mts +1 -2
  11. package/dist/components/editor/components/menu.client.mjs +1 -2
  12. package/dist/components/editor/extensions/file-handler/extension.d.mts +1 -2
  13. package/dist/components/editor/extensions/file-handler/extension.mjs +1 -2
  14. package/dist/components/editor/extensions/file-handler/strategy.d.mts +1 -2
  15. package/dist/components/editor/extensions/file-handler/strategy.mjs +1 -2
  16. package/dist/components/editor/extensions/file-handler/utils.mjs +1 -2
  17. package/dist/components/editor/extensions/image/extension.d.mts +1 -2
  18. package/dist/components/editor/extensions/image/extension.mjs +1 -2
  19. package/dist/components/editor/extensions/skeleton/extension.mjs +1 -2
  20. package/dist/components/editor/extensions/skeleton/renderer.mjs +1 -2
  21. package/dist/components/editor/lib/constants.d.mts +1 -2
  22. package/dist/components/editor/lib/constants.mjs +1 -2
  23. package/dist/components/editor/lib/extensions.d.mts +1 -2
  24. package/dist/components/editor/lib/extensions.mjs +1 -2
  25. package/dist/components/editor/lib/helpers.d.mts +1 -2
  26. package/dist/components/editor/lib/helpers.mjs +1 -2
  27. package/dist/components/editor/lib/types.d.mts +1 -2
  28. package/dist/components/editor/lib/variants.mjs +1 -2
  29. package/dist/components/emails/forget-password-email.mjs +2 -3
  30. package/dist/components/header/back-button.client.d.mts +1 -2
  31. package/dist/components/header/back-button.client.mjs +1 -2
  32. package/dist/components/header/bottom-bar.client.d.mts +1 -2
  33. package/dist/components/header/bottom-bar.client.mjs +1 -2
  34. package/dist/components/header/breadcrumbs.client.d.mts +1 -2
  35. package/dist/components/header/breadcrumbs.client.mjs +1 -2
  36. package/dist/components/header/header.client.d.mts +1 -2
  37. package/dist/components/header/header.client.mjs +1 -2
  38. package/dist/components/header/indicator.client.mjs +1 -2
  39. package/dist/components/header/mobile-nav-switcher.client.d.mts +1 -2
  40. package/dist/components/header/mobile-nav-switcher.client.mjs +1 -2
  41. package/dist/components/header/top-bar.client.d.mts +1 -2
  42. package/dist/components/header/top-bar.client.mjs +1 -2
  43. package/dist/components/layouts/admin-content.client.d.mts +1 -2
  44. package/dist/components/layouts/admin-content.client.mjs +1 -2
  45. package/dist/components/layouts/admin-error-pages.d.mts +1 -2
  46. package/dist/components/layouts/admin-error-pages.mjs +1 -2
  47. package/dist/components/layouts/admin-layout.d.mts +1 -2
  48. package/dist/components/layouts/admin-layout.mjs +1 -2
  49. package/dist/components/layouts/admin-loading.d.mts +1 -2
  50. package/dist/components/layouts/admin-loading.mjs +1 -2
  51. package/dist/components/layouts/empty-page.d.mts +1 -2
  52. package/dist/components/layouts/empty-page.mjs +1 -2
  53. package/dist/components/layouts/error-page.d.mts +1 -2
  54. package/dist/components/layouts/error-page.mjs +1 -2
  55. package/dist/components/layouts/error-sections.d.mts +1 -2
  56. package/dist/components/layouts/error-sections.mjs +1 -2
  57. package/dist/components/layouts/list-layout.d.mts +1 -2
  58. package/dist/components/layouts/list-layout.mjs +1 -2
  59. package/dist/components/layouts/providers.client.d.mts +1 -2
  60. package/dist/components/layouts/providers.client.mjs +1 -2
  61. package/dist/components/layouts/root-error-pages.d.mts +1 -2
  62. package/dist/components/layouts/root-error-pages.mjs +1 -2
  63. package/dist/components/layouts/root-layout.server.d.mts +1 -2
  64. package/dist/components/layouts/root-layout.server.mjs +1 -2
  65. package/dist/components/layouts/root-loading.d.mts +1 -2
  66. package/dist/components/layouts/root-loading.mjs +1 -2
  67. package/dist/components/layouts/tab-layout.d.mts +1 -2
  68. package/dist/components/layouts/tab-layout.mjs +1 -2
  69. package/dist/components/lists/data-list.d.mts +1 -2
  70. package/dist/components/lists/data-list.mjs +1 -2
  71. package/dist/components/lists/data-stack.d.mts +1 -2
  72. package/dist/components/lists/data-stack.mjs +1 -2
  73. package/dist/components/navigation/admin-sidebar-header.client.mjs +1 -2
  74. package/dist/components/navigation/admin-sidebar-paths.client.d.mts +1 -2
  75. package/dist/components/navigation/admin-sidebar-paths.client.mjs +1 -2
  76. package/dist/components/navigation/admin-sidebar-skeleton.mjs +1 -2
  77. package/dist/components/ui/accordion.client.d.mts +1 -2
  78. package/dist/components/ui/accordion.client.mjs +1 -2
  79. package/dist/components/ui/alert-dialog.client.d.mts +1 -2
  80. package/dist/components/ui/alert-dialog.client.mjs +1 -2
  81. package/dist/components/ui/alert.d.mts +1 -2
  82. package/dist/components/ui/alert.mjs +1 -2
  83. package/dist/components/ui/aspect-ratio.client.d.mts +1 -2
  84. package/dist/components/ui/aspect-ratio.client.mjs +1 -2
  85. package/dist/components/ui/avatar.client.d.mts +1 -2
  86. package/dist/components/ui/avatar.client.mjs +1 -2
  87. package/dist/components/ui/badge.d.mts +2 -3
  88. package/dist/components/ui/badge.mjs +1 -2
  89. package/dist/components/ui/breadcrumb.d.mts +1 -2
  90. package/dist/components/ui/breadcrumb.mjs +1 -2
  91. package/dist/components/ui/button-group.d.mts +1 -2
  92. package/dist/components/ui/button-group.mjs +1 -2
  93. package/dist/components/ui/button.d.mts +2 -3
  94. package/dist/components/ui/button.mjs +1 -2
  95. package/dist/components/ui/calendar.client.d.mts +1 -2
  96. package/dist/components/ui/calendar.client.mjs +1 -2
  97. package/dist/components/ui/card.d.mts +1 -2
  98. package/dist/components/ui/card.mjs +1 -2
  99. package/dist/components/ui/carousel.client.d.mts +1 -2
  100. package/dist/components/ui/carousel.client.mjs +1 -2
  101. package/dist/components/ui/chart.client.d.mts +1 -2
  102. package/dist/components/ui/chart.client.mjs +1 -2
  103. package/dist/components/ui/checkbox.client.d.mts +1 -2
  104. package/dist/components/ui/checkbox.client.mjs +1 -2
  105. package/dist/components/ui/collapsible.client.d.mts +1 -2
  106. package/dist/components/ui/collapsible.client.mjs +1 -2
  107. package/dist/components/ui/color-picker.client.d.mts +1 -2
  108. package/dist/components/ui/color-picker.client.mjs +1 -2
  109. package/dist/components/ui/combobox-dropdown.client.d.mts +1 -2
  110. package/dist/components/ui/combobox-dropdown.client.mjs +1 -2
  111. package/dist/components/ui/combobox.client.d.mts +1 -2
  112. package/dist/components/ui/combobox.client.mjs +1 -2
  113. package/dist/components/ui/command.client.d.mts +1 -2
  114. package/dist/components/ui/command.client.mjs +1 -2
  115. package/dist/components/ui/context-menu.client.d.mts +1 -2
  116. package/dist/components/ui/context-menu.client.mjs +1 -2
  117. package/dist/components/ui/date-picker.client.d.mts +1 -2
  118. package/dist/components/ui/date-picker.client.mjs +1 -2
  119. package/dist/components/ui/dialog.client.d.mts +1 -2
  120. package/dist/components/ui/dialog.client.mjs +1 -2
  121. package/dist/components/ui/drawer.client.d.mts +1 -2
  122. package/dist/components/ui/drawer.client.mjs +1 -2
  123. package/dist/components/ui/dropdown-menu.client.d.mts +1 -2
  124. package/dist/components/ui/dropdown-menu.client.mjs +1 -2
  125. package/dist/components/ui/empty.d.mts +1 -2
  126. package/dist/components/ui/empty.mjs +1 -2
  127. package/dist/components/ui/field.client.d.mts +1 -2
  128. package/dist/components/ui/field.client.mjs +1 -2
  129. package/dist/components/ui/form.client.d.mts +1 -2
  130. package/dist/components/ui/form.client.mjs +1 -2
  131. package/dist/components/ui/hover-card.client.d.mts +1 -2
  132. package/dist/components/ui/hover-card.client.mjs +1 -2
  133. package/dist/components/ui/input-date-time.client.d.mts +1 -2
  134. package/dist/components/ui/input-date-time.client.mjs +1 -2
  135. package/dist/components/ui/input-date.d.mts +1 -2
  136. package/dist/components/ui/input-date.mjs +1 -2
  137. package/dist/components/ui/input-group.client.d.mts +1 -2
  138. package/dist/components/ui/input-group.client.mjs +1 -2
  139. package/dist/components/ui/input-recipient.d.mts +1 -2
  140. package/dist/components/ui/input-recipient.mjs +1 -2
  141. package/dist/components/ui/input-time.d.mts +1 -2
  142. package/dist/components/ui/input-time.mjs +1 -2
  143. package/dist/components/ui/input.d.mts +1 -2
  144. package/dist/components/ui/input.mjs +1 -2
  145. package/dist/components/ui/item.d.mts +2 -3
  146. package/dist/components/ui/item.mjs +1 -2
  147. package/dist/components/ui/kbd.d.mts +1 -2
  148. package/dist/components/ui/kbd.mjs +1 -2
  149. package/dist/components/ui/label.d.mts +1 -2
  150. package/dist/components/ui/label.mjs +1 -2
  151. package/dist/components/ui/loader.d.mts +1 -2
  152. package/dist/components/ui/loader.mjs +1 -2
  153. package/dist/components/ui/navigation-menu.d.mts +1 -2
  154. package/dist/components/ui/navigation-menu.mjs +1 -2
  155. package/dist/components/ui/pagination.d.mts +1 -2
  156. package/dist/components/ui/pagination.mjs +1 -2
  157. package/dist/components/ui/popover.client.d.mts +1 -2
  158. package/dist/components/ui/popover.client.mjs +1 -2
  159. package/dist/components/ui/progress.client.d.mts +1 -2
  160. package/dist/components/ui/progress.client.mjs +1 -2
  161. package/dist/components/ui/radio-group.d.mts +1 -2
  162. package/dist/components/ui/radio-group.mjs +1 -2
  163. package/dist/components/ui/resizable.client.d.mts +1 -2
  164. package/dist/components/ui/resizable.client.mjs +1 -2
  165. package/dist/components/ui/scroll-area.d.mts +1 -2
  166. package/dist/components/ui/scroll-area.mjs +1 -2
  167. package/dist/components/ui/select.client.d.mts +1 -2
  168. package/dist/components/ui/select.client.mjs +1 -2
  169. package/dist/components/ui/separator.d.mts +1 -2
  170. package/dist/components/ui/separator.mjs +1 -2
  171. package/dist/components/ui/sheet.client.d.mts +1 -2
  172. package/dist/components/ui/sheet.client.mjs +1 -2
  173. package/dist/components/ui/sidebar.client.d.mts +1 -2
  174. package/dist/components/ui/sidebar.client.mjs +1 -2
  175. package/dist/components/ui/skeleton.d.mts +1 -2
  176. package/dist/components/ui/skeleton.mjs +1 -2
  177. package/dist/components/ui/slider.d.mts +1 -2
  178. package/dist/components/ui/slider.mjs +1 -2
  179. package/dist/components/ui/sonner.client.d.mts +1 -2
  180. package/dist/components/ui/sonner.client.mjs +1 -2
  181. package/dist/components/ui/spinner.d.mts +1 -2
  182. package/dist/components/ui/spinner.mjs +1 -2
  183. package/dist/components/ui/switch.client.d.mts +1 -2
  184. package/dist/components/ui/switch.client.mjs +1 -2
  185. package/dist/components/ui/tabs.client.d.mts +1 -2
  186. package/dist/components/ui/tabs.client.mjs +1 -2
  187. package/dist/components/ui/textarea.d.mts +1 -2
  188. package/dist/components/ui/textarea.mjs +1 -2
  189. package/dist/components/ui/toggle-group.client.d.mts +1 -2
  190. package/dist/components/ui/toggle-group.client.mjs +1 -2
  191. package/dist/components/ui/toggle.client.d.mts +1 -2
  192. package/dist/components/ui/toggle.client.mjs +1 -2
  193. package/dist/components/ui/tooltip.client.d.mts +1 -2
  194. package/dist/components/ui/tooltip.client.mjs +1 -2
  195. package/dist/lib/hooks/use-action.d.mts +1 -2
  196. package/dist/lib/hooks/use-action.mjs +1 -2
  197. package/dist/lib/hooks/use-indicator.d.mts +1 -2
  198. package/dist/lib/hooks/use-indicator.mjs +1 -2
  199. package/dist/lib/hooks/use-mobile.client.d.mts +1 -2
  200. package/dist/lib/hooks/use-mobile.client.mjs +1 -2
  201. package/dist/lib/types/config.d.mts +1 -2
  202. package/dist/lib/utils/array-move.d.mts +1 -2
  203. package/dist/lib/utils/array-move.mjs +1 -2
  204. package/dist/lib/utils/cn.d.mts +1 -2
  205. package/dist/lib/utils/cn.mjs +1 -2
  206. package/dist/lib/utils/fonts.d.mts +1 -2
  207. package/dist/lib/utils/fonts.mjs +1 -2
  208. package/dist/lib/utils/format.d.mts +1 -2
  209. package/dist/lib/utils/format.mjs +1 -2
  210. package/dist/lib/utils/manifest.d.mts +1 -2
  211. package/dist/lib/utils/manifest.mjs +1 -2
  212. package/dist/lib/utils/markdown.d.mts +1 -2
  213. package/dist/lib/utils/markdown.mjs +1 -2
  214. package/dist/lib/utils/url.d.mts +1 -2
  215. package/dist/lib/utils/url.mjs +1 -2
  216. package/dist/lib/utils/user-agent.mjs +1 -2
  217. package/dist/modules/auth/components/allowed.client.d.mts +1 -2
  218. package/dist/modules/auth/components/allowed.client.mjs +1 -2
  219. package/dist/modules/auth/components/auth-layout.server.d.mts +1 -2
  220. package/dist/modules/auth/components/auth-layout.server.mjs +1 -2
  221. package/dist/modules/auth/components/auth-loading.d.mts +1 -2
  222. package/dist/modules/auth/components/auth-loading.mjs +1 -2
  223. package/dist/modules/auth/components/create-first-user-guard.server.d.mts +1 -2
  224. package/dist/modules/auth/components/create-first-user-guard.server.mjs +1 -2
  225. package/dist/modules/auth/components/create-first-user-page.client.d.mts +1 -2
  226. package/dist/modules/auth/components/create-first-user-page.client.mjs +1 -2
  227. package/dist/modules/auth/components/forget-password-page.client.d.mts +1 -2
  228. package/dist/modules/auth/components/forget-password-page.client.mjs +1 -2
  229. package/dist/modules/auth/components/guard.server.d.mts +1 -2
  230. package/dist/modules/auth/components/guard.server.mjs +1 -2
  231. package/dist/modules/auth/components/login-page.client.d.mts +1 -2
  232. package/dist/modules/auth/components/login-page.client.mjs +1 -2
  233. package/dist/modules/auth/components/reset-password-page.client.d.mts +1 -2
  234. package/dist/modules/auth/components/reset-password-page.client.mjs +1 -2
  235. package/dist/modules/auth/components/update-password-command.d.mts +1 -2
  236. package/dist/modules/auth/components/update-password-command.mjs +1 -2
  237. package/dist/modules/auth/db/schema.d.mts +1 -2
  238. package/dist/modules/auth/db/schema.mjs +1 -2
  239. package/dist/modules/auth/handler/create-client.client.d.mts +903 -665
  240. package/dist/modules/auth/handler/create-client.client.mjs +1 -2
  241. package/dist/modules/auth/handler/proxy.server.d.mts +1 -2
  242. package/dist/modules/auth/handler/proxy.server.mjs +1 -2
  243. package/dist/modules/auth/handler/route.server.d.mts +1 -2
  244. package/dist/modules/auth/handler/route.server.mjs +1 -2
  245. package/dist/modules/auth/handler/service.server.d.mts +121 -94
  246. package/dist/modules/auth/handler/service.server.mjs +1 -2
  247. package/dist/modules/auth/hooks/use-auth-client.d.mts +1 -2
  248. package/dist/modules/auth/hooks/use-auth-client.mjs +1 -2
  249. package/dist/modules/auth/hooks/use-permission.d.mts +1 -2
  250. package/dist/modules/auth/hooks/use-permission.mjs +1 -2
  251. package/dist/modules/auth/hooks/use-session.d.mts +3 -4
  252. package/dist/modules/auth/hooks/use-session.mjs +1 -2
  253. package/dist/modules/auth/lib/helpers.server.d.mts +2 -3
  254. package/dist/modules/auth/lib/helpers.server.mjs +1 -2
  255. package/dist/modules/auth/lib/permissions.d.mts +1 -2
  256. package/dist/modules/auth/lib/permissions.mjs +1 -2
  257. package/dist/modules/auth/lib/validators.d.mts +1 -2
  258. package/dist/modules/auth/lib/validators.mjs +1 -2
  259. package/dist/modules/commands/components/alert-dialog-command.client.d.mts +1 -2
  260. package/dist/modules/commands/components/alert-dialog-command.client.mjs +1 -2
  261. package/dist/modules/commands/components/click-command.client.d.mts +1 -2
  262. package/dist/modules/commands/components/click-command.client.mjs +1 -2
  263. package/dist/modules/commands/components/command-trigger.client.d.mts +1 -2
  264. package/dist/modules/commands/components/command-trigger.client.mjs +1 -2
  265. package/dist/modules/commands/components/dialog-command.client.d.mts +1 -2
  266. package/dist/modules/commands/components/dialog-command.client.mjs +1 -2
  267. package/dist/modules/commands/components/dropdown-command.client.d.mts +1 -2
  268. package/dist/modules/commands/components/dropdown-command.client.mjs +1 -2
  269. package/dist/modules/commands/components/empty-command.client.d.mts +1 -2
  270. package/dist/modules/commands/components/empty-command.client.mjs +1 -2
  271. package/dist/modules/commands/components/form-dialog-command.client.d.mts +1 -2
  272. package/dist/modules/commands/components/form-dialog-command.client.mjs +1 -2
  273. package/dist/modules/commands/components/render-command.mjs +1 -2
  274. package/dist/modules/commands/hooks/context.client.mjs +1 -2
  275. package/dist/modules/commands/hooks/use-command-menu.client.d.mts +1 -2
  276. package/dist/modules/commands/hooks/use-command-menu.client.mjs +1 -2
  277. package/dist/modules/commands/hooks/use-command-mutation.client.d.mts +1 -2
  278. package/dist/modules/commands/hooks/use-command-mutation.client.mjs +1 -2
  279. package/dist/modules/commands/lib/definitions.d.mts +1 -2
  280. package/dist/modules/commands/lib/factory.d.mts +1 -2
  281. package/dist/modules/commands/lib/factory.mjs +1 -2
  282. package/dist/modules/commands/menus/context-menu.client.d.mts +1 -2
  283. package/dist/modules/commands/menus/context-menu.client.mjs +1 -2
  284. package/dist/modules/commands/menus/dropdown-menu.client.d.mts +1 -2
  285. package/dist/modules/commands/menus/dropdown-menu.client.mjs +1 -2
  286. package/dist/modules/commands/menus/floating-menu.client.d.mts +1 -2
  287. package/dist/modules/commands/menus/floating-menu.client.mjs +1 -2
  288. package/dist/modules/commands/menus/inline-menu.client.d.mts +1 -2
  289. package/dist/modules/commands/menus/inline-menu.client.mjs +1 -2
  290. package/dist/modules/commands/menus/responsive-menu.client.d.mts +1 -2
  291. package/dist/modules/commands/menus/responsive-menu.client.mjs +1 -2
  292. package/dist/modules/commands/utils/archive-command.client.d.mts +1 -2
  293. package/dist/modules/commands/utils/archive-command.client.mjs +1 -2
  294. package/dist/modules/commands/utils/delete-command.client.d.mts +1 -2
  295. package/dist/modules/commands/utils/delete-command.client.mjs +1 -2
  296. package/dist/modules/config/lib/config.d.mts +1 -2
  297. package/dist/modules/config/lib/config.mjs +1 -2
  298. package/dist/modules/config/lib/context.d.mts +1 -2
  299. package/dist/modules/config/lib/context.mjs +1 -2
  300. package/dist/modules/config/paths/helpers.d.mts +1 -2
  301. package/dist/modules/config/paths/helpers.mjs +1 -2
  302. package/dist/modules/config/paths/types.d.mts +1 -2
  303. package/dist/modules/data-tables/components/cell/common.client.d.mts +1 -2
  304. package/dist/modules/data-tables/components/cell/common.client.mjs +1 -2
  305. package/dist/modules/data-tables/components/cell/index.client.d.mts +1 -2
  306. package/dist/modules/data-tables/components/cell/index.client.mjs +1 -2
  307. package/dist/modules/data-tables/components/cell/select.client.d.mts +1 -2
  308. package/dist/modules/data-tables/components/cell/select.client.mjs +1 -2
  309. package/dist/modules/data-tables/components/column-header.d.mts +1 -2
  310. package/dist/modules/data-tables/components/column-header.mjs +1 -2
  311. package/dist/modules/data-tables/components/filters/combobox.client.d.mts +1 -2
  312. package/dist/modules/data-tables/components/filters/combobox.client.mjs +1 -2
  313. package/dist/modules/data-tables/components/filters/slider.client.d.mts +1 -2
  314. package/dist/modules/data-tables/components/filters/slider.client.mjs +1 -2
  315. package/dist/modules/data-tables/components/footer.mjs +1 -2
  316. package/dist/modules/data-tables/components/header.d.mts +1 -2
  317. package/dist/modules/data-tables/components/header.mjs +1 -2
  318. package/dist/modules/data-tables/components/layout.d.mts +1 -2
  319. package/dist/modules/data-tables/components/layout.mjs +1 -2
  320. package/dist/modules/data-tables/components/search-input.client.d.mts +1 -2
  321. package/dist/modules/data-tables/components/search-input.client.mjs +1 -2
  322. package/dist/modules/data-tables/components/skeleton.d.mts +1 -2
  323. package/dist/modules/data-tables/components/skeleton.mjs +1 -2
  324. package/dist/modules/data-tables/components/table.d.mts +1 -2
  325. package/dist/modules/data-tables/components/table.mjs +1 -2
  326. package/dist/modules/data-tables/components/toolbar.d.mts +1 -2
  327. package/dist/modules/data-tables/components/toolbar.mjs +1 -2
  328. package/dist/modules/data-tables/hooks/use-context.client.d.mts +1 -2
  329. package/dist/modules/data-tables/hooks/use-context.client.mjs +1 -2
  330. package/dist/modules/data-tables/hooks/use-search.client.mjs +1 -2
  331. package/dist/modules/data-tables/hooks/use-selection.client.mjs +1 -2
  332. package/dist/modules/data-tables/hooks/use-table.client.d.mts +1 -2
  333. package/dist/modules/data-tables/hooks/use-table.client.mjs +1 -2
  334. package/dist/modules/data-tables/lib/converters/cursor.d.mts +1 -2
  335. package/dist/modules/data-tables/lib/converters/cursor.mjs +1 -2
  336. package/dist/modules/data-tables/lib/converters/dto.d.mts +1 -2
  337. package/dist/modules/data-tables/lib/converters/dto.mjs +1 -2
  338. package/dist/modules/data-tables/lib/converters/filter.d.mts +1 -2
  339. package/dist/modules/data-tables/lib/converters/filter.mjs +1 -2
  340. package/dist/modules/data-tables/lib/converters/search.d.mts +1 -2
  341. package/dist/modules/data-tables/lib/converters/search.mjs +1 -2
  342. package/dist/modules/data-tables/lib/converters/sorting.d.mts +1 -2
  343. package/dist/modules/data-tables/lib/converters/sorting.mjs +1 -2
  344. package/dist/modules/data-tables/lib/filters/config.d.mts +1 -2
  345. package/dist/modules/data-tables/lib/filters/config.mjs +1 -2
  346. package/dist/modules/data-tables/lib/filters/helpers.d.mts +1 -2
  347. package/dist/modules/data-tables/lib/filters/helpers.mjs +1 -2
  348. package/dist/modules/data-tables/lib/filters/parsers.d.mts +1 -2
  349. package/dist/modules/data-tables/lib/filters/parsers.mjs +1 -2
  350. package/dist/modules/data-tables/lib/filters/resolvers.d.mts +1 -2
  351. package/dist/modules/data-tables/lib/filters/resolvers.mjs +1 -2
  352. package/dist/modules/data-tables/lib/helpers/create-column.mjs +1 -2
  353. package/dist/modules/data-tables/lib/search-params.d.mts +1 -2
  354. package/dist/modules/data-tables/lib/search-params.mjs +1 -2
  355. package/dist/modules/data-tables/lib/types.d.mts +1 -2
  356. package/dist/modules/data-tables/lib/validators.d.mts +1 -2
  357. package/dist/modules/data-tables/lib/validators.mjs +1 -2
  358. package/dist/modules/data-tables/server/get-data.server.d.mts +2 -3
  359. package/dist/modules/data-tables/server/get-data.server.mjs +1 -2
  360. package/dist/modules/data-tables/strategies/helpers/sorting.mjs +1 -2
  361. package/dist/modules/data-tables/strategies/infinite/components.mjs +1 -2
  362. package/dist/modules/data-tables/strategies/infinite/strategy.d.mts +1 -2
  363. package/dist/modules/data-tables/strategies/infinite/strategy.mjs +1 -2
  364. package/dist/modules/data-tables/strategies/pagination/components.mjs +1 -2
  365. package/dist/modules/data-tables/strategies/pagination/strategy.d.mts +1 -2
  366. package/dist/modules/data-tables/strategies/pagination/strategy.mjs +1 -2
  367. package/dist/modules/data-tables/tables/data-table/components/body.mjs +1 -2
  368. package/dist/modules/data-tables/tables/data-table/components/header.mjs +1 -2
  369. package/dist/modules/data-tables/tables/data-table/components/row.mjs +1 -2
  370. package/dist/modules/data-tables/tables/data-table/components/table.d.mts +1 -2
  371. package/dist/modules/data-tables/tables/data-table/components/table.mjs +1 -2
  372. package/dist/modules/data-tables/tables/inline-table/components/body.mjs +1 -2
  373. package/dist/modules/data-tables/tables/inline-table/components/cells/common.d.mts +1 -2
  374. package/dist/modules/data-tables/tables/inline-table/components/cells/common.mjs +1 -2
  375. package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.d.mts +1 -2
  376. package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.mjs +1 -2
  377. package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.d.mts +1 -2
  378. package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.mjs +1 -2
  379. package/dist/modules/data-tables/tables/inline-table/components/header.mjs +1 -2
  380. package/dist/modules/data-tables/tables/inline-table/components/row.client.mjs +1 -2
  381. package/dist/modules/data-tables/tables/inline-table/components/table.d.mts +1 -2
  382. package/dist/modules/data-tables/tables/inline-table/components/table.mjs +1 -2
  383. package/dist/modules/data-tables/tables/inline-table/hooks/context.client.d.mts +1 -2
  384. package/dist/modules/data-tables/tables/inline-table/hooks/context.client.mjs +1 -2
  385. package/dist/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.d.mts +2 -3
  386. package/dist/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.mjs +1 -2
  387. package/dist/modules/database/lib/helpers.d.mts +1 -2
  388. package/dist/modules/database/lib/helpers.mjs +1 -2
  389. package/dist/modules/database/lib/service.server.d.mts +1 -2
  390. package/dist/modules/database/lib/service.server.mjs +1 -2
  391. package/dist/modules/database/lib/types.d.mts +1 -2
  392. package/dist/modules/emails/lib/service.server.d.mts +1 -2
  393. package/dist/modules/emails/lib/service.server.mjs +1 -2
  394. package/dist/modules/inline-edit/components/combobox-dropdown.client.d.mts +1 -2
  395. package/dist/modules/inline-edit/components/combobox-dropdown.client.mjs +1 -2
  396. package/dist/modules/inline-edit/components/combobox.client.d.mts +1 -2
  397. package/dist/modules/inline-edit/components/combobox.client.mjs +1 -2
  398. package/dist/modules/inline-edit/components/date-input.client.d.mts +1 -2
  399. package/dist/modules/inline-edit/components/date-input.client.mjs +1 -2
  400. package/dist/modules/inline-edit/components/date-picker.client.d.mts +1 -2
  401. package/dist/modules/inline-edit/components/date-picker.client.mjs +1 -2
  402. package/dist/modules/inline-edit/components/date-time.client.d.mts +1 -2
  403. package/dist/modules/inline-edit/components/date-time.client.mjs +1 -2
  404. package/dist/modules/inline-edit/components/editor.client.d.mts +1 -2
  405. package/dist/modules/inline-edit/components/editor.client.mjs +1 -2
  406. package/dist/modules/inline-edit/components/input-recipient.client.d.mts +1 -2
  407. package/dist/modules/inline-edit/components/input-recipient.client.mjs +1 -2
  408. package/dist/modules/inline-edit/components/input-toggle.client.d.mts +1 -2
  409. package/dist/modules/inline-edit/components/input-toggle.client.mjs +1 -2
  410. package/dist/modules/inline-edit/components/input.client.d.mts +1 -2
  411. package/dist/modules/inline-edit/components/input.client.mjs +1 -2
  412. package/dist/modules/inline-edit/components/select.client.d.mts +1 -2
  413. package/dist/modules/inline-edit/components/select.client.mjs +1 -2
  414. package/dist/modules/inline-edit/components/switch.client.d.mts +1 -2
  415. package/dist/modules/inline-edit/components/switch.client.mjs +1 -2
  416. package/dist/modules/inline-edit/components/toggle.client.d.mts +1 -2
  417. package/dist/modules/inline-edit/components/toggle.client.mjs +1 -2
  418. package/dist/modules/inline-edit/hooks/context.client.d.mts +1 -2
  419. package/dist/modules/inline-edit/hooks/context.client.mjs +1 -2
  420. package/dist/modules/inline-edit/hooks/use-inline.client.d.mts +1 -2
  421. package/dist/modules/inline-edit/hooks/use-inline.client.mjs +1 -2
  422. package/dist/modules/inline-edit/lib/validators.d.mts +1 -2
  423. package/dist/modules/inline-edit/lib/validators.mjs +1 -2
  424. package/dist/modules/inline-edit/lib/variants.d.mts +2 -3
  425. package/dist/modules/inline-edit/lib/variants.mjs +1 -2
  426. package/dist/modules/router/handler/caller.client.d.mts +1 -2
  427. package/dist/modules/router/handler/caller.client.mjs +1 -2
  428. package/dist/modules/router/handler/caller.server.d.mts +1 -2
  429. package/dist/modules/router/handler/caller.server.mjs +1 -2
  430. package/dist/modules/router/handler/context.server.d.mts +2 -3
  431. package/dist/modules/router/handler/context.server.mjs +1 -2
  432. package/dist/modules/router/handler/init.server.d.mts +3 -31
  433. package/dist/modules/router/handler/init.server.mjs +8 -6
  434. package/dist/modules/router/handler/register.server.d.mts +1 -2
  435. package/dist/modules/router/handler/register.server.mjs +1 -2
  436. package/dist/modules/router/handler/route.server.d.mts +2 -3
  437. package/dist/modules/router/handler/route.server.mjs +1 -2
  438. package/dist/modules/router/lib/helpers.mjs +1 -2
  439. package/dist/modules/router/lib/query-client.d.mts +1 -2
  440. package/dist/modules/router/lib/query-client.mjs +1 -2
  441. package/dist/modules/router/lib/query-client.server.d.mts +1 -2
  442. package/dist/modules/router/lib/query-client.server.mjs +1 -2
  443. package/dist/modules/router/lib/validators.d.mts +1 -2
  444. package/dist/modules/router/lib/validators.mjs +1 -2
  445. package/dist/modules/storage/components/dropzone-context.client.d.mts +1 -2
  446. package/dist/modules/storage/components/dropzone-context.client.mjs +1 -2
  447. package/dist/modules/storage/components/dropzone.client.d.mts +3 -4
  448. package/dist/modules/storage/components/dropzone.client.mjs +1 -2
  449. package/dist/modules/storage/components/image-grid.client.d.mts +1 -2
  450. package/dist/modules/storage/components/image-grid.client.mjs +1 -2
  451. package/dist/modules/storage/components/image.client.d.mts +1 -2
  452. package/dist/modules/storage/components/image.client.mjs +1 -2
  453. package/dist/modules/storage/components/upload-button.client.d.mts +1 -2
  454. package/dist/modules/storage/components/upload-button.client.mjs +1 -2
  455. package/dist/modules/storage/components/upload-zone-context.client.d.mts +1 -2
  456. package/dist/modules/storage/components/upload-zone-context.client.mjs +1 -2
  457. package/dist/modules/storage/components/upload-zone.client.d.mts +1 -2
  458. package/dist/modules/storage/components/upload-zone.client.mjs +1 -2
  459. package/dist/modules/storage/lib/constants.d.mts +1 -2
  460. package/dist/modules/storage/lib/constants.mjs +1 -2
  461. package/dist/modules/storage/lib/helpers.d.mts +1 -2
  462. package/dist/modules/storage/lib/helpers.mjs +1 -2
  463. package/dist/modules/storage/lib/procedures.server.d.mts +10 -11
  464. package/dist/modules/storage/lib/procedures.server.mjs +1 -2
  465. package/dist/modules/storage/lib/router-handlers.server.d.mts +2 -3
  466. package/dist/modules/storage/lib/router-handlers.server.mjs +1 -2
  467. package/dist/modules/storage/lib/schema.d.mts +2 -3
  468. package/dist/modules/storage/lib/schema.mjs +1 -2
  469. package/dist/modules/storage/lib/service.server.d.mts +31 -32
  470. package/dist/modules/storage/lib/service.server.mjs +1 -2
  471. package/dist/modules/storage/lib/upload.client.d.mts +1 -2
  472. package/dist/modules/storage/lib/upload.client.mjs +1 -2
  473. package/dist/modules/storage/lib/validators.d.mts +5 -6
  474. package/dist/modules/storage/lib/validators.mjs +1 -2
  475. package/dist/modules/storage/providers/adapters/s3.server.d.mts +1 -2
  476. package/dist/modules/storage/providers/adapters/s3.server.mjs +1 -2
  477. package/dist/modules/storage/providers/lib/constants.d.mts +1 -2
  478. package/dist/modules/storage/providers/lib/constants.mjs +1 -2
  479. package/dist/modules/storage/providers/lib/errors.d.mts +1 -2
  480. package/dist/modules/storage/providers/lib/errors.mjs +1 -2
  481. package/dist/modules/storage/providers/lib/types.d.mts +1 -2
  482. package/dist/modules/storage/providers/lib/validators.d.mts +1 -2
  483. package/dist/modules/storage/providers/lib/validators.mjs +1 -2
  484. package/package.json +66 -63
  485. package/src/components/emails/forget-password-email.tsx +1 -1
  486. package/src/modules/auth/lib/helpers.server.ts +1 -1
  487. package/src/modules/data-tables/server/get-data.server.ts +1 -1
  488. package/src/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.ts +1 -2
  489. package/src/modules/router/handler/context.server.ts +1 -1
  490. package/src/modules/router/handler/init.server.ts +2 -1
  491. package/src/modules/router/handler/route.server.ts +1 -1
  492. package/src/modules/storage/lib/procedures.server.ts +1 -1
  493. package/src/modules/storage/lib/router-handlers.server.ts +1 -1
  494. package/dist/components/common/icons.d.mts.map +0 -1
  495. package/dist/components/common/icons.mjs.map +0 -1
  496. package/dist/components/common/status.d.mts.map +0 -1
  497. package/dist/components/common/status.mjs.map +0 -1
  498. package/dist/components/editor/components/content.client.d.mts.map +0 -1
  499. package/dist/components/editor/components/content.client.mjs.map +0 -1
  500. package/dist/components/editor/components/editor.client.d.mts.map +0 -1
  501. package/dist/components/editor/components/editor.client.mjs.map +0 -1
  502. package/dist/components/editor/components/menu-nodes.client.mjs.map +0 -1
  503. package/dist/components/editor/components/menu.client.d.mts.map +0 -1
  504. package/dist/components/editor/components/menu.client.mjs.map +0 -1
  505. package/dist/components/editor/extensions/file-handler/extension.d.mts.map +0 -1
  506. package/dist/components/editor/extensions/file-handler/extension.mjs.map +0 -1
  507. package/dist/components/editor/extensions/file-handler/strategy.d.mts.map +0 -1
  508. package/dist/components/editor/extensions/file-handler/strategy.mjs.map +0 -1
  509. package/dist/components/editor/extensions/file-handler/utils.mjs.map +0 -1
  510. package/dist/components/editor/extensions/image/extension.d.mts.map +0 -1
  511. package/dist/components/editor/extensions/image/extension.mjs.map +0 -1
  512. package/dist/components/editor/extensions/skeleton/extension.mjs.map +0 -1
  513. package/dist/components/editor/extensions/skeleton/renderer.mjs.map +0 -1
  514. package/dist/components/editor/lib/constants.d.mts.map +0 -1
  515. package/dist/components/editor/lib/constants.mjs.map +0 -1
  516. package/dist/components/editor/lib/extensions.d.mts.map +0 -1
  517. package/dist/components/editor/lib/extensions.mjs.map +0 -1
  518. package/dist/components/editor/lib/helpers.d.mts.map +0 -1
  519. package/dist/components/editor/lib/helpers.mjs.map +0 -1
  520. package/dist/components/editor/lib/types.d.mts.map +0 -1
  521. package/dist/components/editor/lib/variants.mjs.map +0 -1
  522. package/dist/components/emails/forget-password-email.mjs.map +0 -1
  523. package/dist/components/header/back-button.client.d.mts.map +0 -1
  524. package/dist/components/header/back-button.client.mjs.map +0 -1
  525. package/dist/components/header/bottom-bar.client.d.mts.map +0 -1
  526. package/dist/components/header/bottom-bar.client.mjs.map +0 -1
  527. package/dist/components/header/breadcrumbs.client.d.mts.map +0 -1
  528. package/dist/components/header/breadcrumbs.client.mjs.map +0 -1
  529. package/dist/components/header/header.client.d.mts.map +0 -1
  530. package/dist/components/header/header.client.mjs.map +0 -1
  531. package/dist/components/header/indicator.client.mjs.map +0 -1
  532. package/dist/components/header/mobile-nav-switcher.client.d.mts.map +0 -1
  533. package/dist/components/header/mobile-nav-switcher.client.mjs.map +0 -1
  534. package/dist/components/header/top-bar.client.d.mts.map +0 -1
  535. package/dist/components/header/top-bar.client.mjs.map +0 -1
  536. package/dist/components/layouts/admin-content.client.d.mts.map +0 -1
  537. package/dist/components/layouts/admin-content.client.mjs.map +0 -1
  538. package/dist/components/layouts/admin-error-pages.d.mts.map +0 -1
  539. package/dist/components/layouts/admin-error-pages.mjs.map +0 -1
  540. package/dist/components/layouts/admin-layout.d.mts.map +0 -1
  541. package/dist/components/layouts/admin-layout.mjs.map +0 -1
  542. package/dist/components/layouts/admin-loading.d.mts.map +0 -1
  543. package/dist/components/layouts/admin-loading.mjs.map +0 -1
  544. package/dist/components/layouts/empty-page.d.mts.map +0 -1
  545. package/dist/components/layouts/empty-page.mjs.map +0 -1
  546. package/dist/components/layouts/error-page.d.mts.map +0 -1
  547. package/dist/components/layouts/error-page.mjs.map +0 -1
  548. package/dist/components/layouts/error-sections.d.mts.map +0 -1
  549. package/dist/components/layouts/error-sections.mjs.map +0 -1
  550. package/dist/components/layouts/list-layout.d.mts.map +0 -1
  551. package/dist/components/layouts/list-layout.mjs.map +0 -1
  552. package/dist/components/layouts/providers.client.d.mts.map +0 -1
  553. package/dist/components/layouts/providers.client.mjs.map +0 -1
  554. package/dist/components/layouts/root-error-pages.d.mts.map +0 -1
  555. package/dist/components/layouts/root-error-pages.mjs.map +0 -1
  556. package/dist/components/layouts/root-layout.server.d.mts.map +0 -1
  557. package/dist/components/layouts/root-layout.server.mjs.map +0 -1
  558. package/dist/components/layouts/root-loading.d.mts.map +0 -1
  559. package/dist/components/layouts/root-loading.mjs.map +0 -1
  560. package/dist/components/layouts/tab-layout.d.mts.map +0 -1
  561. package/dist/components/layouts/tab-layout.mjs.map +0 -1
  562. package/dist/components/lists/data-list.d.mts.map +0 -1
  563. package/dist/components/lists/data-list.mjs.map +0 -1
  564. package/dist/components/lists/data-stack.d.mts.map +0 -1
  565. package/dist/components/lists/data-stack.mjs.map +0 -1
  566. package/dist/components/navigation/admin-sidebar-header.client.mjs.map +0 -1
  567. package/dist/components/navigation/admin-sidebar-paths.client.d.mts.map +0 -1
  568. package/dist/components/navigation/admin-sidebar-paths.client.mjs.map +0 -1
  569. package/dist/components/navigation/admin-sidebar-skeleton.mjs.map +0 -1
  570. package/dist/components/ui/accordion.client.d.mts.map +0 -1
  571. package/dist/components/ui/accordion.client.mjs.map +0 -1
  572. package/dist/components/ui/alert-dialog.client.d.mts.map +0 -1
  573. package/dist/components/ui/alert-dialog.client.mjs.map +0 -1
  574. package/dist/components/ui/alert.d.mts.map +0 -1
  575. package/dist/components/ui/alert.mjs.map +0 -1
  576. package/dist/components/ui/aspect-ratio.client.d.mts.map +0 -1
  577. package/dist/components/ui/aspect-ratio.client.mjs.map +0 -1
  578. package/dist/components/ui/avatar.client.d.mts.map +0 -1
  579. package/dist/components/ui/avatar.client.mjs.map +0 -1
  580. package/dist/components/ui/badge.d.mts.map +0 -1
  581. package/dist/components/ui/badge.mjs.map +0 -1
  582. package/dist/components/ui/breadcrumb.d.mts.map +0 -1
  583. package/dist/components/ui/breadcrumb.mjs.map +0 -1
  584. package/dist/components/ui/button-group.d.mts.map +0 -1
  585. package/dist/components/ui/button-group.mjs.map +0 -1
  586. package/dist/components/ui/button.d.mts.map +0 -1
  587. package/dist/components/ui/button.mjs.map +0 -1
  588. package/dist/components/ui/calendar.client.d.mts.map +0 -1
  589. package/dist/components/ui/calendar.client.mjs.map +0 -1
  590. package/dist/components/ui/card.d.mts.map +0 -1
  591. package/dist/components/ui/card.mjs.map +0 -1
  592. package/dist/components/ui/carousel.client.d.mts.map +0 -1
  593. package/dist/components/ui/carousel.client.mjs.map +0 -1
  594. package/dist/components/ui/chart.client.d.mts.map +0 -1
  595. package/dist/components/ui/chart.client.mjs.map +0 -1
  596. package/dist/components/ui/checkbox.client.d.mts.map +0 -1
  597. package/dist/components/ui/checkbox.client.mjs.map +0 -1
  598. package/dist/components/ui/collapsible.client.d.mts.map +0 -1
  599. package/dist/components/ui/collapsible.client.mjs.map +0 -1
  600. package/dist/components/ui/color-picker.client.d.mts.map +0 -1
  601. package/dist/components/ui/color-picker.client.mjs.map +0 -1
  602. package/dist/components/ui/combobox-dropdown.client.d.mts.map +0 -1
  603. package/dist/components/ui/combobox-dropdown.client.mjs.map +0 -1
  604. package/dist/components/ui/combobox.client.d.mts.map +0 -1
  605. package/dist/components/ui/combobox.client.mjs.map +0 -1
  606. package/dist/components/ui/command.client.d.mts.map +0 -1
  607. package/dist/components/ui/command.client.mjs.map +0 -1
  608. package/dist/components/ui/context-menu.client.d.mts.map +0 -1
  609. package/dist/components/ui/context-menu.client.mjs.map +0 -1
  610. package/dist/components/ui/date-picker.client.d.mts.map +0 -1
  611. package/dist/components/ui/date-picker.client.mjs.map +0 -1
  612. package/dist/components/ui/dialog.client.d.mts.map +0 -1
  613. package/dist/components/ui/dialog.client.mjs.map +0 -1
  614. package/dist/components/ui/drawer.client.d.mts.map +0 -1
  615. package/dist/components/ui/drawer.client.mjs.map +0 -1
  616. package/dist/components/ui/dropdown-menu.client.d.mts.map +0 -1
  617. package/dist/components/ui/dropdown-menu.client.mjs.map +0 -1
  618. package/dist/components/ui/empty.d.mts.map +0 -1
  619. package/dist/components/ui/empty.mjs.map +0 -1
  620. package/dist/components/ui/field.client.d.mts.map +0 -1
  621. package/dist/components/ui/field.client.mjs.map +0 -1
  622. package/dist/components/ui/form.client.d.mts.map +0 -1
  623. package/dist/components/ui/form.client.mjs.map +0 -1
  624. package/dist/components/ui/hover-card.client.d.mts.map +0 -1
  625. package/dist/components/ui/hover-card.client.mjs.map +0 -1
  626. package/dist/components/ui/input-date-time.client.d.mts.map +0 -1
  627. package/dist/components/ui/input-date-time.client.mjs.map +0 -1
  628. package/dist/components/ui/input-date.d.mts.map +0 -1
  629. package/dist/components/ui/input-date.mjs.map +0 -1
  630. package/dist/components/ui/input-group.client.d.mts.map +0 -1
  631. package/dist/components/ui/input-group.client.mjs.map +0 -1
  632. package/dist/components/ui/input-recipient.d.mts.map +0 -1
  633. package/dist/components/ui/input-recipient.mjs.map +0 -1
  634. package/dist/components/ui/input-time.d.mts.map +0 -1
  635. package/dist/components/ui/input-time.mjs.map +0 -1
  636. package/dist/components/ui/input.d.mts.map +0 -1
  637. package/dist/components/ui/input.mjs.map +0 -1
  638. package/dist/components/ui/item.d.mts.map +0 -1
  639. package/dist/components/ui/item.mjs.map +0 -1
  640. package/dist/components/ui/kbd.d.mts.map +0 -1
  641. package/dist/components/ui/kbd.mjs.map +0 -1
  642. package/dist/components/ui/label.d.mts.map +0 -1
  643. package/dist/components/ui/label.mjs.map +0 -1
  644. package/dist/components/ui/loader.d.mts.map +0 -1
  645. package/dist/components/ui/loader.mjs.map +0 -1
  646. package/dist/components/ui/navigation-menu.d.mts.map +0 -1
  647. package/dist/components/ui/navigation-menu.mjs.map +0 -1
  648. package/dist/components/ui/pagination.d.mts.map +0 -1
  649. package/dist/components/ui/pagination.mjs.map +0 -1
  650. package/dist/components/ui/popover.client.d.mts.map +0 -1
  651. package/dist/components/ui/popover.client.mjs.map +0 -1
  652. package/dist/components/ui/progress.client.d.mts.map +0 -1
  653. package/dist/components/ui/progress.client.mjs.map +0 -1
  654. package/dist/components/ui/radio-group.d.mts.map +0 -1
  655. package/dist/components/ui/radio-group.mjs.map +0 -1
  656. package/dist/components/ui/resizable.client.d.mts.map +0 -1
  657. package/dist/components/ui/resizable.client.mjs.map +0 -1
  658. package/dist/components/ui/scroll-area.d.mts.map +0 -1
  659. package/dist/components/ui/scroll-area.mjs.map +0 -1
  660. package/dist/components/ui/select.client.d.mts.map +0 -1
  661. package/dist/components/ui/select.client.mjs.map +0 -1
  662. package/dist/components/ui/separator.d.mts.map +0 -1
  663. package/dist/components/ui/separator.mjs.map +0 -1
  664. package/dist/components/ui/sheet.client.d.mts.map +0 -1
  665. package/dist/components/ui/sheet.client.mjs.map +0 -1
  666. package/dist/components/ui/sidebar.client.d.mts.map +0 -1
  667. package/dist/components/ui/sidebar.client.mjs.map +0 -1
  668. package/dist/components/ui/skeleton.d.mts.map +0 -1
  669. package/dist/components/ui/skeleton.mjs.map +0 -1
  670. package/dist/components/ui/slider.d.mts.map +0 -1
  671. package/dist/components/ui/slider.mjs.map +0 -1
  672. package/dist/components/ui/sonner.client.d.mts.map +0 -1
  673. package/dist/components/ui/sonner.client.mjs.map +0 -1
  674. package/dist/components/ui/spinner.d.mts.map +0 -1
  675. package/dist/components/ui/spinner.mjs.map +0 -1
  676. package/dist/components/ui/switch.client.d.mts.map +0 -1
  677. package/dist/components/ui/switch.client.mjs.map +0 -1
  678. package/dist/components/ui/tabs.client.d.mts.map +0 -1
  679. package/dist/components/ui/tabs.client.mjs.map +0 -1
  680. package/dist/components/ui/textarea.d.mts.map +0 -1
  681. package/dist/components/ui/textarea.mjs.map +0 -1
  682. package/dist/components/ui/toggle-group.client.d.mts.map +0 -1
  683. package/dist/components/ui/toggle-group.client.mjs.map +0 -1
  684. package/dist/components/ui/toggle.client.d.mts.map +0 -1
  685. package/dist/components/ui/toggle.client.mjs.map +0 -1
  686. package/dist/components/ui/tooltip.client.d.mts.map +0 -1
  687. package/dist/components/ui/tooltip.client.mjs.map +0 -1
  688. package/dist/lib/hooks/use-action.d.mts.map +0 -1
  689. package/dist/lib/hooks/use-action.mjs.map +0 -1
  690. package/dist/lib/hooks/use-indicator.d.mts.map +0 -1
  691. package/dist/lib/hooks/use-indicator.mjs.map +0 -1
  692. package/dist/lib/hooks/use-mobile.client.d.mts.map +0 -1
  693. package/dist/lib/hooks/use-mobile.client.mjs.map +0 -1
  694. package/dist/lib/types/config.d.mts.map +0 -1
  695. package/dist/lib/utils/array-move.d.mts.map +0 -1
  696. package/dist/lib/utils/array-move.mjs.map +0 -1
  697. package/dist/lib/utils/cn.d.mts.map +0 -1
  698. package/dist/lib/utils/cn.mjs.map +0 -1
  699. package/dist/lib/utils/fonts.d.mts.map +0 -1
  700. package/dist/lib/utils/fonts.mjs.map +0 -1
  701. package/dist/lib/utils/format.d.mts.map +0 -1
  702. package/dist/lib/utils/format.mjs.map +0 -1
  703. package/dist/lib/utils/manifest.d.mts.map +0 -1
  704. package/dist/lib/utils/manifest.mjs.map +0 -1
  705. package/dist/lib/utils/markdown.d.mts.map +0 -1
  706. package/dist/lib/utils/markdown.mjs.map +0 -1
  707. package/dist/lib/utils/url.d.mts.map +0 -1
  708. package/dist/lib/utils/url.mjs.map +0 -1
  709. package/dist/lib/utils/user-agent.mjs.map +0 -1
  710. package/dist/modules/auth/components/allowed.client.d.mts.map +0 -1
  711. package/dist/modules/auth/components/allowed.client.mjs.map +0 -1
  712. package/dist/modules/auth/components/auth-layout.server.d.mts.map +0 -1
  713. package/dist/modules/auth/components/auth-layout.server.mjs.map +0 -1
  714. package/dist/modules/auth/components/auth-loading.d.mts.map +0 -1
  715. package/dist/modules/auth/components/auth-loading.mjs.map +0 -1
  716. package/dist/modules/auth/components/create-first-user-guard.server.d.mts.map +0 -1
  717. package/dist/modules/auth/components/create-first-user-guard.server.mjs.map +0 -1
  718. package/dist/modules/auth/components/create-first-user-page.client.d.mts.map +0 -1
  719. package/dist/modules/auth/components/create-first-user-page.client.mjs.map +0 -1
  720. package/dist/modules/auth/components/forget-password-page.client.d.mts.map +0 -1
  721. package/dist/modules/auth/components/forget-password-page.client.mjs.map +0 -1
  722. package/dist/modules/auth/components/guard.server.d.mts.map +0 -1
  723. package/dist/modules/auth/components/guard.server.mjs.map +0 -1
  724. package/dist/modules/auth/components/login-page.client.d.mts.map +0 -1
  725. package/dist/modules/auth/components/login-page.client.mjs.map +0 -1
  726. package/dist/modules/auth/components/reset-password-page.client.d.mts.map +0 -1
  727. package/dist/modules/auth/components/reset-password-page.client.mjs.map +0 -1
  728. package/dist/modules/auth/components/update-password-command.d.mts.map +0 -1
  729. package/dist/modules/auth/components/update-password-command.mjs.map +0 -1
  730. package/dist/modules/auth/db/schema.d.mts.map +0 -1
  731. package/dist/modules/auth/db/schema.mjs.map +0 -1
  732. package/dist/modules/auth/handler/create-client.client.d.mts.map +0 -1
  733. package/dist/modules/auth/handler/create-client.client.mjs.map +0 -1
  734. package/dist/modules/auth/handler/proxy.server.d.mts.map +0 -1
  735. package/dist/modules/auth/handler/proxy.server.mjs.map +0 -1
  736. package/dist/modules/auth/handler/route.server.d.mts.map +0 -1
  737. package/dist/modules/auth/handler/route.server.mjs.map +0 -1
  738. package/dist/modules/auth/handler/service.server.d.mts.map +0 -1
  739. package/dist/modules/auth/handler/service.server.mjs.map +0 -1
  740. package/dist/modules/auth/hooks/use-auth-client.d.mts.map +0 -1
  741. package/dist/modules/auth/hooks/use-auth-client.mjs.map +0 -1
  742. package/dist/modules/auth/hooks/use-permission.d.mts.map +0 -1
  743. package/dist/modules/auth/hooks/use-permission.mjs.map +0 -1
  744. package/dist/modules/auth/hooks/use-session.d.mts.map +0 -1
  745. package/dist/modules/auth/hooks/use-session.mjs.map +0 -1
  746. package/dist/modules/auth/lib/helpers.server.d.mts.map +0 -1
  747. package/dist/modules/auth/lib/helpers.server.mjs.map +0 -1
  748. package/dist/modules/auth/lib/permissions.d.mts.map +0 -1
  749. package/dist/modules/auth/lib/permissions.mjs.map +0 -1
  750. package/dist/modules/auth/lib/validators.d.mts.map +0 -1
  751. package/dist/modules/auth/lib/validators.mjs.map +0 -1
  752. package/dist/modules/commands/components/alert-dialog-command.client.d.mts.map +0 -1
  753. package/dist/modules/commands/components/alert-dialog-command.client.mjs.map +0 -1
  754. package/dist/modules/commands/components/click-command.client.d.mts.map +0 -1
  755. package/dist/modules/commands/components/click-command.client.mjs.map +0 -1
  756. package/dist/modules/commands/components/command-trigger.client.d.mts.map +0 -1
  757. package/dist/modules/commands/components/command-trigger.client.mjs.map +0 -1
  758. package/dist/modules/commands/components/dialog-command.client.d.mts.map +0 -1
  759. package/dist/modules/commands/components/dialog-command.client.mjs.map +0 -1
  760. package/dist/modules/commands/components/dropdown-command.client.d.mts.map +0 -1
  761. package/dist/modules/commands/components/dropdown-command.client.mjs.map +0 -1
  762. package/dist/modules/commands/components/empty-command.client.d.mts.map +0 -1
  763. package/dist/modules/commands/components/empty-command.client.mjs.map +0 -1
  764. package/dist/modules/commands/components/form-dialog-command.client.d.mts.map +0 -1
  765. package/dist/modules/commands/components/form-dialog-command.client.mjs.map +0 -1
  766. package/dist/modules/commands/components/render-command.mjs.map +0 -1
  767. package/dist/modules/commands/hooks/context.client.mjs.map +0 -1
  768. package/dist/modules/commands/hooks/use-command-menu.client.d.mts.map +0 -1
  769. package/dist/modules/commands/hooks/use-command-menu.client.mjs.map +0 -1
  770. package/dist/modules/commands/hooks/use-command-mutation.client.d.mts.map +0 -1
  771. package/dist/modules/commands/hooks/use-command-mutation.client.mjs.map +0 -1
  772. package/dist/modules/commands/lib/definitions.d.mts.map +0 -1
  773. package/dist/modules/commands/lib/factory.d.mts.map +0 -1
  774. package/dist/modules/commands/lib/factory.mjs.map +0 -1
  775. package/dist/modules/commands/menus/context-menu.client.d.mts.map +0 -1
  776. package/dist/modules/commands/menus/context-menu.client.mjs.map +0 -1
  777. package/dist/modules/commands/menus/dropdown-menu.client.d.mts.map +0 -1
  778. package/dist/modules/commands/menus/dropdown-menu.client.mjs.map +0 -1
  779. package/dist/modules/commands/menus/floating-menu.client.d.mts.map +0 -1
  780. package/dist/modules/commands/menus/floating-menu.client.mjs.map +0 -1
  781. package/dist/modules/commands/menus/inline-menu.client.d.mts.map +0 -1
  782. package/dist/modules/commands/menus/inline-menu.client.mjs.map +0 -1
  783. package/dist/modules/commands/menus/responsive-menu.client.d.mts.map +0 -1
  784. package/dist/modules/commands/menus/responsive-menu.client.mjs.map +0 -1
  785. package/dist/modules/commands/utils/archive-command.client.d.mts.map +0 -1
  786. package/dist/modules/commands/utils/archive-command.client.mjs.map +0 -1
  787. package/dist/modules/commands/utils/delete-command.client.d.mts.map +0 -1
  788. package/dist/modules/commands/utils/delete-command.client.mjs.map +0 -1
  789. package/dist/modules/config/lib/config.d.mts.map +0 -1
  790. package/dist/modules/config/lib/config.mjs.map +0 -1
  791. package/dist/modules/config/lib/context.d.mts.map +0 -1
  792. package/dist/modules/config/lib/context.mjs.map +0 -1
  793. package/dist/modules/config/paths/helpers.d.mts.map +0 -1
  794. package/dist/modules/config/paths/helpers.mjs.map +0 -1
  795. package/dist/modules/config/paths/types.d.mts.map +0 -1
  796. package/dist/modules/data-tables/components/cell/common.client.d.mts.map +0 -1
  797. package/dist/modules/data-tables/components/cell/common.client.mjs.map +0 -1
  798. package/dist/modules/data-tables/components/cell/index.client.d.mts.map +0 -1
  799. package/dist/modules/data-tables/components/cell/index.client.mjs.map +0 -1
  800. package/dist/modules/data-tables/components/cell/select.client.d.mts.map +0 -1
  801. package/dist/modules/data-tables/components/cell/select.client.mjs.map +0 -1
  802. package/dist/modules/data-tables/components/column-header.d.mts.map +0 -1
  803. package/dist/modules/data-tables/components/column-header.mjs.map +0 -1
  804. package/dist/modules/data-tables/components/filters/combobox.client.d.mts.map +0 -1
  805. package/dist/modules/data-tables/components/filters/combobox.client.mjs.map +0 -1
  806. package/dist/modules/data-tables/components/filters/slider.client.d.mts.map +0 -1
  807. package/dist/modules/data-tables/components/filters/slider.client.mjs.map +0 -1
  808. package/dist/modules/data-tables/components/footer.mjs.map +0 -1
  809. package/dist/modules/data-tables/components/header.d.mts.map +0 -1
  810. package/dist/modules/data-tables/components/header.mjs.map +0 -1
  811. package/dist/modules/data-tables/components/layout.d.mts.map +0 -1
  812. package/dist/modules/data-tables/components/layout.mjs.map +0 -1
  813. package/dist/modules/data-tables/components/search-input.client.d.mts.map +0 -1
  814. package/dist/modules/data-tables/components/search-input.client.mjs.map +0 -1
  815. package/dist/modules/data-tables/components/skeleton.d.mts.map +0 -1
  816. package/dist/modules/data-tables/components/skeleton.mjs.map +0 -1
  817. package/dist/modules/data-tables/components/table.d.mts.map +0 -1
  818. package/dist/modules/data-tables/components/table.mjs.map +0 -1
  819. package/dist/modules/data-tables/components/toolbar.d.mts.map +0 -1
  820. package/dist/modules/data-tables/components/toolbar.mjs.map +0 -1
  821. package/dist/modules/data-tables/hooks/use-context.client.d.mts.map +0 -1
  822. package/dist/modules/data-tables/hooks/use-context.client.mjs.map +0 -1
  823. package/dist/modules/data-tables/hooks/use-search.client.mjs.map +0 -1
  824. package/dist/modules/data-tables/hooks/use-selection.client.mjs.map +0 -1
  825. package/dist/modules/data-tables/hooks/use-table.client.d.mts.map +0 -1
  826. package/dist/modules/data-tables/hooks/use-table.client.mjs.map +0 -1
  827. package/dist/modules/data-tables/lib/converters/cursor.d.mts.map +0 -1
  828. package/dist/modules/data-tables/lib/converters/cursor.mjs.map +0 -1
  829. package/dist/modules/data-tables/lib/converters/dto.d.mts.map +0 -1
  830. package/dist/modules/data-tables/lib/converters/dto.mjs.map +0 -1
  831. package/dist/modules/data-tables/lib/converters/filter.d.mts.map +0 -1
  832. package/dist/modules/data-tables/lib/converters/filter.mjs.map +0 -1
  833. package/dist/modules/data-tables/lib/converters/search.d.mts.map +0 -1
  834. package/dist/modules/data-tables/lib/converters/search.mjs.map +0 -1
  835. package/dist/modules/data-tables/lib/converters/sorting.d.mts.map +0 -1
  836. package/dist/modules/data-tables/lib/converters/sorting.mjs.map +0 -1
  837. package/dist/modules/data-tables/lib/filters/config.d.mts.map +0 -1
  838. package/dist/modules/data-tables/lib/filters/config.mjs.map +0 -1
  839. package/dist/modules/data-tables/lib/filters/helpers.d.mts.map +0 -1
  840. package/dist/modules/data-tables/lib/filters/helpers.mjs.map +0 -1
  841. package/dist/modules/data-tables/lib/filters/parsers.d.mts.map +0 -1
  842. package/dist/modules/data-tables/lib/filters/parsers.mjs.map +0 -1
  843. package/dist/modules/data-tables/lib/filters/resolvers.d.mts.map +0 -1
  844. package/dist/modules/data-tables/lib/filters/resolvers.mjs.map +0 -1
  845. package/dist/modules/data-tables/lib/helpers/create-column.mjs.map +0 -1
  846. package/dist/modules/data-tables/lib/search-params.d.mts.map +0 -1
  847. package/dist/modules/data-tables/lib/search-params.mjs.map +0 -1
  848. package/dist/modules/data-tables/lib/types.d.mts.map +0 -1
  849. package/dist/modules/data-tables/lib/validators.d.mts.map +0 -1
  850. package/dist/modules/data-tables/lib/validators.mjs.map +0 -1
  851. package/dist/modules/data-tables/server/get-data.server.d.mts.map +0 -1
  852. package/dist/modules/data-tables/server/get-data.server.mjs.map +0 -1
  853. package/dist/modules/data-tables/strategies/helpers/sorting.mjs.map +0 -1
  854. package/dist/modules/data-tables/strategies/infinite/components.mjs.map +0 -1
  855. package/dist/modules/data-tables/strategies/infinite/strategy.d.mts.map +0 -1
  856. package/dist/modules/data-tables/strategies/infinite/strategy.mjs.map +0 -1
  857. package/dist/modules/data-tables/strategies/pagination/components.mjs.map +0 -1
  858. package/dist/modules/data-tables/strategies/pagination/strategy.d.mts.map +0 -1
  859. package/dist/modules/data-tables/strategies/pagination/strategy.mjs.map +0 -1
  860. package/dist/modules/data-tables/tables/data-table/components/body.mjs.map +0 -1
  861. package/dist/modules/data-tables/tables/data-table/components/header.mjs.map +0 -1
  862. package/dist/modules/data-tables/tables/data-table/components/row.mjs.map +0 -1
  863. package/dist/modules/data-tables/tables/data-table/components/table.d.mts.map +0 -1
  864. package/dist/modules/data-tables/tables/data-table/components/table.mjs.map +0 -1
  865. package/dist/modules/data-tables/tables/inline-table/components/body.mjs.map +0 -1
  866. package/dist/modules/data-tables/tables/inline-table/components/cells/common.d.mts.map +0 -1
  867. package/dist/modules/data-tables/tables/inline-table/components/cells/common.mjs.map +0 -1
  868. package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.d.mts.map +0 -1
  869. package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.mjs.map +0 -1
  870. package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.d.mts.map +0 -1
  871. package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.mjs.map +0 -1
  872. package/dist/modules/data-tables/tables/inline-table/components/header.mjs.map +0 -1
  873. package/dist/modules/data-tables/tables/inline-table/components/row.client.mjs.map +0 -1
  874. package/dist/modules/data-tables/tables/inline-table/components/table.d.mts.map +0 -1
  875. package/dist/modules/data-tables/tables/inline-table/components/table.mjs.map +0 -1
  876. package/dist/modules/data-tables/tables/inline-table/hooks/context.client.d.mts.map +0 -1
  877. package/dist/modules/data-tables/tables/inline-table/hooks/context.client.mjs.map +0 -1
  878. package/dist/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.d.mts.map +0 -1
  879. package/dist/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.mjs.map +0 -1
  880. package/dist/modules/database/lib/helpers.d.mts.map +0 -1
  881. package/dist/modules/database/lib/helpers.mjs.map +0 -1
  882. package/dist/modules/database/lib/service.server.d.mts.map +0 -1
  883. package/dist/modules/database/lib/service.server.mjs.map +0 -1
  884. package/dist/modules/database/lib/types.d.mts.map +0 -1
  885. package/dist/modules/emails/lib/service.server.d.mts.map +0 -1
  886. package/dist/modules/emails/lib/service.server.mjs.map +0 -1
  887. package/dist/modules/inline-edit/components/combobox-dropdown.client.d.mts.map +0 -1
  888. package/dist/modules/inline-edit/components/combobox-dropdown.client.mjs.map +0 -1
  889. package/dist/modules/inline-edit/components/combobox.client.d.mts.map +0 -1
  890. package/dist/modules/inline-edit/components/combobox.client.mjs.map +0 -1
  891. package/dist/modules/inline-edit/components/date-input.client.d.mts.map +0 -1
  892. package/dist/modules/inline-edit/components/date-input.client.mjs.map +0 -1
  893. package/dist/modules/inline-edit/components/date-picker.client.d.mts.map +0 -1
  894. package/dist/modules/inline-edit/components/date-picker.client.mjs.map +0 -1
  895. package/dist/modules/inline-edit/components/date-time.client.d.mts.map +0 -1
  896. package/dist/modules/inline-edit/components/date-time.client.mjs.map +0 -1
  897. package/dist/modules/inline-edit/components/editor.client.d.mts.map +0 -1
  898. package/dist/modules/inline-edit/components/editor.client.mjs.map +0 -1
  899. package/dist/modules/inline-edit/components/input-recipient.client.d.mts.map +0 -1
  900. package/dist/modules/inline-edit/components/input-recipient.client.mjs.map +0 -1
  901. package/dist/modules/inline-edit/components/input-toggle.client.d.mts.map +0 -1
  902. package/dist/modules/inline-edit/components/input-toggle.client.mjs.map +0 -1
  903. package/dist/modules/inline-edit/components/input.client.d.mts.map +0 -1
  904. package/dist/modules/inline-edit/components/input.client.mjs.map +0 -1
  905. package/dist/modules/inline-edit/components/select.client.d.mts.map +0 -1
  906. package/dist/modules/inline-edit/components/select.client.mjs.map +0 -1
  907. package/dist/modules/inline-edit/components/switch.client.d.mts.map +0 -1
  908. package/dist/modules/inline-edit/components/switch.client.mjs.map +0 -1
  909. package/dist/modules/inline-edit/components/toggle.client.d.mts.map +0 -1
  910. package/dist/modules/inline-edit/components/toggle.client.mjs.map +0 -1
  911. package/dist/modules/inline-edit/hooks/context.client.d.mts.map +0 -1
  912. package/dist/modules/inline-edit/hooks/context.client.mjs.map +0 -1
  913. package/dist/modules/inline-edit/hooks/use-inline.client.d.mts.map +0 -1
  914. package/dist/modules/inline-edit/hooks/use-inline.client.mjs.map +0 -1
  915. package/dist/modules/inline-edit/lib/validators.d.mts.map +0 -1
  916. package/dist/modules/inline-edit/lib/validators.mjs.map +0 -1
  917. package/dist/modules/inline-edit/lib/variants.d.mts.map +0 -1
  918. package/dist/modules/inline-edit/lib/variants.mjs.map +0 -1
  919. package/dist/modules/router/handler/caller.client.d.mts.map +0 -1
  920. package/dist/modules/router/handler/caller.client.mjs.map +0 -1
  921. package/dist/modules/router/handler/caller.server.d.mts.map +0 -1
  922. package/dist/modules/router/handler/caller.server.mjs.map +0 -1
  923. package/dist/modules/router/handler/context.server.d.mts.map +0 -1
  924. package/dist/modules/router/handler/context.server.mjs.map +0 -1
  925. package/dist/modules/router/handler/init.server.d.mts.map +0 -1
  926. package/dist/modules/router/handler/init.server.mjs.map +0 -1
  927. package/dist/modules/router/handler/register.server.d.mts.map +0 -1
  928. package/dist/modules/router/handler/register.server.mjs.map +0 -1
  929. package/dist/modules/router/handler/route.server.d.mts.map +0 -1
  930. package/dist/modules/router/handler/route.server.mjs.map +0 -1
  931. package/dist/modules/router/lib/helpers.mjs.map +0 -1
  932. package/dist/modules/router/lib/query-client.d.mts.map +0 -1
  933. package/dist/modules/router/lib/query-client.mjs.map +0 -1
  934. package/dist/modules/router/lib/query-client.server.d.mts.map +0 -1
  935. package/dist/modules/router/lib/query-client.server.mjs.map +0 -1
  936. package/dist/modules/router/lib/validators.d.mts.map +0 -1
  937. package/dist/modules/router/lib/validators.mjs.map +0 -1
  938. package/dist/modules/storage/components/dropzone-context.client.d.mts.map +0 -1
  939. package/dist/modules/storage/components/dropzone-context.client.mjs.map +0 -1
  940. package/dist/modules/storage/components/dropzone.client.d.mts.map +0 -1
  941. package/dist/modules/storage/components/dropzone.client.mjs.map +0 -1
  942. package/dist/modules/storage/components/image-grid.client.d.mts.map +0 -1
  943. package/dist/modules/storage/components/image-grid.client.mjs.map +0 -1
  944. package/dist/modules/storage/components/image.client.d.mts.map +0 -1
  945. package/dist/modules/storage/components/image.client.mjs.map +0 -1
  946. package/dist/modules/storage/components/upload-button.client.d.mts.map +0 -1
  947. package/dist/modules/storage/components/upload-button.client.mjs.map +0 -1
  948. package/dist/modules/storage/components/upload-zone-context.client.d.mts.map +0 -1
  949. package/dist/modules/storage/components/upload-zone-context.client.mjs.map +0 -1
  950. package/dist/modules/storage/components/upload-zone.client.d.mts.map +0 -1
  951. package/dist/modules/storage/components/upload-zone.client.mjs.map +0 -1
  952. package/dist/modules/storage/lib/constants.d.mts.map +0 -1
  953. package/dist/modules/storage/lib/constants.mjs.map +0 -1
  954. package/dist/modules/storage/lib/helpers.d.mts.map +0 -1
  955. package/dist/modules/storage/lib/helpers.mjs.map +0 -1
  956. package/dist/modules/storage/lib/procedures.server.d.mts.map +0 -1
  957. package/dist/modules/storage/lib/procedures.server.mjs.map +0 -1
  958. package/dist/modules/storage/lib/router-handlers.server.d.mts.map +0 -1
  959. package/dist/modules/storage/lib/router-handlers.server.mjs.map +0 -1
  960. package/dist/modules/storage/lib/schema.d.mts.map +0 -1
  961. package/dist/modules/storage/lib/schema.mjs.map +0 -1
  962. package/dist/modules/storage/lib/service.server.d.mts.map +0 -1
  963. package/dist/modules/storage/lib/service.server.mjs.map +0 -1
  964. package/dist/modules/storage/lib/upload.client.d.mts.map +0 -1
  965. package/dist/modules/storage/lib/upload.client.mjs.map +0 -1
  966. package/dist/modules/storage/lib/validators.d.mts.map +0 -1
  967. package/dist/modules/storage/lib/validators.mjs.map +0 -1
  968. package/dist/modules/storage/providers/adapters/s3.server.d.mts.map +0 -1
  969. package/dist/modules/storage/providers/adapters/s3.server.mjs.map +0 -1
  970. package/dist/modules/storage/providers/lib/constants.d.mts.map +0 -1
  971. package/dist/modules/storage/providers/lib/constants.mjs.map +0 -1
  972. package/dist/modules/storage/providers/lib/errors.d.mts.map +0 -1
  973. package/dist/modules/storage/providers/lib/errors.mjs.map +0 -1
  974. package/dist/modules/storage/providers/lib/types.d.mts.map +0 -1
  975. package/dist/modules/storage/providers/lib/validators.d.mts.map +0 -1
  976. package/dist/modules/storage/providers/lib/validators.mjs.map +0 -1
package/package.json CHANGED
@@ -1,105 +1,108 @@
1
1
  {
2
2
  "name": "@tulip-systems/core",
3
- "version": "0.8.2",
3
+ "version": "0.8.3",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "license": "AGPL-3.0",
7
7
  "devDependencies": {
8
+ "@arethetypeswrong/core": "^0.18.2",
8
9
  "@types/markdown-it": "^14.1.2",
9
- "@types/pg": "^8.16.0",
10
+ "@types/pg": "^8.20.0",
10
11
  "@types/react": "19.2.14",
11
12
  "@types/react-dom": "19.2.3",
12
13
  "aws-sdk-client-mock": "^4.1.0",
13
14
  "aws-sdk-client-mock-vitest": "^7.0.1",
14
- "tailwindcss": "^4.2.0",
15
+ "publint": "^0.3.20",
16
+ "tailwindcss": "^4.3.0",
15
17
  "tsdown": "^0.20.3",
16
18
  "tw-animate-css": "^1.4.0",
17
19
  "typescript": "5.9.3",
18
- "vite": "^7.3.1",
19
- "vitest": "^4.1.0",
20
+ "unrun": "^0.3.0",
21
+ "vitest": "^4.1.5",
20
22
  "@tulip-systems/typescript-config": "0.0.0"
21
23
  },
22
24
  "dependencies": {
23
- "@aws-sdk/client-s3": "^3.995.0",
24
- "@aws-sdk/s3-request-presigner": "^3.995.0",
25
+ "@aws-sdk/client-s3": "^3.1045.0",
26
+ "@aws-sdk/s3-request-presigner": "^3.1045.0",
27
+ "@better-auth/core": "^1.6.10",
25
28
  "@dnd-kit/core": "^6.3.1",
26
29
  "@dnd-kit/modifiers": "^9.0.0",
27
30
  "@dnd-kit/sortable": "^10.0.0",
28
31
  "@dnd-kit/utilities": "^3.2.2",
29
32
  "@hookform/resolvers": "^5.2.2",
30
- "@orpc/client": "^1.13.5",
31
- "@orpc/contract": "^1.13.5",
32
- "@orpc/server": "^1.13.5",
33
- "@orpc/tanstack-query": "^1.13.5",
34
- "@react-email/components": "^1.0.8",
35
- "@tanstack/react-query": "^5.90.21",
36
- "@tanstack/react-query-devtools": "^5.91.3",
33
+ "@orpc/client": "^1.14.2",
34
+ "@orpc/contract": "^1.14.2",
35
+ "@orpc/server": "^1.14.2",
36
+ "@orpc/tanstack-query": "^1.14.2",
37
+ "@tanstack/react-query": "^5.100.9",
38
+ "@tanstack/react-query-devtools": "^5.100.9",
37
39
  "@tanstack/react-table": "^8.21.3",
38
- "@tanstack/react-virtual": "^3.13.18",
39
- "@tiptap/core": "^3.20.0",
40
- "@tiptap/extension-blockquote": "^3.20.0",
41
- "@tiptap/extension-bold": "^3.20.0",
42
- "@tiptap/extension-color": "^3.20.0",
43
- "@tiptap/extension-document": "^3.20.0",
44
- "@tiptap/extension-file-handler": "^3.20.0",
45
- "@tiptap/extension-hard-break": "^3.20.0",
46
- "@tiptap/extension-heading": "^3.20.0",
47
- "@tiptap/extension-highlight": "^3.20.0",
48
- "@tiptap/extension-horizontal-rule": "^3.20.0",
49
- "@tiptap/extension-image": "^3.20.0",
50
- "@tiptap/extension-italic": "^3.20.0",
51
- "@tiptap/extension-link": "^3.20.0",
52
- "@tiptap/extension-list": "^3.20.0",
53
- "@tiptap/extension-paragraph": "^3.20.0",
54
- "@tiptap/extension-strike": "^3.20.0",
55
- "@tiptap/extension-text": "^3.20.0",
56
- "@tiptap/extension-text-style": "^3.20.0",
57
- "@tiptap/extension-underline": "^3.20.0",
58
- "@tiptap/extensions": "^3.20.0",
59
- "@tiptap/html": "^3.20.0",
60
- "@tiptap/pm": "^3.20.0",
61
- "@tiptap/react": "^3.20.0",
62
- "@tiptap/static-renderer": "^3.22.4",
40
+ "@tanstack/react-virtual": "^3.13.24",
41
+ "@tiptap/core": "^3.23.1",
42
+ "@tiptap/extension-blockquote": "^3.23.1",
43
+ "@tiptap/extension-bold": "^3.23.1",
44
+ "@tiptap/extension-color": "^3.23.1",
45
+ "@tiptap/extension-document": "^3.23.1",
46
+ "@tiptap/extension-file-handler": "^3.23.1",
47
+ "@tiptap/extension-hard-break": "^3.23.1",
48
+ "@tiptap/extension-heading": "^3.23.1",
49
+ "@tiptap/extension-highlight": "^3.23.1",
50
+ "@tiptap/extension-horizontal-rule": "^3.23.1",
51
+ "@tiptap/extension-image": "^3.23.1",
52
+ "@tiptap/extension-italic": "^3.23.1",
53
+ "@tiptap/extension-link": "^3.23.1",
54
+ "@tiptap/extension-list": "^3.23.1",
55
+ "@tiptap/extension-paragraph": "^3.23.1",
56
+ "@tiptap/extension-strike": "^3.23.1",
57
+ "@tiptap/extension-text": "^3.23.1",
58
+ "@tiptap/extension-text-style": "^3.23.1",
59
+ "@tiptap/extension-underline": "^3.23.1",
60
+ "@tiptap/extensions": "^3.23.1",
61
+ "@tiptap/html": "^3.23.1",
62
+ "@tiptap/pm": "^3.23.1",
63
+ "@tiptap/react": "^3.23.1",
64
+ "@tiptap/static-renderer": "^3.23.1",
65
+ "better-call": "1.3.2",
63
66
  "class-variance-authority": "^0.7.1",
64
67
  "client-only": "^0.0.1",
65
68
  "clsx": "^2.1.1",
66
69
  "cmdk": "1.1.1",
67
70
  "date-fns": "^4.1.0",
68
71
  "deepmerge": "^4.3.1",
69
- "drizzle-orm": "^0.45.1",
72
+ "drizzle-orm": "^0.45.2",
70
73
  "drizzle-zod": "^0.8.3",
71
74
  "embla-carousel-react": "^8.6.0",
72
- "lucide-react": "^0.575.0",
75
+ "lucide-react": "^1.14.0",
73
76
  "markdown-it": "^14.1.1",
74
- "motion": "^12.34.3",
77
+ "motion": "^12.38.0",
75
78
  "next-themes": "^0.4.6",
76
79
  "radix-ui": "^1.4.3",
77
- "react-colorful": "^5.6.1",
80
+ "react-colorful": "^5.7.0",
78
81
  "react-day-picker": "9.13.2",
79
82
  "react-dropzone": "^15.0.0",
80
- "react-email": "^5.2.8",
81
- "react-hook-form": "^7.71.2",
82
- "react-hotkeys-hook": "^5.2.4",
83
- "react-resizable-panels": "^4.6.4",
84
- "resend": "^6.9.2",
83
+ "react-email": "^6.1.1",
84
+ "react-hook-form": "^7.75.0",
85
+ "react-hotkeys-hook": "^5.3.2",
86
+ "react-resizable-panels": "^4.11.0",
87
+ "resend": "^6.12.3",
85
88
  "server-cli-only": "^0.3.2",
86
89
  "server-only": "^0.0.1",
87
90
  "sonner": "^2.0.7",
88
- "tailwind-merge": "^3.5.0",
89
- "use-debounce": "^10.1.0",
90
- "uuid": "^13.0.0",
91
+ "tailwind-merge": "^3.6.0",
92
+ "use-debounce": "^10.1.1",
93
+ "uuid": "^14.0.0",
91
94
  "vaul": "^1.1.2",
92
- "zod": "^4.3.6"
95
+ "zod": "^4.4.3"
93
96
  },
94
97
  "peerDependencies": {
95
- "@better-auth/passkey": "^1.5.5",
98
+ "@better-auth/passkey": "^1.6.10",
96
99
  "@tailwindcss/typography": "^0.5.19",
97
- "better-auth": "^1.5.5",
98
- "next": "16.1.6",
99
- "nuqs": "2.8.8",
100
- "pg": "8.18.0",
101
- "react": "19.2.4",
102
- "react-dom": "19.2.4",
100
+ "better-auth": "^1.6.10",
101
+ "next": "16.2.6",
102
+ "nuqs": "2.8.9",
103
+ "pg": "8.20.0",
104
+ "react": "19.2.6",
105
+ "react-dom": "19.2.6",
103
106
  "recharts": "2.15.4",
104
107
  "sharp": "^0.34.5"
105
108
  },
@@ -150,15 +153,15 @@
150
153
  "./package.json": "./package.json",
151
154
  "./styles.css": "./src/styles.css"
152
155
  },
153
- "types": "./dist/components.d.ts",
154
156
  "scripts": {
155
- "dev": "tsdown --config-loader tsdown.config.ts --watch",
156
- "build": "tsdown --config-loader tsdown.config.ts",
157
+ "dev": "tsdown --config tsdown.config.ts --config-loader unrun --watch",
158
+ "build": "tsdown --config tsdown.config.ts --config-loader unrun",
157
159
  "release:build": "pnpm run build",
158
160
  "lint": "biome check",
159
161
  "format": "biome format --write",
160
- "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist",
162
+ "typecheck": "tsc --noEmit",
161
163
  "test": "vitest",
164
+ "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist",
162
165
  "ui:add": "pnpm dlx shadcn@latest add",
163
166
  "email": "email dev --port 9090 --dir src/components/emails"
164
167
  }
@@ -9,7 +9,7 @@ import {
9
9
  Section,
10
10
  Tailwind,
11
11
  Text,
12
- } from "@react-email/components";
12
+ } from "react-email";
13
13
  import { url } from "@/lib/utils/url";
14
14
  import { Icons } from "../common/icons";
15
15
 
@@ -2,8 +2,8 @@ import "server-cli-only";
2
2
 
3
3
  import { eq } from "drizzle-orm";
4
4
  import { headers } from "next/headers";
5
- import type { TDatabaseSchema } from "@/modules/config/db/types";
6
5
  import type { TulipContext } from "@/modules/config/entry";
6
+ import type { TDatabaseSchema } from "@/modules/database/lib/types";
7
7
  import { ServerError } from "@/modules/router/lib/error.server";
8
8
  import { users } from "../entry";
9
9
  import type { CreateUserSchema, UpdateUserSchema } from "./validators";
@@ -3,7 +3,7 @@ import "server-cli-only";
3
3
  import { and, type DBQueryConfig, getTableName, isTable, type SQL } from "drizzle-orm";
4
4
  import type { PgTable } from "drizzle-orm/pg-core";
5
5
  import type { RelationalQueryBuilder } from "drizzle-orm/pg-core/query-builders/query";
6
- import type { TDatabaseSchema } from "@/modules/config/db/types";
6
+ import type { TDatabaseSchema } from "@/modules/database/lib/types";
7
7
  import type { TulipContext } from "@/modules/config/entry";
8
8
  import { convertCursorToQueryParams } from "../lib/converters/cursor";
9
9
  import {
@@ -1,5 +1,4 @@
1
- import { useHotkeys } from "react-hotkeys-hook";
2
- import type { Keys } from "react-hotkeys-hook/dist/types";
1
+ import { type Keys, useHotkeys } from "react-hotkeys-hook";
3
2
 
4
3
  /**
5
4
  * Inline input data attribute used to identify navigable cells in the data table.
@@ -2,8 +2,8 @@ import "server-cli-only";
2
2
 
3
3
  import { headers as headersList } from "next/headers";
4
4
  import { cache } from "react";
5
- import type { TDatabaseSchema } from "@/modules/config/db/types";
6
5
  import type { TulipContext } from "@/modules/config/entry";
6
+ import type { TDatabaseSchema } from "@/modules/database/lib/types";
7
7
 
8
8
  /**
9
9
  * Create the router context
@@ -2,7 +2,7 @@ import "server-cli-only";
2
2
 
3
3
  import { os } from "@orpc/server";
4
4
  import type { Permission } from "@/modules/auth/lib/permissions";
5
- import type { TDatabaseSchema } from "@/modules/config/db/types";
5
+ import type { TDatabaseSchema } from "@/modules/database/lib/types";
6
6
  import { ServerError } from "../lib/error.server";
7
7
  import type { ProtectedRPCContext, RPCContext } from "./context.server";
8
8
 
@@ -39,6 +39,7 @@ export function initRPC<TSchema extends TDatabaseSchema>() {
39
39
  */
40
40
  return os.$context<ProtectedRPCContext<TSchema>>().middleware(async (opts) => {
41
41
  const { success, error } = await opts.context.auth.api.userHasPermission({
42
+ headers: opts.context.headers,
42
43
  body: {
43
44
  userId: opts.context.session.user.id,
44
45
  permissions,
@@ -1,8 +1,8 @@
1
1
  import { onError } from "@orpc/client";
2
2
  import type { AnyRouter } from "@orpc/server";
3
3
  import { RPCHandler } from "@orpc/server/fetch";
4
- import type { TDatabaseSchema } from "@/modules/config/db/types";
5
4
  import type { TulipContext } from "@/modules/config/lib/context";
5
+ import type { TDatabaseSchema } from "@/modules/database/lib/types";
6
6
  import { createRPCContext } from "./context.server";
7
7
 
8
8
  /**
@@ -1,6 +1,6 @@
1
1
  import type { InferRouterInputs, InferRouterOutputs } from "@orpc/server";
2
2
  import { z } from "zod";
3
- import type { TDatabaseSchema } from "@/modules/config/db/types";
3
+ import type { TDatabaseSchema } from "@/modules/database/lib/types";
4
4
  import { initRPC } from "@/modules/router/handler/init.server";
5
5
  import {
6
6
  confirmUploadInputSchema,
@@ -1,8 +1,8 @@
1
1
  import { connection, type NextRequest } from "next/server";
2
2
  import z from "zod";
3
3
  import { getSession } from "@/modules/auth/lib/helpers.server";
4
- import type { TDatabaseSchema } from "@/modules/config/db/types";
5
4
  import type { TulipContext } from "@/modules/config/lib/context";
5
+ import type { TDatabaseSchema } from "@/modules/database/lib/types";
6
6
  import { ServerError } from "@/modules/router/lib/error.server";
7
7
  import { getAssetURLSchema } from "../entry";
8
8
 
@@ -1 +0,0 @@
1
- {"version":3,"file":"icons.d.mts","names":[],"sources":["../../../src/components/common/icons.tsx"],"mappings":";;;;;KAsDY,IAAA,GAAO,UAAA;AAAA,cAEN,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAkDG,WAAA,KAAW,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"icons.mjs","names":[],"sources":["../../../src/components/common/icons.tsx"],"sourcesContent":["import {\n AlertTriangle,\n ArchiveIcon,\n ArchiveRestore,\n ArrowDown,\n ArrowLeft,\n ArrowRight,\n ArrowUp,\n BuildingIcon,\n Check,\n ChevronDown,\n ChevronLeft,\n ChevronRight,\n ChevronUp,\n ClipboardCheck,\n Copy,\n CreditCard,\n Download,\n ExternalLink,\n EyeIcon,\n File,\n FileText,\n HelpCircle,\n HomeIcon,\n Image,\n Laptop,\n LayoutDashboardIcon,\n Loader2,\n LockKeyhole,\n LockKeyholeOpen,\n type LucideIcon,\n type LucideProps,\n Mail,\n Moon,\n MoreVertical,\n MoveLeft,\n MoveRight,\n PencilRuler,\n PenSquare,\n Pizza,\n Plus,\n RefreshCcw,\n RotateCw,\n SaveIcon,\n ScrollTextIcon,\n Search,\n Settings,\n SunMedium,\n Trash,\n User,\n UsersIcon,\n X,\n} from \"lucide-react\";\n\nexport type Icon = LucideIcon;\n\nexport const Icons = {\n close: X,\n save: SaveIcon,\n spinner: Loader2,\n chevronLeft: ChevronLeft,\n chevronRight: ChevronRight,\n chevronDown: ChevronDown,\n chevronUp: ChevronUp,\n trash: Trash,\n post: FileText,\n page: File,\n media: Image,\n download: Download,\n settings: Settings,\n billing: CreditCard,\n ellipsis: MoreVertical,\n add: Plus,\n edit: PenSquare,\n warning: AlertTriangle,\n user: User,\n users: UsersIcon,\n arrowUp: ArrowUp,\n arrowDown: ArrowDown,\n arrowRight: ArrowRight,\n arrowLeft: ArrowLeft,\n moveLeft: MoveLeft,\n moveRight: MoveRight,\n help: HelpCircle,\n pizza: Pizza,\n check: Check,\n copy: Copy,\n copyDone: ClipboardCheck,\n refresh: RotateCw,\n preview: EyeIcon,\n externalLink: ExternalLink,\n sun: SunMedium,\n lock: LockKeyhole,\n unLock: LockKeyholeOpen,\n moon: Moon,\n search: Search,\n laptop: Laptop,\n active: RefreshCcw,\n draft: PencilRuler,\n archive: ArchiveIcon,\n restore: ArchiveRestore,\n dashboard: LayoutDashboardIcon,\n regulations: ScrollTextIcon,\n home: HomeIcon,\n mail: Mail,\n building: BuildingIcon,\n logo: (props: LucideProps) => (\n <svg viewBox=\"0 0 120.09 141.73\" {...props}>\n <title>Tulip Logo Icon</title>\n <defs>\n <linearGradient\n id=\"tulip-logo-icon-gradient\"\n x1=\"60.5\"\n y1=\"0\"\n x2=\"60.5\"\n y2=\"141.73\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop offset=\"0\" stopColor=\"#ffc754\" />\n <stop offset=\"1\" stopColor=\"#ff1800\" />\n </linearGradient>\n <linearGradient\n id=\"tulip-logo-icon-gradient-2\"\n x1=\"72.4\"\n y1=\"5.81\"\n x2=\"72.4\"\n y2=\"141.73\"\n xlinkHref=\"#tulip-logo-icon-gradient\"\n />\n <linearGradient\n id=\"tulip-logo-icon-gradient-3\"\n x1=\"47.69\"\n y1=\"5.81\"\n x2=\"47.69\"\n y2=\"141.73\"\n xlinkHref=\"#tulip-logo-icon-gradient\"\n />\n </defs>\n\n <g>\n <g>\n <path\n d=\"M107.88,93.09c0-35.95-47.38-93.09-47.38-93.09,0,0-47.39,57.14-47.38,93.09,0,26.17,21.21,48.64,47.38,48.64,26.17,0,47.39-22.47,47.38-48.64Z\"\n style={{\n fill: \"url(#tulip-logo-icon-gradient)\",\n opacity: 0.75,\n }}\n />\n <path\n d=\"M116.68,109.5c12.3-33.78-12.69-103.68-12.69-103.68,0,0-64.07,37.49-76.37,71.27-8.95,24.59,3.3,52.97,27.89,61.92,24.59,8.95,52.21-4.91,61.16-29.5Z\"\n style={{\n fill: \"url(#tulip-logo-icon-gradient-2)\",\n opacity: 0.75,\n }}\n />\n <path\n d=\"M92.46,77.09C80.16,43.3,16.09,5.81,16.09,5.81c0,0-24.98,69.9-12.69,103.68,8.95,24.59,36.57,38.45,61.16,29.5,24.59-8.95,36.84-37.32,27.89-61.92Z\"\n style={{\n fill: \"url(#tulip-logo-icon-gradient-3)\",\n opacity: 0.75,\n }}\n />\n </g>\n </g>\n </svg>\n ),\n};\n"],"mappings":";;;;AAwDA,MAAa,QAAQ;CACnB,OAAO;CACP,MAAM;CACN,SAAS;CACT,aAAa;CACb,cAAc;CACd,aAAa;CACb,WAAW;CACX,OAAO;CACP,MAAM;CACN,MAAM;CACN,OAAO;CACP,UAAU;CACV,UAAU;CACV,SAAS;CACT,UAAU;CACV,KAAK;CACL,MAAM;CACN,SAAS;CACT,MAAM;CACN,OAAO;CACP,SAAS;CACT,WAAW;CACX,YAAY;CACZ,WAAW;CACX,UAAU;CACV,WAAW;CACX,MAAM;CACN,OAAO;CACP,OAAO;CACP,MAAM;CACN,UAAU;CACV,SAAS;CACT,SAAS;CACT,cAAc;CACd,KAAK;CACL,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,QAAQ;CACR,QAAQ;CACR,OAAO;CACP,SAAS;CACT,SAAS;CACT,WAAW;CACX,aAAa;CACb,MAAM;CACN,MAAM;CACN,UAAU;CACV,OAAO,UACL,qBAAC;EAAI,SAAQ;EAAoB,GAAI;;GACnC,oBAAC,qBAAM,oBAAuB;GAC9B,qBAAC;IACC,qBAAC;KACC,IAAG;KACH,IAAG;KACH,IAAG;KACH,IAAG;KACH,IAAG;KACH,eAAc;gBAEd,oBAAC;MAAK,QAAO;MAAI,WAAU;OAAY,EACvC,oBAAC;MAAK,QAAO;MAAI,WAAU;OAAY;MACxB;IACjB,oBAAC;KACC,IAAG;KACH,IAAG;KACH,IAAG;KACH,IAAG;KACH,IAAG;KACH,WAAU;MACV;IACF,oBAAC;KACC,IAAG;KACH,IAAG;KACH,IAAG;KACH,IAAG;KACH,IAAG;KACH,WAAU;MACV;OACG;GAEP,oBAAC,iBACC,qBAAC;IACC,oBAAC;KACC,GAAE;KACF,OAAO;MACL,MAAM;MACN,SAAS;MACV;MACD;IACF,oBAAC;KACC,GAAE;KACF,OAAO;MACL,MAAM;MACN,SAAS;MACV;MACD;IACF,oBAAC;KACC,GAAE;KACF,OAAO;MACL,MAAM;MACN,SAAS;MACV;MACD;OACA,GACF;;GACA;CAET"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.d.mts","names":[],"sources":["../../../src/components/common/status.tsx"],"mappings":";;;;;;;cAOa,kBAAA,2BAA8C,MAAA,EAAQ,cAAA,CAAe,OAAA,QAAU,cAAA,CAAA,OAAA;;;;;;;iBAS5E,UAAA;EAA6B,KAAA;AAAA,EAAA,CAC3C,MAAA,EAAQ,OAAA,IACR,MAAA,WACC,OAAA;;;;;;iBASa,oBAAA,wBAAA,CACd,MAAA;EAAU,KAAA,EAAO,OAAA;EAAS,SAAA;AAAA,MACzB,MAAA,CAAO,OAAA;;;;KAaE,0BAAA;EACV,MAAA,EAAQ,OAAA;AAAA;;;;KAML,oBAAA;EACH,MAAA,EAAQ,cAAA,CAAe,OAAA;EACvB,QAAA,GAAW,KAAA;IAAS,MAAA,EAAQ,OAAA;EAAA;EAC5B,MAAA,EAAQ,OAAA;AAAA;;;;iBAMM,WAAA,wBAAA,CAAoC,KAAA,EAAO,oBAAA,CAAqB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA;;;;iBAexE,WAAA,wBAAA,CAAoC,KAAA,EAAO,oBAAA,CAAqB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.mjs","names":[],"sources":["../../../src/components/common/status.tsx"],"sourcesContent":["import type { ConfigWithIcon } from \"@/lib/types/config\";\nimport { cn } from \"@/lib/utils/cn\";\nimport { Badge } from \"../ui/badge\";\n\n/**\n * Create status config\n */\nexport const createStatusConfig = <TStatus extends string>(config: ConfigWithIcon<TStatus>[]) =>\n config;\n\n/**\n * Find the status object from the config\n * @param {TStatus[]} values\n * @param {string} status\n * @returns {TStatus | undefined}\n */\nexport function findStatus<TStatus extends { value: string }>(\n values: TStatus[],\n status: string,\n): TStatus | undefined {\n return values.find((s) => s.value === status);\n}\n\n/**\n * Create status variants\n * @param {TStatus[]} values\n * @returns {Record<string, string>}\n */\nexport function createStatusVariants<TStatus extends string>(\n values: { value: TStatus; className: string }[],\n): Record<TStatus, string> {\n return values.reduce(\n (acc, { value, className }) => {\n acc[value] = className;\n return acc;\n },\n {} as Record<TStatus, string>,\n );\n}\n\n/**\n * Create status component props\n */\nexport type CreateStatusComponentProps<TStatus extends string> = {\n status: TStatus | null;\n};\n\n/**\n * Status component props\n */\ntype StatusComponentProps<TStatus extends string> = {\n config: ConfigWithIcon<TStatus>[];\n variants: (props: { status: TStatus }) => string;\n status: TStatus | null;\n};\n\n/**\n * Status column\n */\nexport function StatusField<TStatus extends string>(props: StatusComponentProps<TStatus>) {\n const status = findStatus(props.config, props.status ?? \"\");\n if (!status) return <div />;\n\n return (\n <div className={cn(\"flex items-center gap-2\", props.variants({ status: status.value }))}>\n <status.icon className={cn(\"size-4\", props.variants({ status: status.value }))} />\n <span>{status.label}</span>\n </div>\n );\n}\n\n/**\n * Status badge\n */\nexport function StatusBadge<TStatus extends string>(props: StatusComponentProps<TStatus>) {\n const status = findStatus(props.config, props.status ?? \"\");\n if (!status) return <div />;\n\n return (\n <Badge\n variant=\"outline\"\n className={cn(\"flex items-center gap-2\", props.variants({ status: status.value }))}\n >\n <status.icon className={cn(\"size-3\", props.variants({ status: status.value }))} />\n <span>{status.label}</span>\n </Badge>\n );\n}\n"],"mappings":";;;;;;;;AAOA,MAAa,sBAA8C,WACzD;;;;;;;AAQF,SAAgB,WACd,QACA,QACqB;AACrB,QAAO,OAAO,MAAM,MAAM,EAAE,UAAU,OAAO;;;;;;;AAQ/C,SAAgB,qBACd,QACyB;AACzB,QAAO,OAAO,QACX,KAAK,EAAE,OAAO,gBAAgB;AAC7B,MAAI,SAAS;AACb,SAAO;IAET,EAAE,CACH;;;;;AAsBH,SAAgB,YAAoC,OAAsC;CACxF,MAAM,SAAS,WAAW,MAAM,QAAQ,MAAM,UAAU,GAAG;AAC3D,KAAI,CAAC,OAAQ,QAAO,oBAAC,UAAM;AAE3B,QACE,qBAAC;EAAI,WAAW,GAAG,2BAA2B,MAAM,SAAS,EAAE,QAAQ,OAAO,OAAO,CAAC,CAAC;aACrF,oBAAC,OAAO,QAAK,WAAW,GAAG,UAAU,MAAM,SAAS,EAAE,QAAQ,OAAO,OAAO,CAAC,CAAC,GAAI,EAClF,oBAAC,oBAAM,OAAO,QAAa;GACvB;;;;;AAOV,SAAgB,YAAoC,OAAsC;CACxF,MAAM,SAAS,WAAW,MAAM,QAAQ,MAAM,UAAU,GAAG;AAC3D,KAAI,CAAC,OAAQ,QAAO,oBAAC,UAAM;AAE3B,QACE,qBAAC;EACC,SAAQ;EACR,WAAW,GAAG,2BAA2B,MAAM,SAAS,EAAE,QAAQ,OAAO,OAAO,CAAC,CAAC;aAElF,oBAAC,OAAO,QAAK,WAAW,GAAG,UAAU,MAAM,SAAS,EAAE,QAAQ,OAAO,OAAO,CAAC,CAAC,GAAI,EAClF,oBAAC,oBAAM,OAAO,QAAa;GACrB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"content.client.d.mts","names":[],"sources":["../../../../src/components/editor/components/content.client.tsx"],"mappings":";;;iBAOgB,aAAA,CAAA,GAAa,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"content.client.mjs","names":["EditorContent","TiptapEditorContent"],"sources":["../../../../src/components/editor/components/content.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { EditorContent as TiptapEditorContent } from \"@tiptap/react\";\nimport { useContext } from \"react\";\nimport { TooltipProvider } from \"@/components/ui/tooltip.client\";\nimport { EditorContext } from \"./editor.client\";\n\nexport function EditorContent() {\n const { editor } = useContext(EditorContext);\n\n return (\n <TooltipProvider>\n <TiptapEditorContent editor={editor} />\n </TooltipProvider>\n );\n}\n"],"mappings":";;;;;;;;;AAOA,SAAgBA,kBAAgB;CAC9B,MAAM,EAAE,WAAW,WAAW,cAAc;AAE5C,QACE,oBAAC,6BACC,oBAACC,iBAA4B,SAAU,GACvB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor.client.d.mts","names":[],"sources":["../../../../src/components/editor/components/editor.client.tsx"],"mappings":";;;;;;;;;;;;;KAuBK,kBAAA;EACH,MAAA,EAAQ,MAAA;EACR,UAAA,EAAY,4BAAA;AAAA;AAAA,cAGD,aAAA,EAAa,KAAA,CAAA,OAAA,CAAA,kBAAA;;;;cAKb,cAAA,GAAc,KAAA;;IAazB,+BAAA,CAAA,SAAA;;AAlBF;;KAuBY,WAAA,GAAc,YAAA,QAAoB,cAAA,IAC5C,IAAA,CAAK,aAAA,iCACL,iBAAA;EACE,KAAA,GAAQ,OAAA;EACR,UAAA,GAAa,OAAA,CAAQ,sBAAA;EACrB,QAAA,IAAY,KAAA,EAAO,iBAAA;EACnB,MAAA,IAAU,KAAA,EAAO,iBAAA;EACjB,QAAA;EACA,SAAA;AAAA;AAAA,iBAGY,QAAA,CAAA;EACd,KAAA;EACA,UAAA;EACA,QAAA;EACA,MAAA;EACA,QAAA;EACA,OAAA;EACA,SAAA;EACA,QAAA;EACA;AAAA,GACC,WAAA,GAAW,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor.client.mjs","names":["Editor"],"sources":["../../../../src/components/editor/components/editor.client.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type Content,\n type Editor as TiptapEditor,\n type EditorOptions as TiptapEditorOptions,\n useEditor,\n} from \"@tiptap/react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { createContext, type PropsWithChildren } from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\nimport {\n type EditorExtensionsConfig,\n type EditorExtensionsConfigResult,\n editorExtensionsConfigToExtensions,\n flattenEditorExtensionsConfig,\n} from \"../lib/extensions\";\nimport type { EditorJSONContent } from \"../lib/types\";\nimport { editorImageVariants, editorProseVariants } from \"../lib/variants\";\n\n/**\n * Editor context\n */\ntype EditorContextValue = {\n editor: TiptapEditor;\n extensions: EditorExtensionsConfigResult;\n};\n\nexport const EditorContext = createContext({} as EditorContextValue);\n\n/**\n * Editor variants\n */\nexport const editorVariants = cva(\"\", {\n variants: {\n variant: {\n default:\n \"border-input rounded-lg border [&_.editor-content]:p-3 [&_.editor-content[contenteditable='false']]:pointer-events-none [&_.editor-content[contenteditable='false']]:cursor-not-allowed [&_.editor-content[contenteditable='false']]:opacity-50\",\n table:\n \"[&_.editor-content[contenteditable='false']]:pointer-events-none [&_.editor-content[contenteditable='false']]:cursor-not-allowed [&_.editor-content[contenteditable='false']]:opacity-50\",\n preview: \"bg-transparent [&_.editor-content]:p-0 [&_.editor-content]:min-h-0\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n});\n\n/**\n * Editor context provider\n */\nexport type EditorProps = VariantProps<typeof editorVariants> &\n Pick<TiptapEditorOptions[\"editorProps\"], \"attributes\"> &\n PropsWithChildren<{\n value?: Content;\n extensions?: Partial<EditorExtensionsConfig>;\n onUpdate?: (value: EditorJSONContent) => void;\n onBlur?: (value: EditorJSONContent) => void;\n disabled?: boolean;\n className?: string;\n }>;\n\nexport function Editor({\n value,\n extensions,\n onUpdate,\n onBlur,\n disabled,\n variant,\n className,\n children,\n attributes,\n}: EditorProps) {\n const editor = useEditor({\n extensions: editorExtensionsConfigToExtensions(extensions),\n content: value,\n onUpdate: ({ editor }) => onUpdate?.(editor.getJSON()),\n onBlur: ({ editor }) => onBlur?.(editor.getJSON()),\n editable: !disabled,\n injectCSS: false,\n immediatelyRender: false,\n editorProps: {\n transformPastedHTML: (html) => html.replace(/<img.*?>/g, \"\"),\n attributes: {\n ...attributes,\n class: cn(\n \"editor-content text-sm max-w-full focus:outline-none\",\n editorProseVariants(),\n editorImageVariants(),\n className,\n ),\n },\n },\n });\n\n if (!editor) return null;\n\n return (\n <EditorContext.Provider\n value={{\n editor,\n extensions: flattenEditorExtensionsConfig(extensions),\n }}\n >\n <div className={editorVariants({ variant })}>{children}</div>\n </EditorContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;;AA4BA,MAAa,gBAAgB,cAAc,EAAE,CAAuB;;;;AAKpE,MAAa,iBAAiB,IAAI,IAAI;CACpC,UAAU,EACR,SAAS;EACP,SACE;EACF,OACE;EACF,SAAS;EACV,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CAAC;AAgBF,SAAgBA,SAAO,EACrB,OACA,YACA,UACA,QACA,UACA,SACA,WACA,UACA,cACc;CACd,MAAM,SAAS,UAAU;EACvB,YAAY,mCAAmC,WAAW;EAC1D,SAAS;EACT,WAAW,EAAE,aAAa,WAAW,OAAO,SAAS,CAAC;EACtD,SAAS,EAAE,aAAa,SAAS,OAAO,SAAS,CAAC;EAClD,UAAU,CAAC;EACX,WAAW;EACX,mBAAmB;EACnB,aAAa;GACX,sBAAsB,SAAS,KAAK,QAAQ,aAAa,GAAG;GAC5D,YAAY;IACV,GAAG;IACH,OAAO,GACL,wDACA,qBAAqB,EACrB,qBAAqB,EACrB,UACD;IACF;GACF;EACF,CAAC;AAEF,KAAI,CAAC,OAAQ,QAAO;AAEpB,QACE,oBAAC,cAAc;EACb,OAAO;GACL;GACA,YAAY,8BAA8B,WAAW;GACtD;YAED,oBAAC;GAAI,WAAW,eAAe,EAAE,SAAS,CAAC;GAAG;IAAe;GACtC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"menu-nodes.client.mjs","names":[],"sources":["../../../../src/components/editor/components/menu-nodes.client.tsx"],"sourcesContent":["import type { Editor } from \"@tiptap/react\";\nimport {\n ChevronDown,\n Heading1Icon,\n Heading2Icon,\n Heading3Icon,\n Heading4Icon,\n Heading5Icon,\n ListIcon,\n ListOrderedIcon,\n TextIcon,\n} from \"lucide-react\";\nimport { useContext } from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@/components/ui/dropdown-menu.client\";\nimport type { EditorExtensionsConfigResult } from \"../lib/extensions\";\nimport { EditorContext } from \"./editor.client\";\n\nconst blocks = [\n {\n label: \"Paragraaf\",\n icon: TextIcon,\n selected: (editor: Editor) => editor.isActive(\"paragraph\"),\n handler: (editor: Editor) => editor.commands.setParagraph(),\n hidden: (extensions: EditorExtensionsConfigResult) => !extensions.paragraph,\n },\n {\n label: \"Titel 1\",\n icon: Heading1Icon,\n selected: (editor: Editor) => editor.isActive(\"heading\", { level: 1 }),\n handler: (editor: Editor) => editor.commands.setHeading({ level: 1 }),\n hidden: (extensions: EditorExtensionsConfigResult) => !extensions.heading,\n },\n {\n label: \"Titel 2\",\n icon: Heading2Icon,\n selected: (editor: Editor) => editor.isActive(\"heading\", { level: 2 }),\n handler: (editor: Editor) => editor.commands.setHeading({ level: 2 }),\n hidden: (extensions: EditorExtensionsConfigResult) => !extensions.heading,\n },\n {\n label: \"Titel 3\",\n icon: Heading3Icon,\n selected: (editor: Editor) => editor.isActive(\"heading\", { level: 3 }),\n handler: (editor: Editor) => editor.commands.setHeading({ level: 3 }),\n hidden: (extensions: EditorExtensionsConfigResult) => !extensions.heading,\n },\n {\n label: \"Titel 4\",\n icon: Heading4Icon,\n selected: (editor: Editor) => editor.isActive(\"heading\", { level: 4 }),\n handler: (editor: Editor) => editor.commands.setHeading({ level: 4 }),\n hidden: (extensions: EditorExtensionsConfigResult) => !extensions.heading,\n },\n {\n label: \"Titel 5\",\n icon: Heading5Icon,\n selected: (editor: Editor) => editor.isActive(\"heading\", { level: 5 }),\n handler: (editor: Editor) => editor.commands.setHeading({ level: 5 }),\n hidden: (extensions: EditorExtensionsConfigResult) => !extensions.heading,\n },\n {\n label: \"Numbered List\",\n icon: ListOrderedIcon,\n selected: (editor: Editor) => editor.isActive(\"orderedList\"),\n handler: (editor: Editor) => editor.commands.toggleOrderedList(),\n hidden: (extensions: EditorExtensionsConfigResult) => !extensions.orderedList,\n },\n {\n label: \"Bulleted List\",\n icon: ListIcon,\n selected: (editor: Editor) => editor.isActive(\"bulletList\"),\n handler: (editor: Editor) => editor.commands.toggleBulletList(),\n hidden: (extensions: EditorExtensionsConfigResult) => !extensions.bulletList,\n },\n];\n\nexport function EditorMenuNodes() {\n const { editor, extensions } = useContext(EditorContext);\n\n const selectedBlock = blocks.find((block) => block.selected(editor));\n const Icon = selectedBlock?.icon;\n\n const filteredBlocks = blocks.filter((block) => !block.hidden(extensions));\n\n if (filteredBlocks.length === 0) return null;\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" size=\"sm\" className=\"flex items-center gap-8 p-2\">\n <span className=\"flex items-center gap-2\">\n {Icon && <Icon className=\"size-3.5\" />}\n {selectedBlock?.label ?? \"Select a block\"}\n </span>\n\n <ChevronDown className=\"size-3.5\" />\n </Button>\n </DropdownMenuTrigger>\n\n <DropdownMenuContent>\n {filteredBlocks.map(({ label, icon: Icon, handler }) => (\n <DropdownMenuItem\n key={label}\n onClick={() => handler(editor)}\n className=\"flex items-center gap-2\"\n >\n {Icon && <Icon className=\"size-3.5\" />}\n {label}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n );\n}\n"],"mappings":";;;;;;;;AAuBA,MAAM,SAAS;CACb;EACE,OAAO;EACP,MAAM;EACN,WAAW,WAAmB,OAAO,SAAS,YAAY;EAC1D,UAAU,WAAmB,OAAO,SAAS,cAAc;EAC3D,SAAS,eAA6C,CAAC,WAAW;EACnE;CACD;EACE,OAAO;EACP,MAAM;EACN,WAAW,WAAmB,OAAO,SAAS,WAAW,EAAE,OAAO,GAAG,CAAC;EACtE,UAAU,WAAmB,OAAO,SAAS,WAAW,EAAE,OAAO,GAAG,CAAC;EACrE,SAAS,eAA6C,CAAC,WAAW;EACnE;CACD;EACE,OAAO;EACP,MAAM;EACN,WAAW,WAAmB,OAAO,SAAS,WAAW,EAAE,OAAO,GAAG,CAAC;EACtE,UAAU,WAAmB,OAAO,SAAS,WAAW,EAAE,OAAO,GAAG,CAAC;EACrE,SAAS,eAA6C,CAAC,WAAW;EACnE;CACD;EACE,OAAO;EACP,MAAM;EACN,WAAW,WAAmB,OAAO,SAAS,WAAW,EAAE,OAAO,GAAG,CAAC;EACtE,UAAU,WAAmB,OAAO,SAAS,WAAW,EAAE,OAAO,GAAG,CAAC;EACrE,SAAS,eAA6C,CAAC,WAAW;EACnE;CACD;EACE,OAAO;EACP,MAAM;EACN,WAAW,WAAmB,OAAO,SAAS,WAAW,EAAE,OAAO,GAAG,CAAC;EACtE,UAAU,WAAmB,OAAO,SAAS,WAAW,EAAE,OAAO,GAAG,CAAC;EACrE,SAAS,eAA6C,CAAC,WAAW;EACnE;CACD;EACE,OAAO;EACP,MAAM;EACN,WAAW,WAAmB,OAAO,SAAS,WAAW,EAAE,OAAO,GAAG,CAAC;EACtE,UAAU,WAAmB,OAAO,SAAS,WAAW,EAAE,OAAO,GAAG,CAAC;EACrE,SAAS,eAA6C,CAAC,WAAW;EACnE;CACD;EACE,OAAO;EACP,MAAM;EACN,WAAW,WAAmB,OAAO,SAAS,cAAc;EAC5D,UAAU,WAAmB,OAAO,SAAS,mBAAmB;EAChE,SAAS,eAA6C,CAAC,WAAW;EACnE;CACD;EACE,OAAO;EACP,MAAM;EACN,WAAW,WAAmB,OAAO,SAAS,aAAa;EAC3D,UAAU,WAAmB,OAAO,SAAS,kBAAkB;EAC/D,SAAS,eAA6C,CAAC,WAAW;EACnE;CACF;AAED,SAAgB,kBAAkB;CAChC,MAAM,EAAE,QAAQ,eAAe,WAAW,cAAc;CAExD,MAAM,gBAAgB,OAAO,MAAM,UAAU,MAAM,SAAS,OAAO,CAAC;CACpE,MAAM,OAAO,eAAe;CAE5B,MAAM,iBAAiB,OAAO,QAAQ,UAAU,CAAC,MAAM,OAAO,WAAW,CAAC;AAE1E,KAAI,eAAe,WAAW,EAAG,QAAO;AAExC,QACE,qBAAC,2BACC,oBAAC;EAAoB;YACnB,qBAAC;GAAO,SAAQ;GAAU,MAAK;GAAK,WAAU;cAC5C,qBAAC;IAAK,WAAU;eACb,QAAQ,oBAAC,QAAK,WAAU,aAAa,EACrC,eAAe,SAAS;KACpB,EAEP,oBAAC,eAAY,WAAU,aAAa;IAC7B;GACW,EAEtB,oBAAC,iCACE,eAAe,KAAK,EAAE,OAAO,MAAM,MAAM,cACxC,qBAAC;EAEC,eAAe,QAAQ,OAAO;EAC9B,WAAU;aAET,QAAQ,oBAAC,QAAK,WAAU,aAAa,EACrC;IALI,MAMY,CACnB,GACkB,IACT"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"menu.client.d.mts","names":[],"sources":["../../../../src/components/editor/components/menu.client.tsx"],"mappings":";;;;;iBAoBgB,eAAA,CAAgB,KAAA,EAAO,KAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAgBlD,gBAAA,CAAiB,KAAA,EAAO,cAAA,QAAsB,UAAA,IAAW,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"menu.client.mjs","names":[],"sources":["../../../../src/components/editor/components/menu.client.tsx"],"sourcesContent":["import { BubbleMenu } from \"@tiptap/react/menus\";\nimport {\n BaselineIcon,\n BoldIcon,\n EraserIcon,\n ItalicIcon,\n PaintBucketIcon,\n RedoIcon,\n StrikethroughIcon,\n UnderlineIcon,\n UndoIcon,\n} from \"lucide-react\";\nimport { type ComponentProps, type PropsWithChildren, useContext } from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { ColorPicker } from \"@/components/ui/color-picker.client\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover.client\";\nimport { cn } from \"@/lib/entry\";\nimport { EditorContext } from \"./editor.client\";\nimport { EditorMenuNodes } from \"./menu-nodes.client\";\n\nexport function EditorMenuFixed(props: React.ComponentProps<\"div\">) {\n return (\n <div\n {...props}\n className={cn(\"z-10 overflow-auto border-input border-b bg-muted/30 p-2\", props.className)}\n >\n <EditorMenuContent>\n <EditorMenuUndoRedo />\n <EditorMenuNodes />\n <EditorMenuMarks />\n <EditorMenuColor />\n </EditorMenuContent>\n </div>\n );\n}\n\nexport function EditorMenuBubble(props: ComponentProps<typeof BubbleMenu>) {\n const { editor } = useContext(EditorContext);\n\n return (\n <BubbleMenu\n {...props}\n editor={editor}\n options={{ ...props.options, strategy: \"fixed\" }}\n className={cn(\"z-10 rounded-lg border border-input bg-muted p-2\", props.className)}\n >\n <EditorMenuContent>\n <EditorMenuMarks />\n </EditorMenuContent>\n </BubbleMenu>\n );\n}\n\nfunction EditorMenuContent(props: PropsWithChildren) {\n return <div className=\"flex items-center gap-6\">{props.children}</div>;\n}\n\n/**\n * Editor menu undo/redo\n */\nfunction EditorMenuUndoRedo() {\n const { editor, extensions } = useContext(EditorContext);\n\n if (!extensions.undoRedo) return null;\n\n return (\n <div className=\"flex items-center gap-1\">\n <Button\n onClick={() => editor.commands.undo()}\n disabled={!editor?.can().undo()}\n type=\"button\"\n aria-label=\"Undo\"\n size=\"icon\"\n className=\"p-2\"\n variant=\"outline\"\n >\n <UndoIcon className=\"size-3.5\" />\n </Button>\n\n <Button\n onClick={() => editor.commands.redo()}\n disabled={!editor?.can().redo()}\n type=\"button\"\n aria-label=\"Redo\"\n size=\"icon\"\n className=\"p-2\"\n variant=\"outline\"\n >\n <RedoIcon className=\"size-3.5\" />\n </Button>\n </div>\n );\n}\n\n/**\n * Editor menu marks\n */\nfunction EditorMenuMarks() {\n const { editor, extensions } = useContext(EditorContext);\n\n if (!extensions.bold && !extensions.italic && !extensions.underline && !extensions.strike) {\n return null;\n }\n\n return (\n <div className=\"flex items-center gap-1\">\n {extensions.bold && (\n <Button\n type=\"button\"\n size=\"icon\"\n variant={editor?.isActive(\"bold\") ? \"secondary\" : \"outline\"}\n onClick={() => editor.chain().focus().toggleBold().run()}\n className=\"border\"\n >\n <BoldIcon className=\"h-3.5 w-3.5\" />\n </Button>\n )}\n\n {extensions.italic && (\n <Button\n type=\"button\"\n size=\"icon\"\n variant={editor?.isActive(\"italic\") ? \"secondary\" : \"outline\"}\n onClick={() => editor.chain().focus().toggleItalic().run()}\n className=\"border\"\n >\n <ItalicIcon className=\"size-3.5\" />\n </Button>\n )}\n\n {extensions.underline && (\n <Button\n type=\"button\"\n size=\"icon\"\n variant={editor?.isActive(\"underline\") ? \"secondary\" : \"outline\"}\n onClick={() => editor.chain().focus().toggleUnderline().run()}\n className=\"border\"\n >\n <UnderlineIcon className=\"size-3.5\" />\n </Button>\n )}\n\n {extensions.strike && (\n <Button\n type=\"button\"\n size=\"icon\"\n variant={editor?.isActive(\"strike\") ? \"secondary\" : \"outline\"}\n onClick={() => editor.chain().focus().toggleStrike().run()}\n className=\"border\"\n >\n <StrikethroughIcon className=\"size-3.5\" />\n </Button>\n )}\n </div>\n );\n}\n\n/**\n * Editor menu alignment\n */\nfunction EditorMenuColor() {\n const { editor, extensions } = useContext(EditorContext);\n\n if (!extensions.color && !extensions.highlight) {\n return null;\n }\n\n return (\n <div className=\"flex items-center gap-1\">\n {extensions.color && (\n <Popover>\n <PopoverTrigger asChild>\n <Button size=\"icon\" variant=\"outline\">\n <BaselineIcon className=\"size-3.5\" />\n </Button>\n </PopoverTrigger>\n\n <PopoverContent className=\"w-fit p-0\">\n <ColorPicker onValueChange={(color) => editor.chain().focus().setColor(color).run()} />\n </PopoverContent>\n </Popover>\n )}\n\n {extensions.highlight && (\n <Popover>\n <PopoverTrigger asChild>\n <Button size=\"icon\" variant=\"outline\" disabled={!editor?.can().setHighlight()}>\n <PaintBucketIcon className=\"size-3.5\" />\n </Button>\n </PopoverTrigger>\n\n <PopoverContent className=\"w-fit p-0\">\n <ColorPicker\n onValueChange={(color) => editor.chain().focus().setHighlight({ color }).run()}\n />\n </PopoverContent>\n </Popover>\n )}\n\n <Button\n type=\"button\"\n size=\"icon\"\n variant=\"outline\"\n className=\"border\"\n onClick={() => {\n editor.commands.unsetColor();\n editor.commands.unsetHighlight();\n }}\n >\n <EraserIcon className=\"h-4 w-4\" />\n </Button>\n </div>\n );\n}\n\n/**\n * Editor menu image\n */\n// function EditorMenuImage() {\n// const { editor, extensions } = useContext(EditorContext);\n\n// if (!extensions.image) return null;\n\n// return (\n// <div className=\"flex items-center gap-1\">\n// {extensions.image && (\n// <Button\n// type=\"button\"\n// size=\"icon\"\n// variant=\"outline\"\n// onClick={() => editor.chain().focus().downloadImage().run()}\n// disabled={!editor?.can().downloadImage()}\n// className=\"border\"\n// >\n// <DownloadIcon className=\"size-3.5\" />\n// </Button>\n// )}\n// </div>\n// );\n// }\n"],"mappings":";;;;;;;;;;;;AAoBA,SAAgB,gBAAgB,OAAoC;AAClE,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,GAAG,4DAA4D,MAAM,UAAU;YAE1F,qBAAC;GACC,oBAAC,uBAAqB;GACtB,oBAAC,oBAAkB;GACnB,oBAAC,oBAAkB;GACnB,oBAAC,oBAAkB;MACD;GAChB;;AAIV,SAAgB,iBAAiB,OAA0C;CACzE,MAAM,EAAE,WAAW,WAAW,cAAc;AAE5C,QACE,oBAAC;EACC,GAAI;EACI;EACR,SAAS;GAAE,GAAG,MAAM;GAAS,UAAU;GAAS;EAChD,WAAW,GAAG,oDAAoD,MAAM,UAAU;YAElF,oBAAC,+BACC,oBAAC,oBAAkB,GACD;GACT;;AAIjB,SAAS,kBAAkB,OAA0B;AACnD,QAAO,oBAAC;EAAI,WAAU;YAA2B,MAAM;GAAe;;;;;AAMxE,SAAS,qBAAqB;CAC5B,MAAM,EAAE,QAAQ,eAAe,WAAW,cAAc;AAExD,KAAI,CAAC,WAAW,SAAU,QAAO;AAEjC,QACE,qBAAC;EAAI,WAAU;aACb,oBAAC;GACC,eAAe,OAAO,SAAS,MAAM;GACrC,UAAU,CAAC,QAAQ,KAAK,CAAC,MAAM;GAC/B,MAAK;GACL,cAAW;GACX,MAAK;GACL,WAAU;GACV,SAAQ;aAER,oBAAC,YAAS,WAAU,aAAa;IAC1B,EAET,oBAAC;GACC,eAAe,OAAO,SAAS,MAAM;GACrC,UAAU,CAAC,QAAQ,KAAK,CAAC,MAAM;GAC/B,MAAK;GACL,cAAW;GACX,MAAK;GACL,WAAU;GACV,SAAQ;aAER,oBAAC,YAAS,WAAU,aAAa;IAC1B;GACL;;;;;AAOV,SAAS,kBAAkB;CACzB,MAAM,EAAE,QAAQ,eAAe,WAAW,cAAc;AAExD,KAAI,CAAC,WAAW,QAAQ,CAAC,WAAW,UAAU,CAAC,WAAW,aAAa,CAAC,WAAW,OACjF,QAAO;AAGT,QACE,qBAAC;EAAI,WAAU;;GACZ,WAAW,QACV,oBAAC;IACC,MAAK;IACL,MAAK;IACL,SAAS,QAAQ,SAAS,OAAO,GAAG,cAAc;IAClD,eAAe,OAAO,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK;IACxD,WAAU;cAEV,oBAAC,YAAS,WAAU,gBAAgB;KAC7B;GAGV,WAAW,UACV,oBAAC;IACC,MAAK;IACL,MAAK;IACL,SAAS,QAAQ,SAAS,SAAS,GAAG,cAAc;IACpD,eAAe,OAAO,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK;IAC1D,WAAU;cAEV,oBAAC,cAAW,WAAU,aAAa;KAC5B;GAGV,WAAW,aACV,oBAAC;IACC,MAAK;IACL,MAAK;IACL,SAAS,QAAQ,SAAS,YAAY,GAAG,cAAc;IACvD,eAAe,OAAO,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK;IAC7D,WAAU;cAEV,oBAAC,iBAAc,WAAU,aAAa;KAC/B;GAGV,WAAW,UACV,oBAAC;IACC,MAAK;IACL,MAAK;IACL,SAAS,QAAQ,SAAS,SAAS,GAAG,cAAc;IACpD,eAAe,OAAO,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK;IAC1D,WAAU;cAEV,oBAAC,qBAAkB,WAAU,aAAa;KACnC;;GAEP;;;;;AAOV,SAAS,kBAAkB;CACzB,MAAM,EAAE,QAAQ,eAAe,WAAW,cAAc;AAExD,KAAI,CAAC,WAAW,SAAS,CAAC,WAAW,UACnC,QAAO;AAGT,QACE,qBAAC;EAAI,WAAU;;GACZ,WAAW,SACV,qBAAC,sBACC,oBAAC;IAAe;cACd,oBAAC;KAAO,MAAK;KAAO,SAAQ;eAC1B,oBAAC,gBAAa,WAAU,aAAa;MAC9B;KACM,EAEjB,oBAAC;IAAe,WAAU;cACxB,oBAAC,eAAY,gBAAgB,UAAU,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,MAAM,CAAC,KAAK,GAAI;KACxE,IACT;GAGX,WAAW,aACV,qBAAC,sBACC,oBAAC;IAAe;cACd,oBAAC;KAAO,MAAK;KAAO,SAAQ;KAAU,UAAU,CAAC,QAAQ,KAAK,CAAC,cAAc;eAC3E,oBAAC,mBAAgB,WAAU,aAAa;MACjC;KACM,EAEjB,oBAAC;IAAe,WAAU;cACxB,oBAAC,eACC,gBAAgB,UAAU,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,KAAK,GAC9E;KACa,IACT;GAGZ,oBAAC;IACC,MAAK;IACL,MAAK;IACL,SAAQ;IACR,WAAU;IACV,eAAe;AACb,YAAO,SAAS,YAAY;AAC5B,YAAO,SAAS,gBAAgB;;cAGlC,oBAAC,cAAW,WAAU,YAAY;KAC3B;;GACL"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"extension.d.mts","names":[],"sources":["../../../../../src/components/editor/extensions/file-handler/extension.ts"],"mappings":";;;;UASiB,oBAAA,SAA2B,kBAAA;;;AAA5C;;;EAME,kBAAA,IAAsB,OAAA;EANoB;;;;;EAa1C,gBAAA,IAAoB,OAAA;AAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"extension.mjs","names":["FileHandler","TiptapFileHandler"],"sources":["../../../../../src/components/editor/extensions/file-handler/extension.ts"],"sourcesContent":["\"use client\";\n\nimport {\n FileHandler as TiptapFileHandler,\n type FileHandlerOptions as TiptapFileHandlerOptions,\n} from \"@tiptap/extension-file-handler\";\nimport { Plugin, PluginKey } from \"@tiptap/pm/state\";\nimport { collectImageIds, diffIds } from \"./utils\";\n\nexport interface FileHandlerOptions extends TiptapFileHandlerOptions {\n /**\n * Callback function invoked when a image reference is removed from the editor. Receives the node ID of the removed node.\n * @type {(assetId: string) => void}\n * @default undefined\n **/\n onReferenceRemoved?: (assetId: string) => void;\n\n /**\n * Callback function invoked when a image reference is added to the editor. Receives the node ID of the added node.\n * @type {(assetId: string) => void}\n * @default undefined\n **/\n onReferenceAdded?: (assetId: string) => void;\n}\n\n/**\n * File Handler extension for Tiptap Editor\n */\nexport const FileHandler = TiptapFileHandler.extend<FileHandlerOptions>({\n addOptions() {\n return {\n ...this.parent?.(),\n onReferenceRemoved: undefined,\n onReferenceAdded: undefined,\n };\n },\n addProseMirrorPlugins() {\n const parent = this.parent?.() ?? [];\n const key = new PluginKey(\"fileHandlerItemTracker\");\n\n return [\n ...parent,\n new Plugin({\n key,\n appendTransaction: (trs, oldState, newState) => {\n if (!trs.some((tr) => tr.docChanged)) return null;\n\n const onReferenceRemoved = this.options.onReferenceRemoved;\n const onReferenceAdded = this.options.onReferenceAdded;\n if (!onReferenceRemoved && !onReferenceAdded) return null;\n\n const before = collectImageIds(oldState.doc);\n const after = collectImageIds(newState.doc);\n const { removed, added } = diffIds(before, after);\n\n for (const id of removed) {\n onReferenceRemoved?.(id);\n }\n\n for (const id of added) {\n onReferenceAdded?.(id);\n }\n\n return null;\n },\n }),\n ];\n },\n});\n"],"mappings":";;;;;;;;;;AA4BA,MAAaA,gBAAcC,YAAkB,OAA2B;CACtE,aAAa;AACX,SAAO;GACL,GAAG,KAAK,UAAU;GAClB,oBAAoB;GACpB,kBAAkB;GACnB;;CAEH,wBAAwB;EACtB,MAAM,SAAS,KAAK,UAAU,IAAI,EAAE;EACpC,MAAM,MAAM,IAAI,UAAU,yBAAyB;AAEnD,SAAO,CACL,GAAG,QACH,IAAI,OAAO;GACT;GACA,oBAAoB,KAAK,UAAU,aAAa;AAC9C,QAAI,CAAC,IAAI,MAAM,OAAO,GAAG,WAAW,CAAE,QAAO;IAE7C,MAAM,qBAAqB,KAAK,QAAQ;IACxC,MAAM,mBAAmB,KAAK,QAAQ;AACtC,QAAI,CAAC,sBAAsB,CAAC,iBAAkB,QAAO;IAIrD,MAAM,EAAE,SAAS,UAAU,QAFZ,gBAAgB,SAAS,IAAI,EAC9B,gBAAgB,SAAS,IAAI,CACM;AAEjD,SAAK,MAAM,MAAM,QACf,sBAAqB,GAAG;AAG1B,SAAK,MAAM,MAAM,MACf,oBAAmB,GAAG;AAGxB,WAAO;;GAEV,CAAC,CACH;;CAEJ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"strategy.d.mts","names":[],"sources":["../../../../../src/components/editor/extensions/file-handler/strategy.ts"],"mappings":";;;;;;;AAIsD;KAKjD,oCAAA;EACH,SAAA,EAAW,IAAA,CAAK,kBAAA;EAChB,YAAA,EAAc,YAAA;EACd,WAAA,GAAc,WAAA;EACd,gBAAA;EACA,iBAAA,IAAqB,KAAA,EAAO,YAAA,KAAiB,OAAA;EAC7C,cAAA,IAAkB,KAAA,cAAmB,OAAA;AAAA;AAAA,iBAGvB,+BAAA,CAAA;EACd,SAAA;EACA,YAAA;EACA,WAAA;EACA,iBAAA;EACA,cAAA;EACA;AAAA,GACC,oCAAA,GAAuC,kBAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"strategy.mjs","names":[],"sources":["../../../../../src/components/editor/extensions/file-handler/strategy.ts"],"sourcesContent":["import type { Editor } from \"@tiptap/core\";\nimport { TextSelection } from \"@tiptap/pm/state\";\nimport type { UploadClient, UploadHooks } from \"@/modules/storage/lib/upload.client\";\nimport type { PresignUploadInput, StorageAsset } from \"@/modules/storage/lib/validators\";\nimport type { FileHandlerOptions } from \"./extension\";\n\n/**\n * Handle File Handler props\n */\ntype CreateFileHandlerUploadStrategyProps = {\n variables: Pick<PresignUploadInput, \"visibility\" | \"metadata\">;\n uploadClient: UploadClient;\n uploadHooks?: UploadHooks;\n allowedMimeTypes?: string[];\n onUploadCompleted?: (asset: StorageAsset) => Promise<void> | void;\n onUploadFailed?: (error: unknown) => Promise<void> | void;\n};\n\nexport function createFileHandlerUploadStrategy({\n variables,\n uploadClient,\n uploadHooks,\n onUploadCompleted,\n onUploadFailed,\n allowedMimeTypes,\n}: CreateFileHandlerUploadStrategyProps): FileHandlerOptions {\n const handleUpload = async (editor: Editor, files: File[], startPos: number) => {\n const insertPos = startPos;\n\n for (const file of files) {\n /**\n * Prepare upload\n */\n const input = uploadClient.prepareUpload({ file, ...variables });\n\n const imageType = editor.schema.nodes.image;\n if (!imageType) {\n console.error(\"Image type not found\");\n return;\n }\n\n try {\n /**\n * Create skeleton node\n */\n const skeletonNode = editor.schema.nodes.skeleton?.create({\n imageNodeId: input.uploadId,\n width: 500,\n height: 500,\n });\n\n /**\n * Insert skeleton node into the document\n */\n if (skeletonNode) {\n const tr = editor.state.tr.insert(insertPos, skeletonNode);\n tr.setSelection(TextSelection.create(tr.doc, insertPos + skeletonNode.nodeSize));\n tr.setMeta(\"addToHistory\", false);\n editor.view.dispatch(tr);\n }\n\n /**\n * Upload the file\n */\n const asset = await uploadClient.upload(input, uploadHooks);\n\n /**\n * Replace skeleton with image node\n */\n const replacedTr = editor.state.tr;\n let replaced = false;\n\n replacedTr.doc.descendants((node, pos) => {\n if (node.type.name === \"skeleton\" && node.attrs?.imageNodeId === input.uploadId) {\n const imageNode = imageType.create({\n assetId: asset.id,\n alt: file.name,\n fileName: file.name,\n width: node.attrs.width ?? 500,\n });\n\n replacedTr.replaceWith(pos, pos + node.nodeSize, imageNode);\n replaced = true;\n return false;\n }\n });\n\n if (replaced) {\n editor.view.dispatch(replacedTr);\n } else {\n // In case skeleton is not found, insert the image node at the original position\n const tr = editor.state.tr;\n const imageNode = imageType.create({\n assetId: asset.id,\n alt: file.name,\n fileName: file.name,\n width: 500,\n });\n tr.insert(insertPos, imageNode);\n editor.view.dispatch(tr);\n }\n\n await onUploadCompleted?.(asset);\n } catch (err) {\n console.error(\"Upload error:\", err);\n\n /**\n * Remove the pending image node from the document\n */\n const tr = editor.state.tr;\n tr.doc.descendants((node, pos) => {\n if (node.type.name === \"skeleton\" && node.attrs?.imageNodeId === input.uploadId) {\n tr.delete(pos, pos + node.nodeSize);\n return false;\n }\n });\n editor.view.dispatch(tr);\n\n await onUploadFailed?.(err);\n }\n }\n };\n\n return {\n allowedMimeTypes,\n onDrop: async (editor, files, pos) => {\n await handleUpload(editor, files, pos);\n },\n onPaste: async (editor, files, htmlContent) => {\n if (htmlContent?.length) return;\n\n const startPos = editor.state.selection.anchor;\n await handleUpload(editor, files, startPos);\n },\n onReferenceRemoved: async (assetId) => {\n await uploadClient.deleteAsset(assetId);\n },\n onReferenceAdded: async (assetId) => {\n await uploadClient.restoreAsset(assetId);\n },\n };\n}\n"],"mappings":";;;AAkBA,SAAgB,gCAAgC,EAC9C,WACA,cACA,aACA,mBACA,gBACA,oBAC2D;CAC3D,MAAM,eAAe,OAAO,QAAgB,OAAe,aAAqB;EAC9E,MAAM,YAAY;AAElB,OAAK,MAAM,QAAQ,OAAO;;;;GAIxB,MAAM,QAAQ,aAAa,cAAc;IAAE;IAAM,GAAG;IAAW,CAAC;GAEhE,MAAM,YAAY,OAAO,OAAO,MAAM;AACtC,OAAI,CAAC,WAAW;AACd,YAAQ,MAAM,uBAAuB;AACrC;;AAGF,OAAI;;;;IAIF,MAAM,eAAe,OAAO,OAAO,MAAM,UAAU,OAAO;KACxD,aAAa,MAAM;KACnB,OAAO;KACP,QAAQ;KACT,CAAC;;;;AAKF,QAAI,cAAc;KAChB,MAAM,KAAK,OAAO,MAAM,GAAG,OAAO,WAAW,aAAa;AAC1D,QAAG,aAAa,cAAc,OAAO,GAAG,KAAK,YAAY,aAAa,SAAS,CAAC;AAChF,QAAG,QAAQ,gBAAgB,MAAM;AACjC,YAAO,KAAK,SAAS,GAAG;;;;;IAM1B,MAAM,QAAQ,MAAM,aAAa,OAAO,OAAO,YAAY;;;;IAK3D,MAAM,aAAa,OAAO,MAAM;IAChC,IAAI,WAAW;AAEf,eAAW,IAAI,aAAa,MAAM,QAAQ;AACxC,SAAI,KAAK,KAAK,SAAS,cAAc,KAAK,OAAO,gBAAgB,MAAM,UAAU;MAC/E,MAAM,YAAY,UAAU,OAAO;OACjC,SAAS,MAAM;OACf,KAAK,KAAK;OACV,UAAU,KAAK;OACf,OAAO,KAAK,MAAM,SAAS;OAC5B,CAAC;AAEF,iBAAW,YAAY,KAAK,MAAM,KAAK,UAAU,UAAU;AAC3D,iBAAW;AACX,aAAO;;MAET;AAEF,QAAI,SACF,QAAO,KAAK,SAAS,WAAW;SAC3B;KAEL,MAAM,KAAK,OAAO,MAAM;KACxB,MAAM,YAAY,UAAU,OAAO;MACjC,SAAS,MAAM;MACf,KAAK,KAAK;MACV,UAAU,KAAK;MACf,OAAO;MACR,CAAC;AACF,QAAG,OAAO,WAAW,UAAU;AAC/B,YAAO,KAAK,SAAS,GAAG;;AAG1B,UAAM,oBAAoB,MAAM;YACzB,KAAK;AACZ,YAAQ,MAAM,iBAAiB,IAAI;;;;IAKnC,MAAM,KAAK,OAAO,MAAM;AACxB,OAAG,IAAI,aAAa,MAAM,QAAQ;AAChC,SAAI,KAAK,KAAK,SAAS,cAAc,KAAK,OAAO,gBAAgB,MAAM,UAAU;AAC/E,SAAG,OAAO,KAAK,MAAM,KAAK,SAAS;AACnC,aAAO;;MAET;AACF,WAAO,KAAK,SAAS,GAAG;AAExB,UAAM,iBAAiB,IAAI;;;;AAKjC,QAAO;EACL;EACA,QAAQ,OAAO,QAAQ,OAAO,QAAQ;AACpC,SAAM,aAAa,QAAQ,OAAO,IAAI;;EAExC,SAAS,OAAO,QAAQ,OAAO,gBAAgB;AAC7C,OAAI,aAAa,OAAQ;GAEzB,MAAM,WAAW,OAAO,MAAM,UAAU;AACxC,SAAM,aAAa,QAAQ,OAAO,SAAS;;EAE7C,oBAAoB,OAAO,YAAY;AACrC,SAAM,aAAa,YAAY,QAAQ;;EAEzC,kBAAkB,OAAO,YAAY;AACnC,SAAM,aAAa,aAAa,QAAQ;;EAE3C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.mjs","names":[],"sources":["../../../../../src/components/editor/extensions/file-handler/utils.ts"],"sourcesContent":["import type { Node } from \"@tiptap/pm/model\";\n\n/**\n * Collects and counts all image node IDs from a document.\n *\n * @param doc - The document node to traverse and analyze\n * @returns A Map where keys are image node IDs and values are their occurrence counts\n *\n * @example\n * const imageCounts = collectImageIds(editorDoc);\n * imageCounts.forEach((count, imageId) => {\n * console.info(`Image ${imageId} appears ${count} times`);\n * });\n */\nexport function collectImageIds(doc: Node): Map<string, number> {\n const counts = new Map<string, number>();\n\n doc.descendants((node) => {\n if (node.type.name !== \"image\") return;\n\n const id = node.attrs?.assetId;\n if (!id) return;\n\n counts.set(id, (counts.get(id) ?? 0) + 1);\n });\n\n return counts;\n}\n\n/**\n * Compares two maps of string keys to numeric values and identifies which keys have been removed or restored.\n * @param before - A Map containing the previous state of string keys with their associated numeric values\n * @param after - A Map containing the current state of string keys with their associated numeric values\n * @returns An object containing two arrays:\n * - `removed`: Array of keys where the numeric value decreased (or was deleted)\n * - `restored`: Array of keys where the numeric value increased\n */\nexport function diffIds(before: Map<string, number>, after: Map<string, number>) {\n const removed: string[] = [];\n const added: string[] = [];\n\n const keys = new Set([...before.keys(), ...after.keys()]);\n\n for (const key of keys) {\n const b = before.get(key) ?? 0;\n const a = after.get(key) ?? 0;\n\n if (a < b) removed.push(key);\n if (a > b) added.push(key);\n }\n\n return { removed, added };\n}\n"],"mappings":";;;;;;;;;;;;;AAcA,SAAgB,gBAAgB,KAAgC;CAC9D,MAAM,yBAAS,IAAI,KAAqB;AAExC,KAAI,aAAa,SAAS;AACxB,MAAI,KAAK,KAAK,SAAS,QAAS;EAEhC,MAAM,KAAK,KAAK,OAAO;AACvB,MAAI,CAAC,GAAI;AAET,SAAO,IAAI,KAAK,OAAO,IAAI,GAAG,IAAI,KAAK,EAAE;GACzC;AAEF,QAAO;;;;;;;;;;AAWT,SAAgB,QAAQ,QAA6B,OAA4B;CAC/E,MAAM,UAAoB,EAAE;CAC5B,MAAM,QAAkB,EAAE;CAE1B,MAAM,OAAO,IAAI,IAAI,CAAC,GAAG,OAAO,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,CAAC;AAEzD,MAAK,MAAM,OAAO,MAAM;EACtB,MAAM,IAAI,OAAO,IAAI,IAAI,IAAI;EAC7B,MAAM,IAAI,MAAM,IAAI,IAAI,IAAI;AAE5B,MAAI,IAAI,EAAG,SAAQ,KAAK,IAAI;AAC5B,MAAI,IAAI,EAAG,OAAM,KAAK,IAAI;;AAG5B,QAAO;EAAE;EAAS;EAAO"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"extension.d.mts","names":[],"sources":["../../../../../src/components/editor/extensions/image/extension.ts"],"mappings":";;;;UAQiB,cAAA,SAAqB,YAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"extension.mjs","names":["Image","TiptapImage"],"sources":["../../../../../src/components/editor/extensions/image/extension.ts"],"sourcesContent":["\"use client\";\n\nimport {\n Image as TiptapImage,\n type ImageOptions as TiptapImageOptions,\n} from \"@tiptap/extension-image\";\nimport { getAssetURL } from \"@/modules/storage/entry\";\n\nexport interface ImageOptions extends TiptapImageOptions {}\n\nexport const Image = TiptapImage.extend<ImageOptions>({\n atom: true,\n addAttributes() {\n return {\n ...this.parent?.(),\n // asset id\n assetId: {\n default: null,\n parseHTML: (el) => el.getAttribute(\"data-asset-id\"),\n renderHTML: (attrs) => {\n if (!attrs.assetId) return {};\n return {\n \"data-asset-id\": attrs.assetId,\n ...(attrs.assetId && !attrs.isPending ? { src: getAssetURL(attrs.assetId) } : {}),\n };\n },\n },\n\n // semantics\n alt: { default: null },\n title: { default: null },\n\n // layout stability\n width: { default: null },\n height: { default: null },\n\n // upload UX\n isPending: {\n default: false,\n renderHTML: (attrs) => (attrs.isPending ? { \"data-pending\": \"true\" } : {}),\n },\n fileName: { default: null },\n };\n },\n parseHTML() {\n return [{ tag: \"img[data-asset-id]\" }];\n },\n renderHTML({ HTMLAttributes }) {\n const { src: _, ...attrs } = HTMLAttributes;\n\n const assetId = attrs.assetId as string | null;\n const isPending = Boolean(attrs.isPending);\n\n const src = assetId && !isPending ? getAssetURL(assetId) : null;\n\n return [\"img\", { ...attrs, ...(src ? { src } : {}) }];\n },\n});\n"],"mappings":";;;;;;AAUA,MAAaA,UAAQC,MAAY,OAAqB;CACpD,MAAM;CACN,gBAAgB;AACd,SAAO;GACL,GAAG,KAAK,UAAU;GAElB,SAAS;IACP,SAAS;IACT,YAAY,OAAO,GAAG,aAAa,gBAAgB;IACnD,aAAa,UAAU;AACrB,SAAI,CAAC,MAAM,QAAS,QAAO,EAAE;AAC7B,YAAO;MACL,iBAAiB,MAAM;MACvB,GAAI,MAAM,WAAW,CAAC,MAAM,YAAY,EAAE,KAAK,YAAY,MAAM,QAAQ,EAAE,GAAG,EAAE;MACjF;;IAEJ;GAGD,KAAK,EAAE,SAAS,MAAM;GACtB,OAAO,EAAE,SAAS,MAAM;GAGxB,OAAO,EAAE,SAAS,MAAM;GACxB,QAAQ,EAAE,SAAS,MAAM;GAGzB,WAAW;IACT,SAAS;IACT,aAAa,UAAW,MAAM,YAAY,EAAE,gBAAgB,QAAQ,GAAG,EAAE;IAC1E;GACD,UAAU,EAAE,SAAS,MAAM;GAC5B;;CAEH,YAAY;AACV,SAAO,CAAC,EAAE,KAAK,sBAAsB,CAAC;;CAExC,WAAW,EAAE,kBAAkB;EAC7B,MAAM,EAAE,KAAK,GAAG,GAAG,UAAU;EAE7B,MAAM,UAAU,MAAM;EACtB,MAAM,YAAY,QAAQ,MAAM,UAAU;EAE1C,MAAM,MAAM,WAAW,CAAC,YAAY,YAAY,QAAQ,GAAG;AAE3D,SAAO,CAAC,OAAO;GAAE,GAAG;GAAO,GAAI,MAAM,EAAE,KAAK,GAAG,EAAE;GAAG,CAAC;;CAExD,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"extension.mjs","names":[],"sources":["../../../../../src/components/editor/extensions/skeleton/extension.ts"],"sourcesContent":["\"use client\";\n\nimport { Node } from \"@tiptap/core\";\nimport { ReactNodeViewRenderer } from \"@tiptap/react\";\nimport { SkeletonNodeRenderer } from \"./renderer\";\n\nexport const Skeleton = Node.create({\n name: \"skeleton\",\n atom: true,\n inline: true,\n group: \"inline\",\n selectable: false,\n draggable: false,\n addAttributes() {\n return {\n imageNodeId: { default: null },\n width: { default: null },\n height: { default: null },\n };\n },\n addOptions() {\n return {\n addToHistory: false,\n };\n },\n parseHTML() {\n return [{ tag: \"span[data-skeleton]\" }];\n },\n renderHTML({ HTMLAttributes }) {\n return [\"span\", { ...HTMLAttributes, \"data-skeleton\": \"true\" }];\n },\n addNodeView() {\n return ReactNodeViewRenderer(SkeletonNodeRenderer);\n },\n});\n"],"mappings":";;;;;;;AAMA,MAAa,WAAW,KAAK,OAAO;CAClC,MAAM;CACN,MAAM;CACN,QAAQ;CACR,OAAO;CACP,YAAY;CACZ,WAAW;CACX,gBAAgB;AACd,SAAO;GACL,aAAa,EAAE,SAAS,MAAM;GAC9B,OAAO,EAAE,SAAS,MAAM;GACxB,QAAQ,EAAE,SAAS,MAAM;GAC1B;;CAEH,aAAa;AACX,SAAO,EACL,cAAc,OACf;;CAEH,YAAY;AACV,SAAO,CAAC,EAAE,KAAK,uBAAuB,CAAC;;CAEzC,WAAW,EAAE,kBAAkB;AAC7B,SAAO,CAAC,QAAQ;GAAE,GAAG;GAAgB,iBAAiB;GAAQ,CAAC;;CAEjE,cAAc;AACZ,SAAO,sBAAsB,qBAAqB;;CAErD,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"renderer.mjs","names":[],"sources":["../../../../../src/components/editor/extensions/skeleton/renderer.tsx"],"sourcesContent":["\"use client\";\n\nimport type { Node } from \"@tiptap/pm/model\";\nimport { NodeViewWrapper } from \"@tiptap/react\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\n\nexport function SkeletonNodeRenderer(props: { node: Node }) {\n const { width, height } = props.node.attrs;\n\n return (\n <NodeViewWrapper as=\"span\" data-skeleton=\"true\">\n <Skeleton className=\"min-h-125 w-full\" style={{ width, height }} />\n </NodeViewWrapper>\n );\n}\n"],"mappings":";;;;;;;AAMA,SAAgB,qBAAqB,OAAuB;CAC1D,MAAM,EAAE,OAAO,WAAW,MAAM,KAAK;AAErC,QACE,oBAAC;EAAgB,IAAG;EAAO,iBAAc;YACvC,oBAAC;GAAS,WAAU;GAAmB,OAAO;IAAE;IAAO;IAAQ;IAAI;GACnD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.mts","names":[],"sources":["../../../../src/components/editor/lib/constants.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;cAwBa,iBAAA;;;;iCAoCZ,6BAAA,CAAA,iBAAA;;;;;;;;;;;;;EAAA;;;;;;;;;;;;;;;;;;;;KAEW,gBAAA,UAA0B,iBAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.mjs","names":[],"sources":["../../../../src/components/editor/lib/constants.ts"],"sourcesContent":["import Blockquote from \"@tiptap/extension-blockquote\";\nimport Bold from \"@tiptap/extension-bold\";\nimport Document from \"@tiptap/extension-document\";\nimport HardBreak from \"@tiptap/extension-hard-break\";\nimport Heading from \"@tiptap/extension-heading\";\nimport Highlight from \"@tiptap/extension-highlight\";\nimport HorizontalRule from \"@tiptap/extension-horizontal-rule\";\nimport Italic from \"@tiptap/extension-italic\";\nimport Link from \"@tiptap/extension-link\";\nimport { BulletList, ListItem, ListKeymap, OrderedList } from \"@tiptap/extension-list\";\nimport Paragraph from \"@tiptap/extension-paragraph\";\nimport Strike from \"@tiptap/extension-strike\";\nimport Text from \"@tiptap/extension-text\";\nimport { Color, TextStyle } from \"@tiptap/extension-text-style\";\nimport Underline from \"@tiptap/extension-underline\";\nimport { Dropcursor, Gapcursor, TrailingNode, UndoRedo } from \"@tiptap/extensions\";\nimport { FileHandler } from \"../extensions/file-handler/extension\";\nimport { Image } from \"../extensions/image/extension\";\nimport { Skeleton } from \"../extensions/skeleton/extension\";\nimport { createExtensionConfig } from \"./extensions\";\n\n/**\n * Editor extensions map\n */\nexport const EDITOR_EXTENSIONS = {\n /**\n * Nodes\n */\n blockquote: Blockquote,\n document: Document,\n hardBreak: HardBreak,\n heading: Heading,\n horizontalRule: HorizontalRule,\n listItem: ListItem,\n orderedList: OrderedList,\n bulletList: BulletList,\n paragraph: Paragraph,\n text: Text,\n image: Image,\n fileHandler: FileHandler,\n skeleton: Skeleton,\n /**\n * Marks\n */\n bold: Bold,\n italic: Italic,\n link: Link,\n strike: Strike,\n underline: Underline,\n highlight: Highlight,\n /**\n * Extensions\n */\n dropcursor: Dropcursor,\n gapcursor: Gapcursor,\n undoRedo: UndoRedo,\n listKeymap: ListKeymap,\n trailingNode: TrailingNode,\n textStyle: TextStyle,\n color: Color,\n};\n\nexport type EditorExtensions = typeof EDITOR_EXTENSIONS;\n\n/**\n * Editor extensions keys\n */\nexport const EDITOR_EXTENSIONS_KEYS = Object.keys(EDITOR_EXTENSIONS);\nexport type EditorExtensionsKeys = keyof typeof EDITOR_EXTENSIONS;\n\n/**\n * Editor extensions values\n */\nexport const EDITOR_EXTENSIONS_VALUES = Object.values(EDITOR_EXTENSIONS);\n\n/**\n * Editor extensions config\n */\nexport const EDITOR_EXTENSIONS_CONFIG = [\n /**\n * Nodes\n */\n createExtensionConfig(\"blockquote\"),\n createExtensionConfig(\"document\"),\n createExtensionConfig(\"hardBreak\"),\n createExtensionConfig(\"heading\"),\n createExtensionConfig(\"horizontalRule\"),\n createExtensionConfig(\"listItem\"),\n createExtensionConfig(\"orderedList\"),\n createExtensionConfig(\"bulletList\"),\n createExtensionConfig(\"paragraph\"),\n createExtensionConfig(\"text\"),\n createExtensionConfig(\"image\", {\n resize: {\n enabled: true,\n directions: [\"left\", \"right\"],\n minHeight: 50,\n minWidth: 50,\n alwaysPreserveAspectRatio: true,\n },\n }),\n createExtensionConfig(\"fileHandler\"),\n createExtensionConfig(\"skeleton\"),\n /**\n * Marks\n */\n createExtensionConfig(\"bold\"),\n createExtensionConfig(\"italic\"),\n createExtensionConfig(\"link\"),\n createExtensionConfig(\"strike\"),\n createExtensionConfig(\"underline\"),\n createExtensionConfig(\"highlight\", { multicolor: true }),\n /**\n * Extensions\n */\n createExtensionConfig(\"dropcursor\"),\n createExtensionConfig(\"gapcursor\"),\n createExtensionConfig(\"undoRedo\"),\n createExtensionConfig(\"listKeymap\"),\n createExtensionConfig(\"trailingNode\"),\n createExtensionConfig(\"textStyle\"),\n createExtensionConfig(\"color\"),\n];\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,MAAa,oBAAoB;CAI/B,YAAY;CACZ,UAAU;CACV,WAAW;CACX,SAAS;CACT,gBAAgB;CAChB,UAAU;CACV,aAAa;CACb,YAAY;CACZ,WAAW;CACX,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CAIV,MAAM;CACN,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,WAAW;CACX,WAAW;CAIX,YAAY;CACZ,WAAW;CACX,UAAU;CACV,YAAY;CACZ,cAAc;CACd,WAAW;CACX,OAAO;CACR;;;;AAOD,MAAa,yBAAyB,OAAO,KAAK,kBAAkB;;;;AAMpE,MAAa,2BAA2B,OAAO,OAAO,kBAAkB;;;;AAKxE,MAAa,2BAA2B;CAItC,sBAAsB,aAAa;CACnC,sBAAsB,WAAW;CACjC,sBAAsB,YAAY;CAClC,sBAAsB,UAAU;CAChC,sBAAsB,iBAAiB;CACvC,sBAAsB,WAAW;CACjC,sBAAsB,cAAc;CACpC,sBAAsB,aAAa;CACnC,sBAAsB,YAAY;CAClC,sBAAsB,OAAO;CAC7B,sBAAsB,SAAS,EAC7B,QAAQ;EACN,SAAS;EACT,YAAY,CAAC,QAAQ,QAAQ;EAC7B,WAAW;EACX,UAAU;EACV,2BAA2B;EAC5B,EACF,CAAC;CACF,sBAAsB,cAAc;CACpC,sBAAsB,WAAW;CAIjC,sBAAsB,OAAO;CAC7B,sBAAsB,SAAS;CAC/B,sBAAsB,OAAO;CAC7B,sBAAsB,SAAS;CAC/B,sBAAsB,YAAY;CAClC,sBAAsB,aAAa,EAAE,YAAY,MAAM,CAAC;CAIxD,sBAAsB,aAAa;CACnC,sBAAsB,YAAY;CAClC,sBAAsB,WAAW;CACjC,sBAAsB,aAAa;CACnC,sBAAsB,eAAe;CACrC,sBAAsB,YAAY;CAClC,sBAAsB,QAAQ;CAC/B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"extensions.d.mts","names":[],"sources":["../../../../src/components/editor/lib/extensions.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAoCA;;;AAAA,KAAY,sBAAA;EAIE;;;EAAZ,UAAA,EAAY,OAAA,CAAQ,iBAAA;EACpB,UAAA,EAAY,OAAA,CAAQ,iBAAA;EACpB,QAAA;EACA,SAAA,EAAW,OAAA,CAAQ,gBAAA;EACnB,OAAA,EAAS,OAAA,CAAQ,cAAA;EACjB,cAAA,EAAgB,OAAA,CAAQ,qBAAA;EACxB,QAAA,EAAU,OAAA,CAAQ,eAAA;EAClB,WAAA,EAAa,OAAA,CAAQ,kBAAA;EACrB,SAAA,EAAW,OAAA,CAAQ,gBAAA;EACnB,IAAA,EAAM,OAAA,CAAQ,gBAAA;EACd,KAAA,EAAO,OAAA,CAAQ,YAAA;EACf,WAAA,EAAa,OAAA,CAAQ,kBAAA;EACrB,QAAA;EAHM;;;EAON,IAAA,EAAM,OAAA,CAAQ,WAAA;EACd,MAAA,EAAQ,OAAA,CAAQ,aAAA;EAChB,IAAA,EAAM,OAAA,CAAQ,WAAA;EACd,MAAA,EAAQ,OAAA,CAAQ,aAAA;EAChB,SAAA,EAAW,OAAA,CAAQ,gBAAA;EACnB,SAAA,EAAW,OAAA,CAAQ,gBAAA;EAHL;;;EAOd,UAAA,EAAY,OAAA,CAAQ,iBAAA;EACpB,SAAA;EACA,QAAA,EAAU,OAAA,CAAQ,eAAA;EAClB,UAAA,EAAY,OAAA,CAAQ,iBAAA;EACpB,YAAA,EAAc,OAAA,CAAQ,mBAAA;EACtB,SAAA,EAAW,OAAA,CAAQ,gBAAA;EACnB,KAAA,EAAO,OAAA,CAAQ,YAAA;AAAA;AAAA,KAqEL,4BAAA,GAA+B,MAAA,OAAa,gBAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"extensions.mjs","names":[],"sources":["../../../../src/components/editor/lib/extensions.ts"],"sourcesContent":["import type { BlockquoteOptions } from \"@tiptap/extension-blockquote\";\nimport type { BoldOptions } from \"@tiptap/extension-bold\";\nimport type { HardBreakOptions } from \"@tiptap/extension-hard-break\";\nimport type { HeadingOptions } from \"@tiptap/extension-heading\";\nimport type { HighlightOptions } from \"@tiptap/extension-highlight\";\nimport type { HorizontalRuleOptions } from \"@tiptap/extension-horizontal-rule\";\nimport type { ItalicOptions } from \"@tiptap/extension-italic\";\nimport type { LinkOptions } from \"@tiptap/extension-link\";\nimport type {\n BulletListOptions,\n ListItemOptions,\n ListKeymapOptions,\n OrderedListOptions,\n} from \"@tiptap/extension-list\";\nimport type { ParagraphOptions } from \"@tiptap/extension-paragraph\";\nimport type { StrikeOptions } from \"@tiptap/extension-strike\";\nimport type { ColorOptions, TextStyleOptions } from \"@tiptap/extension-text-style\";\nimport type { UnderlineOptions } from \"@tiptap/extension-underline\";\nimport type { DropcursorOptions, TrailingNodeOptions, UndoRedoOptions } from \"@tiptap/extensions\";\nimport type { Extension } from \"@tiptap/react\";\nimport deepmerge from \"deepmerge\";\nimport type { FileHandlerOptions } from \"../extensions/file-handler/extension\";\nimport type { ImageOptions } from \"../extensions/image/extension\";\nimport {\n EDITOR_EXTENSIONS,\n EDITOR_EXTENSIONS_CONFIG,\n EDITOR_EXTENSIONS_KEYS,\n type EditorExtensions,\n} from \"./constants\";\n\n/**\n * Editor extensions defaults\n */\n/**\n * Editor extensions map\n */\nexport type EditorExtensionsConfig = {\n /**\n * Nodes\n */\n blockquote: Partial<BlockquoteOptions> | boolean;\n bulletList: Partial<BulletListOptions> | boolean;\n document: boolean;\n hardBreak: Partial<HardBreakOptions> | boolean;\n heading: Partial<HeadingOptions> | boolean;\n horizontalRule: Partial<HorizontalRuleOptions> | boolean;\n listItem: Partial<ListItemOptions> | boolean;\n orderedList: Partial<OrderedListOptions> | boolean;\n paragraph: Partial<ParagraphOptions> | boolean;\n text: Partial<TextStyleOptions> | boolean;\n image: Partial<ImageOptions> | boolean;\n fileHandler: Partial<FileHandlerOptions> | boolean;\n skeleton: boolean;\n /**\n * Marks\n */\n bold: Partial<BoldOptions> | boolean;\n italic: Partial<ItalicOptions> | boolean;\n link: Partial<LinkOptions> | boolean;\n strike: Partial<StrikeOptions> | boolean;\n underline: Partial<UnderlineOptions> | boolean;\n highlight: Partial<HighlightOptions> | boolean;\n /**\n * Extensions\n */\n dropcursor: Partial<DropcursorOptions> | boolean;\n gapcursor: boolean;\n undoRedo: Partial<UndoRedoOptions> | boolean;\n listKeymap: Partial<ListKeymapOptions> | boolean;\n trailingNode: Partial<TrailingNodeOptions> | boolean;\n textStyle: Partial<TextStyleOptions> | boolean;\n color: Partial<ColorOptions> | boolean;\n};\n\n/**\n * Create extension config\n * @param name\n * @param defaultOptions\n * @returns\n */\nexport function createExtensionConfig<TName extends keyof EditorExtensionsConfig>(\n name: TName,\n defaultOptions: Partial<Exclude<EditorExtensionsConfig[TName], boolean>> = {},\n) {\n return {\n name,\n configure: (options: EditorExtensionsConfig[TName]) => {\n // Get extension\n const extension = EDITOR_EXTENSIONS[name];\n\n // If no options or no extension, return undefined\n if (!options || !extension) return undefined;\n\n // If no options are provided, return extension\n if (typeof options === \"boolean\") return extension.configure(defaultOptions);\n\n const extensionOptions = deepmerge(defaultOptions, options as object);\n\n // If no options are provided, return extension else configure\n return extension.configure(extensionOptions);\n },\n };\n}\n\n/**\n * Editor extensions config to extensions\n */\nexport function editorExtensionsConfigToExtensions(extensions?: Partial<EditorExtensionsConfig>) {\n return EDITOR_EXTENSIONS_CONFIG.flatMap(({ name, configure }) => {\n // Get the extension config\n const value = extensions?.[name];\n\n // if no value is provided, return extension\n if (value === undefined) return configure(true) as Extension;\n\n // If value is boolean, return extension\n // biome-ignore lint/suspicious/noExplicitAny: This is needed to satisfy the type system\n return configure(value as any) as Extension;\n });\n}\n\n/**\n * Editor extensions config result\n */\nexport function flattenEditorExtensionsConfig(\n extensions?: Partial<EditorExtensionsConfig>,\n): EditorExtensionsConfigResult {\n return EDITOR_EXTENSIONS_KEYS.reduce((acc, key) => {\n const value = extensions?.[key as keyof EditorExtensionsConfig];\n\n if (value === undefined) {\n acc[key as keyof EditorExtensionsConfigResult] = true;\n return acc;\n }\n\n acc[key as keyof EditorExtensionsConfigResult] = typeof value === \"boolean\" ? value : true;\n return acc;\n }, {} as EditorExtensionsConfigResult);\n}\n\nexport type EditorExtensionsConfigResult = Record<keyof EditorExtensions, boolean>;\n\n// const { uploadImage } = useUploadEditor();\n// StarterKit,\n// Underline,\n// Link,\n// TextStyle,\n// Color,\n// Highlight.configure({ multicolor: true }),\n// Image.configure({\n// allowBase64: false,\n// }),\n// FileHandler.configure({\n// allowedMimeTypes: [\"image/png\", \"image/jpeg\", \"image/gif\", \"image/webp\"],\n// onDrop: (currentEditor, files, pos) => {\n// files.forEach((file) => {\n// const fileReader = new FileReader();\n\n// fileReader.readAsArrayBuffer(file);\n// fileReader.onload = async () => {\n// const response = await uploadImage(file);\n// if (!response) return;\n\n// currentEditor\n// .chain()\n// .insertContentAt(pos, {\n// type: \"image\",\n// attrs: { src: response.url },\n// })\n// .focus()\n// .run();\n// };\n// });\n// },\n// onPaste: (currentEditor, files) => {\n// files.forEach((file) => {\n// const fileReader = new FileReader();\n\n// fileReader.readAsArrayBuffer(file);\n// fileReader.onload = async () => {\n// const response = await uploadImage(file);\n// if (!response) return;\n\n// currentEditor\n// .chain()\n// .insertContentAt(currentEditor.state.selection.anchor, {\n// type: \"image\",\n// attrs: { src: response.url },\n// })\n// .focus()\n// .run();\n// };\n// });\n// },\n// }),\n"],"mappings":";;;;;;;;;;AAgFA,SAAgB,sBACd,MACA,iBAA2E,EAAE,EAC7E;AACA,QAAO;EACL;EACA,YAAY,YAA2C;GAErD,MAAM,YAAY,kBAAkB;AAGpC,OAAI,CAAC,WAAW,CAAC,UAAW,QAAO;AAGnC,OAAI,OAAO,YAAY,UAAW,QAAO,UAAU,UAAU,eAAe;GAE5E,MAAM,mBAAmB,UAAU,gBAAgB,QAAkB;AAGrE,UAAO,UAAU,UAAU,iBAAiB;;EAE/C;;;;;AAMH,SAAgB,mCAAmC,YAA8C;AAC/F,QAAO,yBAAyB,SAAS,EAAE,MAAM,gBAAgB;EAE/D,MAAM,QAAQ,aAAa;AAG3B,MAAI,UAAU,OAAW,QAAO,UAAU,KAAK;AAI/C,SAAO,UAAU,MAAa;GAC9B;;;;;AAMJ,SAAgB,8BACd,YAC8B;AAC9B,QAAO,uBAAuB,QAAQ,KAAK,QAAQ;EACjD,MAAM,QAAQ,aAAa;AAE3B,MAAI,UAAU,QAAW;AACvB,OAAI,OAA6C;AACjD,UAAO;;AAGT,MAAI,OAA6C,OAAO,UAAU,YAAY,QAAQ;AACtF,SAAO;IACN,EAAE,CAAiC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.d.mts","names":[],"sources":["../../../../src/components/editor/lib/helpers.ts"],"mappings":";;;;;AAuCA;iBAAgB,0BAAA,CAA2B,IAAA,WAAe,iBAAA;;;;iBAO1C,8BAAA,CAA+B,QAAA,WAAmB,iBAAA;;;;iBAQlD,0BAAA,CAA2B,OAAA,EAAS,iBAAA;AAApD;;;AAAA,iBAUgB,8BAAA,CAA+B,OAAA,EAAS,iBAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.mjs","names":[],"sources":["../../../../src/components/editor/lib/helpers.ts"],"sourcesContent":["import Blockquote from \"@tiptap/extension-blockquote\";\nimport Bold from \"@tiptap/extension-bold\";\nimport Document from \"@tiptap/extension-document\";\nimport HardBreak from \"@tiptap/extension-hard-break\";\nimport Heading from \"@tiptap/extension-heading\";\nimport HorizontalRule from \"@tiptap/extension-horizontal-rule\";\nimport Italic from \"@tiptap/extension-italic\";\nimport Link from \"@tiptap/extension-link\";\nimport { BulletList, ListItem, OrderedList } from \"@tiptap/extension-list\";\nimport Paragraph from \"@tiptap/extension-paragraph\";\nimport Strike from \"@tiptap/extension-strike\";\nimport Text from \"@tiptap/extension-text\";\nimport Underline from \"@tiptap/extension-underline\";\nimport { generateJSON } from \"@tiptap/html\";\nimport { renderToHTMLString, renderToMarkdown } from \"@tiptap/static-renderer\";\nimport { markdownParser } from \"@/lib/utils/markdown\";\nimport type { EditorJSONContent } from \"./types\";\n\nconst EXTENSIONS_FOR_GENERATION = [\n Blockquote,\n BulletList,\n Document,\n HardBreak,\n Heading,\n HorizontalRule,\n ListItem,\n OrderedList,\n Paragraph,\n Text,\n Bold,\n Italic,\n Link,\n Strike,\n Underline,\n];\n\n/**\n * Convert HTML to editor content\n */\nexport function convertHTMLToEditorContent(html: string): EditorJSONContent {\n return generateJSON(html, EXTENSIONS_FOR_GENERATION);\n}\n\n/**\n * Convert markdown to editor content\n */\nexport function convertMarkdownToEditorContent(markdown: string): EditorJSONContent {\n const html = markdownParser.render(markdown);\n return convertHTMLToEditorContent(html);\n}\n\n/**\n * Convert editor content to HTML\n */\nexport function convertEditorContentToHTML(content: EditorJSONContent): string {\n return renderToHTMLString({\n content,\n extensions: EXTENSIONS_FOR_GENERATION,\n });\n}\n\n/**\n * Convert editor content to markdown\n */\nexport function convertEditorContentToMarkdown(content: EditorJSONContent): string {\n return renderToMarkdown({\n content,\n extensions: EXTENSIONS_FOR_GENERATION,\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAkBA,MAAM,4BAA4B;CAChC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD;;;;AAKD,SAAgB,2BAA2B,MAAiC;AAC1E,QAAO,aAAa,MAAM,0BAA0B;;;;;AAMtD,SAAgB,+BAA+B,UAAqC;AAElF,QAAO,2BADM,eAAe,OAAO,SAAS,CACL;;;;;AAMzC,SAAgB,2BAA2B,SAAoC;AAC7E,QAAO,mBAAmB;EACxB;EACA,YAAY;EACb,CAAC;;;;;AAMJ,SAAgB,+BAA+B,SAAoC;AACjF,QAAO,iBAAiB;EACtB;EACA,YAAY;EACb,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.mts","names":[],"sources":["../../../../src/components/editor/lib/types.ts"],"mappings":";;;;;AAKA;KAAY,iBAAA,GAAoB,WAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"variants.mjs","names":[],"sources":["../../../../src/components/editor/lib/variants.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\nimport { cn } from \"@/lib/utils/cn\";\n\n/**\n * Prose variants\n */\nexport const editorProseVariants = cva(\n cn(\n \"prose dark:prose-invert\",\n \"prose-a:text-primary\",\n \"prose-headings:scroll-mt-20\",\n \"prose-h1:mt-6 prose-h1:mb-3\",\n \"prose-h2:mt-6 prose-h2:mb-3\",\n \"prose-h3:mt-5 prose-h3:mb-2\",\n \"prose-h4:mt-4 prose-h4:mb-2\",\n \"prose-ul:my-3 prose-ol:my-3\",\n \"prose-ul:pl-6 prose-ol:pl-6\",\n \"prose-li:my-1\",\n \"prose-li:marker:text-primary\",\n \"prose-li:p-0\",\n \"prose-img:my-0 prose-img:rounded-lg\",\n \"prose-blockquote:my-4 prose-blockquote:py-1\",\n \"prose-hr:my-6\",\n \"prose-pre:my-4\",\n ),\n);\n\n/**\n * Image variants\n */\nexport const editorImageVariants = cva(\n cn(\n // wrapper (TipTap sets display:block inline → override with !)\n \"[&_[data-resize-wrapper]]:!inline-block\",\n \"[&_[data-resize-wrapper]]:!relative\",\n \"[&_[data-resize-wrapper]]:max-w-full\",\n \"[&_[data-resize-wrapper]]:overflow-hidden\",\n\n // handle base\n \"[&_[data-resize-handle]]:absolute\",\n \"[&_[data-resize-handle]]:z-10\",\n \"[&_[data-resize-handle]]:rounded-full\",\n \"[&_[data-resize-handle]]:bg-muted/40\",\n \"[&_[data-resize-handle]]:w-1.5\",\n \"[&_[data-resize-handle]]:cursor-ew-resize\",\n \"[&_[data-resize-handle]]:opacity-0\",\n \"[&_[data-resize-handle]]:transition-opacity\",\n\n // show on hover / active\n \"[&:hover_[data-resize-handle]]:opacity-100\",\n \"[&_[data-resize-state='true']_[data-resize-handle]]:opacity-100\",\n\n // ✅ override TipTap inline: top:0; bottom:0;\n \"[&_[data-resize-handle]]:!top-1/2\",\n \"[&_[data-resize-handle]]:!bottom-auto\",\n \"[&_[data-resize-handle]]:!-translate-y-1/2\",\n\n // ✅ half height (also must beat inline)\n \"[&_[data-resize-handle]]:!h-1/2\",\n\n // ✅ spacing from edge (beat inline left:0 / right:0)\n \"[&_[data-resize-handle='left']]:!left-2\",\n \"[&_[data-resize-handle='right']]:!right-2\",\n\n // ✅ override inline visibility:hidden on the resize container while pending\n \"[&_[data-resize-container]:has(img[data-pending='true'])]:[visibility:visible!important]\",\n \"[&_[data-resize-container]:has(img[data-pending='true'])]:[pointer-events:auto!important]\",\n\n // Pending img should behave like a skeleton block (even before wrapper exists)\n \"[&_img[data-pending='true']]:bg-primary/10\",\n \"[&_img[data-pending='true']]:animate-pulse\",\n \"[&_img[data-pending='true']]:rounded-md\",\n \"[&_img[data-pending='true']]:opacity-0\",\n \"[&_img[data-pending='true']]:min-h-[500px]\",\n ),\n);\n"],"mappings":";;;;;;;AAMA,MAAa,sBAAsB,IACjC,GACE,2BACA,wBACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,iBACA,gCACA,gBACA,uCACA,+CACA,iBACA,iBACD,CACF;;;;AAKD,MAAa,sBAAsB,IACjC,GAEE,2CACA,uCACA,wCACA,6CAGA,qCACA,iCACA,yCACA,wCACA,kCACA,6CACA,sCACA,+CAGA,8CACA,mEAGA,qCACA,yCACA,8CAGA,mCAGA,2CACA,6CAGA,4FACA,6FAGA,8CACA,8CACA,2CACA,0CACA,6CACD,CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"forget-password-email.mjs","names":[],"sources":["../../../src/components/emails/forget-password-email.tsx"],"sourcesContent":["import {\n Body,\n Button,\n Container,\n Head,\n Heading,\n Html,\n Preview,\n Section,\n Tailwind,\n Text,\n} from \"@react-email/components\";\nimport { url } from \"@/lib/utils/url\";\nimport { Icons } from \"../common/icons\";\n\ninterface ForgetPasswordEmailProps {\n resetPasswordHref: string;\n}\n\nexport function ForgetPasswordEmail({ resetPasswordHref }: ForgetPasswordEmailProps) {\n return (\n <Html>\n <Head />\n <Preview>Herstel je wachtwoord</Preview>\n\n <Tailwind>\n <Body className=\"mx-auto my-auto bg-white px-2 font-sans\">\n <Container className=\"mx-auto my-[40px] max-w-[465px] rounded border border-[#eaeaea] border-solid p-[20px]\">\n <Icons.logo className=\"w-8\" />\n\n <Section className=\"my-[15px]\">\n <Heading className=\"mx-0 my-[20px] p-0 font-bold text-[24px] text-black\">\n Herstel uw wachtwoord\n </Heading>\n\n <Text className=\"text-[14px] text-black leading-[24px]\">\n Iemand heeft onlangs een wachtwoordwijziging voor uw account gevraagd. Als u dit\n was, kunt u hier een nieuw wachtwoord instellen:\n </Text>\n\n <Button\n className=\"rounded bg-[#000000] px-5 py-3 text-center font-semibold text-[12px] text-white no-underline\"\n href={resetPasswordHref}\n >\n Reset password\n </Button>\n </Section>\n\n <Section>\n <Text className=\"text-[12px] text-black leading-[20px]\">\n Als u uw wachtwoord niet wilt wijzigen of dit niet heeft gevraagd, negeer en\n verwijder dit bericht gewoon en verwijdert u.\n </Text>\n\n <Text className=\"text-[12px] text-black leading-[20px]\">\n Stuur deze e-mail niet door om uw account veilig te houden.\n </Text>\n </Section>\n </Container>\n </Body>\n </Tailwind>\n </Html>\n );\n}\n\nForgetPasswordEmail.PreviewProps = {\n resetPasswordHref: url(\"/auth/reset-password\"),\n} as ForgetPasswordEmailProps;\n\nexport default ForgetPasswordEmail;\n"],"mappings":";;;;;;AAmBA,SAAgB,oBAAoB,EAAE,qBAA+C;AACnF,QACE,qBAAC;EACC,oBAAC,SAAO;EACR,oBAAC,qBAAQ,0BAA+B;EAExC,oBAAC,sBACC,oBAAC;GAAK,WAAU;aACd,qBAAC;IAAU,WAAU;;KACnB,oBAAC,MAAM,QAAK,WAAU,QAAQ;KAE9B,qBAAC;MAAQ,WAAU;;OACjB,oBAAC;QAAQ,WAAU;kBAAsD;SAE/D;OAEV,oBAAC;QAAK,WAAU;kBAAwC;SAGjD;OAEP,oBAAC;QACC,WAAU;QACV,MAAM;kBACP;SAEQ;;OACD;KAEV,qBAAC,sBACC,oBAAC;MAAK,WAAU;gBAAwC;OAGjD,EAEP,oBAAC;MAAK,WAAU;gBAAwC;OAEjD,IACC;;KACA;IACP,GACE;KACN;;AAIX,oBAAoB,eAAe,EACjC,mBAAmB,IAAI,uBAAuB,EAC/C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"back-button.client.d.mts","names":[],"sources":["../../../src/components/header/back-button.client.tsx"],"mappings":";;;iBAagB,sBAAA,CAAA;EACd,SAAA;EAAA,GACG;AAAA,GACF,KAAA,CAAM,kBAAA,CAAmB,iBAAA,IAAkB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"back-button.client.mjs","names":[],"sources":["../../../src/components/header/back-button.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { useRouter } from \"next/navigation\";\nimport { Icons } from \"@/components/common/icons\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n ContextMenu,\n ContextMenuContent,\n ContextMenuItem,\n ContextMenuTrigger,\n} from \"@/components/ui/context-menu.client\";\nimport { cn } from \"@/lib/utils/cn\";\n\nexport function HeaderTopbarBackButton({\n className,\n ...props\n}: React.HtmlHTMLAttributes<HTMLButtonElement>) {\n const router = useRouter();\n\n return (\n <ContextMenu>\n <ContextMenuTrigger asChild>\n <Button\n {...props}\n variant=\"ghost\"\n onClick={() => router.back()}\n className={cn(\n \"h-full w-content rounded-none border-r border-r-border p-0 text-muted-foreground hover:text-foreground\",\n className,\n )}\n >\n <Icons.chevronLeft className=\"opacity-50\" />\n </Button>\n </ContextMenuTrigger>\n\n <ContextMenuContent>\n <ContextMenuItem className=\"flex gap-3\" onClick={() => router.back()}>\n <Icons.moveLeft className=\"w-4\" />\n Terug\n </ContextMenuItem>\n\n <ContextMenuItem className=\"flex gap-3\" onClick={() => router.forward()}>\n <Icons.moveRight className=\"w-4\" />\n Vooruit\n </ContextMenuItem>\n\n <ContextMenuItem className=\"flex gap-3\" onClick={() => router.refresh()}>\n <Icons.refresh className=\"w-3.5\" />\n Verversen\n </ContextMenuItem>\n </ContextMenuContent>\n </ContextMenu>\n );\n}\n"],"mappings":";;;;;;;;;;AAaA,SAAgB,uBAAuB,EACrC,WACA,GAAG,SAC2C;CAC9C,MAAM,SAAS,WAAW;AAE1B,QACE,qBAAC,0BACC,oBAAC;EAAmB;YAClB,oBAAC;GACC,GAAI;GACJ,SAAQ;GACR,eAAe,OAAO,MAAM;GAC5B,WAAW,GACT,0GACA,UACD;aAED,oBAAC,MAAM,eAAY,WAAU,eAAe;IACrC;GACU,EAErB,qBAAC;EACC,qBAAC;GAAgB,WAAU;GAAa,eAAe,OAAO,MAAM;cAClE,oBAAC,MAAM,YAAS,WAAU,QAAQ;IAElB;EAElB,qBAAC;GAAgB,WAAU;GAAa,eAAe,OAAO,SAAS;cACrE,oBAAC,MAAM,aAAU,WAAU,QAAQ;IAEnB;EAElB,qBAAC;GAAgB,WAAU;GAAa,eAAe,OAAO,SAAS;cACrE,oBAAC,MAAM,WAAQ,WAAU,UAAU;IAEnB;KACC,IACT"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"bottom-bar.client.d.mts","names":[],"sources":["../../../src/components/header/bottom-bar.client.tsx"],"mappings":";;;;;;;;KAYY,cAAA;EACV,QAAA,EAAU,KAAA,CAAM,SAAA;AAAA;AAAA,iBAGF,SAAA,CAAA;EAAY;AAAA,GAAY,cAAA,GAAc,kBAAA,CAAA,GAAA,CAAA,OAAA;;;;KAW1C,aAAA,GAAgB,IAAA,CAAK,IAAA;AAAA,KAErB,mBAAA,GAAsB,KAAA,CAAM,cAAA,CAAe,WAAA;EACrD,KAAA,EAAO,aAAA;AAAA;AAAA,iBAGO,cAAA,CAAA;EAAiB,KAAA;EAAO,SAAA;EAAA,GAAc;AAAA,GAAS,mBAAA,GAAmB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"bottom-bar.client.mjs","names":[],"sources":["../../../src/components/header/bottom-bar.client.tsx"],"sourcesContent":["\"use client\";\n\nimport Link from \"next/link\";\nimport { useSelectedLayoutSegment } from \"next/navigation\";\nimport type React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\nimport { Allowed } from \"@/modules/auth/components/allowed.client\";\nimport type { Path } from \"@/modules/config/paths/types\";\n\n/**\n * Bottombar component\n */\nexport type BottomBarProps = {\n children: React.ReactNode;\n};\n\nexport function BottomBar({ children }: BottomBarProps) {\n return (\n <nav className=\"flex h-[var(--header-bottom-bar-height)] items-center justify-between overflow-x-auto border-b\">\n {children}\n </nav>\n );\n}\n\n/**\n * Bottombar link component\n */\nexport type BottomBarLink = Omit<Path, \"icon\" | \"badge\">;\n\nexport type BottomBarLinksProps = React.HTMLAttributes<HTMLElement> & {\n paths: BottomBarLink[];\n};\n\nexport function BottomBarLinks({ paths, className, ...props }: BottomBarLinksProps) {\n const currentSegment = useSelectedLayoutSegment();\n\n return (\n <ul\n {...props}\n className={cn(\"flex flex-row items-center gap-6 px-content font-medium text-sm\", className)}\n >\n {paths.map(({ href, name, segment, permission }) => {\n const children = (\n <Link\n key={href}\n href={href}\n className={cn(\n \"w-fit text-nowrap break-keep text-muted-foreground transition-colors hover:text-foreground\",\n currentSegment === segment && \"text-primary\",\n )}\n >\n {name}\n </Link>\n );\n\n if (permission) {\n return (\n <Allowed key={href} permission={permission}>\n {children}\n </Allowed>\n );\n }\n\n return children;\n })}\n </ul>\n );\n}\n"],"mappings":";;;;;;;;;AAgBA,SAAgB,UAAU,EAAE,YAA4B;AACtD,QACE,oBAAC;EAAI,WAAU;EACZ;GACG;;AAaV,SAAgB,eAAe,EAAE,OAAO,WAAW,GAAG,SAA8B;CAClF,MAAM,iBAAiB,0BAA0B;AAEjD,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,GAAG,mEAAmE,UAAU;YAE1F,MAAM,KAAK,EAAE,MAAM,MAAM,SAAS,iBAAiB;GAClD,MAAM,WACJ,oBAAC;IAEO;IACN,WAAW,GACT,8FACA,mBAAmB,WAAW,eAC/B;cAEA;MAPI,KAQA;AAGT,OAAI,WACF,QACE,oBAAC;IAA+B;IAC7B;MADW,KAEJ;AAId,UAAO;IACP;GACC"}