@vitnode/core 1.2.0-canary.71 → 1.2.0-canary.74

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 (664) hide show
  1. package/dist/scripts/plugin.d.ts.map +1 -1
  2. package/dist/scripts/plugin.js +22 -4
  3. package/dist/scripts/prepare-plugins-files.d.ts.map +1 -1
  4. package/dist/scripts/prepare-plugins-files.js +22 -4
  5. package/dist/src/api/lib/module.d.ts +4 -1
  6. package/dist/src/api/lib/module.d.ts.map +1 -1
  7. package/dist/src/api/lib/module.js +1 -1
  8. package/dist/src/api/lib/plugin.d.ts +2 -0
  9. package/dist/src/api/lib/plugin.d.ts.map +1 -1
  10. package/dist/src/api/lib/plugin.js +1 -1
  11. package/dist/src/api/lib/websocket.d.ts +26 -0
  12. package/dist/src/api/lib/websocket.d.ts.map +1 -0
  13. package/dist/src/api/lib/websocket.js +1 -0
  14. package/dist/src/api/lib/with-pagination.d.ts +3 -1
  15. package/dist/src/api/lib/with-pagination.d.ts.map +1 -1
  16. package/dist/src/api/lib/with-pagination.js +1 -1
  17. package/dist/src/api/middlewares/global.middleware.d.ts +4 -0
  18. package/dist/src/api/middlewares/global.middleware.d.ts.map +1 -1
  19. package/dist/src/api/middlewares/global.middleware.js +1 -1
  20. package/dist/src/api/middlewares/rate-limiter.middleware.d.ts.map +1 -1
  21. package/dist/src/api/middlewares/rate-limiter.middleware.js +1 -1
  22. package/dist/src/api/models/user/get-user-by-name-code.d.ts +18 -0
  23. package/dist/src/api/models/user/get-user-by-name-code.d.ts.map +1 -0
  24. package/dist/src/api/models/user/get-user-by-name-code.js +1 -0
  25. package/dist/src/api/models/user.d.ts +16 -0
  26. package/dist/src/api/models/user.d.ts.map +1 -1
  27. package/dist/src/api/models/user.js +1 -1
  28. package/dist/src/api/modules/admin/admin.module.d.ts +272 -0
  29. package/dist/src/api/modules/admin/admin.module.d.ts.map +1 -1
  30. package/dist/src/api/modules/admin/admin.module.js +1 -1
  31. package/dist/src/api/modules/admin/roles/roles.admin.module.d.ts +109 -0
  32. package/dist/src/api/modules/admin/roles/roles.admin.module.d.ts.map +1 -0
  33. package/dist/src/api/modules/admin/roles/roles.admin.module.js +1 -0
  34. package/dist/src/api/modules/admin/roles/routes/list.route.d.ts +63 -0
  35. package/dist/src/api/modules/admin/roles/routes/list.route.d.ts.map +1 -0
  36. package/dist/src/api/modules/admin/roles/routes/list.route.js +1 -0
  37. package/dist/src/api/modules/admin/roles/routes/show.route.d.ts +50 -0
  38. package/dist/src/api/modules/admin/roles/routes/show.route.d.ts.map +1 -0
  39. package/dist/src/api/modules/admin/roles/routes/show.route.js +1 -0
  40. package/dist/src/api/modules/admin/routes/notifications.route.d.ts +54 -0
  41. package/dist/src/api/modules/admin/routes/notifications.route.d.ts.map +1 -0
  42. package/dist/src/api/modules/admin/routes/notifications.route.js +1 -0
  43. package/dist/src/api/modules/admin/users/routes/create.route.d.ts +48 -0
  44. package/dist/src/api/modules/admin/users/routes/create.route.d.ts.map +1 -0
  45. package/dist/src/api/modules/admin/users/routes/create.route.js +1 -0
  46. package/dist/src/api/modules/admin/users/routes/list.route.d.ts +2 -0
  47. package/dist/src/api/modules/admin/users/routes/list.route.d.ts.map +1 -1
  48. package/dist/src/api/modules/admin/users/routes/list.route.js +1 -1
  49. package/dist/src/api/modules/admin/users/routes/show.route.d.ts +49 -0
  50. package/dist/src/api/modules/admin/users/routes/show.route.d.ts.map +1 -0
  51. package/dist/src/api/modules/admin/users/routes/show.route.js +1 -0
  52. package/dist/src/api/modules/admin/users/routes/verify-email.route.d.ts +40 -0
  53. package/dist/src/api/modules/admin/users/routes/verify-email.route.d.ts.map +1 -0
  54. package/dist/src/api/modules/admin/users/routes/verify-email.route.js +1 -0
  55. package/dist/src/api/modules/admin/users/users.admin.module.d.ts +125 -0
  56. package/dist/src/api/modules/admin/users/users.admin.module.d.ts.map +1 -1
  57. package/dist/src/api/modules/admin/users/users.admin.module.js +1 -1
  58. package/dist/src/components/avatar.d.ts +1 -1
  59. package/dist/src/components/avatar.d.ts.map +1 -1
  60. package/dist/src/components/confirm-action/confirm-action-alert-dialog.d.ts +1 -1
  61. package/dist/src/components/confirm-action/confirm-action-alert-dialog.d.ts.map +1 -1
  62. package/dist/src/components/confirm-action/content.d.ts +2 -1
  63. package/dist/src/components/confirm-action/content.d.ts.map +1 -1
  64. package/dist/src/components/date-format.d.ts +1 -1
  65. package/dist/src/components/date-format.d.ts.map +1 -1
  66. package/dist/src/components/date-format.js +1 -1
  67. package/dist/src/components/form/auto-form.d.ts +6 -1
  68. package/dist/src/components/form/auto-form.d.ts.map +1 -1
  69. package/dist/src/components/form/auto-form.js +1 -1
  70. package/dist/src/components/form/common/desc.d.ts +1 -1
  71. package/dist/src/components/form/common/desc.d.ts.map +1 -1
  72. package/dist/src/components/form/common/label.d.ts +4 -3
  73. package/dist/src/components/form/common/label.d.ts.map +1 -1
  74. package/dist/src/components/form/common/label.js +1 -1
  75. package/dist/src/components/form/fields/array.d.ts +19 -0
  76. package/dist/src/components/form/fields/array.d.ts.map +1 -0
  77. package/dist/src/components/form/fields/array.js +1 -0
  78. package/dist/src/components/form/fields/checkbox.d.ts +1 -1
  79. package/dist/src/components/form/fields/checkbox.d.ts.map +1 -1
  80. package/dist/src/components/form/fields/checkbox.js +1 -1
  81. package/dist/src/components/form/fields/combobox.d.ts +22 -4
  82. package/dist/src/components/form/fields/combobox.d.ts.map +1 -1
  83. package/dist/src/components/form/fields/combobox.js +1 -1
  84. package/dist/src/components/form/fields/combobox.test.d.ts +2 -0
  85. package/dist/src/components/form/fields/combobox.test.d.ts.map +1 -0
  86. package/dist/src/components/form/fields/combobox.test.js +1 -0
  87. package/dist/src/components/form/fields/input.d.ts +1 -1
  88. package/dist/src/components/form/fields/input.d.ts.map +1 -1
  89. package/dist/src/components/form/fields/input.js +1 -1
  90. package/dist/src/components/form/fields/radio-group.d.ts +11 -6
  91. package/dist/src/components/form/fields/radio-group.d.ts.map +1 -1
  92. package/dist/src/components/form/fields/radio-group.js +1 -1
  93. package/dist/src/components/form/fields/select.d.ts +2 -2
  94. package/dist/src/components/form/fields/select.d.ts.map +1 -1
  95. package/dist/src/components/form/fields/select.js +1 -1
  96. package/dist/src/components/form/fields/switch.d.ts +1 -1
  97. package/dist/src/components/form/fields/switch.d.ts.map +1 -1
  98. package/dist/src/components/form/fields/switch.js +1 -1
  99. package/dist/src/components/form/fields/textarea.d.ts +2 -2
  100. package/dist/src/components/form/fields/textarea.d.ts.map +1 -1
  101. package/dist/src/components/form/fields/textarea.js +1 -1
  102. package/dist/src/components/i18n-provider.d.ts +1 -1
  103. package/dist/src/components/i18n-provider.d.ts.map +1 -1
  104. package/dist/src/components/logo-vitnode.d.ts +1 -1
  105. package/dist/src/components/logo-vitnode.d.ts.map +1 -1
  106. package/dist/src/components/role-format.d.ts +11 -0
  107. package/dist/src/components/role-format.d.ts.map +1 -0
  108. package/dist/src/components/role-format.js +1 -0
  109. package/dist/src/components/switchers/langs/language-switcher.d.ts +2 -1
  110. package/dist/src/components/switchers/langs/language-switcher.d.ts.map +1 -1
  111. package/dist/src/components/switchers/themes/theme-switcher.d.ts +1 -1
  112. package/dist/src/components/switchers/themes/theme-switcher.d.ts.map +1 -1
  113. package/dist/src/components/table/content.d.ts +1 -1
  114. package/dist/src/components/table/content.d.ts.map +1 -1
  115. package/dist/src/components/table/content.js +1 -1
  116. package/dist/src/components/table/data-table.d.ts +14 -4
  117. package/dist/src/components/table/data-table.d.ts.map +1 -1
  118. package/dist/src/components/table/filters.d.ts +16 -0
  119. package/dist/src/components/table/filters.d.ts.map +1 -0
  120. package/dist/src/components/table/filters.js +1 -0
  121. package/dist/src/components/table/order-table-head.d.ts +1 -1
  122. package/dist/src/components/table/order-table-head.d.ts.map +1 -1
  123. package/dist/src/components/table/order-table-head.js +1 -1
  124. package/dist/src/components/table/pagination.d.ts +2 -1
  125. package/dist/src/components/table/pagination.d.ts.map +1 -1
  126. package/dist/src/components/table/search.d.ts +5 -0
  127. package/dist/src/components/table/search.d.ts.map +1 -0
  128. package/dist/src/components/table/search.js +1 -0
  129. package/dist/src/components/tiptap/toolbar/actions/alignment-action.d.ts +1 -1
  130. package/dist/src/components/tiptap/toolbar/actions/alignment-action.d.ts.map +1 -1
  131. package/dist/src/components/tiptap/toolbar/actions/alignment-action.js +1 -1
  132. package/dist/src/components/tiptap/toolbar/actions/bold-action.d.ts +1 -1
  133. package/dist/src/components/tiptap/toolbar/actions/bold-action.d.ts.map +1 -1
  134. package/dist/src/components/tiptap/toolbar/actions/bold-action.js +1 -1
  135. package/dist/src/components/tiptap/toolbar/actions/headings-action.d.ts +1 -1
  136. package/dist/src/components/tiptap/toolbar/actions/headings-action.d.ts.map +1 -1
  137. package/dist/src/components/tiptap/toolbar/actions/headings-action.js +1 -1
  138. package/dist/src/components/tiptap/toolbar/actions/italic-action.d.ts +1 -1
  139. package/dist/src/components/tiptap/toolbar/actions/italic-action.d.ts.map +1 -1
  140. package/dist/src/components/tiptap/toolbar/actions/italic-action.js +1 -1
  141. package/dist/src/components/tiptap/toolbar/actions/list-action.d.ts +1 -1
  142. package/dist/src/components/tiptap/toolbar/actions/list-action.d.ts.map +1 -1
  143. package/dist/src/components/tiptap/toolbar/actions/list-action.js +1 -1
  144. package/dist/src/components/tiptap/toolbar/actions/text-format-more/text-format-more.d.ts +1 -1
  145. package/dist/src/components/tiptap/toolbar/actions/text-format-more/text-format-more.d.ts.map +1 -1
  146. package/dist/src/components/tiptap/toolbar/actions/text-format-more/text-format-more.js +1 -1
  147. package/dist/src/components/tiptap/toolbar/actions/underline-action.d.ts +1 -1
  148. package/dist/src/components/tiptap/toolbar/actions/underline-action.d.ts.map +1 -1
  149. package/dist/src/components/tiptap/toolbar/actions/underline-action.js +1 -1
  150. package/dist/src/components/tiptap/toolbar/actions/undo-redo-actions.d.ts +1 -1
  151. package/dist/src/components/tiptap/toolbar/actions/undo-redo-actions.d.ts.map +1 -1
  152. package/dist/src/components/tiptap/toolbar/actions/undo-redo-actions.js +1 -1
  153. package/dist/src/components/tiptap/toolbar/actions/utils/tooltip-shortcut.d.ts +1 -1
  154. package/dist/src/components/tiptap/toolbar/actions/utils/tooltip-shortcut.d.ts.map +1 -1
  155. package/dist/src/components/tiptap/toolbar/tiptap-toolbar.d.ts +1 -1
  156. package/dist/src/components/tiptap/toolbar/tiptap-toolbar.d.ts.map +1 -1
  157. package/dist/src/components/tiptap/toolbar/tiptap-toolbar.js +1 -1
  158. package/dist/src/components/ui/accordion.d.ts +5 -5
  159. package/dist/src/components/ui/accordion.d.ts.map +1 -1
  160. package/dist/src/components/ui/accordion.js +1 -1
  161. package/dist/src/components/ui/alert-dialog.d.ts +15 -13
  162. package/dist/src/components/ui/alert-dialog.d.ts.map +1 -1
  163. package/dist/src/components/ui/alert-dialog.js +1 -1
  164. package/dist/src/components/ui/alert.d.ts +6 -5
  165. package/dist/src/components/ui/alert.d.ts.map +1 -1
  166. package/dist/src/components/ui/alert.js +1 -1
  167. package/dist/src/components/ui/aspect-ratio.d.ts +4 -0
  168. package/dist/src/components/ui/aspect-ratio.d.ts.map +1 -0
  169. package/dist/src/components/ui/aspect-ratio.js +1 -0
  170. package/dist/src/components/ui/avatar.d.ts +12 -0
  171. package/dist/src/components/ui/avatar.d.ts.map +1 -0
  172. package/dist/src/components/ui/avatar.js +1 -0
  173. package/dist/src/components/ui/badge.d.ts +3 -3
  174. package/dist/src/components/ui/badge.d.ts.map +1 -1
  175. package/dist/src/components/ui/badge.js +1 -1
  176. package/dist/src/components/ui/breadcrumb.d.ts +12 -0
  177. package/dist/src/components/ui/breadcrumb.d.ts.map +1 -0
  178. package/dist/src/components/ui/breadcrumb.js +1 -0
  179. package/dist/src/components/ui/button-client.d.ts +1 -1
  180. package/dist/src/components/ui/button-client.d.ts.map +1 -1
  181. package/dist/src/components/ui/button-group.d.ts +12 -0
  182. package/dist/src/components/ui/button-group.d.ts.map +1 -0
  183. package/dist/src/components/ui/button-group.js +1 -0
  184. package/dist/src/components/ui/button.d.ts +9 -9
  185. package/dist/src/components/ui/button.d.ts.map +1 -1
  186. package/dist/src/components/ui/button.js +1 -1
  187. package/dist/src/components/ui/card.d.ts +10 -8
  188. package/dist/src/components/ui/card.d.ts.map +1 -1
  189. package/dist/src/components/ui/card.js +1 -1
  190. package/dist/src/components/ui/carousel.d.ts +29 -0
  191. package/dist/src/components/ui/carousel.d.ts.map +1 -0
  192. package/dist/src/components/ui/carousel.js +1 -0
  193. package/dist/src/components/ui/chart.d.ts +45 -0
  194. package/dist/src/components/ui/chart.d.ts.map +1 -0
  195. package/dist/src/components/ui/chart.js +5 -0
  196. package/dist/src/components/ui/checkbox.d.ts +2 -2
  197. package/dist/src/components/ui/checkbox.d.ts.map +1 -1
  198. package/dist/src/components/ui/checkbox.js +1 -1
  199. package/dist/src/components/ui/collapsible.d.ts +3 -3
  200. package/dist/src/components/ui/collapsible.d.ts.map +1 -1
  201. package/dist/src/components/ui/combobox.d.ts +25 -0
  202. package/dist/src/components/ui/combobox.d.ts.map +1 -0
  203. package/dist/src/components/ui/combobox.js +1 -0
  204. package/dist/src/components/ui/command.d.ts +10 -10
  205. package/dist/src/components/ui/command.d.ts.map +1 -1
  206. package/dist/src/components/ui/command.js +1 -1
  207. package/dist/src/components/ui/context-menu.d.ts +24 -18
  208. package/dist/src/components/ui/context-menu.d.ts.map +1 -1
  209. package/dist/src/components/ui/context-menu.js +1 -1
  210. package/dist/src/components/ui/dialog.d.ts +12 -10
  211. package/dist/src/components/ui/dialog.d.ts.map +1 -1
  212. package/dist/src/components/ui/dialog.js +1 -1
  213. package/dist/src/components/ui/direction.d.ts +8 -0
  214. package/dist/src/components/ui/direction.d.ts.map +1 -0
  215. package/dist/src/components/ui/direction.js +1 -0
  216. package/dist/src/components/ui/drawer.d.ts +11 -11
  217. package/dist/src/components/ui/drawer.d.ts.map +1 -1
  218. package/dist/src/components/ui/drawer.js +1 -1
  219. package/dist/src/components/ui/dropdown-menu.d.ts +20 -16
  220. package/dist/src/components/ui/dropdown-menu.d.ts.map +1 -1
  221. package/dist/src/components/ui/dropdown-menu.js +1 -1
  222. package/dist/src/components/ui/editor-content.d.ts +1 -1
  223. package/dist/src/components/ui/editor-content.d.ts.map +1 -1
  224. package/dist/src/components/ui/editor.d.ts +1 -1
  225. package/dist/src/components/ui/editor.d.ts.map +1 -1
  226. package/dist/src/components/ui/editor.js +1 -1
  227. package/dist/src/components/ui/empty.d.ts +12 -0
  228. package/dist/src/components/ui/empty.d.ts.map +1 -0
  229. package/dist/src/components/ui/empty.js +1 -0
  230. package/dist/src/components/ui/field.d.ts +25 -0
  231. package/dist/src/components/ui/field.d.ts.map +1 -0
  232. package/dist/src/components/ui/field.js +1 -0
  233. package/dist/src/components/ui/form.d.ts +7 -14
  234. package/dist/src/components/ui/form.d.ts.map +1 -1
  235. package/dist/src/components/ui/form.js +1 -1
  236. package/dist/src/components/ui/header-content.d.ts +1 -1
  237. package/dist/src/components/ui/header-content.d.ts.map +1 -1
  238. package/dist/src/components/ui/hover-card.d.ts +4 -4
  239. package/dist/src/components/ui/hover-card.d.ts.map +1 -1
  240. package/dist/src/components/ui/hover-card.js +1 -1
  241. package/dist/src/components/ui/input-group.d.ts +17 -0
  242. package/dist/src/components/ui/input-group.d.ts.map +1 -0
  243. package/dist/src/components/ui/input-group.js +1 -0
  244. package/dist/src/components/ui/input-otp.d.ts +5 -5
  245. package/dist/src/components/ui/input-otp.d.ts.map +1 -1
  246. package/dist/src/components/ui/input-otp.js +1 -1
  247. package/dist/src/components/ui/input.d.ts +2 -2
  248. package/dist/src/components/ui/input.d.ts.map +1 -1
  249. package/dist/src/components/ui/input.js +1 -1
  250. package/dist/src/components/ui/item.d.ts +24 -0
  251. package/dist/src/components/ui/item.d.ts.map +1 -0
  252. package/dist/src/components/ui/item.js +1 -0
  253. package/dist/src/components/ui/kbd.d.ts +4 -0
  254. package/dist/src/components/ui/kbd.d.ts.map +1 -0
  255. package/dist/src/components/ui/kbd.js +1 -0
  256. package/dist/src/components/ui/label.d.ts +2 -2
  257. package/dist/src/components/ui/label.d.ts.map +1 -1
  258. package/dist/src/components/ui/label.js +1 -1
  259. package/dist/src/components/ui/loader.d.ts +1 -1
  260. package/dist/src/components/ui/loader.d.ts.map +1 -1
  261. package/dist/src/components/ui/menubar.d.ts +21 -17
  262. package/dist/src/components/ui/menubar.d.ts.map +1 -1
  263. package/dist/src/components/ui/menubar.js +1 -1
  264. package/dist/src/components/ui/native-select.d.ts +9 -0
  265. package/dist/src/components/ui/native-select.d.ts.map +1 -0
  266. package/dist/src/components/ui/native-select.js +1 -0
  267. package/dist/src/components/ui/navigation-menu.d.ts +9 -9
  268. package/dist/src/components/ui/navigation-menu.d.ts.map +1 -1
  269. package/dist/src/components/ui/navigation-menu.js +1 -1
  270. package/dist/src/components/ui/pagination.d.ts +18 -0
  271. package/dist/src/components/ui/pagination.d.ts.map +1 -0
  272. package/dist/src/components/ui/pagination.js +1 -0
  273. package/dist/src/components/ui/popover.d.ts +9 -6
  274. package/dist/src/components/ui/popover.d.ts.map +1 -1
  275. package/dist/src/components/ui/popover.js +1 -1
  276. package/dist/src/components/ui/progress.d.ts +2 -2
  277. package/dist/src/components/ui/progress.d.ts.map +1 -1
  278. package/dist/src/components/ui/progress.js +1 -1
  279. package/dist/src/components/ui/radio-group.d.ts +3 -3
  280. package/dist/src/components/ui/radio-group.d.ts.map +1 -1
  281. package/dist/src/components/ui/radio-group.js +1 -1
  282. package/dist/src/components/ui/resizable.d.ts +8 -0
  283. package/dist/src/components/ui/resizable.d.ts.map +1 -0
  284. package/dist/src/components/ui/resizable.js +1 -0
  285. package/dist/src/components/ui/scroll-area.d.ts +3 -3
  286. package/dist/src/components/ui/scroll-area.d.ts.map +1 -1
  287. package/dist/src/components/ui/scroll-area.js +1 -1
  288. package/dist/src/components/ui/select.d.ts +11 -11
  289. package/dist/src/components/ui/select.d.ts.map +1 -1
  290. package/dist/src/components/ui/select.js +1 -1
  291. package/dist/src/components/ui/separator.d.ts +2 -2
  292. package/dist/src/components/ui/separator.d.ts.map +1 -1
  293. package/dist/src/components/ui/separator.js +1 -1
  294. package/dist/src/components/ui/sheet.d.ts +11 -10
  295. package/dist/src/components/ui/sheet.d.ts.map +1 -1
  296. package/dist/src/components/ui/sheet.js +1 -1
  297. package/dist/src/components/ui/sidebar.d.ts +25 -25
  298. package/dist/src/components/ui/sidebar.d.ts.map +1 -1
  299. package/dist/src/components/ui/sidebar.js +1 -1
  300. package/dist/src/components/ui/skeleton.d.ts +1 -1
  301. package/dist/src/components/ui/skeleton.d.ts.map +1 -1
  302. package/dist/src/components/ui/skeleton.js +1 -1
  303. package/dist/src/components/ui/slider.d.ts +2 -2
  304. package/dist/src/components/ui/slider.d.ts.map +1 -1
  305. package/dist/src/components/ui/slider.js +1 -1
  306. package/dist/src/components/ui/sonner.d.ts +2 -2
  307. package/dist/src/components/ui/sonner.d.ts.map +1 -1
  308. package/dist/src/components/ui/sonner.js +1 -1
  309. package/dist/src/components/ui/spinner.d.ts +3 -0
  310. package/dist/src/components/ui/spinner.d.ts.map +1 -0
  311. package/dist/src/components/ui/spinner.js +1 -0
  312. package/dist/src/components/ui/switch.d.ts +4 -2
  313. package/dist/src/components/ui/switch.d.ts.map +1 -1
  314. package/dist/src/components/ui/switch.js +1 -1
  315. package/dist/src/components/ui/table.d.ts +9 -9
  316. package/dist/src/components/ui/table.d.ts.map +1 -1
  317. package/dist/src/components/ui/table.js +1 -1
  318. package/dist/src/components/ui/tabs.d.ts +10 -6
  319. package/dist/src/components/ui/tabs.d.ts.map +1 -1
  320. package/dist/src/components/ui/tabs.js +1 -1
  321. package/dist/src/components/ui/textarea.d.ts +2 -2
  322. package/dist/src/components/ui/textarea.d.ts.map +1 -1
  323. package/dist/src/components/ui/textarea.js +1 -1
  324. package/dist/src/components/ui/toggle-group.d.ts +9 -5
  325. package/dist/src/components/ui/toggle-group.d.ts.map +1 -1
  326. package/dist/src/components/ui/toggle-group.js +1 -1
  327. package/dist/src/components/ui/toggle.d.ts +2 -3
  328. package/dist/src/components/ui/toggle.d.ts.map +1 -1
  329. package/dist/src/components/ui/toggle.js +1 -1
  330. package/dist/src/components/ui/tooltip.d.ts +9 -8
  331. package/dist/src/components/ui/tooltip.d.ts.map +1 -1
  332. package/dist/src/components/ui/tooltip.js +1 -1
  333. package/dist/src/components/user-format.d.ts +14 -0
  334. package/dist/src/components/user-format.d.ts.map +1 -0
  335. package/dist/src/components/user-format.js +1 -0
  336. package/dist/src/emails/default-template.d.ts +1 -1
  337. package/dist/src/emails/default-template.d.ts.map +1 -1
  338. package/dist/src/emails/default-template.js +1 -1
  339. package/dist/src/emails/reset-password.d.ts +1 -1
  340. package/dist/src/emails/reset-password.d.ts.map +1 -1
  341. package/dist/src/emails/ui/button.d.ts +2 -2
  342. package/dist/src/emails/ui/button.d.ts.map +1 -1
  343. package/dist/src/emails/ui/card.d.ts +6 -6
  344. package/dist/src/emails/ui/card.d.ts.map +1 -1
  345. package/dist/src/hooks/use-captcha.d.ts.map +1 -1
  346. package/dist/src/hooks/use-captcha.js +1 -1
  347. package/dist/src/hooks/use-mobile.js +1 -1
  348. package/dist/src/lib/colors.d.ts.map +1 -1
  349. package/dist/src/lib/fetcher/core.d.ts.map +1 -1
  350. package/dist/src/lib/fetcher/core.js +1 -1
  351. package/dist/src/lib/fetcher/types.d.ts.map +1 -1
  352. package/dist/src/lib/helpers/auto-form.d.ts +2 -0
  353. package/dist/src/lib/helpers/auto-form.d.ts.map +1 -1
  354. package/dist/src/lib/helpers/auto-form.js +1 -1
  355. package/dist/src/lib/helpers/auto-form.test.js +1 -1
  356. package/dist/src/lib/navigation.d.ts +26 -25
  357. package/dist/src/lib/navigation.d.ts.map +1 -1
  358. package/dist/src/lib/plugin.d.ts.map +1 -1
  359. package/dist/src/locales/en.json +66 -2
  360. package/dist/src/{app_admin → routes/admin}/core/advanced/cron/page.d.ts +2 -2
  361. package/dist/src/routes/admin/core/advanced/cron/page.d.ts.map +1 -0
  362. package/dist/src/routes/admin/core/advanced/cron/page.js +1 -0
  363. package/dist/src/{app_admin → routes/admin}/core/debug/page.d.ts +1 -1
  364. package/dist/src/routes/admin/core/debug/page.d.ts.map +1 -0
  365. package/dist/src/routes/admin/core/debug/page.js +1 -0
  366. package/dist/src/routes/admin/core/page.d.ts +2 -0
  367. package/dist/src/routes/admin/core/page.d.ts.map +1 -0
  368. package/dist/src/routes/admin/core/page.js +1 -0
  369. package/dist/src/routes/admin/core/test/page.d.ts +2 -0
  370. package/dist/src/routes/admin/core/test/page.d.ts.map +1 -0
  371. package/dist/src/routes/admin/core/test/page.js +1 -0
  372. package/dist/src/routes/admin/core/users/[nameCode]/page.d.ts +13 -0
  373. package/dist/src/routes/admin/core/users/[nameCode]/page.d.ts.map +1 -0
  374. package/dist/src/routes/admin/core/users/[nameCode]/page.js +1 -0
  375. package/dist/src/{app_admin → routes/admin}/core/users/page.d.ts +1 -1
  376. package/dist/src/routes/admin/core/users/page.d.ts.map +1 -0
  377. package/dist/src/routes/admin/core/users/page.js +1 -0
  378. package/dist/src/routes/admin/core/users/roles/page.d.ts +9 -0
  379. package/dist/src/routes/admin/core/users/roles/page.d.ts.map +1 -0
  380. package/dist/src/routes/admin/core/users/roles/page.js +1 -0
  381. package/dist/src/routes/blank/test/page.d.ts +2 -0
  382. package/dist/src/routes/blank/test/page.d.ts.map +1 -0
  383. package/dist/src/routes/blank/test/page.js +1 -0
  384. package/dist/src/routes/breadcrumb/admin/[...all]/page.d.ts +6 -0
  385. package/dist/src/routes/breadcrumb/admin/[...all]/page.d.ts.map +1 -0
  386. package/dist/src/routes/breadcrumb/admin/[...all]/page.js +1 -0
  387. package/dist/src/routes/breadcrumb/admin/core/users/[nameCode]/page.d.ts +6 -0
  388. package/dist/src/routes/breadcrumb/admin/core/users/[nameCode]/page.d.ts.map +1 -0
  389. package/dist/src/routes/breadcrumb/admin/core/users/[nameCode]/page.js +1 -0
  390. package/dist/src/routes/breadcrumb/admin/default.d.ts +2 -0
  391. package/dist/src/routes/breadcrumb/admin/default.d.ts.map +1 -0
  392. package/dist/src/routes/breadcrumb/admin/default.js +1 -0
  393. package/dist/src/routes/breadcrumb/main/[...rest]/page.d.ts +6 -0
  394. package/dist/src/routes/breadcrumb/main/[...rest]/page.d.ts.map +1 -0
  395. package/dist/src/routes/breadcrumb/main/[...rest]/page.js +1 -0
  396. package/dist/src/routes/breadcrumb/main/default.d.ts +2 -0
  397. package/dist/src/routes/breadcrumb/main/default.d.ts.map +1 -0
  398. package/dist/src/routes/breadcrumb/main/default.js +1 -0
  399. package/dist/src/routes/breadcrumb/main/login/page.d.ts +2 -0
  400. package/dist/src/routes/breadcrumb/main/login/page.d.ts.map +1 -0
  401. package/dist/src/routes/breadcrumb/main/login/page.js +1 -0
  402. package/dist/src/routes/breadcrumb/main/login/reset-password/page.d.ts +2 -0
  403. package/dist/src/routes/breadcrumb/main/login/reset-password/page.d.ts.map +1 -0
  404. package/dist/src/routes/breadcrumb/main/login/reset-password/page.js +1 -0
  405. package/dist/src/routes/breadcrumb/main/page.d.ts +2 -0
  406. package/dist/src/routes/breadcrumb/main/page.d.ts.map +1 -0
  407. package/dist/src/routes/breadcrumb/main/page.js +1 -0
  408. package/dist/src/routes/breadcrumb/main/register/page.d.ts +2 -0
  409. package/dist/src/routes/breadcrumb/main/register/page.d.ts.map +1 -0
  410. package/dist/src/routes/breadcrumb/main/register/page.js +1 -0
  411. package/dist/src/{app → routes/main}/login/page.d.ts +1 -1
  412. package/dist/src/routes/main/login/page.d.ts.map +1 -0
  413. package/dist/src/routes/main/login/page.js +1 -0
  414. package/dist/src/{app → routes/main}/login/reset-password/page.d.ts +2 -2
  415. package/dist/src/routes/main/login/reset-password/page.d.ts.map +1 -0
  416. package/dist/src/routes/main/login/reset-password/page.js +1 -0
  417. package/dist/src/{app → routes/main}/login/sso/[providerId]/page.d.ts +1 -1
  418. package/dist/src/routes/main/login/sso/[providerId]/page.d.ts.map +1 -0
  419. package/dist/src/routes/main/login/sso/[providerId]/page.js +1 -0
  420. package/dist/src/{app → routes/main}/register/page.d.ts +1 -1
  421. package/dist/src/routes/main/register/page.d.ts.map +1 -0
  422. package/dist/src/routes/main/register/page.js +1 -0
  423. package/dist/src/views/admin/layouts/admin-layout.d.ts +3 -2
  424. package/dist/src/views/admin/layouts/admin-layout.d.ts.map +1 -1
  425. package/dist/src/views/admin/layouts/admin-layout.js +1 -1
  426. package/dist/src/views/admin/layouts/breadcrumb/breadcrumb-admin.d.ts +11 -0
  427. package/dist/src/views/admin/layouts/breadcrumb/breadcrumb-admin.d.ts.map +1 -0
  428. package/dist/src/views/admin/layouts/breadcrumb/breadcrumb-admin.js +1 -0
  429. package/dist/src/views/admin/layouts/breadcrumb/breadcrumb-user-admin.d.ts +6 -0
  430. package/dist/src/views/admin/layouts/breadcrumb/breadcrumb-user-admin.d.ts.map +1 -0
  431. package/dist/src/views/admin/layouts/breadcrumb/breadcrumb-user-admin.js +1 -0
  432. package/dist/src/views/admin/layouts/breadcrumb/resolve-breadcrumb.d.ts +5 -0
  433. package/dist/src/views/admin/layouts/breadcrumb/resolve-breadcrumb.d.ts.map +1 -0
  434. package/dist/src/views/admin/layouts/breadcrumb/resolve-breadcrumb.js +1 -0
  435. package/dist/src/views/admin/layouts/sidebar/nav/get-admin-nav.d.ts +11 -0
  436. package/dist/src/views/admin/layouts/sidebar/nav/get-admin-nav.d.ts.map +1 -0
  437. package/dist/src/views/admin/layouts/sidebar/nav/get-admin-nav.js +1 -0
  438. package/dist/src/views/admin/layouts/sidebar/nav/item.d.ts +1 -1
  439. package/dist/src/views/admin/layouts/sidebar/nav/item.d.ts.map +1 -1
  440. package/dist/src/views/admin/layouts/sidebar/nav/nav.d.ts +5 -9
  441. package/dist/src/views/admin/layouts/sidebar/nav/nav.d.ts.map +1 -1
  442. package/dist/src/views/admin/layouts/sidebar/nav/nav.js +1 -1
  443. package/dist/src/views/admin/layouts/sidebar/sidebar.d.ts +1 -1
  444. package/dist/src/views/admin/layouts/sidebar/sidebar.d.ts.map +1 -1
  445. package/dist/src/views/admin/layouts/sidebar/sidebar.js +1 -1
  446. package/dist/src/views/admin/layouts/sidebar/sign-out.d.ts +1 -1
  447. package/dist/src/views/admin/layouts/sidebar/sign-out.d.ts.map +1 -1
  448. package/dist/src/views/admin/layouts/user-bar/client.d.ts +1 -1
  449. package/dist/src/views/admin/layouts/user-bar/client.d.ts.map +1 -1
  450. package/dist/src/views/admin/layouts/user-bar/user-bar.d.ts +1 -1
  451. package/dist/src/views/admin/layouts/user-bar/user-bar.d.ts.map +1 -1
  452. package/dist/src/views/admin/sign-in/sign-in-admin-view.d.ts +1 -1
  453. package/dist/src/views/admin/sign-in/sign-in-admin-view.d.ts.map +1 -1
  454. package/dist/src/views/admin/views/core/advanced/cron/cron-table-view.d.ts +1 -1
  455. package/dist/src/views/admin/views/core/advanced/cron/cron-table-view.d.ts.map +1 -1
  456. package/dist/src/views/admin/views/core/advanced/cron/cron-table-view.js +1 -1
  457. package/dist/src/views/admin/views/core/advanced/cron/run-action/run-action.d.ts +1 -1
  458. package/dist/src/views/admin/views/core/advanced/cron/run-action/run-action.d.ts.map +1 -1
  459. package/dist/src/views/admin/views/core/dashboard/dashboard-admin-view.d.ts +1 -1
  460. package/dist/src/views/admin/views/core/dashboard/dashboard-admin-view.d.ts.map +1 -1
  461. package/dist/src/views/admin/views/core/dashboard/dashboard-admin-view.js +1 -1
  462. package/dist/src/views/admin/views/core/dashboard/send-notification/mutation-api.d.ts +6 -0
  463. package/dist/src/views/admin/views/core/dashboard/send-notification/mutation-api.d.ts.map +1 -0
  464. package/dist/src/views/admin/views/core/dashboard/send-notification/mutation-api.js +1 -0
  465. package/dist/src/views/admin/views/core/dashboard/send-notification/send-notification.d.ts +5 -0
  466. package/dist/src/views/admin/views/core/dashboard/send-notification/send-notification.d.ts.map +1 -0
  467. package/dist/src/views/admin/views/core/dashboard/send-notification/send-notification.js +1 -0
  468. package/dist/src/views/admin/views/core/debug/actions/clear-cache/clear-cache.d.ts +1 -1
  469. package/dist/src/views/admin/views/core/debug/actions/clear-cache/clear-cache.d.ts.map +1 -1
  470. package/dist/src/views/admin/views/core/debug/system-logs/actions/more/content.d.ts +1 -1
  471. package/dist/src/views/admin/views/core/debug/system-logs/actions/more/content.d.ts.map +1 -1
  472. package/dist/src/views/admin/views/core/debug/system-logs/actions/more/more.d.ts +1 -1
  473. package/dist/src/views/admin/views/core/debug/system-logs/actions/more/more.d.ts.map +1 -1
  474. package/dist/src/views/admin/views/core/debug/system-logs/badges/badge-status.d.ts +1 -1
  475. package/dist/src/views/admin/views/core/debug/system-logs/badges/badge-status.d.ts.map +1 -1
  476. package/dist/src/views/admin/views/core/debug/system-logs/badges/badge-type-log.d.ts +1 -1
  477. package/dist/src/views/admin/views/core/debug/system-logs/badges/badge-type-log.d.ts.map +1 -1
  478. package/dist/src/views/admin/views/core/debug/system-logs/system-logs-view.d.ts +1 -1
  479. package/dist/src/views/admin/views/core/debug/system-logs/system-logs-view.d.ts.map +1 -1
  480. package/dist/src/views/admin/views/core/debug/system-logs/system-logs-view.js +1 -1
  481. package/dist/src/views/admin/views/core/test.d.ts +1 -1
  482. package/dist/src/views/admin/views/core/test.d.ts.map +1 -1
  483. package/dist/src/views/admin/views/core/test.js +1 -1
  484. package/dist/src/views/admin/views/core/users/actions/create/content.d.ts +2 -0
  485. package/dist/src/views/admin/views/core/users/actions/create/content.d.ts.map +1 -0
  486. package/dist/src/views/admin/views/core/users/actions/create/content.js +1 -0
  487. package/dist/src/views/admin/views/core/users/actions/create/create.d.ts +3 -0
  488. package/dist/src/views/admin/views/core/users/actions/create/create.d.ts.map +1 -0
  489. package/dist/src/views/admin/views/core/users/actions/create/create.js +1 -0
  490. package/dist/src/views/admin/views/core/users/actions/create/mutation-api.d.ts +14 -0
  491. package/dist/src/views/admin/views/core/users/actions/create/mutation-api.d.ts.map +1 -0
  492. package/dist/src/views/admin/views/core/users/actions/create/mutation-api.js +1 -0
  493. package/dist/src/views/admin/views/core/users/actions/create/use-form.d.ts +15 -0
  494. package/dist/src/views/admin/views/core/users/actions/create/use-form.d.ts.map +1 -0
  495. package/dist/src/views/admin/views/core/users/actions/create/use-form.js +1 -0
  496. package/dist/src/views/admin/views/core/users/actions/verify-email/mutation-api.d.ts +11 -0
  497. package/dist/src/views/admin/views/core/users/actions/verify-email/mutation-api.d.ts.map +1 -0
  498. package/dist/src/views/admin/views/core/users/actions/verify-email/mutation-api.js +1 -0
  499. package/dist/src/views/admin/views/core/users/actions/verify-email/verify-email.d.ts +6 -0
  500. package/dist/src/views/admin/views/core/users/actions/verify-email/verify-email.d.ts.map +1 -0
  501. package/dist/src/views/admin/views/core/users/actions/verify-email/verify-email.js +1 -0
  502. package/dist/src/views/admin/views/core/users/actions.d.ts +5 -0
  503. package/dist/src/views/admin/views/core/users/actions.d.ts.map +1 -0
  504. package/dist/src/views/admin/views/core/users/actions.js +1 -0
  505. package/dist/src/views/admin/views/core/users/roles/roles-admin-view.d.ts +4 -0
  506. package/dist/src/views/admin/views/core/users/roles/roles-admin-view.d.ts.map +1 -0
  507. package/dist/src/views/admin/views/core/users/roles/roles-admin-view.js +1 -0
  508. package/dist/src/views/admin/views/core/users/search-roles.action.d.ts +3 -0
  509. package/dist/src/views/admin/views/core/users/search-roles.action.d.ts.map +1 -0
  510. package/dist/src/views/admin/views/core/users/search-roles.action.js +1 -0
  511. package/dist/src/views/admin/views/core/users/show/show-user-admin-view.d.ts +4 -0
  512. package/dist/src/views/admin/views/core/users/show/show-user-admin-view.d.ts.map +1 -0
  513. package/dist/src/views/admin/views/core/users/show/show-user-admin-view.js +1 -0
  514. package/dist/src/views/admin/views/core/users/users-admin-view.d.ts +1 -1
  515. package/dist/src/views/admin/views/core/users/users-admin-view.d.ts.map +1 -1
  516. package/dist/src/views/admin/views/core/users/users-admin-view.js +1 -1
  517. package/dist/src/views/auth/password-reset/change-password-form/form.d.ts +1 -1
  518. package/dist/src/views/auth/password-reset/change-password-form/form.d.ts.map +1 -1
  519. package/dist/src/views/auth/password-reset/form/form.d.ts +1 -1
  520. package/dist/src/views/auth/password-reset/form/form.d.ts.map +1 -1
  521. package/dist/src/views/auth/password-reset/password-reset-view.d.ts +1 -1
  522. package/dist/src/views/auth/password-reset/password-reset-view.d.ts.map +1 -1
  523. package/dist/src/views/auth/password-reset/password-reset-view.js +1 -1
  524. package/dist/src/views/auth/sign-in/form/form.d.ts +1 -1
  525. package/dist/src/views/auth/sign-in/form/form.d.ts.map +1 -1
  526. package/dist/src/views/auth/sign-in/sign-in-view.d.ts +2 -1
  527. package/dist/src/views/auth/sign-in/sign-in-view.d.ts.map +1 -1
  528. package/dist/src/views/auth/sign-in/sign-in-view.js +1 -1
  529. package/dist/src/views/auth/sign-up/components/password-input.d.ts +1 -1
  530. package/dist/src/views/auth/sign-up/components/password-input.d.ts.map +1 -1
  531. package/dist/src/views/auth/sign-up/components/password-input.js +1 -1
  532. package/dist/src/views/auth/sign-up/email-confirmation-view.d.ts +1 -1
  533. package/dist/src/views/auth/sign-up/email-confirmation-view.d.ts.map +1 -1
  534. package/dist/src/views/auth/sign-up/form/form.d.ts +1 -1
  535. package/dist/src/views/auth/sign-up/form/form.d.ts.map +1 -1
  536. package/dist/src/views/auth/sign-up/sign-up-view.d.ts +2 -1
  537. package/dist/src/views/auth/sign-up/sign-up-view.d.ts.map +1 -1
  538. package/dist/src/views/auth/sign-up/sign-up-view.js +1 -1
  539. package/dist/src/views/auth/sign-up/wrapper.d.ts +1 -1
  540. package/dist/src/views/auth/sign-up/wrapper.d.ts.map +1 -1
  541. package/dist/src/views/auth/sso/buttons/client.d.ts +1 -1
  542. package/dist/src/views/auth/sso/buttons/client.d.ts.map +1 -1
  543. package/dist/src/views/auth/sso/buttons/sso-buttons.d.ts +2 -2
  544. package/dist/src/views/auth/sso/buttons/sso-buttons.d.ts.map +1 -1
  545. package/dist/src/views/auth/sso/callback/callback-sso-view.d.ts +1 -1
  546. package/dist/src/views/auth/sso/callback/callback-sso-view.d.ts.map +1 -1
  547. package/dist/src/views/auth/sso/callback/client/client.d.ts +1 -1
  548. package/dist/src/views/auth/sso/callback/client/client.d.ts.map +1 -1
  549. package/dist/src/views/breadcrumb/breadcrumb-main.d.ts +7 -0
  550. package/dist/src/views/breadcrumb/breadcrumb-main.d.ts.map +1 -0
  551. package/dist/src/views/breadcrumb/breadcrumb-main.js +1 -0
  552. package/dist/src/views/breadcrumb/breadcrumb-render.d.ts +5 -0
  553. package/dist/src/views/breadcrumb/breadcrumb-render.d.ts.map +1 -0
  554. package/dist/src/views/breadcrumb/breadcrumb-render.js +1 -0
  555. package/dist/src/views/breadcrumb/crumb.d.ts +9 -0
  556. package/dist/src/views/breadcrumb/crumb.d.ts.map +1 -0
  557. package/dist/src/views/breadcrumb/crumb.js +1 -0
  558. package/dist/src/views/breadcrumb/resolve-main-breadcrumb.d.ts +3 -0
  559. package/dist/src/views/breadcrumb/resolve-main-breadcrumb.d.ts.map +1 -0
  560. package/dist/src/views/breadcrumb/resolve-main-breadcrumb.js +1 -0
  561. package/dist/src/views/error/back-button.d.ts +1 -1
  562. package/dist/src/views/error/back-button.d.ts.map +1 -1
  563. package/dist/src/views/error/error-view.d.ts +1 -1
  564. package/dist/src/views/error/error-view.d.ts.map +1 -1
  565. package/dist/src/views/error/global-error-view.d.ts +1 -1
  566. package/dist/src/views/error/global-error-view.d.ts.map +1 -1
  567. package/dist/src/views/layouts/provider.d.ts +3 -5
  568. package/dist/src/views/layouts/provider.d.ts.map +1 -1
  569. package/dist/src/views/layouts/provider.js +1 -1
  570. package/dist/src/views/layouts/root-layout.d.ts +1 -1
  571. package/dist/src/views/layouts/root-layout.d.ts.map +1 -1
  572. package/dist/src/views/layouts/root-layout.js +1 -1
  573. package/dist/src/views/layouts/theme/header/header.d.ts +1 -1
  574. package/dist/src/views/layouts/theme/header/header.d.ts.map +1 -1
  575. package/dist/src/views/layouts/theme/header/user/auth/auth.d.ts +1 -1
  576. package/dist/src/views/layouts/theme/header/user/auth/auth.d.ts.map +1 -1
  577. package/dist/src/views/layouts/theme/header/user/auth/client.d.ts +1 -1
  578. package/dist/src/views/layouts/theme/header/user/auth/client.d.ts.map +1 -1
  579. package/dist/src/views/layouts/theme/header/user/user.d.ts +1 -1
  580. package/dist/src/views/layouts/theme/header/user/user.d.ts.map +1 -1
  581. package/dist/src/views/layouts/theme/layout.d.ts +3 -2
  582. package/dist/src/views/layouts/theme/layout.d.ts.map +1 -1
  583. package/dist/src/views/layouts/theme/layout.js +1 -1
  584. package/dist/src/views/layouts/theme/notification-listener.d.ts +2 -0
  585. package/dist/src/views/layouts/theme/notification-listener.d.ts.map +1 -0
  586. package/dist/src/views/layouts/theme/notification-listener.js +1 -0
  587. package/dist/src/views/layouts/theme/web-socket-auth-sync.d.ts +4 -0
  588. package/dist/src/views/layouts/theme/web-socket-auth-sync.d.ts.map +1 -0
  589. package/dist/src/views/layouts/theme/web-socket-auth-sync.js +1 -0
  590. package/dist/src/vitnode.config.d.ts +4 -0
  591. package/dist/src/vitnode.config.d.ts.map +1 -1
  592. package/dist/src/vitnode.config.js +1 -1
  593. package/dist/src/ws/handle.d.ts +5 -0
  594. package/dist/src/ws/handle.d.ts.map +1 -0
  595. package/dist/src/ws/handle.js +1 -0
  596. package/dist/src/ws/manager.d.ts +14 -0
  597. package/dist/src/ws/manager.d.ts.map +1 -0
  598. package/dist/src/ws/manager.js +1 -0
  599. package/dist/src/ws/notifications.d.ts +8 -0
  600. package/dist/src/ws/notifications.d.ts.map +1 -0
  601. package/dist/src/ws/notifications.js +1 -0
  602. package/dist/src/ws/provider.d.ts +14 -0
  603. package/dist/src/ws/provider.d.ts.map +1 -0
  604. package/dist/src/ws/provider.js +1 -0
  605. package/dist/src/ws/registry.d.ts +14 -0
  606. package/dist/src/ws/registry.d.ts.map +1 -0
  607. package/dist/src/ws/registry.js +1 -0
  608. package/dist/src/ws/types.d.ts +22 -0
  609. package/dist/src/ws/types.d.ts.map +1 -0
  610. package/dist/src/ws/types.js +1 -0
  611. package/dist/src/ws/use-websocket.d.ts +9 -0
  612. package/dist/src/ws/use-websocket.d.ts.map +1 -0
  613. package/dist/src/ws/use-websocket.js +1 -0
  614. package/dist/tsconfig.tsbuildinfo +1 -1
  615. package/dist/vitest.config.d.ts.map +1 -1
  616. package/dist/vitest.config.js +1 -2
  617. package/package.json +61 -52
  618. package/src/locales/en.json +66 -2
  619. package/src/routes/admin/core/page.tsx +5 -0
  620. package/src/routes/admin/core/test/page.tsx +5 -0
  621. package/src/routes/admin/core/users/[nameCode]/page.tsx +65 -0
  622. package/src/{app_admin → routes/admin}/core/users/page.tsx +13 -7
  623. package/src/routes/admin/core/users/roles/page.tsx +46 -0
  624. package/src/routes/blank/test/page.tsx +11 -0
  625. package/src/routes/breadcrumb/admin/[...all]/page.tsx +17 -0
  626. package/src/routes/breadcrumb/admin/core/users/[nameCode]/page.tsx +12 -0
  627. package/src/routes/breadcrumb/admin/default.tsx +4 -0
  628. package/src/routes/breadcrumb/main/[...rest]/page.tsx +17 -0
  629. package/src/routes/breadcrumb/main/default.tsx +4 -0
  630. package/src/routes/breadcrumb/main/login/page.tsx +11 -0
  631. package/src/routes/breadcrumb/main/login/reset-password/page.tsx +20 -0
  632. package/src/routes/breadcrumb/main/page.tsx +6 -0
  633. package/src/routes/breadcrumb/main/register/page.tsx +14 -0
  634. package/src/{app → routes/main}/login/page.tsx +1 -1
  635. package/src/{app → routes/main}/register/page.tsx +1 -1
  636. package/dist/src/app/login/page.d.ts.map +0 -1
  637. package/dist/src/app/login/page.js +0 -1
  638. package/dist/src/app/login/reset-password/page.d.ts.map +0 -1
  639. package/dist/src/app/login/reset-password/page.js +0 -1
  640. package/dist/src/app/login/sso/[providerId]/page.d.ts.map +0 -1
  641. package/dist/src/app/login/sso/[providerId]/page.js +0 -1
  642. package/dist/src/app/register/page.d.ts.map +0 -1
  643. package/dist/src/app/register/page.js +0 -1
  644. package/dist/src/app_admin/core/advanced/cron/page.d.ts.map +0 -1
  645. package/dist/src/app_admin/core/advanced/cron/page.js +0 -1
  646. package/dist/src/app_admin/core/debug/page.d.ts.map +0 -1
  647. package/dist/src/app_admin/core/debug/page.js +0 -1
  648. package/dist/src/app_admin/core/page.d.ts +0 -2
  649. package/dist/src/app_admin/core/page.d.ts.map +0 -1
  650. package/dist/src/app_admin/core/page.js +0 -1
  651. package/dist/src/app_admin/core/test/page.d.ts +0 -2
  652. package/dist/src/app_admin/core/test/page.d.ts.map +0 -1
  653. package/dist/src/app_admin/core/test/page.js +0 -1
  654. package/dist/src/app_admin/core/users/page.d.ts.map +0 -1
  655. package/dist/src/app_admin/core/users/page.js +0 -1
  656. package/dist/src/components/form/fields/combobox-async.d.ts +0 -18
  657. package/dist/src/components/form/fields/combobox-async.d.ts.map +0 -1
  658. package/dist/src/components/form/fields/combobox-async.js +0 -1
  659. package/src/app_admin/core/page.tsx +0 -5
  660. package/src/app_admin/core/test/page.tsx +0 -5
  661. /package/src/{app_admin → routes/admin}/core/advanced/cron/page.tsx +0 -0
  662. /package/src/{app_admin → routes/admin}/core/debug/page.tsx +0 -0
  663. /package/src/{app → routes/main}/login/reset-password/page.tsx +0 -0
  664. /package/src/{app → routes/main}/login/sso/[providerId]/page.tsx +0 -0
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{Check,ChevronsUpDown}from"lucide-react";import{useTranslations}from"next-intl";import{Button}from"../../ui/button.js";import{Command,CommandEmpty,CommandGroup,CommandInput,CommandItem,CommandList}from"../../ui/command.js";import{FormControl,FormItem,FormMessage}from"../../ui/form.js";import{Popover,PopoverContent,PopoverTrigger}from"../../ui/popover.js";import{cn}from"../../../lib/utils.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormCombobox=({label,field,description,placeholder,className,otherProps:{enum:enumValues=[],isOptional},labels=[],labelRight,searchPlaceholder,...props})=>{const t=useTranslations("core.global");const values=enumValues.map(value=>{const label=labels.find(l=>l.value===value)?.label;return{value,label:label??value}});return _jsxs(FormItem,{className:"flex flex-col",children:[label&&_jsx(AutoFormLabel,{isOptional:isOptional,labelRight:labelRight,children:label}),_jsxs(Popover,{children:[_jsx(PopoverTrigger,{asChild:true,children:_jsx(FormControl,{children:_jsxs(Button,{"aria-label":"Combobox",className:cn("w-[200px] justify-between",!field.value&&"text-muted-foreground",className),role:"combobox",variant:"outline",...props,children:[field.value?values.find(({value})=>value===field.value)?.label:placeholder??t("select_option"),_jsx(ChevronsUpDown,{className:"ml-2 size-4 shrink-0 opacity-50"})]})})}),_jsx(PopoverContent,{className:"w-[200px] p-0",children:_jsxs(Command,{children:[_jsx(CommandInput,{placeholder:searchPlaceholder??t("search_placeholder")}),_jsxs(CommandList,{children:[_jsx(CommandEmpty,{children:t("results_not_found")}),_jsx(CommandGroup,{children:values.map(({label,value})=>_jsxs(CommandItem,{onSelect:()=>{field.onChange(value)},value:label,children:[label,_jsx(Check,{className:cn("ml-auto",value===field.value?"opacity-100":"opacity-0")})]},value))})]})]})})]}),description&&_jsx(AutoFormDesc,{children:description}),_jsx(FormMessage,{})]})};
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useQuery}from"@tanstack/react-query";import{useTranslations}from"next-intl";import React from"react";import{useDebouncedCallback}from"use-debounce";import{Combobox,ComboboxChip,ComboboxChips,ComboboxChipsInput,ComboboxContent,ComboboxEmpty,ComboboxInput,ComboboxItem,ComboboxList,ComboboxValue,useComboboxAnchor}from"../../ui/combobox.js";import{FormMessage}from"../../ui/form.js";import{Skeleton}from"../../ui/skeleton.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormCombobox=({label,field,itemParams,description,placeholder,otherProps,labels=[],labelRight,onValueChange,onInputValueChange,disabled,multiple=false,className,showClear,fetchData,id,searchPlaceholder,filter,...props})=>{const t=useTranslations("core.global");const anchor=useComboboxAnchor();const isAsync=typeof fetchData==="function";const isMultiple=!isAsync&&multiple;const[search,setSearch]=React.useState("");const{data,isLoading}=useQuery({queryKey:[id??"combobox",{search}],queryFn:async()=>{if(!fetchData)return[];return await fetchData({search})},enabled:isAsync});const handleChangeSearch=useDebouncedCallback(value=>{setSearch(value)},500);const items=isAsync?data??[]:otherProps?.enum??[];const inputPlaceholder=isAsync?searchPlaceholder??placeholder??t("select_option"):placeholder??t("select_option");const getComboboxValue=()=>{if(isAsync){return field.value??null}if(isMultiple){return field.value??[]}return field.value??null};const comboboxValue=getComboboxValue();const comboboxDefaultValue=comboboxValue;const comboboxFilter=isAsync?null:filter;const comboboxItemEqual=isAsync?(itemValue,value)=>{const item=itemValue;const currentValue=value;return item?.value===currentValue?.value}:undefined;const onComboboxInputValueChange=(value,event)=>{if(isAsync){handleChangeSearch(value)}onInputValueChange?.(value,event)};const onComboboxValueChange=(value,event)=>{field.onChange(value);onValueChange?.(value,event)};const renderItems=()=>{if(isAsync){return _jsx(ComboboxList,{children:item=>_jsx(ComboboxItem,{value:item,children:item.label},item.value)})}return _jsx(ComboboxList,{children:item=>_jsx(ComboboxItem,{value:item,children:labels.find(l=>l.value===item)?.label??item},item)})};const renderContent=()=>{if(isAsync&&isLoading){return _jsxs("div",{className:"space-y-2 p-2",children:[_jsx(Skeleton,{className:"h-6 rounded-sm"}),_jsx(Skeleton,{className:"h-6 rounded-sm"})]})}return _jsxs(_Fragment,{children:[_jsx(ComboboxEmpty,{children:t("results_not_found")}),renderItems()]})};return _jsxs(_Fragment,{children:[label&&_jsx(AutoFormLabel,{isOptional:otherProps.isOptional,labelRight:labelRight,children:label}),_jsx(Combobox,{autoHighlight:true,defaultValue:comboboxDefaultValue,disabled:disabled,filter:comboboxFilter,isItemEqualToValue:comboboxItemEqual,items:items,multiple:isMultiple,onInputValueChange:onComboboxInputValueChange,onValueChange:onComboboxValueChange,value:comboboxValue,...props,children:isMultiple?_jsxs(_Fragment,{children:[_jsx(ComboboxChips,{className:className,ref:anchor,children:_jsx(ComboboxValue,{children:values=>_jsxs(_Fragment,{children:[values.map(value=>_jsx(ComboboxChip,{children:labels.find(l=>l.value===value)?.label??value},value)),_jsx(ComboboxChipsInput,{})]})})}),_jsx(ComboboxContent,{anchor:anchor,children:renderContent()})]}):_jsxs(_Fragment,{children:[_jsx(ComboboxInput,{"aria-invalid":otherProps?.["aria-invalid"]??false,className:className,disabled:disabled,placeholder:inputPlaceholder,showClear:showClear}),_jsx(ComboboxContent,{anchor:anchor,children:renderContent()})]})}),description&&_jsx(AutoFormDesc,{children:description}),_jsx(FormMessage,{})]})};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=combobox.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combobox.test.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/combobox.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ import{jsx as _jsx}from"react/jsx-runtime";import{QueryClient,QueryClientProvider}from"@tanstack/react-query";import{fireEvent,render,screen,waitFor}from"@testing-library/react";import{afterEach,describe,expect,it,vi}from"vitest";import{AutoFormCombobox}from"./combobox.js";vi.mock("next-intl",()=>({useTranslations:()=>key=>key}));vi.mock("@/components/ui/form",()=>({FormMessage:()=>null,useFormField:()=>({error:undefined,formDescriptionId:"form-item-description",formItemId:"form-item",formMessageId:"form-item-message"})}));afterEach(()=>{vi.useRealTimers()});const createField=(value=null)=>{return{value,onChange:vi.fn(),onBlur:vi.fn(),name:"field",ref:vi.fn()}};const renderWithClient=ui=>{const queryClient=new QueryClient({defaultOptions:{queries:{retry:false}}});return render(_jsx(QueryClientProvider,{client:queryClient,children:ui}))};describe("AutoFormCombobox",()=>{it("uses the translated default placeholder when no placeholder is provided",()=>{renderWithClient(_jsx(AutoFormCombobox,{field:createField(),otherProps:{enum:["option-one"],isOptional:false,"aria-invalid":false}}));expect(screen.getByPlaceholderText("select_option")).toBeTruthy()});it("renders label and placeholder for static options",()=>{renderWithClient(_jsx(AutoFormCombobox,{field:createField(),label:"Type",otherProps:{enum:["option-one","option-two"],isOptional:false,"aria-invalid":false},placeholder:"Pick a type"}));expect(screen.getByText("Type")).toBeTruthy();expect(screen.getByPlaceholderText("Pick a type")).toBeTruthy()});it("renders optional marker, labelRight and description",()=>{renderWithClient(_jsx(AutoFormCombobox,{description:"Choose the primary item type.",field:createField(),label:"Type",labelRight:_jsx("span",{children:"Admin only"}),otherProps:{enum:["option-one"],isOptional:true,"aria-invalid":false}}));expect(screen.getByText("Type")).toBeTruthy();expect(screen.getByText("optional")).toBeTruthy();expect(screen.getByText("Admin only")).toBeTruthy();expect(screen.getByText("Choose the primary item type.")).toBeTruthy()});it("passes disabled and invalid state to the single input",()=>{renderWithClient(_jsx(AutoFormCombobox,{disabled:true,field:createField(),otherProps:{enum:["option-one"],isOptional:false,"aria-invalid":true},placeholder:"Pick a type"}));const input=screen.getByPlaceholderText("Pick a type");expect(input.disabled).toBe(true);expect(input.getAttribute("aria-invalid")).toBe("true")});it("renders chips when multiple for static options",()=>{const{container}=renderWithClient(_jsx(AutoFormCombobox,{field:createField([]),label:"Tags",multiple:true,otherProps:{enum:["one","two"],isOptional:false,"aria-invalid":false}}));expect(container.querySelector("[data-slot='combobox-chips']")).toBeTruthy()});it("renders mapped labels for selected values",()=>{renderWithClient(_jsx(AutoFormCombobox,{field:createField(["option-one"]),labels:[{label:"Option One",value:"option-one"}],multiple:true,otherProps:{enum:["option-one"],isOptional:false,"aria-invalid":false}}));expect(screen.getByText("Option One")).toBeTruthy()});it("falls back to raw selected values when labels are missing",()=>{renderWithClient(_jsx(AutoFormCombobox,{field:createField(["unknown-option"]),multiple:true,otherProps:{enum:["unknown-option"],isOptional:false,"aria-invalid":false}}));expect(screen.getByText("unknown-option")).toBeTruthy()});it("calls onInputValueChange for static input",()=>{const onInputValueChange=vi.fn();renderWithClient(_jsx(AutoFormCombobox,{field:createField(),label:"Type",onInputValueChange:onInputValueChange,otherProps:{enum:["option-one"],isOptional:false,"aria-invalid":false},placeholder:"Pick a type"}));fireEvent.change(screen.getByPlaceholderText("Pick a type"),{target:{value:"opt"}});expect(onInputValueChange).toHaveBeenCalled()});it("calls field.onChange and onValueChange when a static option is selected",async()=>{const field=createField();const onValueChange=vi.fn();renderWithClient(_jsx(AutoFormCombobox,{field:field,onValueChange:onValueChange,otherProps:{enum:["option-one","option-two"],isOptional:false,"aria-invalid":false},placeholder:"Pick a type"}));const input=screen.getByPlaceholderText("Pick a type");fireEvent.focus(input);fireEvent.keyDown(input,{key:"ArrowDown"});fireEvent.keyDown(input,{key:"Enter"});await waitFor(()=>{expect(field.onChange).toHaveBeenCalledWith("option-one")});expect(onValueChange).toHaveBeenCalledWith("option-one",expect.anything())});it("loads async options and ignores multiple",async()=>{const fetchData=vi.fn().mockResolvedValue([{label:"Category",value:"1"}]);const{container}=renderWithClient(_jsx(AutoFormCombobox,{fetchData:fetchData,field:createField(),id:"categoryId",label:"Category",multiple:true,otherProps:{isOptional:false,"aria-invalid":false},searchPlaceholder:"Search categories"}));await waitFor(()=>{expect(fetchData).toHaveBeenCalledWith({search:""})});expect(screen.getByPlaceholderText("Search categories")).toBeTruthy();expect(container.querySelector("[data-slot='combobox-chips']")).toBeNull()});it("uses placeholder as async search placeholder fallback",async()=>{const fetchData=vi.fn().mockResolvedValue([]);renderWithClient(_jsx(AutoFormCombobox,{fetchData:fetchData,field:createField(),id:"categoryId",otherProps:{isOptional:false,"aria-invalid":false},placeholder:"Search from placeholder"}));await waitFor(()=>{expect(fetchData).toHaveBeenCalledWith({search:""})});expect(screen.getByPlaceholderText("Search from placeholder")).toBeTruthy()});it("forwards async input changes without refetching immediately",async()=>{const fetchData=vi.fn().mockResolvedValue([]);const onInputValueChange=vi.fn();renderWithClient(_jsx(AutoFormCombobox,{fetchData:fetchData,field:createField(),id:"categoryId",onInputValueChange:onInputValueChange,otherProps:{isOptional:false,"aria-invalid":false},searchPlaceholder:"Search categories"}));await waitFor(()=>{expect(fetchData).toHaveBeenCalledWith({search:""})});const input=screen.getByPlaceholderText("Search categories");fireEvent.input(input,{target:{value:"cat"}});expect(onInputValueChange).toHaveBeenCalledWith("cat",expect.anything());expect(fetchData).not.toHaveBeenCalledWith({search:"cat"})})});
@@ -1,4 +1,4 @@
1
1
  import type { ItemAutoFormComponentProps } from "../auto-form";
2
2
  import { Input } from "../../ui/input";
3
- export declare const AutoFormInput: ({ label, labelRight, description, otherProps: { isOptional, maxLength, minLength, pattern, type }, field, ...props }: ItemAutoFormComponentProps & Omit<React.ComponentProps<typeof Input>, "value">) => import("react/jsx-runtime").JSX.Element;
3
+ export declare const AutoFormInput: ({ label, labelRight, description, otherProps: { isOptional, maxLength, minLength, pattern, type }, field, itemParams, children, ...props }: ItemAutoFormComponentProps & Omit<React.ComponentProps<typeof Input>, "value">) => import("react").JSX.Element;
4
4
  //# sourceMappingURL=input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAG/D,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAIvC,eAAO,MAAM,aAAa,GAAI,sHAO3B,0BAA0B,GAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,EAAE,OAAO,CAAC,4CAgClD,CAAC"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAG/D,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAIvC,eAAO,MAAM,aAAa,GAAI,4IAU3B,0BAA0B,GAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,EAAE,OAAO,CAAC,gCA0DlD,CAAC"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{FormControl,FormItem,FormMessage}from"../../ui/form.js";import{Input}from"../../ui/input.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormInput=({label,labelRight,description,otherProps:{isOptional,maxLength,minLength,pattern,type},field,...props})=>{return _jsxs(FormItem,{children:[label&&_jsx(AutoFormLabel,{isOptional:isOptional,labelRight:labelRight,children:label}),_jsx(FormControl,{children:_jsx(Input,{...field,maxLength:maxLength,minLength:minLength,onBlur:e=>{field.onBlur();props.onBlur?.(e)},onChange:e=>{field.onChange(e);props.onChange?.(e)},pattern:pattern,type:type??"text",value:field.value??"",...props})}),description&&_jsx(AutoFormDesc,{children:description}),_jsx(FormMessage,{})]})};
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{InputGroup,InputGroupInput}from"../../ui/input-group.js";import{FormControl,FormMessage}from"../../ui/form.js";import{Input}from"../../ui/input.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormInput=({label,labelRight,description,otherProps:{isOptional,maxLength,minLength,pattern,type},field,itemParams,children,...props})=>{return _jsxs(_Fragment,{children:[label&&_jsx(AutoFormLabel,{isOptional:isOptional,labelRight:labelRight,children:label}),children?_jsxs(InputGroup,{children:[_jsx(FormControl,{children:_jsx(InputGroupInput,{...field,maxLength:maxLength,minLength:minLength,onBlur:e=>{field.onBlur();props.onBlur?.(e)},onChange:e=>{field.onChange(e);props.onChange?.(e)},pattern:pattern,type:type??"text",value:field.value??"",...props})}),children]}):_jsx(FormControl,{children:_jsx(Input,{...field,maxLength:maxLength,minLength:minLength,onBlur:e=>{field.onBlur();props.onBlur?.(e)},onChange:e=>{field.onChange(e);props.onChange?.(e)},pattern:pattern,type:type??"text",value:field.value??"",...props})}),description&&_jsx(AutoFormDesc,{children:description}),_jsx(FormMessage,{})]})};
@@ -1,10 +1,15 @@
1
1
  import type React from "react";
2
2
  import { RadioGroup } from "../../../components/ui/radio-group";
3
3
  import type { ItemAutoFormComponentProps } from "../auto-form";
4
- export declare const AutoFormRadioGroup: ({ label, labelRight, field, description, otherProps: { enum: enumValues, isOptional }, labels, ...props }: ItemAutoFormComponentProps & Omit<React.ComponentProps<typeof RadioGroup>, "value"> & {
5
- labels?: {
6
- label: string;
7
- value: string;
8
- }[];
9
- }) => import("react/jsx-runtime").JSX.Element;
4
+ interface ItemAutoFormRadioGroupLabelsProps {
5
+ description?: string;
6
+ disabled?: boolean;
7
+ label: string;
8
+ value: string;
9
+ }
10
+ export declare const AutoFormRadioGroup: ({ label, labelRight, field, itemParams, description, otherProps: { enum: enumValues, isOptional }, labels, variant, ...props }: ItemAutoFormComponentProps & Omit<React.ComponentProps<typeof RadioGroup>, "value"> & {
11
+ labels?: ItemAutoFormRadioGroupLabelsProps[];
12
+ variant?: "blocks" | "default";
13
+ }) => React.JSX.Element;
14
+ export {};
10
15
  //# sourceMappingURL=radio-group.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/radio-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,EAAE,UAAU,EAAkB,MAAM,6BAA6B,CAAC;AAEzE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAK/D,eAAO,MAAM,kBAAkB,GAAI,2GAQhC,0BAA0B,GAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,UAAU,CAAC,EAAE,OAAO,CAAC,GAAG;IACvD,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC7C,4CA2CF,CAAC"}
1
+ {"version":3,"file":"radio-group.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/radio-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,OAAO,EAAE,UAAU,EAAkB,MAAM,6BAA6B,CAAC;AAEzE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAK/D,UAAU,iCAAiC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,kBAAkB,GAAI,gIAWhC,0BAA0B,GAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,UAAU,CAAC,EAAE,OAAO,CAAC,GAAG;IACvD,MAAM,CAAC,EAAE,iCAAiC,EAAE,CAAC;IAC7C,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAChC,sBAgFF,CAAC"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{FormControl,FormItem,FormLabel,FormMessage}from"../../ui/form.js";import{RadioGroup,RadioGroupItem}from"../../ui/radio-group.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormRadioGroup=({label,labelRight,field,description,otherProps:{enum:enumValues=[],isOptional},labels=[],...props})=>{const values=enumValues.map(value=>{const label=labels.find(l=>l.value===value)?.label;return{value,label:label??value}});return _jsxs(FormItem,{className:"space-y-3",children:[label&&_jsx(AutoFormLabel,{isOptional:isOptional,labelRight:labelRight,children:label}),_jsx(FormControl,{children:_jsx(RadioGroup,{defaultValue:field.value,disabled:props.disabled,onValueChange:field.onChange,...props,children:values.map(({value,label})=>_jsxs(FormItem,{className:"flex items-center space-y-0 space-x-3",children:[_jsx(FormControl,{children:_jsx(RadioGroupItem,{value:value})}),_jsx(FormLabel,{className:"font-normal",children:label})]},value))})}),description&&_jsx(AutoFormDesc,{children:description}),_jsx(FormMessage,{})]})};
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{Field,FieldContent,FieldDescription,FieldLabel,FieldTitle}from"../../ui/field.js";import{FormControl,FormMessage}from"../../ui/form.js";import{RadioGroup,RadioGroupItem}from"../../ui/radio-group.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormRadioGroup=({label,labelRight,field,itemParams,description,otherProps:{enum:enumValues=[],isOptional},labels=[],variant="default",...props})=>{const values=enumValues.map(value=>{const item=labels.find(l=>l.value===value);return{value,label:item?.label??value,description:item?.description,disabled:item?.disabled}});return _jsxs(_Fragment,{children:[label&&_jsx(AutoFormLabel,{isOptional:isOptional,labelRight:labelRight,children:label}),description&&_jsx(AutoFormDesc,{children:description}),_jsx(FormControl,{children:_jsx(RadioGroup,{defaultValue:field.value,disabled:props.disabled,onValueChange:field.onChange,...props,children:values.map(({value,label,description,disabled})=>variant==="default"?_jsxs(Field,{"data-disabled":disabled,orientation:"horizontal",children:[_jsx(FormControl,{children:_jsx(RadioGroupItem,{disabled:disabled,id:`${field.name}-${value}`,value:value})}),_jsxs(FieldContent,{children:[_jsx(FieldLabel,{htmlFor:`${field.name}-${value}`,children:label}),description&&_jsx(FieldDescription,{children:description})]})]},`${field.name}-${value}`):_jsx(FieldLabel,{htmlFor:`${field.name}-${value}`,children:_jsxs(Field,{"data-disabled":disabled,orientation:"horizontal",children:[_jsxs(FieldContent,{children:[_jsx(FieldTitle,{children:label}),description&&_jsx(FieldDescription,{children:description})]}),_jsx(FormControl,{children:_jsx(RadioGroupItem,{disabled:disabled,id:`${field.name}-${value}`,value:value})})]})},`${field.name}-${value}`))})}),_jsx(FormMessage,{})]})};
@@ -1,11 +1,11 @@
1
1
  import type React from "react";
2
2
  import { Select } from "../../../components/ui/select";
3
3
  import type { ItemAutoFormComponentProps } from "../auto-form";
4
- export declare const AutoFormSelect: ({ label, field, description, otherProps: { enum: enumValues, isOptional }, placeholder, labelRight, labels, ...props }: ItemAutoFormComponentProps & Omit<React.ComponentProps<typeof Select>, "value"> & {
4
+ export declare const AutoFormSelect: ({ label, field, itemParams, description, otherProps: { enum: enumValues, isOptional }, placeholder, labelRight, labels, ...props }: ItemAutoFormComponentProps & Omit<React.ComponentProps<typeof Select>, "value"> & {
5
5
  labels?: {
6
6
  label: string;
7
7
  value: string;
8
8
  }[];
9
9
  placeholder?: string;
10
- }) => import("react/jsx-runtime").JSX.Element;
10
+ }) => React.JSX.Element;
11
11
  //# sourceMappingURL=select.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,EACL,MAAM,EAKP,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAK/D,eAAO,MAAM,cAAc,GAAI,wHAS5B,0BAA0B,GAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG;IACnD,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,4CAwDF,CAAC"}
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,EACL,MAAM,EAKP,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAK/D,eAAO,MAAM,cAAc,GAAI,oIAW5B,0BAA0B,GAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG;IACnD,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,sBAwDF,CAAC"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useTranslations}from"next-intl";import{FormControl,FormItem,FormMessage}from"../../ui/form.js";import{Select,SelectContent,SelectItem,SelectTrigger,SelectValue}from"../../ui/select.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormSelect=({label,field,description,otherProps:{enum:enumValues=[],isOptional},placeholder,labelRight,labels=[],...props})=>{const t=useTranslations("core.global");const values=enumValues.map(value=>{const label=labels.find(l=>l.value===value)?.label;return{value,label:label??value}});const currentPlaceholder=(values??labels).find(l=>l.value===field.value)?.label??t("select_option");return _jsxs(FormItem,{className:"space-y-3",children:[label&&_jsx(AutoFormLabel,{isOptional:isOptional,labelRight:labelRight,children:label}),_jsx(FormControl,{children:_jsxs(Select,{defaultValue:field.value,disabled:props.disabled,onValueChange:e=>{field.onChange(e);props?.onValueChange?.(e)},...props,children:[_jsx(SelectTrigger,{...props,children:_jsx(SelectValue,{onBlur:field.onBlur,placeholder:placeholder??currentPlaceholder,children:currentPlaceholder})}),_jsx(SelectContent,{children:values.map(({value,label})=>_jsx(SelectItem,{value:value,children:label},value))})]})}),description&&_jsx(AutoFormDesc,{children:description}),_jsx(FormMessage,{})]})};
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useTranslations}from"next-intl";import{FormControl,FormMessage}from"../../ui/form.js";import{Select,SelectContent,SelectItem,SelectTrigger,SelectValue}from"../../ui/select.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormSelect=({label,field,itemParams,description,otherProps:{enum:enumValues=[],isOptional},placeholder,labelRight,labels=[],...props})=>{const t=useTranslations("core.global");const values=enumValues.map(value=>{const label=labels.find(l=>l.value===value)?.label;return{value,label:label??value}});const currentPlaceholder=(values??labels).find(l=>l.value===field.value)?.label??t("select_option");return _jsxs(_Fragment,{children:[label&&_jsx(AutoFormLabel,{isOptional:isOptional,labelRight:labelRight,children:label}),_jsx(FormControl,{children:_jsxs(Select,{defaultValue:field.value,disabled:props.disabled,onValueChange:e=>{field.onChange(e);props?.onValueChange?.(e)},...props,children:[_jsx(SelectTrigger,{...props,children:_jsx(SelectValue,{onBlur:field.onBlur,placeholder:placeholder??currentPlaceholder,children:currentPlaceholder})}),_jsx(SelectContent,{children:values.map(({value,label})=>_jsx(SelectItem,{value:value,children:label},value))})]})}),description&&_jsx(AutoFormDesc,{children:description}),_jsx(FormMessage,{})]})};
@@ -1,4 +1,4 @@
1
1
  import { Switch } from "../../../components/ui/switch";
2
2
  import type { ItemAutoFormComponentProps } from "../auto-form";
3
- export declare const AutoFormSwitch: ({ label, field, labelRight, otherProps: { isOptional }, description, ...props }: ItemAutoFormComponentProps & Omit<React.ComponentProps<typeof Switch>, "checked">) => import("react/jsx-runtime").JSX.Element;
3
+ export declare const AutoFormSwitch: ({ label, field, itemParams, labelRight, otherProps: { isOptional }, className, description, ...props }: ItemAutoFormComponentProps & Omit<React.ComponentProps<typeof Switch>, "checked">) => import("react").JSX.Element;
4
4
  //# sourceMappingURL=switch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/switch.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAK/D,eAAO,MAAM,cAAc,GAAI,iFAO5B,0BAA0B,GAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EAAE,SAAS,CAAC,4CA8BrD,CAAC"}
1
+ {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/switch.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAGhD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAK/D,eAAO,MAAM,cAAc,GAAI,wGAU5B,0BAA0B,GAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EAAE,SAAS,CAAC,gCAmCrD,CAAC"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{FormControl,FormItem}from"../../ui/form.js";import{Switch}from"../../ui/switch.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormSwitch=({label,field,labelRight,otherProps:{isOptional},description,...props})=>{return _jsxs(FormItem,{className:"flex flex-row items-center justify-between rounded-lg border p-4",children:[(label??description)&&_jsxs("div",{className:"space-y-0.5",children:[label&&_jsx(AutoFormLabel,{className:"text-base",isOptional:isOptional,labelRight:labelRight,children:label}),description&&_jsx(AutoFormDesc,{children:description})]}),_jsx(FormControl,{children:_jsx(Switch,{checked:field.value??false,onCheckedChange:e=>{field.onChange(e);props?.onCheckedChange?.(e)},...props})})]})};
1
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{FormControl}from"../../ui/form.js";import{Switch}from"../../ui/switch.js";import{cn}from"../../../lib/utils.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormSwitch=({label,field,itemParams,labelRight,otherProps:{isOptional},className,description,...props})=>{return _jsxs("div",{className:cn("flex flex-row items-center justify-between rounded-lg border p-4",className),children:[(label??description)&&_jsxs("div",{className:"space-y-0.5",children:[label&&_jsx(AutoFormLabel,{className:"text-base",isOptional:isOptional,labelRight:labelRight,children:label}),description&&_jsx(AutoFormDesc,{children:description})]}),_jsx(FormControl,{children:_jsx(Switch,{checked:field.value??false,onCheckedChange:e=>{field.onChange(e);props?.onCheckedChange?.(e)},...props})})]})};
@@ -1,8 +1,8 @@
1
1
  import type React from "react";
2
2
  import { Textarea } from "../../../components/ui/textarea";
3
3
  import type { ItemAutoFormComponentProps } from "../auto-form";
4
- export declare const AutoFormTextarea: ({ label, description, labelRight, otherProps: { isOptional, maxLength, minLength }, field, ...props }: ItemAutoFormComponentProps & Omit<React.ComponentProps<typeof Textarea>, "value"> & {
4
+ export declare const AutoFormTextarea: ({ label, description, labelRight, otherProps: { isOptional, maxLength, minLength }, field, itemParams, children, ...props }: ItemAutoFormComponentProps & Omit<React.ComponentProps<typeof Textarea>, "value"> & {
5
5
  description?: React.ReactNode;
6
6
  label?: React.ReactNode;
7
- }) => import("react/jsx-runtime").JSX.Element;
7
+ }) => React.JSX.Element;
8
8
  //# sourceMappingURL=textarea.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/textarea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAK/D,eAAO,MAAM,gBAAgB,GAAI,uGAO9B,0BAA0B,GAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,EAAE,OAAO,CAAC,GAAG;IACrD,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB,4CA8BF,CAAC"}
1
+ {"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/fields/textarea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAK/D,eAAO,MAAM,gBAAgB,GAAI,6HAU9B,0BAA0B,GAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,EAAE,OAAO,CAAC,GAAG;IACrD,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB,sBAoDF,CAAC"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{FormControl,FormItem,FormMessage}from"../../ui/form.js";import{Textarea}from"../../ui/textarea.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormTextarea=({label,description,labelRight,otherProps:{isOptional,maxLength,minLength},field,...props})=>{return _jsxs(FormItem,{children:[label&&_jsx(AutoFormLabel,{isOptional:isOptional,labelRight:labelRight,children:label}),_jsx(FormControl,{children:_jsx(Textarea,{maxLength:maxLength,minLength:minLength,onBlur:e=>{field.onBlur();props.onBlur?.(e)},onChange:e=>{field.onChange(e);props.onChange?.(e)},value:field.value??"",...props})}),description&&_jsx(AutoFormDesc,{children:description}),_jsx(FormMessage,{})]})};
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{FormControl,FormMessage}from"../../ui/form.js";import{InputGroup,InputGroupTextarea}from"../../ui/input-group.js";import{Textarea}from"../../ui/textarea.js";import{AutoFormDesc}from"../common/desc.js";import{AutoFormLabel}from"../common/label.js";export const AutoFormTextarea=({label,description,labelRight,otherProps:{isOptional,maxLength,minLength},field,itemParams,children,...props})=>{return _jsxs(_Fragment,{children:[label&&_jsx(AutoFormLabel,{isOptional:isOptional,labelRight:labelRight,children:label}),children?_jsxs(InputGroup,{children:[_jsx(FormControl,{children:_jsx(InputGroupTextarea,{maxLength:maxLength,minLength:minLength,onBlur:e=>{field.onBlur();props.onBlur?.(e)},onChange:e=>{field.onChange(e);props.onChange?.(e)},value:field.value??"",...props})}),children]}):_jsx(FormControl,{children:_jsx(Textarea,{maxLength:maxLength,minLength:minLength,onBlur:e=>{field.onBlur();props.onBlur?.(e)},onChange:e=>{field.onChange(e);props.onChange?.(e)},value:field.value??"",...props})}),description&&_jsx(AutoFormDesc,{children:description}),_jsx(FormMessage,{})]})};
@@ -3,5 +3,5 @@ import "server-only";
3
3
  export declare function I18nProvider<NestedKey extends NamespaceKeys<Messages, NestedKeyOf<Messages>> = never>({ children, namespaces, }: {
4
4
  children: React.ReactNode;
5
5
  namespaces: NestedKey | NestedKey[];
6
- }): Promise<import("react/jsx-runtime").JSX.Element>;
6
+ }): Promise<import("react").JSX.Element>;
7
7
  //# sourceMappingURL=i18n-provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"i18n-provider.d.ts","sourceRoot":"","sources":["../../../src/components/i18n-provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAItE,OAAO,aAAa,CAAC;AA2BrB,wBAAsB,YAAY,CAChC,SAAS,SAAS,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,EACxE,EACA,QAAQ,EACR,UAAU,GACX,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,UAAU,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACrC,oDAaA"}
1
+ {"version":3,"file":"i18n-provider.d.ts","sourceRoot":"","sources":["../../../src/components/i18n-provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAItE,OAAO,aAAa,CAAC;AA2BrB,wBAAsB,YAAY,CAChC,SAAS,SAAS,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,EACxE,EACA,QAAQ,EACR,UAAU,GACX,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,UAAU,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACrC,wCAaA"}
@@ -1,4 +1,4 @@
1
1
  export declare const LogoVitNode: ({ className, small, ...props }: React.ComponentProps<"svg"> & {
2
2
  small?: boolean;
3
- }) => import("react/jsx-runtime").JSX.Element;
3
+ }) => import("react").JSX.Element;
4
4
  //# sourceMappingURL=logo-vitnode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logo-vitnode.d.ts","sourceRoot":"","sources":["../../../src/components/logo-vitnode.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,GAAI,gCAIzB,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,4CA8FA,CAAC"}
1
+ {"version":3,"file":"logo-vitnode.d.ts","sourceRoot":"","sources":["../../../src/components/logo-vitnode.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,GAAI,gCAIzB,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,gCA8FA,CAAC"}
@@ -0,0 +1,11 @@
1
+ export declare const RoleFormat: ({ role, className, style, ...props }: Omit<React.ComponentProps<"span">, "role"> & {
2
+ role: {
3
+ color: null | string;
4
+ id: number;
5
+ name: {
6
+ languageCode: string;
7
+ name: string;
8
+ }[];
9
+ };
10
+ }) => Promise<import("react").JSX.Element>;
11
+ //# sourceMappingURL=role-format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"role-format.d.ts","sourceRoot":"","sources":["../../../src/components/role-format.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,UAAU,GAAU,sCAK9B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG;IAC9C,IAAI,EAAE;QACJ,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC;QACrB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE;YAAE,YAAY,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KAChD,CAAC;CACH,yCAmBA,CAAC"}
@@ -0,0 +1 @@
1
+ import{jsx as _jsx}from"react/jsx-runtime";import{getLocale}from"next-intl/server";import{cn}from"../lib/utils.js";export const RoleFormat=async({role,className,style,...props})=>{const locale=await getLocale();const name=role.name.find(item=>item.languageCode===locale)?.name??role.name[0]?.name??"";return _jsx("span",{className:cn("font-medium",className),style:{...role.color?{color:role.color}:{},...style},...props,children:name})};
@@ -1,5 +1,6 @@
1
+ import React from "react";
1
2
  import type { LocaleConfig } from "../../../vitnode.config";
2
3
  export declare const LanguageSwitcher: ({ locales }: {
3
4
  locales: LocaleConfig[];
4
- }) => import("react/jsx-runtime").JSX.Element;
5
+ }) => React.JSX.Element;
5
6
  //# sourceMappingURL=language-switcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"language-switcher.d.ts","sourceRoot":"","sources":["../../../../../src/components/switchers/langs/language-switcher.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAYrD,eAAO,MAAM,gBAAgB,GAAI,aAAa;IAAE,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,4CAwCxE,CAAC"}
1
+ {"version":3,"file":"language-switcher.d.ts","sourceRoot":"","sources":["../../../../../src/components/switchers/langs/language-switcher.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAYrD,eAAO,MAAM,gBAAgB,GAAI,aAAa;IAAE,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,sBAwCxE,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const ThemeSwitcher: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const ThemeSwitcher: () => import("react").JSX.Element;
2
2
  //# sourceMappingURL=theme-switcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme-switcher.d.ts","sourceRoot":"","sources":["../../../../../src/components/switchers/themes/theme-switcher.tsx"],"names":[],"mappings":"AAQA,eAAO,MAAM,aAAa,+CAmBzB,CAAC"}
1
+ {"version":3,"file":"theme-switcher.d.ts","sourceRoot":"","sources":["../../../../../src/components/switchers/themes/theme-switcher.tsx"],"names":[],"mappings":"AAQA,eAAO,MAAM,aAAa,mCAmBzB,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import type { DataTable, DataTableTMin } from "./data-table";
2
- export declare function ContentDataTable<T extends DataTableTMin>({ columns, edges, pageInfo, order, customNotFoundComponent, ...props }: React.ComponentProps<typeof DataTable<T>>): import("react/jsx-runtime").JSX.Element;
2
+ export declare function ContentDataTable<T extends DataTableTMin>({ columns, edges, pageInfo, order, customNoResults, search, searchPlaceholder, filters, ...props }: React.ComponentProps<typeof DataTable<T>>): import("react").JSX.Element;
3
3
  //# sourceMappingURL=content.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../../src/components/table/content.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAc7D,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,aAAa,EAAE,EACxD,OAAO,EACP,KAAK,EACL,QAAQ,EACR,KAAK,EACL,uBAAuB,EACvB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,2CAkF3C"}
1
+ {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../../src/components/table/content.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAgB7D,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,aAAa,EAAE,EACxD,OAAO,EACP,KAAK,EACL,QAAQ,EACR,KAAK,EACL,eAAe,EACf,MAAM,EACN,iBAAiB,EACjB,OAAO,EACP,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,+BA+F3C"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{SearchXIcon}from"lucide-react";import{useTranslations}from"next-intl";import{cn}from"../../lib/utils.js";import{Table,TableBody,TableCell,TableHead,TableHeader,TableRow}from"../ui/table.js";import{OrderTableHeadDataTable}from"./order-table-head.js";import{PaginationDataTable}from"./pagination.js";export function ContentDataTable({columns,edges,pageInfo,order,customNotFoundComponent,...props}){const t=useTranslations("core.global");return _jsxs("div",{className:"space-y-4",children:[_jsx("div",{className:"[&>div]:rounded-md [&>div]:border",children:_jsxs(Table,{...props,children:[_jsx(TableHeader,{className:"bg-card",children:_jsx(TableRow,{children:columns.map(column=>_jsx(TableHead,{className:cn(column.className),children:order.columns?.includes(column.id)?_jsx(OrderTableHeadDataTable,{id:column.id,order:order,children:column.label}):column.label},column.id.toString()))})}),_jsx(TableBody,{children:edges.length?edges.map(row=>_jsx(TableRow,{children:columns.map(column=>{const content=column.cell?.({allData:edges,row})??(column.id==="actions"?"":String(row[column.id]));return _jsx(TableCell,{className:cn({"flex items-center justify-end gap-2":column.id==="actions"}),children:content},`${row.id}_${column.id.toString()}`)})},row.id)):_jsx(TableRow,{children:_jsx(TableCell,{className:"mx-auto max-w-sm p-4 text-center whitespace-normal sm:px-10 sm:py-12",colSpan:columns.length,children:customNotFoundComponent??_jsxs("div",{className:"flex flex-col items-center justify-center gap-6",children:[_jsx(SearchXIcon,{className:"text-muted-foreground size-16 sm:size-24"}),_jsxs("div",{className:"space-y-2 text-center",children:[_jsx("h3",{className:"text-xl font-semibold tracking-tight",children:t("no_results.title")}),_jsx("p",{className:"text-muted-foreground text-sm",children:t("no_results.desc")})]})]})})})})]})}),_jsx(PaginationDataTable,{pageInfo:pageInfo})]})}
1
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{SearchXIcon}from"lucide-react";import{useTranslations}from"next-intl";import{cn}from"../../lib/utils.js";import{Table,TableBody,TableCell,TableHead,TableHeader,TableRow}from"../ui/table.js";import{FiltersDataTable}from"./filters.js";import{OrderTableHeadDataTable}from"./order-table-head.js";import{PaginationDataTable}from"./pagination.js";import{SearchDataTable}from"./search.js";export function ContentDataTable({columns,edges,pageInfo,order,customNoResults,search,searchPlaceholder,filters,...props}){const t=useTranslations("core.global");const hasToolbar=Boolean(search)||Boolean(filters?.length);return _jsxs("div",{className:"space-y-4",children:[hasToolbar&&_jsxs("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center",children:[search&&_jsx("div",{className:"flex-1",children:_jsx(SearchDataTable,{searchPlaceholder:searchPlaceholder})}),filters&&filters.length>0&&_jsx(FiltersDataTable,{filters:filters})]}),_jsx("div",{className:"[&>div]:rounded-md [&>div]:border",children:_jsxs(Table,{...props,children:[_jsx(TableHeader,{className:"bg-card",children:_jsx(TableRow,{children:columns.map(column=>_jsx(TableHead,{className:cn(column.className),children:order.columns?.includes(column.id)?_jsx(OrderTableHeadDataTable,{id:column.id,order:order,children:column.label}):column.label},column.id.toString()))})}),_jsx(TableBody,{children:edges.length?edges.map(row=>_jsx(TableRow,{children:columns.map(column=>{const content=column.cell?.({allData:edges,row})??(column.id==="actions"?"":String(row[column.id]));return _jsx(TableCell,{className:cn({"flex items-center justify-end gap-2":column.id==="actions"}),children:content},`${row.id}_${column.id.toString()}`)})},row.id)):_jsx(TableRow,{children:_jsx(TableCell,{className:"mx-auto max-w-sm p-4 text-center whitespace-normal sm:px-10 sm:py-12",colSpan:columns.length,children:_jsxs("div",{className:"[&>svg]:text-muted-foreground flex flex-col items-center justify-center gap-6 [&>svg]:size-16 [&>svg]:sm:size-24",children:[customNoResults?.icon??_jsx(SearchXIcon,{}),_jsxs("div",{className:"space-y-2 text-center",children:[_jsx("h3",{className:"text-xl font-semibold tracking-tight",children:customNoResults?.title??t("no_results.title")}),_jsx("p",{className:"text-muted-foreground text-sm",children:customNoResults?.description??t("no_results.desc")}),customNoResults?.footer]})]})})})})]})}),_jsx(PaginationDataTable,{pageInfo:pageInfo})]})}
@@ -1,5 +1,7 @@
1
1
  import React from "react";
2
+ import type { FilterDataTable } from "./filters";
2
3
  import type { PaginationDataTable } from "./pagination";
4
+ import type { SearchDataTable } from "./search";
3
5
  import { Table } from "../ui/table";
4
6
  export interface DataTableTMin {
5
7
  id: number;
@@ -13,8 +15,8 @@ export interface SearchParamsDataTable<T = unknown> {
13
15
  }
14
16
  export declare const DataTableSkeleton: ({ columns }: {
15
17
  columns: number;
16
- }) => import("react/jsx-runtime").JSX.Element;
17
- export declare function DataTable<T extends DataTableTMin>(props: Omit<React.ComponentProps<typeof Table>, "columns"> & React.ComponentProps<typeof PaginationDataTable> & {
18
+ }) => React.JSX.Element;
19
+ export declare function DataTable<T extends DataTableTMin>(props: Omit<React.ComponentProps<typeof Table>, "columns"> & React.ComponentProps<typeof PaginationDataTable> & React.ComponentProps<typeof SearchDataTable> & {
18
20
  columns: {
19
21
  cell?: (data: {
20
22
  allData: T[];
@@ -24,8 +26,15 @@ export declare function DataTable<T extends DataTableTMin>(props: Omit<React.Com
24
26
  id: "actions" | keyof T;
25
27
  label: string;
26
28
  }[];
27
- customNotFoundComponent?: React.ReactNode;
29
+ customNoResults?: {
30
+ description?: string;
31
+ footer?: React.ReactNode;
32
+ icon?: React.ReactNode;
33
+ title?: string;
34
+ };
28
35
  edges: T[];
36
+ filters?: FilterDataTable[];
37
+ id: string;
29
38
  order: {
30
39
  columns?: (keyof T)[];
31
40
  defaultOrder: {
@@ -33,5 +42,6 @@ export declare function DataTable<T extends DataTableTMin>(props: Omit<React.Com
33
42
  order: "asc" | "desc";
34
43
  };
35
44
  };
36
- }): import("react/jsx-runtime").JSX.Element;
45
+ search?: boolean;
46
+ }): React.JSX.Element;
37
47
  //# sourceMappingURL=data-table.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../../../src/components/table/data-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAIxD,OAAO,EACL,KAAK,EAKN,MAAM,aAAa,CAAC;AAGrB,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,OAAO;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;CACnB;AAED,eAAO,MAAM,iBAAiB,GAAI,aAAa;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,4CAqDjE,CAAC;AAEF,wBAAgB,SAAS,CAAC,CAAC,SAAS,aAAa,EAC/C,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,EAAE,SAAS,CAAC,GACxD,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,GAAG;IACjD,OAAO,EAAE;QACP,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC,EAAE,CAAC;YAAC,GAAG,EAAE,CAAC,CAAA;SAAE,KAAK,KAAK,CAAC,SAAS,CAAC;QAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,EAAE,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,uBAAuB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1C,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,KAAK,EAAE;QACL,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACtB,YAAY,EAAE;YACZ,MAAM,EAAE,MAAM,CAAC,CAAC;YAChB,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;SACvB,CAAC;KACH,CAAC;CACH,2CAOJ"}
1
+ {"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../../../src/components/table/data-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAIhD,OAAO,EACL,KAAK,EAKN,MAAM,aAAa,CAAC;AAGrB,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,OAAO;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;CACnB;AAED,eAAO,MAAM,iBAAiB,GAAI,aAAa;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,sBAuDjE,CAAC;AAEF,wBAAgB,SAAS,CAAC,CAAC,SAAS,aAAa,EAC/C,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,EAAE,SAAS,CAAC,GACxD,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,GAChD,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,GAAG;IAC7C,OAAO,EAAE;QACP,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC,EAAE,CAAC;YAAC,GAAG,EAAE,CAAC,CAAA;SAAE,KAAK,KAAK,CAAC,SAAS,CAAC;QAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,EAAE,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,eAAe,CAAC,EAAE;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QACzB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE;QACL,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACtB,YAAY,EAAE;YACZ,MAAM,EAAE,MAAM,CAAC,CAAC;YAChB,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;SACvB,CAAC;KACH,CAAC;IACF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,qBAOJ"}
@@ -0,0 +1,16 @@
1
+ import React from "react";
2
+ export interface FilterOption {
3
+ keywords?: string[];
4
+ label: React.ReactNode;
5
+ value: string;
6
+ }
7
+ export interface FilterDataTable {
8
+ id: string;
9
+ label: string;
10
+ onSearch?: (search: string) => Promise<FilterOption[]>;
11
+ options?: FilterOption[];
12
+ }
13
+ export declare function FiltersDataTable({ filters }: {
14
+ filters: FilterDataTable[];
15
+ }): React.JSX.Element;
16
+ //# sourceMappingURL=filters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../../../src/components/table/filters.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,OAAO,CAAC;AAqB1B,MAAM,WAAW,YAAY;IAG3B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAG9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IAGd,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAEvD,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B;AAoKD,wBAAgB,gBAAgB,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,eAAe,EAAE,CAAA;CAAE,qBAQ3E"}
@@ -0,0 +1 @@
1
+ "use client";import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{CheckIcon,PlusCircleIcon,Trash2}from"lucide-react";import{useTranslations}from"next-intl";import{useSearchParams}from"next/navigation";import React from"react";import{useDebouncedCallback}from"use-debounce";import{usePathname,useRouter}from"../../lib/navigation.js";import{cn}from"../../lib/utils.js";import{Badge}from"../ui/badge.js";import{Button}from"../ui/button.js";import{Command,CommandEmpty,CommandGroup,CommandInput,CommandItem,CommandList,CommandSeparator}from"../ui/command.js";import{Popover,PopoverContent,PopoverTrigger}from"../ui/popover.js";import{Separator}from"../ui/separator.js";import{Spinner}from"../ui/spinner.js";function FilterItem({filter}){const t=useTranslations("core.global");const searchParams=useSearchParams();const pathname=usePathname();const{push}=useRouter();const[isPending,startTransition]=React.useTransition();const isAsync=Boolean(filter.onSearch);const[asyncOptions,setAsyncOptions]=React.useState([]);const[isSearching,setIsSearching]=React.useState(false);const selected=(searchParams.get(filter.id)?.split(",")??[]).filter(Boolean);const selectedSet=new Set(selected);const options=isAsync?asyncOptions:filter.options??[];const runSearch=React.useCallback(async value=>{if(!filter.onSearch)return;setIsSearching(true);try{setAsyncOptions(await filter.onSearch(value))}finally{setIsSearching(false)}},[filter]);const debouncedSearch=useDebouncedCallback(runSearch,400);const handleOpenChange=open=>{if(open&&isAsync){setAsyncOptions([]);void runSearch("")}};const applySelection=values=>{startTransition(()=>{const params=new URLSearchParams(searchParams.toString());if(values.length){params.set(filter.id,values.join(","))}else{params.delete(filter.id)}params.delete("cursor");params.delete("first");params.delete("last");push(`${pathname}?${params.toString()}`,{scroll:false})})};const toggle=value=>{const next=new Set(selectedSet);if(next.has(value)){next.delete(value)}else{next.add(value)}applySelection([...next])};const selectedStaticOptions=isAsync?[]:(filter.options??[]).filter(option=>selectedSet.has(option.value));return _jsxs(Popover,{onOpenChange:handleOpenChange,children:[_jsx(PopoverTrigger,{asChild:true,children:_jsxs(Button,{className:"border-dashed",disabled:isPending,size:"sm",variant:"outline",children:[_jsx(PlusCircleIcon,{}),filter.label,selected.length>0&&_jsxs(_Fragment,{children:[_jsx(Separator,{className:"mx-0.5 h-4",orientation:"vertical"}),isAsync||selectedStaticOptions.length>2?_jsx(Badge,{children:t("selected_count",{count:selected.length})}):selectedStaticOptions.map(option=>_jsx(Badge,{children:option.label},option.value))]})]})}),_jsx(PopoverContent,{align:"start",className:"w-56 p-0",children:_jsxs(Command,{shouldFilter:!isAsync,children:[_jsx(CommandInput,{onValueChange:isAsync?debouncedSearch:undefined,placeholder:filter.label}),_jsxs(CommandList,{children:[isSearching&&options.length===0?_jsx("div",{className:"flex items-center justify-center py-6",children:_jsx(Spinner,{})}):_jsxs(_Fragment,{children:[_jsx(CommandEmpty,{children:t("results_not_found")}),_jsx(CommandGroup,{children:options.map(option=>{const isSelected=selectedSet.has(option.value);return _jsxs(CommandItem,{keywords:option.keywords,onSelect:()=>toggle(option.value),value:option.value,children:[_jsx("div",{className:cn("border-primary flex size-4 items-center justify-center rounded-sm border",isSelected?"bg-primary text-primary-foreground":"opacity-50 [&_svg]:invisible"),children:_jsx(CheckIcon,{className:"size-3.5"})}),_jsx("span",{children:option.label})]},option.value)})})]}),selected.length>0&&_jsxs(_Fragment,{children:[_jsx(CommandSeparator,{}),_jsx(CommandGroup,{children:_jsxs(CommandItem,{className:"justify-center text-center",onSelect:()=>applySelection([]),children:[_jsx(Trash2,{})," ",t("clear_filters")]})})]})]})]})})]})}export function FiltersDataTable({filters}){return _jsx(_Fragment,{children:filters.map(filter=>_jsx(FilterItem,{filter:filter},filter.id))})}
@@ -3,5 +3,5 @@ import type { DataTable, DataTableTMin } from "./data-table";
3
3
  export declare function OrderTableHeadDataTable<T extends DataTableTMin>({ id, children, order: { defaultOrder }, }: Pick<React.ComponentProps<typeof DataTable<T>>, "order"> & {
4
4
  children: React.ReactNode;
5
5
  id: React.ComponentProps<typeof DataTable<T>>["columns"][0]["id"];
6
- }): import("react/jsx-runtime").JSX.Element;
6
+ }): React.JSX.Element;
7
7
  //# sourceMappingURL=order-table-head.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"order-table-head.d.ts","sourceRoot":"","sources":["../../../../src/components/table/order-table-head.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAK7D,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,aAAa,EAAE,EAC/D,EAAE,EACF,QAAQ,EACR,KAAK,EAAE,EAAE,YAAY,EAAE,GACxB,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG;IAC5D,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;CACnE,2CA8CA"}
1
+ {"version":3,"file":"order-table-head.d.ts","sourceRoot":"","sources":["../../../../src/components/table/order-table-head.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAK7D,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,aAAa,EAAE,EAC/D,EAAE,EACF,QAAQ,EACR,KAAK,EAAE,EAAE,YAAY,EAAE,GACxB,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG;IAC5D,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;CACnE,qBA0CA"}
@@ -1 +1 @@
1
- "use client";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{ArrowDown,ArrowUp,ChevronsUpDown}from"lucide-react";import{useSearchParams}from"next/navigation";import React from"react";import{usePathname,useRouter}from"../../lib/navigation.js";import{Button}from"../ui/button.js";import{Loader}from"../ui/loader.js";export function OrderTableHeadDataTable({id,children,order:{defaultOrder}}){const[isPending,startTransition]=React.useTransition();const searchParams=useSearchParams();const pathname=usePathname();const{push}=useRouter();const currentOrderBy=searchParams.get("orderBy")??defaultOrder.column.toString();const currentOrder=searchParams.get("order")??defaultOrder.order;const isActive=currentOrderBy===id.toString();const nextOrder=isActive&&currentOrder==="asc"?"desc":"asc";return _jsxs(Button,{className:"[&_svg]:text-muted-foreground -ml-2 flex h-8 items-center gap-1.5 rounded-md px-2 py-1.5 [&_svg]:size-4 [&_svg]:shrink-0",onClick:()=>{startTransition(()=>{const params=new URLSearchParams(searchParams.toString());params.set("orderBy",id.toString());params.set("order",nextOrder);push(`${pathname}?${params.toString()}`,{scroll:false})})},size:"sm",variant:"ghost",children:[children,(()=>{if(isPending){return _jsx(Loader,{small:true})}if(isActive){if(currentOrder==="asc"){return _jsx(ArrowUp,{})}return _jsx(ArrowDown,{})}return _jsx(ChevronsUpDown,{})})()]})}
1
+ "use client";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{ArrowDown,ArrowUp,ChevronsUpDown}from"lucide-react";import{useSearchParams}from"next/navigation";import React from"react";import{usePathname,useRouter}from"../../lib/navigation.js";import{Button}from"../ui/button.js";import{Loader}from"../ui/loader.js";export function OrderTableHeadDataTable({id,children,order:{defaultOrder}}){const[isPending,startTransition]=React.useTransition();const searchParams=useSearchParams();const pathname=usePathname();const{push}=useRouter();const currentOrderBy=searchParams.get("orderBy")??defaultOrder.column.toString();const currentOrder=searchParams.get("order")??defaultOrder.order;const isActive=currentOrderBy===id.toString();const nextOrder=isActive&&currentOrder==="asc"?"desc":"asc";let icon;if(isPending){icon=_jsx(Loader,{small:true})}else if(isActive){icon=currentOrder==="asc"?_jsx(ArrowUp,{}):_jsx(ArrowDown,{})}else{icon=_jsx(ChevronsUpDown,{})}return _jsxs(Button,{className:"[&_svg]:text-muted-foreground -ml-2 flex h-8 items-center gap-1.5 rounded-md px-2 py-1.5 [&_svg]:size-4 [&_svg]:shrink-0",onClick:()=>{startTransition(()=>{const params=new URLSearchParams(searchParams.toString());params.set("orderBy",id.toString());params.set("order",nextOrder);push(`${pathname}?${params.toString()}`,{scroll:false})})},size:"sm",variant:"ghost",children:[children,icon]})}
@@ -1,3 +1,4 @@
1
+ import React from "react";
1
2
  export declare const PaginationDataTable: ({ pageInfo: { hasNextPage, hasPreviousPage, startCursor, endCursor }, }: {
2
3
  pageInfo: {
3
4
  count: number;
@@ -7,5 +8,5 @@ export declare const PaginationDataTable: ({ pageInfo: { hasNextPage, hasPreviou
7
8
  startCursor: null | number;
8
9
  totalCount: number;
9
10
  };
10
- }) => import("react/jsx-runtime").JSX.Element;
11
+ }) => React.JSX.Element;
11
12
  //# sourceMappingURL=pagination.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/components/table/pagination.tsx"],"names":[],"mappings":"AAqBA,eAAO,MAAM,mBAAmB,GAAI,yEAEjC;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;QACzB,WAAW,EAAE,OAAO,CAAC;QACrB,eAAe,EAAE,OAAO,CAAC;QACzB,WAAW,EAAE,IAAI,GAAG,MAAM,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,4CA6GA,CAAC"}
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/components/table/pagination.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,OAAO,CAAC;AAgB1B,eAAO,MAAM,mBAAmB,GAAI,yEAEjC;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;QACzB,WAAW,EAAE,OAAO,CAAC;QACrB,eAAe,EAAE,OAAO,CAAC;QACzB,WAAW,EAAE,IAAI,GAAG,MAAM,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,sBA6GA,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ export declare function SearchDataTable({ searchPlaceholder, }: {
3
+ searchPlaceholder?: string;
4
+ }): React.JSX.Element;
5
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../../src/components/table/search.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,OAAO,CAAC;AAY1B,wBAAgB,eAAe,CAAC,EAC9B,iBAAiB,GAClB,EAAE;IACD,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,qBA2CA"}
@@ -0,0 +1 @@
1
+ "use client";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{Search}from"lucide-react";import{useTranslations}from"next-intl";import{useSearchParams}from"next/navigation";import React from"react";import{useDebouncedCallback}from"use-debounce";import{usePathname,useRouter}from"../../lib/navigation.js";import{InputGroup,InputGroupAddon,InputGroupInput}from"../ui/input-group.js";import{Spinner}from"../ui/spinner.js";export function SearchDataTable({searchPlaceholder}){const t=useTranslations("core.global");const searchParams=useSearchParams();const searchValue=searchParams.get("search")??"";const[value,setValue]=React.useState(searchValue);const[prevSearchValue,setPrevSearchValue]=React.useState(searchValue);const[isPending,startTransition]=React.useTransition();const pathname=usePathname();const{push}=useRouter();if(searchValue!==prevSearchValue){setPrevSearchValue(searchValue);setValue(searchValue)}const handleChangeSearch=useDebouncedCallback(value=>{startTransition(()=>{const params=new URLSearchParams(searchParams.toString());if(value.length>=3){params.set("search",value)}else{params.delete("search")}push(`${pathname}?${params.toString()}`,{scroll:false})})},500);return _jsxs(InputGroup,{children:[_jsx(InputGroupInput,{onChange:e=>{setValue(e.target.value);handleChangeSearch(e.target.value)},placeholder:searchPlaceholder??t("search_placeholder"),type:"search",value:value}),_jsx(InputGroupAddon,{children:isPending?_jsx(Spinner,{}):_jsx(Search,{})})]})}
@@ -1,2 +1,2 @@
1
- export declare const AlignmentAction: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const AlignmentAction: () => import("react").JSX.Element;
2
2
  //# sourceMappingURL=alignment-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"alignment-action.d.ts","sourceRoot":"","sources":["../../../../../../src/components/tiptap/toolbar/actions/alignment-action.tsx"],"names":[],"mappings":"AAuBA,eAAO,MAAM,eAAe,+CA2E3B,CAAC"}
1
+ {"version":3,"file":"alignment-action.d.ts","sourceRoot":"","sources":["../../../../../../src/components/tiptap/toolbar/actions/alignment-action.tsx"],"names":[],"mappings":"AAuBA,eAAO,MAAM,eAAe,mCA2E3B,CAAC"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useEditorState}from"@tiptap/react";import{AlignCenterIcon,AlignJustifyIcon,AlignLeftIcon,AlignRightIcon,ChevronDown}from"lucide-react";import{useTranslations}from"next-intl";import{Button}from"../../../ui/button.js";import{DropdownMenu,DropdownMenuContent,DropdownMenuRadioGroup,DropdownMenuRadioItem,DropdownMenuShortcut,DropdownMenuTrigger}from"../../../ui/dropdown-menu.js";import{CtrlOrCommandCharacter}from"../../../../lib/ctrl-or-command-character.js";import{useToolbarEditor}from"../use-toolbar-editor.js";export const AlignmentAction=()=>{const t=useTranslations("core.global.editor");const{editor}=useToolbarEditor();const activeValue=useEditorState({editor,selector:ctx=>{return["left","center","right","justify"].find(align=>ctx.editor.isActive({textAlign:align}))??"left"}});const alignments=[{label:t("alignments.left"),value:"left",icon:_jsx(AlignLeftIcon,{}),shortcut:"L"},{label:t("alignments.center"),value:"center",icon:_jsx(AlignCenterIcon,{}),shortcut:"E"},{label:t("alignments.right"),value:"right",icon:_jsx(AlignRightIcon,{}),shortcut:"R"},{label:t("alignments.justify"),value:"justify",icon:_jsx(AlignJustifyIcon,{}),shortcut:"J"}];const activeAlignment=alignments.find(a=>a.value===activeValue)??alignments[0];return _jsxs(DropdownMenu,{children:[_jsx(DropdownMenuTrigger,{asChild:true,children:_jsxs(Button,{className:"w-40 justify-between",variant:"ghost",children:[activeAlignment.icon,t(`alignments.${activeAlignment.value}`),_jsx(ChevronDown,{className:"ml-auto"})]})}),_jsx(DropdownMenuContent,{className:"min-w-[16rem]",children:_jsx(DropdownMenuRadioGroup,{value:activeAlignment.value,children:alignments.map(item=>_jsxs(DropdownMenuRadioItem,{onClick:()=>editor.chain().focus().setTextAlign(item.value).run(),value:item.value,children:[item.icon,t(`alignments.${item.value}`),_jsxs(DropdownMenuShortcut,{children:[_jsx(CtrlOrCommandCharacter,{}),"+Shift+",item.shortcut]})]},item.value))})})]})};
1
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useEditorState}from"@tiptap/react";import{AlignCenterIcon,AlignJustifyIcon,AlignLeftIcon,AlignRightIcon,ChevronDown}from"lucide-react";import{useTranslations}from"next-intl";import{Button}from"../../../ui/button.js";import{DropdownMenu,DropdownMenuContent,DropdownMenuRadioGroup,DropdownMenuRadioItem,DropdownMenuShortcut,DropdownMenuTrigger}from"../../../ui/dropdown-menu.js";import{CtrlOrCommandCharacter}from"../../../../lib/ctrl-or-command-character.js";import{useToolbarEditor}from"../use-toolbar-editor.js";export const AlignmentAction=()=>{const t=useTranslations("core.global.editor");const{editor}=useToolbarEditor();const activeValue=useEditorState({editor,selector:ctx=>{return["left","center","right","justify"].find(align=>ctx.editor.isActive({textAlign:align}))??"left"}});const alignments=[{label:t("alignments.left"),value:"left",icon:_jsx(AlignLeftIcon,{}),shortcut:"L"},{label:t("alignments.center"),value:"center",icon:_jsx(AlignCenterIcon,{}),shortcut:"E"},{label:t("alignments.right"),value:"right",icon:_jsx(AlignRightIcon,{}),shortcut:"R"},{label:t("alignments.justify"),value:"justify",icon:_jsx(AlignJustifyIcon,{}),shortcut:"J"}];const activeAlignment=alignments.find(a=>a.value===activeValue)??alignments[0];return _jsxs(DropdownMenu,{children:[_jsx(DropdownMenuTrigger,{asChild:true,children:_jsxs(Button,{className:"w-40 justify-between",size:"sm",variant:"ghost",children:[activeAlignment.icon,t(`alignments.${activeAlignment.value}`),_jsx(ChevronDown,{className:"ml-auto"})]})}),_jsx(DropdownMenuContent,{className:"min-w-[16rem]",children:_jsx(DropdownMenuRadioGroup,{value:activeAlignment.value,children:alignments.map(item=>_jsxs(DropdownMenuRadioItem,{onClick:()=>editor.chain().focus().setTextAlign(item.value).run(),value:item.value,children:[item.icon,t(`alignments.${item.value}`),_jsxs(DropdownMenuShortcut,{children:[_jsx(CtrlOrCommandCharacter,{}),"+Shift+",item.shortcut]})]},item.value))})})]})};
@@ -1,2 +1,2 @@
1
- export declare const BoldAction: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const BoldAction: () => import("react").JSX.Element;
2
2
  //# sourceMappingURL=bold-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bold-action.d.ts","sourceRoot":"","sources":["../../../../../../src/components/tiptap/toolbar/actions/bold-action.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,UAAU,+CA+BtB,CAAC"}
1
+ {"version":3,"file":"bold-action.d.ts","sourceRoot":"","sources":["../../../../../../src/components/tiptap/toolbar/actions/bold-action.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,UAAU,mCAiCtB,CAAC"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useEditorState}from"@tiptap/react";import{BoldIcon}from"lucide-react";import{useTranslations}from"next-intl";import{Toggle}from"../../../ui/toggle.js";import{TooltipWithContent}from"../../../ui/tooltip.js";import{useToolbarEditor}from"../use-toolbar-editor.js";import{TooltipShortcut}from"./utils/tooltip-shortcut.js";export const BoldAction=()=>{const t=useTranslations("core.global.editor");const{editor}=useToolbarEditor();const{isBold}=useEditorState({editor,selector:ctx=>{return{isBold:ctx.editor.isActive("bold")}}});return _jsx(TooltipWithContent,{text:_jsxs(_Fragment,{children:[t("bold")," ",_jsx(TooltipShortcut,{children:"+B"})]}),children:_jsx("div",{children:_jsx(Toggle,{"aria-label":t("bold"),onClick:()=>editor.chain().focus().toggleBold().run(),pressed:isBold,children:_jsx(BoldIcon,{})})})})};
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useEditorState}from"@tiptap/react";import{BoldIcon}from"lucide-react";import{useTranslations}from"next-intl";import{Toggle}from"../../../ui/toggle.js";import{TooltipWithContent}from"../../../ui/tooltip.js";import{useToolbarEditor}from"../use-toolbar-editor.js";import{TooltipShortcut}from"./utils/tooltip-shortcut.js";export const BoldAction=()=>{const t=useTranslations("core.global.editor");const{editor}=useToolbarEditor();const{isBold}=useEditorState({editor,selector:ctx=>{return{isBold:ctx.editor.isActive("bold")}}});return _jsx(TooltipWithContent,{text:_jsxs(_Fragment,{children:[t("bold")," ",_jsx(TooltipShortcut,{children:"+B"})]}),children:_jsx("div",{children:_jsx(Toggle,{"aria-label":t("bold"),className:"size-8",onClick:()=>editor.chain().focus().toggleBold().run(),pressed:isBold,size:"sm",children:_jsx(BoldIcon,{})})})})};
@@ -1,2 +1,2 @@
1
- export declare const HeadingsAction: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const HeadingsAction: () => import("react").JSX.Element;
2
2
  //# sourceMappingURL=headings-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"headings-action.d.ts","sourceRoot":"","sources":["../../../../../../src/components/tiptap/toolbar/actions/headings-action.tsx"],"names":[],"mappings":"AAiCA,eAAO,MAAM,cAAc,+CAuE1B,CAAC"}
1
+ {"version":3,"file":"headings-action.d.ts","sourceRoot":"","sources":["../../../../../../src/components/tiptap/toolbar/actions/headings-action.tsx"],"names":[],"mappings":"AAiCA,eAAO,MAAM,cAAc,mCAuE1B,CAAC"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useEditorState}from"@tiptap/react";import{ChevronDown,Heading1Icon,Heading2Icon,Heading3Icon,Heading4Icon,PilcrowIcon}from"lucide-react";import{useTranslations}from"next-intl";import{Button}from"../../../ui/button.js";import{DropdownMenu,DropdownMenuContent,DropdownMenuRadioGroup,DropdownMenuRadioItem,DropdownMenuShortcut,DropdownMenuTrigger}from"../../../ui/dropdown-menu.js";import{CtrlOrCommandCharacter}from"../../../../lib/ctrl-or-command-character.js";import{SUPPORTED_HEADINGS_LEVELS}from"../../extension.js";import{useToolbarEditor}from"../use-toolbar-editor.js";const ICONS={paragraph:_jsx(PilcrowIcon,{}),heading_1:_jsx(Heading1Icon,{}),heading_2:_jsx(Heading2Icon,{}),heading_3:_jsx(Heading3Icon,{}),heading_4:_jsx(Heading4Icon,{})};export const HeadingsAction=()=>{const t=useTranslations("core.global.editor");const{editor}=useToolbarEditor();const activeValue=useEditorState({editor,selector:ctx=>{if(!ctx.editor.isActive("heading"))return"paragraph";const level=ctx.editor.getAttributes("heading").level;return`heading-${level}`}});const options=[{value:"paragraph",label:t("paragraph"),icon:ICONS.paragraph,shortcut:"0"},...SUPPORTED_HEADINGS_LEVELS.map(level=>({value:`heading-${level}`,label:t("heading",{level}),icon:ICONS[`heading_${level}`],shortcut:level.toString()}))];const activeOption=options.find(o=>o.value===activeValue)??options[0];return _jsxs(DropdownMenu,{children:[_jsx(DropdownMenuTrigger,{asChild:true,children:_jsxs(Button,{className:"w-32 justify-between",variant:"ghost",children:[activeOption.icon,activeOption.label,_jsx(ChevronDown,{className:"ml-auto"})]})}),_jsx(DropdownMenuContent,{className:"min-w-[14rem]",children:_jsx(DropdownMenuRadioGroup,{value:activeValue,children:options.map(item=>_jsxs(DropdownMenuRadioItem,{onClick:()=>{if(item.value==="paragraph"){editor.chain().focus().setParagraph().run()}else{const level=parseInt(item.value.split("-")[1]);editor.chain().focus().toggleHeading({level}).run()}},value:item.value,children:[item.icon,item.label,_jsxs(DropdownMenuShortcut,{children:[_jsx(CtrlOrCommandCharacter,{}),"+Alt+",item.shortcut]})]},item.value))})})]})};
1
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useEditorState}from"@tiptap/react";import{ChevronDown,Heading1Icon,Heading2Icon,Heading3Icon,Heading4Icon,PilcrowIcon}from"lucide-react";import{useTranslations}from"next-intl";import{Button}from"../../../ui/button.js";import{DropdownMenu,DropdownMenuContent,DropdownMenuRadioGroup,DropdownMenuRadioItem,DropdownMenuShortcut,DropdownMenuTrigger}from"../../../ui/dropdown-menu.js";import{CtrlOrCommandCharacter}from"../../../../lib/ctrl-or-command-character.js";import{SUPPORTED_HEADINGS_LEVELS}from"../../extension.js";import{useToolbarEditor}from"../use-toolbar-editor.js";const ICONS={paragraph:_jsx(PilcrowIcon,{}),heading_1:_jsx(Heading1Icon,{}),heading_2:_jsx(Heading2Icon,{}),heading_3:_jsx(Heading3Icon,{}),heading_4:_jsx(Heading4Icon,{})};export const HeadingsAction=()=>{const t=useTranslations("core.global.editor");const{editor}=useToolbarEditor();const activeValue=useEditorState({editor,selector:ctx=>{if(!ctx.editor.isActive("heading"))return"paragraph";const level=ctx.editor.getAttributes("heading").level;return`heading-${level}`}});const options=[{value:"paragraph",label:t("paragraph"),icon:ICONS.paragraph,shortcut:"0"},...SUPPORTED_HEADINGS_LEVELS.map(level=>({value:`heading-${level}`,label:t("heading",{level}),icon:ICONS[`heading_${level}`],shortcut:level.toString()}))];const activeOption=options.find(o=>o.value===activeValue)??options[0];return _jsxs(DropdownMenu,{children:[_jsx(DropdownMenuTrigger,{asChild:true,children:_jsxs(Button,{className:"w-32 justify-between",size:"sm",variant:"ghost",children:[activeOption.icon,activeOption.label,_jsx(ChevronDown,{className:"ml-auto"})]})}),_jsx(DropdownMenuContent,{className:"min-w-56",children:_jsx(DropdownMenuRadioGroup,{value:activeValue,children:options.map(item=>_jsxs(DropdownMenuRadioItem,{onClick:()=>{if(item.value==="paragraph"){editor.chain().focus().setParagraph().run()}else{const level=parseInt(item.value.split("-")[1]);editor.chain().focus().toggleHeading({level}).run()}},value:item.value,children:[item.icon,item.label,_jsxs(DropdownMenuShortcut,{children:[_jsx(CtrlOrCommandCharacter,{}),"+Alt+",item.shortcut]})]},item.value))})})]})};
@@ -1,2 +1,2 @@
1
- export declare const ItalicAction: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const ItalicAction: () => import("react").JSX.Element;
2
2
  //# sourceMappingURL=italic-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"italic-action.d.ts","sourceRoot":"","sources":["../../../../../../src/components/tiptap/toolbar/actions/italic-action.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,YAAY,+CAgCxB,CAAC"}
1
+ {"version":3,"file":"italic-action.d.ts","sourceRoot":"","sources":["../../../../../../src/components/tiptap/toolbar/actions/italic-action.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,YAAY,mCAkCxB,CAAC"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useEditorState}from"@tiptap/react";import{ItalicIcon}from"lucide-react";import{useTranslations}from"next-intl";import{Toggle}from"../../../ui/toggle.js";import{TooltipWithContent}from"../../../ui/tooltip.js";import{useToolbarEditor}from"../use-toolbar-editor.js";import{TooltipShortcut}from"./utils/tooltip-shortcut.js";export const ItalicAction=()=>{const t=useTranslations("core.global.editor");const{editor}=useToolbarEditor();const{isItalic}=useEditorState({editor,selector:ctx=>{return{isItalic:ctx.editor.isActive("italic")}}});return _jsx(TooltipWithContent,{text:_jsxs(_Fragment,{children:[t("italic"),_jsx(TooltipShortcut,{children:"+I"})]}),children:_jsx("div",{children:_jsx(Toggle,{"aria-label":t("italic"),onClick:()=>editor.chain().focus().toggleItalic().run(),pressed:isItalic,children:_jsx(ItalicIcon,{})})})})};
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useEditorState}from"@tiptap/react";import{ItalicIcon}from"lucide-react";import{useTranslations}from"next-intl";import{Toggle}from"../../../ui/toggle.js";import{TooltipWithContent}from"../../../ui/tooltip.js";import{useToolbarEditor}from"../use-toolbar-editor.js";import{TooltipShortcut}from"./utils/tooltip-shortcut.js";export const ItalicAction=()=>{const t=useTranslations("core.global.editor");const{editor}=useToolbarEditor();const{isItalic}=useEditorState({editor,selector:ctx=>{return{isItalic:ctx.editor.isActive("italic")}}});return _jsx(TooltipWithContent,{text:_jsxs(_Fragment,{children:[t("italic"),_jsx(TooltipShortcut,{children:"+I"})]}),children:_jsx("div",{children:_jsx(Toggle,{"aria-label":t("italic"),className:"size-8",onClick:()=>editor.chain().focus().toggleItalic().run(),pressed:isItalic,size:"sm",children:_jsx(ItalicIcon,{})})})})};
@@ -1,2 +1,2 @@
1
- export declare const ListAction: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const ListAction: () => import("react").JSX.Element;
2
2
  //# sourceMappingURL=list-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-action.d.ts","sourceRoot":"","sources":["../../../../../../src/components/tiptap/toolbar/actions/list-action.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,UAAU,+CAsDtB,CAAC"}
1
+ {"version":3,"file":"list-action.d.ts","sourceRoot":"","sources":["../../../../../../src/components/tiptap/toolbar/actions/list-action.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,UAAU,mCA0DtB,CAAC"}
@@ -1 +1 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useEditorState}from"@tiptap/react";import{ListIcon,ListOrderedIcon}from"lucide-react";import{useTranslations}from"next-intl";import{Toggle}from"../../../ui/toggle.js";import{TooltipWithContent}from"../../../ui/tooltip.js";import{useToolbarEditor}from"../use-toolbar-editor.js";import{TooltipShortcut}from"./utils/tooltip-shortcut.js";export const ListAction=()=>{const t=useTranslations("core.global.editor");const{editor}=useToolbarEditor();const{isBulletList,isOrderedList}=useEditorState({editor,selector:ctx=>{return{isOrderedList:ctx.editor.isActive("orderedList"),isBulletList:ctx.editor.isActive("bulletList")}}});return _jsxs(_Fragment,{children:[_jsx(TooltipWithContent,{text:_jsxs(_Fragment,{children:[t("bullet_list"),_jsx(TooltipShortcut,{children:"+I"})]}),children:_jsx("div",{children:_jsx(Toggle,{"aria-label":t("bullet_list"),onClick:()=>editor.chain().focus().toggleBulletList().run(),pressed:isBulletList,children:_jsx(ListIcon,{})})})}),_jsx(TooltipWithContent,{text:_jsxs(_Fragment,{children:[t("ordered_list"),_jsx(TooltipShortcut,{children:"+I"})]}),children:_jsx("div",{children:_jsx(Toggle,{"aria-label":t("ordered_list"),onClick:()=>editor.chain().focus().toggleOrderedList().run(),pressed:isOrderedList,children:_jsx(ListOrderedIcon,{})})})})]})};
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useEditorState}from"@tiptap/react";import{ListIcon,ListOrderedIcon}from"lucide-react";import{useTranslations}from"next-intl";import{Toggle}from"../../../ui/toggle.js";import{TooltipWithContent}from"../../../ui/tooltip.js";import{useToolbarEditor}from"../use-toolbar-editor.js";import{TooltipShortcut}from"./utils/tooltip-shortcut.js";export const ListAction=()=>{const t=useTranslations("core.global.editor");const{editor}=useToolbarEditor();const{isBulletList,isOrderedList}=useEditorState({editor,selector:ctx=>{return{isOrderedList:ctx.editor.isActive("orderedList"),isBulletList:ctx.editor.isActive("bulletList")}}});return _jsxs(_Fragment,{children:[_jsx(TooltipWithContent,{text:_jsxs(_Fragment,{children:[t("bullet_list"),_jsx(TooltipShortcut,{children:"+I"})]}),children:_jsx("div",{children:_jsx(Toggle,{"aria-label":t("bullet_list"),className:"size-8",onClick:()=>editor.chain().focus().toggleBulletList().run(),pressed:isBulletList,size:"sm",children:_jsx(ListIcon,{})})})}),_jsx(TooltipWithContent,{text:_jsxs(_Fragment,{children:[t("ordered_list"),_jsx(TooltipShortcut,{children:"+I"})]}),children:_jsx("div",{children:_jsx(Toggle,{"aria-label":t("ordered_list"),className:"size-8",onClick:()=>editor.chain().focus().toggleOrderedList().run(),pressed:isOrderedList,size:"sm",children:_jsx(ListOrderedIcon,{})})})})]})};
@@ -1,2 +1,2 @@
1
- export declare const TextFormatMore: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const TextFormatMore: () => import("react").JSX.Element;
2
2
  //# sourceMappingURL=text-format-more.d.ts.map