@yimingliao/cms 0.0.126 → 0.0.127

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 (1118) hide show
  1. package/dist/export/client/index.js +61 -0
  2. package/dist/export/client/shadcn/index.js +17 -0
  3. package/dist/export/index.js +33 -0
  4. package/dist/export/server/index.js +78 -0
  5. package/dist/export/storage/r2/index.ts_.js +1 -0
  6. package/dist/export/storage/sftp/index.ts_.js +2 -0
  7. package/dist/src/client/applications/auth/sign-in/use-device-info.js +26 -0
  8. package/dist/src/client/applications/form/get-control-meta.js +30 -0
  9. package/dist/src/client/applications/form/use-pick-items.js +44 -0
  10. package/dist/src/client/applications/shadcn/use-mobile.js +20 -0
  11. package/dist/src/client/applications/shadcn/utils.js +8 -0
  12. package/dist/src/client/applications/ui/is-confirm.js +5 -0
  13. package/dist/src/client/applications/ui/use-count-down.js +34 -0
  14. package/dist/src/client/applications/ui/use-parent-pathname.js +10 -0
  15. package/dist/src/client/constants.js +3 -0
  16. package/dist/src/client/infrastructure/contexts/admin.js +27 -0
  17. package/dist/src/client/infrastructure/contexts/theme.js +22 -0
  18. package/dist/src/client/infrastructure/fetch/request-interceptor.js +21 -0
  19. package/dist/src/client/infrastructure/fetch/response-interceptor.js +22 -0
  20. package/dist/src/client/infrastructure/fetch/smart-fetch.js +24 -0
  21. package/dist/src/client/infrastructure/react-query/create-use-command.js +53 -0
  22. package/dist/src/client/infrastructure/react-query/create-use-query.js +20 -0
  23. package/dist/src/client/infrastructure/toast/error-display.js +14 -0
  24. package/dist/src/client/infrastructure/toast/handle-toast.js +29 -0
  25. package/dist/src/client/infrastructure/toast/should-show-toast.js +7 -0
  26. package/dist/src/client/interfaces/components/admin-initializer.js +28 -0
  27. package/dist/src/client/interfaces/components/shadcn/avatar.js +54 -0
  28. package/dist/src/client/interfaces/components/shadcn/button.js +56 -0
  29. package/dist/src/client/interfaces/components/shadcn/card.js +86 -0
  30. package/dist/src/client/interfaces/components/shadcn/collapsible.js +33 -0
  31. package/dist/src/client/interfaces/components/shadcn/dropdown-menu.js +217 -0
  32. package/dist/src/client/interfaces/components/shadcn/input-group.js +152 -0
  33. package/dist/src/client/interfaces/components/shadcn/input.js +23 -0
  34. package/dist/src/client/interfaces/components/shadcn/label.js +21 -0
  35. package/dist/src/client/interfaces/components/shadcn/pagination.js +107 -0
  36. package/dist/src/client/interfaces/components/shadcn/select.js +159 -0
  37. package/dist/src/client/interfaces/components/shadcn/separator.js +29 -0
  38. package/dist/src/client/interfaces/components/shadcn/sheet.js +114 -0
  39. package/dist/src/client/interfaces/components/shadcn/sidebar.js +612 -0
  40. package/dist/src/client/interfaces/components/shadcn/skeleton.js +17 -0
  41. package/dist/src/client/interfaces/components/shadcn/spinner.js +19 -0
  42. package/dist/src/client/interfaces/components/shadcn/textarea.js +22 -0
  43. package/dist/src/client/interfaces/components/shadcn/tooltip.js +53 -0
  44. package/dist/src/client/interfaces/components/ui/blocks/list-cards-container/list-cards-container.js +71 -0
  45. package/dist/src/client/interfaces/components/ui/blocks/list-cards-container/page-size-selector.js +43 -0
  46. package/dist/src/client/interfaces/components/ui/blocks/list-cards-container/pagination.js +84 -0
  47. package/dist/src/client/interfaces/components/ui/blocks/page-header/page-header-title.js +17 -0
  48. package/dist/src/client/interfaces/components/ui/blocks/page-header/page-header.js +66 -0
  49. package/dist/src/client/interfaces/components/ui/blocks/page-header/presets/batch-create.js +31 -0
  50. package/dist/src/client/interfaces/components/ui/blocks/page-header/presets/batch.js +34 -0
  51. package/dist/src/client/interfaces/components/ui/blocks/page-header/presets/create.js +31 -0
  52. package/dist/src/client/interfaces/components/ui/blocks/page-header/presets/edit.js +31 -0
  53. package/dist/src/client/interfaces/components/ui/blocks/page-header/presets/index.js +43 -0
  54. package/dist/src/client/interfaces/components/ui/blocks/page-header/presets/show.js +55 -0
  55. package/dist/src/client/interfaces/components/ui/blocks/page-header/presets/trash.js +33 -0
  56. package/dist/src/client/interfaces/components/ui/buttons/button.js +52 -0
  57. package/dist/src/client/interfaces/components/ui/buttons/return-button.js +59 -0
  58. package/dist/src/client/interfaces/components/ui/features/expandable-list/expand-bar.js +35 -0
  59. package/dist/src/client/interfaces/components/ui/features/expandable-list/expandable-list-content.js +42 -0
  60. package/dist/src/client/interfaces/components/ui/features/expandable-list/expandable-list.js +48 -0
  61. package/dist/src/client/interfaces/components/ui/form/containers/fields-container.js +23 -0
  62. package/dist/src/client/interfaces/components/ui/form/containers/main-fields.js +24 -0
  63. package/dist/src/client/interfaces/components/ui/form/containers/side-fields.js +23 -0
  64. package/dist/src/client/interfaces/components/ui/form/control-fields/built-in-fields.js +9 -0
  65. package/dist/src/client/interfaces/components/ui/form/control-fields/control-fields-display.js +104 -0
  66. package/dist/src/client/interfaces/components/ui/form/control-fields/control-fields-input.js +150 -0
  67. package/dist/src/client/interfaces/components/ui/form/control-fields/control-fields.js +57 -0
  68. package/dist/src/client/interfaces/components/ui/form/field-body.js +74 -0
  69. package/dist/src/client/interfaces/components/ui/form/field.js +30 -0
  70. package/dist/src/client/interfaces/components/ui/form/form.js +19 -0
  71. package/dist/src/client/interfaces/components/ui/form/index-field.js +92 -0
  72. package/dist/src/client/interfaces/components/ui/form/slug-field.js +87 -0
  73. package/dist/src/client/interfaces/components/ui/inputs/array-input.js +97 -0
  74. package/dist/src/client/interfaces/components/ui/inputs/checkbox.js +88 -0
  75. package/dist/src/client/interfaces/components/ui/inputs/input.js +56 -0
  76. package/dist/src/client/interfaces/components/ui/inputs/password-input.js +36 -0
  77. package/dist/src/client/interfaces/components/ui/inputs/search-input.js +58 -0
  78. package/dist/src/client/interfaces/components/ui/inputs/select.js +61 -0
  79. package/dist/src/client/interfaces/components/ui/inputs/textarea.js +59 -0
  80. package/dist/src/client/interfaces/components/ui/layouts/content-container.js +36 -0
  81. package/dist/src/client/interfaces/components/ui/layouts/layout-skeleton.js +32 -0
  82. package/dist/src/client/interfaces/components/ui/layouts/navbar/i18n-selector.js +34 -0
  83. package/dist/src/client/interfaces/components/ui/layouts/navbar/nav-user.js +79 -0
  84. package/dist/src/client/interfaces/components/ui/layouts/navbar/navbar.js +70 -0
  85. package/dist/src/client/interfaces/components/ui/layouts/navbar/sign-out-button.js +52 -0
  86. package/dist/src/client/interfaces/components/ui/layouts/navbar/theme-selector.js +29 -0
  87. package/dist/src/client/interfaces/components/ui/layouts/sidebar/nav-main.js +82 -0
  88. package/dist/src/client/interfaces/pages/auth/change-password.js +137 -0
  89. package/dist/src/client/interfaces/pages/auth/email-unverified.js +84 -0
  90. package/dist/src/client/interfaces/pages/auth/forgot-password.js +83 -0
  91. package/dist/src/client/interfaces/pages/auth/reset-password.js +111 -0
  92. package/dist/src/client/interfaces/pages/auth/sign-in.js +99 -0
  93. package/dist/src/client/interfaces/pages/auth/verify-email.js +51 -0
  94. package/dist/src/client/interfaces/styles/constants.js +7 -0
  95. package/dist/src/constants/anchor.js +4 -0
  96. package/dist/src/constants/cache-keys.js +25 -0
  97. package/dist/src/constants/keys/auth.js +13 -0
  98. package/dist/src/constants/keys/email.js +10 -0
  99. package/dist/src/constants/keys/index.js +15 -0
  100. package/dist/src/constants/keys/main.js +13 -0
  101. package/dist/src/constants/keys/resources.js +15 -0
  102. package/dist/src/constants/keys/ui.js +53 -0
  103. package/dist/src/constants/paths/auth.js +26 -0
  104. package/dist/src/constants/paths/cms-path.js +3 -0
  105. package/dist/src/constants/paths/index.js +11 -0
  106. package/dist/src/constants/paths/main.js +28 -0
  107. package/dist/src/constants/paths/resources.js +28 -0
  108. package/dist/src/constants/redirect-paths.js +10 -0
  109. package/dist/src/domain/resources/admin/constants.js +14 -0
  110. package/dist/src/domain/resources/admin/props.js +7 -0
  111. package/dist/src/domain/resources/constants.js +29 -0
  112. package/dist/src/domain/resources/file/props.js +10 -0
  113. package/dist/src/domain/resources/file/utils/is-file-locked.js +10 -0
  114. package/dist/src/domain/resources/folder/utils/file-manager-double-click.js +7 -0
  115. package/dist/src/domain/resources/folder/utils/is-folder-locked.js +8 -0
  116. package/dist/src/domain/resources/folder/utils/normalize-folder-key.js +16 -0
  117. package/dist/src/domain/resources/post/props.js +9 -0
  118. package/dist/src/server/applications/auth/create-auth-use-cases.js +125 -0
  119. package/dist/src/server/applications/emails/create-email-verification-email.js +29 -0
  120. package/dist/src/server/applications/emails/create-forgot-password-email.js +26 -0
  121. package/dist/src/server/infrastructure/argon2/argon2.service.js +23 -0
  122. package/dist/src/server/infrastructure/cache/cache-key-delimiter.js +3 -0
  123. package/dist/src/server/infrastructure/cache/create-cache-result.js +39 -0
  124. package/dist/src/server/infrastructure/cache/create-cache.js +20 -0
  125. package/dist/src/server/infrastructure/cache/create-ip-rate-limiter.js +42 -0
  126. package/dist/src/server/infrastructure/cache/normalize-cache-key.js +20 -0
  127. package/dist/src/server/infrastructure/cookie/cookie.service.js +81 -0
  128. package/dist/src/server/infrastructure/crypto/crypto.service.js +66 -0
  129. package/dist/src/server/infrastructure/database/admin/command/create-admin-command-repository.js +107 -0
  130. package/dist/src/server/infrastructure/database/admin/include.js +20 -0
  131. package/dist/src/server/infrastructure/database/admin/query/create-admin-query-repository.js +81 -0
  132. package/dist/src/server/infrastructure/database/admin-refresh-token/command/create-admin-refresh-token-command-repository.js +36 -0
  133. package/dist/src/server/infrastructure/database/admin-refresh-token/query/create-admin-refresh-token-query-repository.js +23 -0
  134. package/dist/src/server/infrastructure/database/constants.js +15 -0
  135. package/dist/src/server/infrastructure/database/file/command/create-file-command-repository.js +158 -0
  136. package/dist/src/server/infrastructure/database/file/include.js +30 -0
  137. package/dist/src/server/infrastructure/database/file/query/create-file-query-repository.js +74 -0
  138. package/dist/src/server/infrastructure/database/folder/command/create-folder-command-repository.js +67 -0
  139. package/dist/src/server/infrastructure/database/folder/include.js +13 -0
  140. package/dist/src/server/infrastructure/database/folder/query/create-folder-query-repository.js +55 -0
  141. package/dist/src/server/infrastructure/database/post/command/create-post-command-repository.js +195 -0
  142. package/dist/src/server/infrastructure/database/post/include.js +61 -0
  143. package/dist/src/server/infrastructure/database/post/query/create-post-query-repository.js +184 -0
  144. package/dist/src/server/infrastructure/database/seo-metadata/command/create-seo-metadata-command-repository.js +31 -0
  145. package/dist/src/server/infrastructure/database/utils/build-file-usage.js +20 -0
  146. package/dist/src/server/infrastructure/database/utils/connect.js +15 -0
  147. package/dist/src/server/infrastructure/database/utils/create-pagination.js +9 -0
  148. package/dist/src/server/infrastructure/database/utils/create-search.js +32 -0
  149. package/dist/src/server/infrastructure/email/create-render-email-template.js +64 -0
  150. package/dist/src/server/infrastructure/email/create-send-email.js +14 -0
  151. package/dist/src/server/infrastructure/email/create-transporter.js +19 -0
  152. package/dist/src/server/infrastructure/jwt/jwt.service.js +37 -0
  153. package/dist/src/server/infrastructure/zod/create-zod.js +69 -0
  154. package/dist/src/server/infrastructure/zod/rules/bcp47.js +12 -0
  155. package/dist/src/server/infrastructure/zod/rules/exist.js +24 -0
  156. package/dist/src/server/infrastructure/zod/rules/og-locale.js +7 -0
  157. package/dist/src/server/infrastructure/zod/rules/unique.js +35 -0
  158. package/dist/src/server/infrastructure/zod/schemas/file.js +38 -0
  159. package/dist/src/server/infrastructure/zod/schemas/schemas.js +102 -0
  160. package/dist/src/server/infrastructure/zod/schemas/toc-item.js +22 -0
  161. package/dist/src/server/interfaces/actions/auth/change-password/change-password-validator.js +20 -0
  162. package/dist/src/server/interfaces/actions/auth/change-password/create-change-password-action.js +29 -0
  163. package/dist/src/server/interfaces/actions/auth/email-unverifired/create-email-unverifired-action.js +34 -0
  164. package/dist/src/server/interfaces/actions/auth/email-unverifired/email-unverifired-validator.js +5 -0
  165. package/dist/src/server/interfaces/actions/auth/forgot-password/create-forgot-password-action.js +34 -0
  166. package/dist/src/server/interfaces/actions/auth/forgot-password/forgot-password-validator.js +5 -0
  167. package/dist/src/server/interfaces/actions/auth/reset-password/create-reset-password-action.js +32 -0
  168. package/dist/src/server/interfaces/actions/auth/reset-password/reset-password-validator.js +20 -0
  169. package/dist/src/server/interfaces/actions/auth/sign-in/create-sign-in-action.js +47 -0
  170. package/dist/src/server/interfaces/actions/auth/sign-in/sign-in-validator.js +6 -0
  171. package/dist/src/server/interfaces/actions/auth/sign-out/create-sign-out-action.js +34 -0
  172. package/dist/src/server/interfaces/actions/auth/verify/create-verify-action.js +17 -0
  173. package/dist/src/server/interfaces/actions/auth/verify-email/create-verify-email-action.js +34 -0
  174. package/dist/src/server/interfaces/actions/auth/verify-email/verify-email-validator.js +6 -0
  175. package/dist/src/server/interfaces/actions/resources/admin/commands/create/admin-create-validator.js +38 -0
  176. package/dist/src/server/interfaces/actions/resources/admin/commands/create/create-admin-create-action.js +46 -0
  177. package/dist/src/server/interfaces/actions/resources/admin/commands/delete/create-admin-delete-action.js +32 -0
  178. package/dist/src/server/interfaces/actions/resources/admin/commands/update/admin-update-validator.js +41 -0
  179. package/dist/src/server/interfaces/actions/resources/admin/commands/update/create-admin-update-action.js +57 -0
  180. package/dist/src/server/interfaces/actions/resources/admin/queries/create-admin-find-full-action.js +27 -0
  181. package/dist/src/server/interfaces/actions/resources/admin/queries/create-admin-find-list-cards-action.js +35 -0
  182. package/dist/src/server/interfaces/actions/resources/admin-refresh-token/commands/delete/create-admin-refresh-token-delete-action.js +37 -0
  183. package/dist/src/server/interfaces/actions/resources/admin-refresh-token/queries/create-admin-refresh-token-find-full-action.js +42 -0
  184. package/dist/src/server/interfaces/actions/resources/file/commands/create/create-file-create-action.js +53 -0
  185. package/dist/src/server/interfaces/actions/resources/file/commands/create/file-create-validator.js +37 -0
  186. package/dist/src/server/interfaces/actions/resources/file/commands/create-many/create-file-create-many-action.js +45 -0
  187. package/dist/src/server/interfaces/actions/resources/file/commands/create-many/file-create-many-validator.js +37 -0
  188. package/dist/src/server/interfaces/actions/resources/file/commands/purge-many/create-file-purge-many-action.js +44 -0
  189. package/dist/src/server/interfaces/actions/resources/file/commands/purge-many/file-purge-many-validator.js +5 -0
  190. package/dist/src/server/interfaces/actions/resources/file/commands/restore-many/create-file-restore-many-action.js +27 -0
  191. package/dist/src/server/interfaces/actions/resources/file/commands/restore-many/file-create-restore-validator.js +5 -0
  192. package/dist/src/server/interfaces/actions/resources/file/commands/soft-delete/create-file-soft-delete-action.js +30 -0
  193. package/dist/src/server/interfaces/actions/resources/file/commands/soft-delete-many/create-file-soft-delete-many-action.js +47 -0
  194. package/dist/src/server/interfaces/actions/resources/file/commands/soft-delete-many/file-soft-delete-many-validator.js +5 -0
  195. package/dist/src/server/interfaces/actions/resources/file/commands/update/create-file-update-action.js +59 -0
  196. package/dist/src/server/interfaces/actions/resources/file/commands/update/file-update-validator.js +35 -0
  197. package/dist/src/server/interfaces/actions/resources/file/querires/create-file-find-full-action.js +25 -0
  198. package/dist/src/server/interfaces/actions/resources/file/querires/create-file-find-list-cards-action.js +38 -0
  199. package/dist/src/server/interfaces/actions/resources/folder/commands/create/create-folder-create-action.js +40 -0
  200. package/dist/src/server/interfaces/actions/resources/folder/commands/create/folder-create-validator.js +12 -0
  201. package/dist/src/server/interfaces/actions/resources/folder/commands/delete/create-folder-delete-action.js +30 -0
  202. package/dist/src/server/interfaces/actions/resources/folder/commands/update/create-folder-update-action.js +42 -0
  203. package/dist/src/server/interfaces/actions/resources/folder/commands/update/folder-update-validator.js +16 -0
  204. package/dist/src/server/interfaces/actions/resources/folder/queries/create-folder-find-full-action.js +44 -0
  205. package/dist/src/server/interfaces/actions/resources/folder/queries/create-folder-find-list-cards-action.js +32 -0
  206. package/dist/src/server/interfaces/actions/resources/post/commands/create/create-post-create-action.js +33 -0
  207. package/dist/src/server/interfaces/actions/resources/post/commands/create/post-create-validator.js +147 -0
  208. package/dist/src/server/interfaces/actions/resources/post/commands/delete/create-post-delete-action.js +25 -0
  209. package/dist/src/server/interfaces/actions/resources/post/commands/update/create-post-update-action.js +38 -0
  210. package/dist/src/server/interfaces/actions/resources/post/commands/update/post-update-validator.js +149 -0
  211. package/dist/src/server/interfaces/actions/resources/post/queries/create-post-find-action.js +33 -0
  212. package/dist/src/server/interfaces/actions/resources/post/queries/create-post-find-full-action.js +33 -0
  213. package/dist/src/server/interfaces/actions/resources/post/queries/create-post-find-list-cards-action.js +53 -0
  214. package/dist/src/server/interfaces/actions/resources/post/queries/create-post-find-many-action.js +22 -0
  215. package/dist/src/server/interfaces/actions/resources/seo-metadata/commands/upsert/create-seo-metadata-upsert-action.js +41 -0
  216. package/dist/src/server/interfaces/actions/resources/seo-metadata/commands/upsert/seo-metadata-upsert-validator.js +83 -0
  217. package/dist/src/server/interfaces/apis/file-upload/file-upload-api.js +38 -0
  218. package/dist/src/server/interfaces/apis/file-upload/validator.js +15 -0
  219. package/dist/src/server/interfaces/apis/multi-files-upload/multi-files-upload-api.js +62 -0
  220. package/dist/src/server/interfaces/apis/multi-files-upload/validator.js +13 -0
  221. package/dist/src/server/interfaces/execution/create-execute-action.js +38 -0
  222. package/dist/src/server/interfaces/execution/create-execute-api.js +28 -0
  223. package/dist/src/server/interfaces/execution/create-run-action.js +26 -0
  224. package/dist/src/server/interfaces/execution/normalize-error.js +33 -0
  225. package/dist/src/server/interfaces/middlewares/auth/create-auth-middleware.js +31 -0
  226. package/dist/src/server/interfaces/middlewares/auth/create-verify-access-token.js +27 -0
  227. package/dist/src/server/interfaces/middlewares/auth/create-verify-refresh-token.js +27 -0
  228. package/dist/src/server/server-error.js +35 -0
  229. package/dist/src/shared/blob-file/classify-file-type.js +27 -0
  230. package/dist/src/shared/blob-file/format-file-size.js +13 -0
  231. package/dist/src/shared/blob-file/get-media-info/get-audio-info.js +26 -0
  232. package/dist/src/shared/blob-file/get-media-info/get-image-info.js +26 -0
  233. package/dist/src/shared/blob-file/get-media-info/get-media-info.js +31 -0
  234. package/dist/src/shared/blob-file/get-media-info/get-video-info.js +31 -0
  235. package/dist/src/shared/blob-file/mime-to-extension.js +8 -0
  236. package/dist/src/shared/form/normalizers/datetime-to-db.js +8 -0
  237. package/dist/src/shared/form/normalizers/datetime-to-ui.js +13 -0
  238. package/dist/src/shared/form/normalizers/json-array-to-db.js +17 -0
  239. package/dist/src/shared/form/normalizers/json-array-to-ui.js +9 -0
  240. package/dist/src/shared/result/result.js +26 -0
  241. package/dist/src/shared/seo-metadata/build-article-metadata.js +82 -0
  242. package/dist/src/shared/seo-metadata/build-website-metadata.js +65 -0
  243. package/dist/src/shared/seo-metadata/serialize-json-ld.js +6 -0
  244. package/dist/src/shared/seo-metadata/standards.js +22 -0
  245. package/dist/src/shared/seo-metadata/utils/build-alternate-map.js +10 -0
  246. package/dist/src/shared/seo-metadata/utils/build-og-image.js +18 -0
  247. package/dist/src/shared/seo-metadata/utils/ensure-og-type.js +9 -0
  248. package/dist/src/shared/seo-metadata/utils/ensure-twitter-card.js +9 -0
  249. package/dist/src/shared/seo-metadata/utils/sanitize-string-array.js +8 -0
  250. package/dist/src/shared/seo-metadata/utils/to-iso-time.js +6 -0
  251. package/dist/src/shared/translation/create-build-translations.js +11 -0
  252. package/dist/src/shared/translation/find-translation.js +13 -0
  253. package/dist/src/shared/units.js +10 -0
  254. package/dist/src/shared/utils/ensure-array.js +6 -0
  255. package/dist/src/shared/utils/format-date-time.js +17 -0
  256. package/dist/src/shared/utils/join-url.js +7 -0
  257. package/dist/{storage/r2/index.js → src/storage/r2/r2.service.js} +2 -3
  258. package/dist/src/storage/sftp/sftp-pool.js +53 -0
  259. package/dist/{storage/sftp/index.js → src/storage/sftp/sftp.service.js} +3 -54
  260. package/dist/{chunk-V3UUO5WJ.js → src/storage/utils.js} +3 -2
  261. package/dist/types/export/client/index.d.ts +2 -0
  262. package/dist/types/export/client/index.d.ts.map +1 -0
  263. package/dist/types/export/client/shadcn/index.d.ts +2 -0
  264. package/dist/types/export/client/shadcn/index.d.ts.map +1 -0
  265. package/dist/types/export/index.d.ts +4 -0
  266. package/dist/types/export/index.d.ts.map +1 -0
  267. package/dist/types/export/server/index.d.ts +2 -0
  268. package/dist/types/export/server/index.d.ts.map +1 -0
  269. package/dist/types/export/storage/r2/index.d.ts +2 -0
  270. package/dist/types/export/storage/r2/index.d.ts.map +1 -0
  271. package/dist/types/export/storage/sftp/index.d.ts +2 -0
  272. package/dist/types/export/storage/sftp/index.d.ts.map +1 -0
  273. package/dist/types/src/client/applications/auth/index.d.ts +2 -0
  274. package/dist/types/src/client/applications/auth/index.d.ts.map +1 -0
  275. package/dist/types/src/client/applications/auth/sign-in/index.d.ts +2 -0
  276. package/dist/types/src/client/applications/auth/sign-in/index.d.ts.map +1 -0
  277. package/dist/types/src/client/applications/auth/sign-in/use-device-info.d.ts +3 -0
  278. package/dist/types/src/client/applications/auth/sign-in/use-device-info.d.ts.map +1 -0
  279. package/dist/types/src/client/applications/form/get-control-meta.d.ts +16 -0
  280. package/dist/types/src/client/applications/form/get-control-meta.d.ts.map +1 -0
  281. package/dist/types/src/client/applications/form/index.d.ts +3 -0
  282. package/dist/types/src/client/applications/form/index.d.ts.map +1 -0
  283. package/dist/types/src/client/applications/form/use-pick-items.d.ts +14 -0
  284. package/dist/types/src/client/applications/form/use-pick-items.d.ts.map +1 -0
  285. package/dist/types/src/client/applications/index.d.ts +5 -0
  286. package/dist/types/src/client/applications/index.d.ts.map +1 -0
  287. package/dist/types/src/client/applications/shadcn/index.d.ts +3 -0
  288. package/dist/types/src/client/applications/shadcn/index.d.ts.map +1 -0
  289. package/dist/types/src/client/applications/shadcn/use-mobile.d.ts +2 -0
  290. package/dist/types/src/client/applications/shadcn/use-mobile.d.ts.map +1 -0
  291. package/dist/types/src/client/applications/shadcn/utils.d.ts +3 -0
  292. package/dist/types/src/client/applications/shadcn/utils.d.ts.map +1 -0
  293. package/dist/types/src/client/applications/ui/index.d.ts +4 -0
  294. package/dist/types/src/client/applications/ui/index.d.ts.map +1 -0
  295. package/dist/types/src/client/applications/ui/is-confirm.d.ts +2 -0
  296. package/dist/types/src/client/applications/ui/is-confirm.d.ts.map +1 -0
  297. package/dist/types/src/client/applications/ui/use-count-down.d.ts +6 -0
  298. package/dist/types/src/client/applications/ui/use-count-down.d.ts.map +1 -0
  299. package/dist/types/src/client/applications/ui/use-parent-pathname.d.ts +2 -0
  300. package/dist/types/src/client/applications/ui/use-parent-pathname.d.ts.map +1 -0
  301. package/dist/types/src/client/constants.d.ts +2 -0
  302. package/dist/types/src/client/constants.d.ts.map +1 -0
  303. package/dist/types/src/client/index.d.ts +4 -0
  304. package/dist/types/src/client/index.d.ts.map +1 -0
  305. package/dist/types/src/client/infrastructure/contexts/admin.d.ts +12 -0
  306. package/dist/types/src/client/infrastructure/contexts/admin.d.ts.map +1 -0
  307. package/dist/types/src/client/infrastructure/contexts/index.d.ts +3 -0
  308. package/dist/types/src/client/infrastructure/contexts/index.d.ts.map +1 -0
  309. package/dist/types/src/client/infrastructure/contexts/theme.d.ts +4 -0
  310. package/dist/types/src/client/infrastructure/contexts/theme.d.ts.map +1 -0
  311. package/dist/types/src/client/infrastructure/fetch/index.d.ts +4 -0
  312. package/dist/types/src/client/infrastructure/fetch/index.d.ts.map +1 -0
  313. package/dist/types/src/client/infrastructure/fetch/request-interceptor.d.ts +5 -0
  314. package/dist/types/src/client/infrastructure/fetch/request-interceptor.d.ts.map +1 -0
  315. package/dist/types/src/client/infrastructure/fetch/response-interceptor.d.ts +6 -0
  316. package/dist/types/src/client/infrastructure/fetch/response-interceptor.d.ts.map +1 -0
  317. package/dist/types/src/client/infrastructure/fetch/smart-fetch.d.ts +9 -0
  318. package/dist/types/src/client/infrastructure/fetch/smart-fetch.d.ts.map +1 -0
  319. package/dist/types/src/client/infrastructure/fetch/types.d.ts +12 -0
  320. package/dist/types/src/client/infrastructure/fetch/types.d.ts.map +1 -0
  321. package/dist/types/src/client/infrastructure/index.d.ts +5 -0
  322. package/dist/types/src/client/infrastructure/index.d.ts.map +1 -0
  323. package/dist/types/src/client/infrastructure/react-query/create-use-command.d.ts +89 -0
  324. package/dist/types/src/client/infrastructure/react-query/create-use-command.d.ts.map +1 -0
  325. package/dist/types/src/client/infrastructure/react-query/create-use-query.d.ts +174 -0
  326. package/dist/types/src/client/infrastructure/react-query/create-use-query.d.ts.map +1 -0
  327. package/dist/types/src/client/infrastructure/react-query/index.d.ts +3 -0
  328. package/dist/types/src/client/infrastructure/react-query/index.d.ts.map +1 -0
  329. package/dist/types/src/client/infrastructure/toast/error-display.d.ts +3 -0
  330. package/dist/types/src/client/infrastructure/toast/error-display.d.ts.map +1 -0
  331. package/dist/types/src/client/infrastructure/toast/handle-toast.d.ts +7 -0
  332. package/dist/types/src/client/infrastructure/toast/handle-toast.d.ts.map +1 -0
  333. package/dist/types/src/client/infrastructure/toast/index.d.ts +2 -0
  334. package/dist/types/src/client/infrastructure/toast/index.d.ts.map +1 -0
  335. package/dist/types/src/client/infrastructure/toast/should-show-toast.d.ts +3 -0
  336. package/dist/types/src/client/infrastructure/toast/should-show-toast.d.ts.map +1 -0
  337. package/dist/types/src/client/interfaces/components/admin-initializer.d.ts +8 -0
  338. package/dist/types/src/client/interfaces/components/admin-initializer.d.ts.map +1 -0
  339. package/dist/types/src/client/interfaces/components/index.d.ts +3 -0
  340. package/dist/types/src/client/interfaces/components/index.d.ts.map +1 -0
  341. package/dist/types/src/client/interfaces/components/shadcn/avatar.d.ts +7 -0
  342. package/dist/types/src/client/interfaces/components/shadcn/avatar.d.ts.map +1 -0
  343. package/dist/types/src/client/interfaces/components/shadcn/button.d.ts +11 -0
  344. package/dist/types/src/client/interfaces/components/shadcn/button.d.ts.map +1 -0
  345. package/dist/types/src/client/interfaces/components/shadcn/card.d.ts +10 -0
  346. package/dist/types/src/client/interfaces/components/shadcn/card.d.ts.map +1 -0
  347. package/dist/types/src/client/interfaces/components/shadcn/collapsible.d.ts +7 -0
  348. package/dist/types/src/client/interfaces/components/shadcn/collapsible.d.ts.map +1 -0
  349. package/dist/types/src/client/interfaces/components/shadcn/dropdown-menu.d.ts +26 -0
  350. package/dist/types/src/client/interfaces/components/shadcn/dropdown-menu.d.ts.map +1 -0
  351. package/dist/types/src/client/interfaces/components/shadcn/index.d.ts +18 -0
  352. package/dist/types/src/client/interfaces/components/shadcn/index.d.ts.map +1 -0
  353. package/dist/types/src/client/interfaces/components/shadcn/input-group.d.ts +17 -0
  354. package/dist/types/src/client/interfaces/components/shadcn/input-group.d.ts.map +1 -0
  355. package/dist/types/src/client/interfaces/components/shadcn/input.d.ts +4 -0
  356. package/dist/types/src/client/interfaces/components/shadcn/input.d.ts.map +1 -0
  357. package/dist/types/src/client/interfaces/components/shadcn/label.d.ts +6 -0
  358. package/dist/types/src/client/interfaces/components/shadcn/label.d.ts.map +1 -0
  359. package/dist/types/src/client/interfaces/components/shadcn/pagination.d.ts +14 -0
  360. package/dist/types/src/client/interfaces/components/shadcn/pagination.d.ts.map +1 -0
  361. package/dist/types/src/client/interfaces/components/shadcn/select.d.ts +16 -0
  362. package/dist/types/src/client/interfaces/components/shadcn/select.d.ts.map +1 -0
  363. package/dist/types/src/client/interfaces/components/shadcn/separator.d.ts +5 -0
  364. package/dist/types/src/client/interfaces/components/shadcn/separator.d.ts.map +1 -0
  365. package/dist/types/src/client/interfaces/components/shadcn/sheet.d.ts +14 -0
  366. package/dist/types/src/client/interfaces/components/shadcn/sheet.d.ts.map +1 -0
  367. package/dist/types/src/client/interfaces/components/shadcn/sidebar.d.ts +71 -0
  368. package/dist/types/src/client/interfaces/components/shadcn/sidebar.d.ts.map +1 -0
  369. package/dist/types/src/client/interfaces/components/shadcn/skeleton.d.ts +4 -0
  370. package/dist/types/src/client/interfaces/components/shadcn/skeleton.d.ts.map +1 -0
  371. package/dist/types/src/client/interfaces/components/shadcn/spinner.d.ts +4 -0
  372. package/dist/types/src/client/interfaces/components/shadcn/spinner.d.ts.map +1 -0
  373. package/dist/types/src/client/interfaces/components/shadcn/textarea.d.ts +4 -0
  374. package/dist/types/src/client/interfaces/components/shadcn/textarea.d.ts.map +1 -0
  375. package/dist/types/src/client/interfaces/components/shadcn/tooltip.d.ts +8 -0
  376. package/dist/types/src/client/interfaces/components/shadcn/tooltip.d.ts.map +1 -0
  377. package/dist/types/src/client/interfaces/components/ui/blocks/index.d.ts +3 -0
  378. package/dist/types/src/client/interfaces/components/ui/blocks/index.d.ts.map +1 -0
  379. package/dist/types/src/client/interfaces/components/ui/blocks/list-cards-container/index.d.ts +2 -0
  380. package/dist/types/src/client/interfaces/components/ui/blocks/list-cards-container/index.d.ts.map +1 -0
  381. package/dist/types/src/client/interfaces/components/ui/blocks/list-cards-container/list-cards-container.d.ts +16 -0
  382. package/dist/types/src/client/interfaces/components/ui/blocks/list-cards-container/list-cards-container.d.ts.map +1 -0
  383. package/dist/types/src/client/interfaces/components/ui/blocks/list-cards-container/page-size-selector.d.ts +7 -0
  384. package/dist/types/src/client/interfaces/components/ui/blocks/list-cards-container/page-size-selector.d.ts.map +1 -0
  385. package/dist/types/src/client/interfaces/components/ui/blocks/list-cards-container/pagination.d.ts +8 -0
  386. package/dist/types/src/client/interfaces/components/ui/blocks/list-cards-container/pagination.d.ts.map +1 -0
  387. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/index.d.ts +2 -0
  388. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/index.d.ts.map +1 -0
  389. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/page-header-title.d.ts +12 -0
  390. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/page-header-title.d.ts.map +1 -0
  391. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/page-header.d.ts +28 -0
  392. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/page-header.d.ts.map +1 -0
  393. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/batch-create.d.ts +3 -0
  394. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/batch-create.d.ts.map +1 -0
  395. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/batch.d.ts +3 -0
  396. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/batch.d.ts.map +1 -0
  397. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/create.d.ts +3 -0
  398. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/create.d.ts.map +1 -0
  399. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/edit.d.ts +3 -0
  400. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/edit.d.ts.map +1 -0
  401. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/index.d.ts +3 -0
  402. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/index.d.ts.map +1 -0
  403. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/show.d.ts +3 -0
  404. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/show.d.ts.map +1 -0
  405. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/trash.d.ts +3 -0
  406. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/presets/trash.d.ts.map +1 -0
  407. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/types.d.ts +14 -0
  408. package/dist/types/src/client/interfaces/components/ui/blocks/page-header/types.d.ts.map +1 -0
  409. package/dist/types/src/client/interfaces/components/ui/buttons/button.d.ts +10 -0
  410. package/dist/types/src/client/interfaces/components/ui/buttons/button.d.ts.map +1 -0
  411. package/dist/types/src/client/interfaces/components/ui/buttons/index.d.ts +3 -0
  412. package/dist/types/src/client/interfaces/components/ui/buttons/index.d.ts.map +1 -0
  413. package/dist/types/src/client/interfaces/components/ui/buttons/return-button.d.ts +11 -0
  414. package/dist/types/src/client/interfaces/components/ui/buttons/return-button.d.ts.map +1 -0
  415. package/dist/types/src/client/interfaces/components/ui/features/expandable-list/expand-bar.d.ts +4 -0
  416. package/dist/types/src/client/interfaces/components/ui/features/expandable-list/expand-bar.d.ts.map +1 -0
  417. package/dist/types/src/client/interfaces/components/ui/features/expandable-list/expandable-list-content.d.ts +13 -0
  418. package/dist/types/src/client/interfaces/components/ui/features/expandable-list/expandable-list-content.d.ts.map +1 -0
  419. package/dist/types/src/client/interfaces/components/ui/features/expandable-list/expandable-list.d.ts +9 -0
  420. package/dist/types/src/client/interfaces/components/ui/features/expandable-list/expandable-list.d.ts.map +1 -0
  421. package/dist/types/src/client/interfaces/components/ui/features/expandable-list/index.d.ts +2 -0
  422. package/dist/types/src/client/interfaces/components/ui/features/expandable-list/index.d.ts.map +1 -0
  423. package/dist/types/src/client/interfaces/components/ui/features/index.d.ts +2 -0
  424. package/dist/types/src/client/interfaces/components/ui/features/index.d.ts.map +1 -0
  425. package/dist/types/src/client/interfaces/components/ui/form/containers/fields-container.d.ts +3 -0
  426. package/dist/types/src/client/interfaces/components/ui/form/containers/fields-container.d.ts.map +1 -0
  427. package/dist/types/src/client/interfaces/components/ui/form/containers/index.d.ts +4 -0
  428. package/dist/types/src/client/interfaces/components/ui/form/containers/index.d.ts.map +1 -0
  429. package/dist/types/src/client/interfaces/components/ui/form/containers/main-fields.d.ts +3 -0
  430. package/dist/types/src/client/interfaces/components/ui/form/containers/main-fields.d.ts.map +1 -0
  431. package/dist/types/src/client/interfaces/components/ui/form/containers/side-fields.d.ts +3 -0
  432. package/dist/types/src/client/interfaces/components/ui/form/containers/side-fields.d.ts.map +1 -0
  433. package/dist/types/src/client/interfaces/components/ui/form/control-fields/built-in-fields.d.ts +4 -0
  434. package/dist/types/src/client/interfaces/components/ui/form/control-fields/built-in-fields.d.ts.map +1 -0
  435. package/dist/types/src/client/interfaces/components/ui/form/control-fields/control-fields-display.d.ts +10 -0
  436. package/dist/types/src/client/interfaces/components/ui/form/control-fields/control-fields-display.d.ts.map +1 -0
  437. package/dist/types/src/client/interfaces/components/ui/form/control-fields/control-fields-input.d.ts +12 -0
  438. package/dist/types/src/client/interfaces/components/ui/form/control-fields/control-fields-input.d.ts.map +1 -0
  439. package/dist/types/src/client/interfaces/components/ui/form/control-fields/control-fields.d.ts +17 -0
  440. package/dist/types/src/client/interfaces/components/ui/form/control-fields/control-fields.d.ts.map +1 -0
  441. package/dist/types/src/client/interfaces/components/ui/form/control-fields/index.d.ts +3 -0
  442. package/dist/types/src/client/interfaces/components/ui/form/control-fields/index.d.ts.map +1 -0
  443. package/dist/types/src/client/interfaces/components/ui/form/field-body.d.ts +10 -0
  444. package/dist/types/src/client/interfaces/components/ui/form/field-body.d.ts.map +1 -0
  445. package/dist/types/src/client/interfaces/components/ui/form/field.d.ts +12 -0
  446. package/dist/types/src/client/interfaces/components/ui/form/field.d.ts.map +1 -0
  447. package/dist/types/src/client/interfaces/components/ui/form/form.d.ts +3 -0
  448. package/dist/types/src/client/interfaces/components/ui/form/form.d.ts.map +1 -0
  449. package/dist/types/src/client/interfaces/components/ui/form/index-field.d.ts +11 -0
  450. package/dist/types/src/client/interfaces/components/ui/form/index-field.d.ts.map +1 -0
  451. package/dist/types/src/client/interfaces/components/ui/form/index.d.ts +8 -0
  452. package/dist/types/src/client/interfaces/components/ui/form/index.d.ts.map +1 -0
  453. package/dist/types/src/client/interfaces/components/ui/form/slug-field.d.ts +9 -0
  454. package/dist/types/src/client/interfaces/components/ui/form/slug-field.d.ts.map +1 -0
  455. package/dist/types/src/client/interfaces/components/ui/index.d.ts +6 -0
  456. package/dist/types/src/client/interfaces/components/ui/index.d.ts.map +1 -0
  457. package/dist/types/src/client/interfaces/components/ui/inputs/array-input.d.ts +9 -0
  458. package/dist/types/src/client/interfaces/components/ui/inputs/array-input.d.ts.map +1 -0
  459. package/dist/types/src/client/interfaces/components/ui/inputs/checkbox.d.ts +8 -0
  460. package/dist/types/src/client/interfaces/components/ui/inputs/checkbox.d.ts.map +1 -0
  461. package/dist/types/src/client/interfaces/components/ui/inputs/index.d.ts +8 -0
  462. package/dist/types/src/client/interfaces/components/ui/inputs/index.d.ts.map +1 -0
  463. package/dist/types/src/client/interfaces/components/ui/inputs/input.d.ts +7 -0
  464. package/dist/types/src/client/interfaces/components/ui/inputs/input.d.ts.map +1 -0
  465. package/dist/types/src/client/interfaces/components/ui/inputs/password-input.d.ts +4 -0
  466. package/dist/types/src/client/interfaces/components/ui/inputs/password-input.d.ts.map +1 -0
  467. package/dist/types/src/client/interfaces/components/ui/inputs/search-input.d.ts +9 -0
  468. package/dist/types/src/client/interfaces/components/ui/inputs/search-input.d.ts.map +1 -0
  469. package/dist/types/src/client/interfaces/components/ui/inputs/select.d.ts +17 -0
  470. package/dist/types/src/client/interfaces/components/ui/inputs/select.d.ts.map +1 -0
  471. package/dist/types/src/client/interfaces/components/ui/inputs/textarea.d.ts +7 -0
  472. package/dist/types/src/client/interfaces/components/ui/inputs/textarea.d.ts.map +1 -0
  473. package/dist/types/src/client/interfaces/components/ui/layouts/content-container.d.ts +9 -0
  474. package/dist/types/src/client/interfaces/components/ui/layouts/content-container.d.ts.map +1 -0
  475. package/dist/types/src/client/interfaces/components/ui/layouts/index.d.ts +5 -0
  476. package/dist/types/src/client/interfaces/components/ui/layouts/index.d.ts.map +1 -0
  477. package/dist/types/src/client/interfaces/components/ui/layouts/layout-skeleton.d.ts +2 -0
  478. package/dist/types/src/client/interfaces/components/ui/layouts/layout-skeleton.d.ts.map +1 -0
  479. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/i18n-selector.d.ts +6 -0
  480. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/i18n-selector.d.ts.map +1 -0
  481. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/index.d.ts +4 -0
  482. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/index.d.ts.map +1 -0
  483. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/nav-user.d.ts +9 -0
  484. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/nav-user.d.ts.map +1 -0
  485. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/navbar.d.ts +8 -0
  486. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/navbar.d.ts.map +1 -0
  487. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/sign-out-button.d.ts +7 -0
  488. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/sign-out-button.d.ts.map +1 -0
  489. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/theme-selector.d.ts +2 -0
  490. package/dist/types/src/client/interfaces/components/ui/layouts/navbar/theme-selector.d.ts.map +1 -0
  491. package/dist/types/src/client/interfaces/components/ui/layouts/sidebar/index.d.ts +3 -0
  492. package/dist/types/src/client/interfaces/components/ui/layouts/sidebar/index.d.ts.map +1 -0
  493. package/dist/types/src/client/interfaces/components/ui/layouts/sidebar/nav-main.d.ts +12 -0
  494. package/dist/types/src/client/interfaces/components/ui/layouts/sidebar/nav-main.d.ts.map +1 -0
  495. package/dist/types/src/client/interfaces/index.d.ts +4 -0
  496. package/dist/types/src/client/interfaces/index.d.ts.map +1 -0
  497. package/dist/types/src/client/interfaces/pages/auth/change-password.d.ts +14 -0
  498. package/dist/types/src/client/interfaces/pages/auth/change-password.d.ts.map +1 -0
  499. package/dist/types/src/client/interfaces/pages/auth/email-unverified.d.ts +14 -0
  500. package/dist/types/src/client/interfaces/pages/auth/email-unverified.d.ts.map +1 -0
  501. package/dist/types/src/client/interfaces/pages/auth/forgot-password.d.ts +14 -0
  502. package/dist/types/src/client/interfaces/pages/auth/forgot-password.d.ts.map +1 -0
  503. package/dist/types/src/client/interfaces/pages/auth/index.d.ts +7 -0
  504. package/dist/types/src/client/interfaces/pages/auth/index.d.ts.map +1 -0
  505. package/dist/types/src/client/interfaces/pages/auth/reset-password.d.ts +14 -0
  506. package/dist/types/src/client/interfaces/pages/auth/reset-password.d.ts.map +1 -0
  507. package/dist/types/src/client/interfaces/pages/auth/sign-in.d.ts +14 -0
  508. package/dist/types/src/client/interfaces/pages/auth/sign-in.d.ts.map +1 -0
  509. package/dist/types/src/client/interfaces/pages/auth/verify-email.d.ts +14 -0
  510. package/dist/types/src/client/interfaces/pages/auth/verify-email.d.ts.map +1 -0
  511. package/dist/types/src/client/interfaces/pages/index.d.ts +2 -0
  512. package/dist/types/src/client/interfaces/pages/index.d.ts.map +1 -0
  513. package/dist/types/src/client/interfaces/styles/constants.d.ts +6 -0
  514. package/dist/types/src/client/interfaces/styles/constants.d.ts.map +1 -0
  515. package/dist/types/src/client/interfaces/styles/index.d.ts +2 -0
  516. package/dist/types/src/client/interfaces/styles/index.d.ts.map +1 -0
  517. package/dist/types/src/constants/anchor.d.ts +3 -0
  518. package/dist/types/src/constants/anchor.d.ts.map +1 -0
  519. package/dist/types/src/constants/cache-keys.d.ts +14 -0
  520. package/dist/types/src/constants/cache-keys.d.ts.map +1 -0
  521. package/dist/types/src/constants/index.d.ts +6 -0
  522. package/dist/types/src/constants/index.d.ts.map +1 -0
  523. package/dist/types/src/constants/keys/auth.d.ts +28 -0
  524. package/dist/types/src/constants/keys/auth.d.ts.map +1 -0
  525. package/dist/types/src/constants/keys/email.d.ts +13 -0
  526. package/dist/types/src/constants/keys/email.d.ts.map +1 -0
  527. package/dist/types/src/constants/keys/index.d.ts +207 -0
  528. package/dist/types/src/constants/keys/index.d.ts.map +1 -0
  529. package/dist/types/src/constants/keys/main.d.ts +28 -0
  530. package/dist/types/src/constants/keys/main.d.ts.map +1 -0
  531. package/dist/types/src/constants/keys/resources.d.ts +34 -0
  532. package/dist/types/src/constants/keys/resources.d.ts.map +1 -0
  533. package/dist/types/src/constants/keys/ui.d.ts +106 -0
  534. package/dist/types/src/constants/keys/ui.d.ts.map +1 -0
  535. package/dist/types/src/constants/paths/auth.d.ts +21 -0
  536. package/dist/types/src/constants/paths/auth.d.ts.map +1 -0
  537. package/dist/types/src/constants/paths/cms-path.d.ts +2 -0
  538. package/dist/types/src/constants/paths/cms-path.d.ts.map +1 -0
  539. package/dist/types/src/constants/paths/index.d.ts +69 -0
  540. package/dist/types/src/constants/paths/index.d.ts.map +1 -0
  541. package/dist/types/src/constants/paths/main.d.ts +24 -0
  542. package/dist/types/src/constants/paths/main.d.ts.map +1 -0
  543. package/dist/types/src/constants/paths/resources.d.ts +24 -0
  544. package/dist/types/src/constants/paths/resources.d.ts.map +1 -0
  545. package/dist/types/src/constants/redirect-paths.d.ts +3 -0
  546. package/dist/types/src/constants/redirect-paths.d.ts.map +1 -0
  547. package/dist/types/src/domain/index.d.ts +4 -0
  548. package/dist/types/src/domain/index.d.ts.map +1 -0
  549. package/dist/types/src/domain/item.d.ts +7 -0
  550. package/dist/types/src/domain/item.d.ts.map +1 -0
  551. package/dist/types/src/domain/resources/admin/base.d.ts +14 -0
  552. package/dist/types/src/domain/resources/admin/base.d.ts.map +1 -0
  553. package/dist/types/src/domain/resources/admin/card.d.ts +6 -0
  554. package/dist/types/src/domain/resources/admin/card.d.ts.map +1 -0
  555. package/dist/types/src/domain/resources/admin/constants.d.ts +7 -0
  556. package/dist/types/src/domain/resources/admin/constants.d.ts.map +1 -0
  557. package/dist/types/src/domain/resources/admin/full.d.ts +14 -0
  558. package/dist/types/src/domain/resources/admin/full.d.ts.map +1 -0
  559. package/dist/types/src/domain/resources/admin/index.d.ts +7 -0
  560. package/dist/types/src/domain/resources/admin/index.d.ts.map +1 -0
  561. package/dist/types/src/domain/resources/admin/props.d.ts +7 -0
  562. package/dist/types/src/domain/resources/admin/props.d.ts.map +1 -0
  563. package/dist/types/src/domain/resources/admin/translation.d.ts +18 -0
  564. package/dist/types/src/domain/resources/admin/translation.d.ts.map +1 -0
  565. package/dist/types/src/domain/resources/admin-refresh-token/base.d.ts +12 -0
  566. package/dist/types/src/domain/resources/admin-refresh-token/base.d.ts.map +1 -0
  567. package/dist/types/src/domain/resources/admin-refresh-token/index.d.ts +3 -0
  568. package/dist/types/src/domain/resources/admin-refresh-token/index.d.ts.map +1 -0
  569. package/dist/types/src/domain/resources/admin-refresh-token/props.d.ts +15 -0
  570. package/dist/types/src/domain/resources/admin-refresh-token/props.d.ts.map +1 -0
  571. package/dist/types/src/domain/resources/constants.d.ts +7 -0
  572. package/dist/types/src/domain/resources/constants.d.ts.map +1 -0
  573. package/dist/types/src/domain/resources/file/base.d.ts +20 -0
  574. package/dist/types/src/domain/resources/file/base.d.ts.map +1 -0
  575. package/dist/types/src/domain/resources/file/card.d.ts +6 -0
  576. package/dist/types/src/domain/resources/file/card.d.ts.map +1 -0
  577. package/dist/types/src/domain/resources/file/full.d.ts +19 -0
  578. package/dist/types/src/domain/resources/file/full.d.ts.map +1 -0
  579. package/dist/types/src/domain/resources/file/index.d.ts +7 -0
  580. package/dist/types/src/domain/resources/file/index.d.ts.map +1 -0
  581. package/dist/types/src/domain/resources/file/props.d.ts +10 -0
  582. package/dist/types/src/domain/resources/file/props.d.ts.map +1 -0
  583. package/dist/types/src/domain/resources/file/translation.d.ts +11 -0
  584. package/dist/types/src/domain/resources/file/translation.d.ts.map +1 -0
  585. package/dist/types/src/domain/resources/file/utils/index.d.ts +2 -0
  586. package/dist/types/src/domain/resources/file/utils/index.d.ts.map +1 -0
  587. package/dist/types/src/domain/resources/file/utils/is-file-locked.d.ts +4 -0
  588. package/dist/types/src/domain/resources/file/utils/is-file-locked.d.ts.map +1 -0
  589. package/dist/types/src/domain/resources/folder/base.d.ts +10 -0
  590. package/dist/types/src/domain/resources/folder/base.d.ts.map +1 -0
  591. package/dist/types/src/domain/resources/folder/full.d.ts +11 -0
  592. package/dist/types/src/domain/resources/folder/full.d.ts.map +1 -0
  593. package/dist/types/src/domain/resources/folder/index.d.ts +4 -0
  594. package/dist/types/src/domain/resources/folder/index.d.ts.map +1 -0
  595. package/dist/types/src/domain/resources/folder/utils/file-manager-double-click.d.ts +4 -0
  596. package/dist/types/src/domain/resources/folder/utils/file-manager-double-click.d.ts.map +1 -0
  597. package/dist/types/src/domain/resources/folder/utils/index.d.ts +4 -0
  598. package/dist/types/src/domain/resources/folder/utils/index.d.ts.map +1 -0
  599. package/dist/types/src/domain/resources/folder/utils/is-folder-locked.d.ts +4 -0
  600. package/dist/types/src/domain/resources/folder/utils/is-folder-locked.d.ts.map +1 -0
  601. package/dist/types/src/domain/resources/folder/utils/normalize-folder-key.d.ts +6 -0
  602. package/dist/types/src/domain/resources/folder/utils/normalize-folder-key.d.ts.map +1 -0
  603. package/dist/types/src/domain/resources/index.d.ts +8 -0
  604. package/dist/types/src/domain/resources/index.d.ts.map +1 -0
  605. package/dist/types/src/domain/resources/post/base.d.ts +48 -0
  606. package/dist/types/src/domain/resources/post/base.d.ts.map +1 -0
  607. package/dist/types/src/domain/resources/post/card.d.ts +14 -0
  608. package/dist/types/src/domain/resources/post/card.d.ts.map +1 -0
  609. package/dist/types/src/domain/resources/post/full.d.ts +27 -0
  610. package/dist/types/src/domain/resources/post/full.d.ts.map +1 -0
  611. package/dist/types/src/domain/resources/post/index.d.ts +6 -0
  612. package/dist/types/src/domain/resources/post/index.d.ts.map +1 -0
  613. package/dist/types/src/domain/resources/post/props.d.ts +23 -0
  614. package/dist/types/src/domain/resources/post/props.d.ts.map +1 -0
  615. package/dist/types/src/domain/resources/post/translation.d.ts +34 -0
  616. package/dist/types/src/domain/resources/post/translation.d.ts.map +1 -0
  617. package/dist/types/src/domain/resources/seo-metadata/base.d.ts +36 -0
  618. package/dist/types/src/domain/resources/seo-metadata/base.d.ts.map +1 -0
  619. package/dist/types/src/domain/resources/seo-metadata/index.d.ts +3 -0
  620. package/dist/types/src/domain/resources/seo-metadata/index.d.ts.map +1 -0
  621. package/dist/types/src/domain/resources/seo-metadata/props.d.ts +5 -0
  622. package/dist/types/src/domain/resources/seo-metadata/props.d.ts.map +1 -0
  623. package/dist/types/src/domain/translation.d.ts +7 -0
  624. package/dist/types/src/domain/translation.d.ts.map +1 -0
  625. package/dist/types/src/server/applications/auth/create-auth-use-cases.d.ts +64 -0
  626. package/dist/types/src/server/applications/auth/create-auth-use-cases.d.ts.map +1 -0
  627. package/dist/types/src/server/applications/auth/index.d.ts +2 -0
  628. package/dist/types/src/server/applications/auth/index.d.ts.map +1 -0
  629. package/dist/types/src/server/applications/emails/create-email-verification-email.d.ts +23 -0
  630. package/dist/types/src/server/applications/emails/create-email-verification-email.d.ts.map +1 -0
  631. package/dist/types/src/server/applications/emails/create-forgot-password-email.d.ts +22 -0
  632. package/dist/types/src/server/applications/emails/create-forgot-password-email.d.ts.map +1 -0
  633. package/dist/types/src/server/applications/emails/index.d.ts +3 -0
  634. package/dist/types/src/server/applications/emails/index.d.ts.map +1 -0
  635. package/dist/types/src/server/applications/index.d.ts +3 -0
  636. package/dist/types/src/server/applications/index.d.ts.map +1 -0
  637. package/dist/types/src/server/index.d.ts +5 -0
  638. package/dist/types/src/server/index.d.ts.map +1 -0
  639. package/dist/types/src/server/infrastructure/argon2/argon2.service.d.ts +5 -0
  640. package/dist/types/src/server/infrastructure/argon2/argon2.service.d.ts.map +1 -0
  641. package/dist/types/src/server/infrastructure/argon2/index.d.ts +2 -0
  642. package/dist/types/src/server/infrastructure/argon2/index.d.ts.map +1 -0
  643. package/dist/types/src/server/infrastructure/cache/cache-key-delimiter.d.ts +2 -0
  644. package/dist/types/src/server/infrastructure/cache/cache-key-delimiter.d.ts.map +1 -0
  645. package/dist/types/src/server/infrastructure/cache/create-cache-result.d.ts +10 -0
  646. package/dist/types/src/server/infrastructure/cache/create-cache-result.d.ts.map +1 -0
  647. package/dist/types/src/server/infrastructure/cache/create-cache.d.ts +9 -0
  648. package/dist/types/src/server/infrastructure/cache/create-cache.d.ts.map +1 -0
  649. package/dist/types/src/server/infrastructure/cache/create-ip-rate-limiter.d.ts +13 -0
  650. package/dist/types/src/server/infrastructure/cache/create-ip-rate-limiter.d.ts.map +1 -0
  651. package/dist/types/src/server/infrastructure/cache/index.d.ts +5 -0
  652. package/dist/types/src/server/infrastructure/cache/index.d.ts.map +1 -0
  653. package/dist/types/src/server/infrastructure/cache/normalize-cache-key.d.ts +3 -0
  654. package/dist/types/src/server/infrastructure/cache/normalize-cache-key.d.ts.map +1 -0
  655. package/dist/types/src/server/infrastructure/cookie/cookie.service.d.ts +27 -0
  656. package/dist/types/src/server/infrastructure/cookie/cookie.service.d.ts.map +1 -0
  657. package/dist/types/src/server/infrastructure/cookie/index.d.ts +2 -0
  658. package/dist/types/src/server/infrastructure/cookie/index.d.ts.map +1 -0
  659. package/dist/types/src/server/infrastructure/crypto/crypto.service.d.ts +20 -0
  660. package/dist/types/src/server/infrastructure/crypto/crypto.service.d.ts.map +1 -0
  661. package/dist/types/src/server/infrastructure/crypto/index.d.ts +2 -0
  662. package/dist/types/src/server/infrastructure/crypto/index.d.ts.map +1 -0
  663. package/dist/types/src/server/infrastructure/database/admin/command/create-admin-command-repository.d.ts +11 -0
  664. package/dist/types/src/server/infrastructure/database/admin/command/create-admin-command-repository.d.ts.map +1 -0
  665. package/dist/types/src/server/infrastructure/database/admin/command/index.d.ts +2 -0
  666. package/dist/types/src/server/infrastructure/database/admin/command/index.d.ts.map +1 -0
  667. package/dist/types/src/server/infrastructure/database/admin/command/types.d.ts +39 -0
  668. package/dist/types/src/server/infrastructure/database/admin/command/types.d.ts.map +1 -0
  669. package/dist/types/src/server/infrastructure/database/admin/include.d.ts +11 -0
  670. package/dist/types/src/server/infrastructure/database/admin/include.d.ts.map +1 -0
  671. package/dist/types/src/server/infrastructure/database/admin/index.d.ts +3 -0
  672. package/dist/types/src/server/infrastructure/database/admin/index.d.ts.map +1 -0
  673. package/dist/types/src/server/infrastructure/database/admin/query/create-admin-query-repository.d.ts +14 -0
  674. package/dist/types/src/server/infrastructure/database/admin/query/create-admin-query-repository.d.ts.map +1 -0
  675. package/dist/types/src/server/infrastructure/database/admin/query/index.d.ts +2 -0
  676. package/dist/types/src/server/infrastructure/database/admin/query/index.d.ts.map +1 -0
  677. package/dist/types/src/server/infrastructure/database/admin/query/types.d.ts +14 -0
  678. package/dist/types/src/server/infrastructure/database/admin/query/types.d.ts.map +1 -0
  679. package/dist/types/src/server/infrastructure/database/admin-refresh-token/command/create-admin-refresh-token-command-repository.d.ts +9 -0
  680. package/dist/types/src/server/infrastructure/database/admin-refresh-token/command/create-admin-refresh-token-command-repository.d.ts.map +1 -0
  681. package/dist/types/src/server/infrastructure/database/admin-refresh-token/command/index.d.ts +2 -0
  682. package/dist/types/src/server/infrastructure/database/admin-refresh-token/command/index.d.ts.map +1 -0
  683. package/dist/types/src/server/infrastructure/database/admin-refresh-token/command/types.d.ts +14 -0
  684. package/dist/types/src/server/infrastructure/database/admin-refresh-token/command/types.d.ts.map +1 -0
  685. package/dist/types/src/server/infrastructure/database/admin-refresh-token/index.d.ts +3 -0
  686. package/dist/types/src/server/infrastructure/database/admin-refresh-token/index.d.ts.map +1 -0
  687. package/dist/types/src/server/infrastructure/database/admin-refresh-token/query/create-admin-refresh-token-query-repository.d.ts +11 -0
  688. package/dist/types/src/server/infrastructure/database/admin-refresh-token/query/create-admin-refresh-token-query-repository.d.ts.map +1 -0
  689. package/dist/types/src/server/infrastructure/database/admin-refresh-token/query/index.d.ts +2 -0
  690. package/dist/types/src/server/infrastructure/database/admin-refresh-token/query/index.d.ts.map +1 -0
  691. package/dist/types/src/server/infrastructure/database/constants.d.ts +26 -0
  692. package/dist/types/src/server/infrastructure/database/constants.d.ts.map +1 -0
  693. package/dist/types/src/server/infrastructure/database/file/command/create-file-command-repository.d.ts +21 -0
  694. package/dist/types/src/server/infrastructure/database/file/command/create-file-command-repository.d.ts.map +1 -0
  695. package/dist/types/src/server/infrastructure/database/file/command/index.d.ts +2 -0
  696. package/dist/types/src/server/infrastructure/database/file/command/index.d.ts.map +1 -0
  697. package/dist/types/src/server/infrastructure/database/file/command/types.d.ts +38 -0
  698. package/dist/types/src/server/infrastructure/database/file/command/types.d.ts.map +1 -0
  699. package/dist/types/src/server/infrastructure/database/file/include.d.ts +14 -0
  700. package/dist/types/src/server/infrastructure/database/file/include.d.ts.map +1 -0
  701. package/dist/types/src/server/infrastructure/database/file/index.d.ts +3 -0
  702. package/dist/types/src/server/infrastructure/database/file/index.d.ts.map +1 -0
  703. package/dist/types/src/server/infrastructure/database/file/query/create-file-query-repository.d.ts +16 -0
  704. package/dist/types/src/server/infrastructure/database/file/query/create-file-query-repository.d.ts.map +1 -0
  705. package/dist/types/src/server/infrastructure/database/file/query/index.d.ts +2 -0
  706. package/dist/types/src/server/infrastructure/database/file/query/index.d.ts.map +1 -0
  707. package/dist/types/src/server/infrastructure/database/file/query/types.d.ts +13 -0
  708. package/dist/types/src/server/infrastructure/database/file/query/types.d.ts.map +1 -0
  709. package/dist/types/src/server/infrastructure/database/folder/command/create-folder-command-repository.d.ts +11 -0
  710. package/dist/types/src/server/infrastructure/database/folder/command/create-folder-command-repository.d.ts.map +1 -0
  711. package/dist/types/src/server/infrastructure/database/folder/command/index.d.ts +2 -0
  712. package/dist/types/src/server/infrastructure/database/folder/command/index.d.ts.map +1 -0
  713. package/dist/types/src/server/infrastructure/database/folder/command/types.d.ts +13 -0
  714. package/dist/types/src/server/infrastructure/database/folder/command/types.d.ts.map +1 -0
  715. package/dist/types/src/server/infrastructure/database/folder/include.d.ts +11 -0
  716. package/dist/types/src/server/infrastructure/database/folder/include.d.ts.map +1 -0
  717. package/dist/types/src/server/infrastructure/database/folder/index.d.ts +3 -0
  718. package/dist/types/src/server/infrastructure/database/folder/index.d.ts.map +1 -0
  719. package/dist/types/src/server/infrastructure/database/folder/query/create-folder-query-repository.d.ts +11 -0
  720. package/dist/types/src/server/infrastructure/database/folder/query/create-folder-query-repository.d.ts.map +1 -0
  721. package/dist/types/src/server/infrastructure/database/folder/query/index.d.ts +2 -0
  722. package/dist/types/src/server/infrastructure/database/folder/query/index.d.ts.map +1 -0
  723. package/dist/types/src/server/infrastructure/database/folder/query/types.d.ts +12 -0
  724. package/dist/types/src/server/infrastructure/database/folder/query/types.d.ts.map +1 -0
  725. package/dist/types/src/server/infrastructure/database/index.d.ts +8 -0
  726. package/dist/types/src/server/infrastructure/database/index.d.ts.map +1 -0
  727. package/dist/types/src/server/infrastructure/database/post/command/create-post-command-repository.d.ts +11 -0
  728. package/dist/types/src/server/infrastructure/database/post/command/create-post-command-repository.d.ts.map +1 -0
  729. package/dist/types/src/server/infrastructure/database/post/command/index.d.ts +2 -0
  730. package/dist/types/src/server/infrastructure/database/post/command/index.d.ts.map +1 -0
  731. package/dist/types/src/server/infrastructure/database/post/command/types.d.ts +154 -0
  732. package/dist/types/src/server/infrastructure/database/post/command/types.d.ts.map +1 -0
  733. package/dist/types/src/server/infrastructure/database/post/include.d.ts +172 -0
  734. package/dist/types/src/server/infrastructure/database/post/include.d.ts.map +1 -0
  735. package/dist/types/src/server/infrastructure/database/post/index.d.ts +3 -0
  736. package/dist/types/src/server/infrastructure/database/post/index.d.ts.map +1 -0
  737. package/dist/types/src/server/infrastructure/database/post/query/create-post-query-repository.d.ts +23 -0
  738. package/dist/types/src/server/infrastructure/database/post/query/create-post-query-repository.d.ts.map +1 -0
  739. package/dist/types/src/server/infrastructure/database/post/query/index.d.ts +2 -0
  740. package/dist/types/src/server/infrastructure/database/post/query/index.d.ts.map +1 -0
  741. package/dist/types/src/server/infrastructure/database/post/query/types.d.ts +41 -0
  742. package/dist/types/src/server/infrastructure/database/post/query/types.d.ts.map +1 -0
  743. package/dist/types/src/server/infrastructure/database/seo-metadata/command/create-seo-metadata-command-repository.d.ts +6 -0
  744. package/dist/types/src/server/infrastructure/database/seo-metadata/command/create-seo-metadata-command-repository.d.ts.map +1 -0
  745. package/dist/types/src/server/infrastructure/database/seo-metadata/command/index.d.ts +2 -0
  746. package/dist/types/src/server/infrastructure/database/seo-metadata/command/index.d.ts.map +1 -0
  747. package/dist/types/src/server/infrastructure/database/seo-metadata/command/types.d.ts +34 -0
  748. package/dist/types/src/server/infrastructure/database/seo-metadata/command/types.d.ts.map +1 -0
  749. package/dist/types/src/server/infrastructure/database/seo-metadata/index.d.ts +2 -0
  750. package/dist/types/src/server/infrastructure/database/seo-metadata/index.d.ts.map +1 -0
  751. package/dist/types/src/server/infrastructure/database/utils/build-file-usage.d.ts +19 -0
  752. package/dist/types/src/server/infrastructure/database/utils/build-file-usage.d.ts.map +1 -0
  753. package/dist/types/src/server/infrastructure/database/utils/connect.d.ts +28 -0
  754. package/dist/types/src/server/infrastructure/database/utils/connect.d.ts.map +1 -0
  755. package/dist/types/src/server/infrastructure/database/utils/create-pagination.d.ts +5 -0
  756. package/dist/types/src/server/infrastructure/database/utils/create-pagination.d.ts.map +1 -0
  757. package/dist/types/src/server/infrastructure/database/utils/create-search.d.ts +28 -0
  758. package/dist/types/src/server/infrastructure/database/utils/create-search.d.ts.map +1 -0
  759. package/dist/types/src/server/infrastructure/email/create-render-email-template.d.ts +8 -0
  760. package/dist/types/src/server/infrastructure/email/create-render-email-template.d.ts.map +1 -0
  761. package/dist/types/src/server/infrastructure/email/create-send-email.d.ts +17 -0
  762. package/dist/types/src/server/infrastructure/email/create-send-email.d.ts.map +1 -0
  763. package/dist/types/src/server/infrastructure/email/create-transporter.d.ts +8 -0
  764. package/dist/types/src/server/infrastructure/email/create-transporter.d.ts.map +1 -0
  765. package/dist/types/src/server/infrastructure/email/index.d.ts +4 -0
  766. package/dist/types/src/server/infrastructure/email/index.d.ts.map +1 -0
  767. package/dist/types/src/server/infrastructure/index.d.ts +9 -0
  768. package/dist/types/src/server/infrastructure/index.d.ts.map +1 -0
  769. package/dist/types/src/server/infrastructure/jwt/index.d.ts +2 -0
  770. package/dist/types/src/server/infrastructure/jwt/index.d.ts.map +1 -0
  771. package/dist/types/src/server/infrastructure/jwt/jwt.service.d.ts +19 -0
  772. package/dist/types/src/server/infrastructure/jwt/jwt.service.d.ts.map +1 -0
  773. package/dist/types/src/server/infrastructure/zod/create-zod.d.ts +21 -0
  774. package/dist/types/src/server/infrastructure/zod/create-zod.d.ts.map +1 -0
  775. package/dist/types/src/server/infrastructure/zod/index.d.ts +4 -0
  776. package/dist/types/src/server/infrastructure/zod/index.d.ts.map +1 -0
  777. package/dist/types/src/server/infrastructure/zod/rules/bcp47.d.ts +2 -0
  778. package/dist/types/src/server/infrastructure/zod/rules/bcp47.d.ts.map +1 -0
  779. package/dist/types/src/server/infrastructure/zod/rules/exist.d.ts +7 -0
  780. package/dist/types/src/server/infrastructure/zod/rules/exist.d.ts.map +1 -0
  781. package/dist/types/src/server/infrastructure/zod/rules/index.d.ts +3 -0
  782. package/dist/types/src/server/infrastructure/zod/rules/index.d.ts.map +1 -0
  783. package/dist/types/src/server/infrastructure/zod/rules/og-locale.d.ts +2 -0
  784. package/dist/types/src/server/infrastructure/zod/rules/og-locale.d.ts.map +1 -0
  785. package/dist/types/src/server/infrastructure/zod/rules/unique.d.ts +15 -0
  786. package/dist/types/src/server/infrastructure/zod/rules/unique.d.ts.map +1 -0
  787. package/dist/types/src/server/infrastructure/zod/schemas/file.d.ts +18 -0
  788. package/dist/types/src/server/infrastructure/zod/schemas/file.d.ts.map +1 -0
  789. package/dist/types/src/server/infrastructure/zod/schemas/index.d.ts +4 -0
  790. package/dist/types/src/server/infrastructure/zod/schemas/index.d.ts.map +1 -0
  791. package/dist/types/src/server/infrastructure/zod/schemas/schemas.d.ts +35 -0
  792. package/dist/types/src/server/infrastructure/zod/schemas/schemas.d.ts.map +1 -0
  793. package/dist/types/src/server/infrastructure/zod/schemas/toc-item.d.ts +9 -0
  794. package/dist/types/src/server/infrastructure/zod/schemas/toc-item.d.ts.map +1 -0
  795. package/dist/types/src/server/interfaces/actions/action-context.d.ts +53 -0
  796. package/dist/types/src/server/interfaces/actions/action-context.d.ts.map +1 -0
  797. package/dist/types/src/server/interfaces/actions/auth/change-password/change-password-validator.d.ts +7 -0
  798. package/dist/types/src/server/interfaces/actions/auth/change-password/change-password-validator.d.ts.map +1 -0
  799. package/dist/types/src/server/interfaces/actions/auth/change-password/create-change-password-action.d.ts +8 -0
  800. package/dist/types/src/server/interfaces/actions/auth/change-password/create-change-password-action.d.ts.map +1 -0
  801. package/dist/types/src/server/interfaces/actions/auth/change-password/index.d.ts +2 -0
  802. package/dist/types/src/server/interfaces/actions/auth/change-password/index.d.ts.map +1 -0
  803. package/dist/types/src/server/interfaces/actions/auth/email-unverifired/create-email-unverifired-action.d.ts +8 -0
  804. package/dist/types/src/server/interfaces/actions/auth/email-unverifired/create-email-unverifired-action.d.ts.map +1 -0
  805. package/dist/types/src/server/interfaces/actions/auth/email-unverifired/email-unverifired-validator.d.ts +5 -0
  806. package/dist/types/src/server/interfaces/actions/auth/email-unverifired/email-unverifired-validator.d.ts.map +1 -0
  807. package/dist/types/src/server/interfaces/actions/auth/email-unverifired/index.d.ts +2 -0
  808. package/dist/types/src/server/interfaces/actions/auth/email-unverifired/index.d.ts.map +1 -0
  809. package/dist/types/src/server/interfaces/actions/auth/forgot-password/create-forgot-password-action.d.ts +8 -0
  810. package/dist/types/src/server/interfaces/actions/auth/forgot-password/create-forgot-password-action.d.ts.map +1 -0
  811. package/dist/types/src/server/interfaces/actions/auth/forgot-password/forgot-password-validator.d.ts +5 -0
  812. package/dist/types/src/server/interfaces/actions/auth/forgot-password/forgot-password-validator.d.ts.map +1 -0
  813. package/dist/types/src/server/interfaces/actions/auth/forgot-password/index.d.ts +2 -0
  814. package/dist/types/src/server/interfaces/actions/auth/forgot-password/index.d.ts.map +1 -0
  815. package/dist/types/src/server/interfaces/actions/auth/index.d.ts +9 -0
  816. package/dist/types/src/server/interfaces/actions/auth/index.d.ts.map +1 -0
  817. package/dist/types/src/server/interfaces/actions/auth/reset-password/create-reset-password-action.d.ts +8 -0
  818. package/dist/types/src/server/interfaces/actions/auth/reset-password/create-reset-password-action.d.ts.map +1 -0
  819. package/dist/types/src/server/interfaces/actions/auth/reset-password/index.d.ts +2 -0
  820. package/dist/types/src/server/interfaces/actions/auth/reset-password/index.d.ts.map +1 -0
  821. package/dist/types/src/server/interfaces/actions/auth/reset-password/reset-password-validator.d.ts +7 -0
  822. package/dist/types/src/server/interfaces/actions/auth/reset-password/reset-password-validator.d.ts.map +1 -0
  823. package/dist/types/src/server/interfaces/actions/auth/sign-in/create-sign-in-action.d.ts +12 -0
  824. package/dist/types/src/server/interfaces/actions/auth/sign-in/create-sign-in-action.d.ts.map +1 -0
  825. package/dist/types/src/server/interfaces/actions/auth/sign-in/index.d.ts +2 -0
  826. package/dist/types/src/server/interfaces/actions/auth/sign-in/index.d.ts.map +1 -0
  827. package/dist/types/src/server/interfaces/actions/auth/sign-in/sign-in-validator.d.ts +8 -0
  828. package/dist/types/src/server/interfaces/actions/auth/sign-in/sign-in-validator.d.ts.map +1 -0
  829. package/dist/types/src/server/interfaces/actions/auth/sign-out/create-sign-out-action.d.ts +3 -0
  830. package/dist/types/src/server/interfaces/actions/auth/sign-out/create-sign-out-action.d.ts.map +1 -0
  831. package/dist/types/src/server/interfaces/actions/auth/sign-out/index.d.ts +2 -0
  832. package/dist/types/src/server/interfaces/actions/auth/sign-out/index.d.ts.map +1 -0
  833. package/dist/types/src/server/interfaces/actions/auth/verify/create-verify-action.d.ts +5 -0
  834. package/dist/types/src/server/interfaces/actions/auth/verify/create-verify-action.d.ts.map +1 -0
  835. package/dist/types/src/server/interfaces/actions/auth/verify/index.d.ts +2 -0
  836. package/dist/types/src/server/interfaces/actions/auth/verify/index.d.ts.map +1 -0
  837. package/dist/types/src/server/interfaces/actions/auth/verify-email/create-verify-email-action.d.ts +10 -0
  838. package/dist/types/src/server/interfaces/actions/auth/verify-email/create-verify-email-action.d.ts.map +1 -0
  839. package/dist/types/src/server/interfaces/actions/auth/verify-email/index.d.ts +2 -0
  840. package/dist/types/src/server/interfaces/actions/auth/verify-email/index.d.ts.map +1 -0
  841. package/dist/types/src/server/interfaces/actions/auth/verify-email/verify-email-validator.d.ts +6 -0
  842. package/dist/types/src/server/interfaces/actions/auth/verify-email/verify-email-validator.d.ts.map +1 -0
  843. package/dist/types/src/server/interfaces/actions/index.d.ts +4 -0
  844. package/dist/types/src/server/interfaces/actions/index.d.ts.map +1 -0
  845. package/dist/types/src/server/interfaces/actions/resources/admin/commands/create/admin-create-validator.d.ts +49 -0
  846. package/dist/types/src/server/interfaces/actions/resources/admin/commands/create/admin-create-validator.d.ts.map +1 -0
  847. package/dist/types/src/server/interfaces/actions/resources/admin/commands/create/create-admin-create-action.d.ts +10 -0
  848. package/dist/types/src/server/interfaces/actions/resources/admin/commands/create/create-admin-create-action.d.ts.map +1 -0
  849. package/dist/types/src/server/interfaces/actions/resources/admin/commands/delete/create-admin-delete-action.d.ts +5 -0
  850. package/dist/types/src/server/interfaces/actions/resources/admin/commands/delete/create-admin-delete-action.d.ts.map +1 -0
  851. package/dist/types/src/server/interfaces/actions/resources/admin/commands/index.d.ts +4 -0
  852. package/dist/types/src/server/interfaces/actions/resources/admin/commands/index.d.ts.map +1 -0
  853. package/dist/types/src/server/interfaces/actions/resources/admin/commands/update/admin-update-validator.d.ts +48 -0
  854. package/dist/types/src/server/interfaces/actions/resources/admin/commands/update/admin-update-validator.d.ts.map +1 -0
  855. package/dist/types/src/server/interfaces/actions/resources/admin/commands/update/create-admin-update-action.d.ts +11 -0
  856. package/dist/types/src/server/interfaces/actions/resources/admin/commands/update/create-admin-update-action.d.ts.map +1 -0
  857. package/dist/types/src/server/interfaces/actions/resources/admin/index.d.ts +3 -0
  858. package/dist/types/src/server/interfaces/actions/resources/admin/index.d.ts.map +1 -0
  859. package/dist/types/src/server/interfaces/actions/resources/admin/queries/create-admin-find-full-action.d.ts +8 -0
  860. package/dist/types/src/server/interfaces/actions/resources/admin/queries/create-admin-find-full-action.d.ts.map +1 -0
  861. package/dist/types/src/server/interfaces/actions/resources/admin/queries/create-admin-find-list-cards-action.d.ts +11 -0
  862. package/dist/types/src/server/interfaces/actions/resources/admin/queries/create-admin-find-list-cards-action.d.ts.map +1 -0
  863. package/dist/types/src/server/interfaces/actions/resources/admin/queries/index.d.ts +3 -0
  864. package/dist/types/src/server/interfaces/actions/resources/admin/queries/index.d.ts.map +1 -0
  865. package/dist/types/src/server/interfaces/actions/resources/admin-refresh-token/commands/delete/create-admin-refresh-token-delete-action.d.ts +3 -0
  866. package/dist/types/src/server/interfaces/actions/resources/admin-refresh-token/commands/delete/create-admin-refresh-token-delete-action.d.ts.map +1 -0
  867. package/dist/types/src/server/interfaces/actions/resources/admin-refresh-token/commands/index.d.ts +2 -0
  868. package/dist/types/src/server/interfaces/actions/resources/admin-refresh-token/commands/index.d.ts.map +1 -0
  869. package/dist/types/src/server/interfaces/actions/resources/admin-refresh-token/index.d.ts +3 -0
  870. package/dist/types/src/server/interfaces/actions/resources/admin-refresh-token/index.d.ts.map +1 -0
  871. package/dist/types/src/server/interfaces/actions/resources/admin-refresh-token/queries/create-admin-refresh-token-find-full-action.d.ts +8 -0
  872. package/dist/types/src/server/interfaces/actions/resources/admin-refresh-token/queries/create-admin-refresh-token-find-full-action.d.ts.map +1 -0
  873. package/dist/types/src/server/interfaces/actions/resources/admin-refresh-token/queries/index.d.ts +2 -0
  874. package/dist/types/src/server/interfaces/actions/resources/admin-refresh-token/queries/index.d.ts.map +1 -0
  875. package/dist/types/src/server/interfaces/actions/resources/file/commands/create/create-file-create-action.d.ts +13 -0
  876. package/dist/types/src/server/interfaces/actions/resources/file/commands/create/create-file-create-action.d.ts.map +1 -0
  877. package/dist/types/src/server/interfaces/actions/resources/file/commands/create/file-create-validator.d.ts +31 -0
  878. package/dist/types/src/server/interfaces/actions/resources/file/commands/create/file-create-validator.d.ts.map +1 -0
  879. package/dist/types/src/server/interfaces/actions/resources/file/commands/create-many/create-file-create-many-action.d.ts +10 -0
  880. package/dist/types/src/server/interfaces/actions/resources/file/commands/create-many/create-file-create-many-action.d.ts.map +1 -0
  881. package/dist/types/src/server/interfaces/actions/resources/file/commands/create-many/file-create-many-validator.d.ts +64 -0
  882. package/dist/types/src/server/interfaces/actions/resources/file/commands/create-many/file-create-many-validator.d.ts.map +1 -0
  883. package/dist/types/src/server/interfaces/actions/resources/file/commands/index.d.ts +8 -0
  884. package/dist/types/src/server/interfaces/actions/resources/file/commands/index.d.ts.map +1 -0
  885. package/dist/types/src/server/interfaces/actions/resources/file/commands/purge-many/create-file-purge-many-action.d.ts +7 -0
  886. package/dist/types/src/server/interfaces/actions/resources/file/commands/purge-many/create-file-purge-many-action.d.ts.map +1 -0
  887. package/dist/types/src/server/interfaces/actions/resources/file/commands/purge-many/file-purge-many-validator.d.ts +5 -0
  888. package/dist/types/src/server/interfaces/actions/resources/file/commands/purge-many/file-purge-many-validator.d.ts.map +1 -0
  889. package/dist/types/src/server/interfaces/actions/resources/file/commands/restore-many/create-file-restore-many-action.d.ts +7 -0
  890. package/dist/types/src/server/interfaces/actions/resources/file/commands/restore-many/create-file-restore-many-action.d.ts.map +1 -0
  891. package/dist/types/src/server/interfaces/actions/resources/file/commands/restore-many/file-create-restore-validator.d.ts +5 -0
  892. package/dist/types/src/server/interfaces/actions/resources/file/commands/restore-many/file-create-restore-validator.d.ts.map +1 -0
  893. package/dist/types/src/server/interfaces/actions/resources/file/commands/soft-delete/create-file-soft-delete-action.d.ts +5 -0
  894. package/dist/types/src/server/interfaces/actions/resources/file/commands/soft-delete/create-file-soft-delete-action.d.ts.map +1 -0
  895. package/dist/types/src/server/interfaces/actions/resources/file/commands/soft-delete-many/create-file-soft-delete-many-action.d.ts +7 -0
  896. package/dist/types/src/server/interfaces/actions/resources/file/commands/soft-delete-many/create-file-soft-delete-many-action.d.ts.map +1 -0
  897. package/dist/types/src/server/interfaces/actions/resources/file/commands/soft-delete-many/file-soft-delete-many-validator.d.ts +5 -0
  898. package/dist/types/src/server/interfaces/actions/resources/file/commands/soft-delete-many/file-soft-delete-many-validator.d.ts.map +1 -0
  899. package/dist/types/src/server/interfaces/actions/resources/file/commands/update/create-file-update-action.d.ts +14 -0
  900. package/dist/types/src/server/interfaces/actions/resources/file/commands/update/create-file-update-action.d.ts.map +1 -0
  901. package/dist/types/src/server/interfaces/actions/resources/file/commands/update/file-update-validator.d.ts +30 -0
  902. package/dist/types/src/server/interfaces/actions/resources/file/commands/update/file-update-validator.d.ts.map +1 -0
  903. package/dist/types/src/server/interfaces/actions/resources/file/index.d.ts +3 -0
  904. package/dist/types/src/server/interfaces/actions/resources/file/index.d.ts.map +1 -0
  905. package/dist/types/src/server/interfaces/actions/resources/file/querires/create-file-find-full-action.d.ts +7 -0
  906. package/dist/types/src/server/interfaces/actions/resources/file/querires/create-file-find-full-action.d.ts.map +1 -0
  907. package/dist/types/src/server/interfaces/actions/resources/file/querires/create-file-find-list-cards-action.d.ts +16 -0
  908. package/dist/types/src/server/interfaces/actions/resources/file/querires/create-file-find-list-cards-action.d.ts.map +1 -0
  909. package/dist/types/src/server/interfaces/actions/resources/file/querires/index.d.ts +3 -0
  910. package/dist/types/src/server/interfaces/actions/resources/file/querires/index.d.ts.map +1 -0
  911. package/dist/types/src/server/interfaces/actions/resources/folder/commands/create/create-folder-create-action.d.ts +13 -0
  912. package/dist/types/src/server/interfaces/actions/resources/folder/commands/create/create-folder-create-action.d.ts.map +1 -0
  913. package/dist/types/src/server/interfaces/actions/resources/folder/commands/create/folder-create-validator.d.ts +9 -0
  914. package/dist/types/src/server/interfaces/actions/resources/folder/commands/create/folder-create-validator.d.ts.map +1 -0
  915. package/dist/types/src/server/interfaces/actions/resources/folder/commands/delete/create-folder-delete-action.d.ts +5 -0
  916. package/dist/types/src/server/interfaces/actions/resources/folder/commands/delete/create-folder-delete-action.d.ts.map +1 -0
  917. package/dist/types/src/server/interfaces/actions/resources/folder/commands/index.d.ts +4 -0
  918. package/dist/types/src/server/interfaces/actions/resources/folder/commands/index.d.ts.map +1 -0
  919. package/dist/types/src/server/interfaces/actions/resources/folder/commands/update/create-folder-update-action.d.ts +14 -0
  920. package/dist/types/src/server/interfaces/actions/resources/folder/commands/update/create-folder-update-action.d.ts.map +1 -0
  921. package/dist/types/src/server/interfaces/actions/resources/folder/commands/update/folder-update-validator.d.ts +9 -0
  922. package/dist/types/src/server/interfaces/actions/resources/folder/commands/update/folder-update-validator.d.ts.map +1 -0
  923. package/dist/types/src/server/interfaces/actions/resources/folder/index.d.ts +3 -0
  924. package/dist/types/src/server/interfaces/actions/resources/folder/index.d.ts.map +1 -0
  925. package/dist/types/src/server/interfaces/actions/resources/folder/queries/create-folder-find-full-action.d.ts +9 -0
  926. package/dist/types/src/server/interfaces/actions/resources/folder/queries/create-folder-find-full-action.d.ts.map +1 -0
  927. package/dist/types/src/server/interfaces/actions/resources/folder/queries/create-folder-find-list-cards-action.d.ts +12 -0
  928. package/dist/types/src/server/interfaces/actions/resources/folder/queries/create-folder-find-list-cards-action.d.ts.map +1 -0
  929. package/dist/types/src/server/interfaces/actions/resources/folder/queries/index.d.ts +3 -0
  930. package/dist/types/src/server/interfaces/actions/resources/folder/queries/index.d.ts.map +1 -0
  931. package/dist/types/src/server/interfaces/actions/resources/index.d.ts +7 -0
  932. package/dist/types/src/server/interfaces/actions/resources/index.d.ts.map +1 -0
  933. package/dist/types/src/server/interfaces/actions/resources/post/commands/create/create-post-create-action.d.ts +24 -0
  934. package/dist/types/src/server/interfaces/actions/resources/post/commands/create/create-post-create-action.d.ts.map +1 -0
  935. package/dist/types/src/server/interfaces/actions/resources/post/commands/create/post-create-validator.d.ts +410 -0
  936. package/dist/types/src/server/interfaces/actions/resources/post/commands/create/post-create-validator.d.ts.map +1 -0
  937. package/dist/types/src/server/interfaces/actions/resources/post/commands/delete/create-post-delete-action.d.ts +5 -0
  938. package/dist/types/src/server/interfaces/actions/resources/post/commands/delete/create-post-delete-action.d.ts.map +1 -0
  939. package/dist/types/src/server/interfaces/actions/resources/post/commands/index.d.ts +4 -0
  940. package/dist/types/src/server/interfaces/actions/resources/post/commands/index.d.ts.map +1 -0
  941. package/dist/types/src/server/interfaces/actions/resources/post/commands/update/create-post-update-action.d.ts +25 -0
  942. package/dist/types/src/server/interfaces/actions/resources/post/commands/update/create-post-update-action.d.ts.map +1 -0
  943. package/dist/types/src/server/interfaces/actions/resources/post/commands/update/post-update-validator.d.ts +411 -0
  944. package/dist/types/src/server/interfaces/actions/resources/post/commands/update/post-update-validator.d.ts.map +1 -0
  945. package/dist/types/src/server/interfaces/actions/resources/post/index.d.ts +3 -0
  946. package/dist/types/src/server/interfaces/actions/resources/post/index.d.ts.map +1 -0
  947. package/dist/types/src/server/interfaces/actions/resources/post/queries/create-post-find-action.d.ts +14 -0
  948. package/dist/types/src/server/interfaces/actions/resources/post/queries/create-post-find-action.d.ts.map +1 -0
  949. package/dist/types/src/server/interfaces/actions/resources/post/queries/create-post-find-full-action.d.ts +14 -0
  950. package/dist/types/src/server/interfaces/actions/resources/post/queries/create-post-find-full-action.d.ts.map +1 -0
  951. package/dist/types/src/server/interfaces/actions/resources/post/queries/create-post-find-list-cards-action.d.ts +33 -0
  952. package/dist/types/src/server/interfaces/actions/resources/post/queries/create-post-find-list-cards-action.d.ts.map +1 -0
  953. package/dist/types/src/server/interfaces/actions/resources/post/queries/create-post-find-many-action.d.ts +11 -0
  954. package/dist/types/src/server/interfaces/actions/resources/post/queries/create-post-find-many-action.d.ts.map +1 -0
  955. package/dist/types/src/server/interfaces/actions/resources/post/queries/index.d.ts +5 -0
  956. package/dist/types/src/server/interfaces/actions/resources/post/queries/index.d.ts.map +1 -0
  957. package/dist/types/src/server/interfaces/actions/resources/seo-metadata/commands/index.d.ts +2 -0
  958. package/dist/types/src/server/interfaces/actions/resources/seo-metadata/commands/index.d.ts.map +1 -0
  959. package/dist/types/src/server/interfaces/actions/resources/seo-metadata/commands/upsert/create-seo-metadata-upsert-action.d.ts +8 -0
  960. package/dist/types/src/server/interfaces/actions/resources/seo-metadata/commands/upsert/create-seo-metadata-upsert-action.d.ts.map +1 -0
  961. package/dist/types/src/server/interfaces/actions/resources/seo-metadata/commands/upsert/seo-metadata-upsert-validator.d.ts +126 -0
  962. package/dist/types/src/server/interfaces/actions/resources/seo-metadata/commands/upsert/seo-metadata-upsert-validator.d.ts.map +1 -0
  963. package/dist/types/src/server/interfaces/actions/resources/seo-metadata/index.d.ts +2 -0
  964. package/dist/types/src/server/interfaces/actions/resources/seo-metadata/index.d.ts.map +1 -0
  965. package/dist/types/src/server/interfaces/apis/api-context.d.ts +24 -0
  966. package/dist/types/src/server/interfaces/apis/api-context.d.ts.map +1 -0
  967. package/dist/types/src/server/interfaces/apis/file-upload/file-upload-api.d.ts +13 -0
  968. package/dist/types/src/server/interfaces/apis/file-upload/file-upload-api.d.ts.map +1 -0
  969. package/dist/types/src/server/interfaces/apis/file-upload/index.d.ts +2 -0
  970. package/dist/types/src/server/interfaces/apis/file-upload/index.d.ts.map +1 -0
  971. package/dist/types/src/server/interfaces/apis/file-upload/validator.d.ts +21 -0
  972. package/dist/types/src/server/interfaces/apis/file-upload/validator.d.ts.map +1 -0
  973. package/dist/types/src/server/interfaces/apis/index.d.ts +4 -0
  974. package/dist/types/src/server/interfaces/apis/index.d.ts.map +1 -0
  975. package/dist/types/src/server/interfaces/apis/multi-files-upload/index.d.ts +2 -0
  976. package/dist/types/src/server/interfaces/apis/multi-files-upload/index.d.ts.map +1 -0
  977. package/dist/types/src/server/interfaces/apis/multi-files-upload/multi-files-upload-api.d.ts +24 -0
  978. package/dist/types/src/server/interfaces/apis/multi-files-upload/multi-files-upload-api.d.ts.map +1 -0
  979. package/dist/types/src/server/interfaces/apis/multi-files-upload/validator.d.ts +21 -0
  980. package/dist/types/src/server/interfaces/apis/multi-files-upload/validator.d.ts.map +1 -0
  981. package/dist/types/src/server/interfaces/execution/create-execute-action.d.ts +23 -0
  982. package/dist/types/src/server/interfaces/execution/create-execute-action.d.ts.map +1 -0
  983. package/dist/types/src/server/interfaces/execution/create-execute-api.d.ts +11 -0
  984. package/dist/types/src/server/interfaces/execution/create-execute-api.d.ts.map +1 -0
  985. package/dist/types/src/server/interfaces/execution/create-run-action.d.ts +12 -0
  986. package/dist/types/src/server/interfaces/execution/create-run-action.d.ts.map +1 -0
  987. package/dist/types/src/server/interfaces/execution/index.d.ts +4 -0
  988. package/dist/types/src/server/interfaces/execution/index.d.ts.map +1 -0
  989. package/dist/types/src/server/interfaces/execution/normalize-error.d.ts +10 -0
  990. package/dist/types/src/server/interfaces/execution/normalize-error.d.ts.map +1 -0
  991. package/dist/types/src/server/interfaces/index.d.ts +5 -0
  992. package/dist/types/src/server/interfaces/index.d.ts.map +1 -0
  993. package/dist/types/src/server/interfaces/middlewares/auth/create-auth-middleware.d.ts +17 -0
  994. package/dist/types/src/server/interfaces/middlewares/auth/create-auth-middleware.d.ts.map +1 -0
  995. package/dist/types/src/server/interfaces/middlewares/auth/create-verify-access-token.d.ts +17 -0
  996. package/dist/types/src/server/interfaces/middlewares/auth/create-verify-access-token.d.ts.map +1 -0
  997. package/dist/types/src/server/interfaces/middlewares/auth/create-verify-refresh-token.d.ts +18 -0
  998. package/dist/types/src/server/interfaces/middlewares/auth/create-verify-refresh-token.d.ts.map +1 -0
  999. package/dist/types/src/server/interfaces/middlewares/auth/index.d.ts +4 -0
  1000. package/dist/types/src/server/interfaces/middlewares/auth/index.d.ts.map +1 -0
  1001. package/dist/types/src/server/interfaces/middlewares/index.d.ts +2 -0
  1002. package/dist/types/src/server/interfaces/middlewares/index.d.ts.map +1 -0
  1003. package/dist/types/src/server/server-error.d.ts +18 -0
  1004. package/dist/types/src/server/server-error.d.ts.map +1 -0
  1005. package/dist/types/src/shared/blob-file/classify-file-type.d.ts +2 -0
  1006. package/dist/types/src/shared/blob-file/classify-file-type.d.ts.map +1 -0
  1007. package/dist/types/src/shared/blob-file/format-file-size.d.ts +2 -0
  1008. package/dist/types/src/shared/blob-file/format-file-size.d.ts.map +1 -0
  1009. package/dist/types/src/shared/blob-file/get-media-info/get-audio-info.d.ts +4 -0
  1010. package/dist/types/src/shared/blob-file/get-media-info/get-audio-info.d.ts.map +1 -0
  1011. package/dist/types/src/shared/blob-file/get-media-info/get-image-info.d.ts +5 -0
  1012. package/dist/types/src/shared/blob-file/get-media-info/get-image-info.d.ts.map +1 -0
  1013. package/dist/types/src/shared/blob-file/get-media-info/get-media-info.d.ts +8 -0
  1014. package/dist/types/src/shared/blob-file/get-media-info/get-media-info.d.ts.map +1 -0
  1015. package/dist/types/src/shared/blob-file/get-media-info/get-video-info.d.ts +6 -0
  1016. package/dist/types/src/shared/blob-file/get-media-info/get-video-info.d.ts.map +1 -0
  1017. package/dist/types/src/shared/blob-file/get-media-info/index.d.ts +2 -0
  1018. package/dist/types/src/shared/blob-file/get-media-info/index.d.ts.map +1 -0
  1019. package/dist/types/src/shared/blob-file/index.d.ts +6 -0
  1020. package/dist/types/src/shared/blob-file/index.d.ts.map +1 -0
  1021. package/dist/types/src/shared/blob-file/mime-to-extension.d.ts +2 -0
  1022. package/dist/types/src/shared/blob-file/mime-to-extension.d.ts.map +1 -0
  1023. package/dist/{types-0oS1A2K5.d.ts → types/src/shared/blob-file/types.d.ts} +2 -3
  1024. package/dist/types/src/shared/blob-file/types.d.ts.map +1 -0
  1025. package/dist/types/src/shared/form/index.d.ts +3 -0
  1026. package/dist/types/src/shared/form/index.d.ts.map +1 -0
  1027. package/dist/types/src/shared/form/normalizers/datetime-to-db.d.ts +2 -0
  1028. package/dist/types/src/shared/form/normalizers/datetime-to-db.d.ts.map +1 -0
  1029. package/dist/types/src/shared/form/normalizers/datetime-to-ui.d.ts +2 -0
  1030. package/dist/types/src/shared/form/normalizers/datetime-to-ui.d.ts.map +1 -0
  1031. package/dist/types/src/shared/form/normalizers/index.d.ts +5 -0
  1032. package/dist/types/src/shared/form/normalizers/index.d.ts.map +1 -0
  1033. package/dist/types/src/shared/form/normalizers/json-array-to-db.d.ts +2 -0
  1034. package/dist/types/src/shared/form/normalizers/json-array-to-db.d.ts.map +1 -0
  1035. package/dist/types/src/shared/form/normalizers/json-array-to-ui.d.ts +2 -0
  1036. package/dist/types/src/shared/form/normalizers/json-array-to-ui.d.ts.map +1 -0
  1037. package/dist/{types-BUmWwzpD.d.ts → types/src/shared/form/types.d.ts} +7 -8
  1038. package/dist/types/src/shared/form/types.d.ts.map +1 -0
  1039. package/dist/types/src/shared/index.d.ts +8 -0
  1040. package/dist/types/src/shared/index.d.ts.map +1 -0
  1041. package/dist/types/src/shared/result/index.d.ts +3 -0
  1042. package/dist/types/src/shared/result/index.d.ts.map +1 -0
  1043. package/dist/types/src/shared/result/result.d.ts +23 -0
  1044. package/dist/types/src/shared/result/result.d.ts.map +1 -0
  1045. package/dist/types/src/shared/result/types.d.ts +19 -0
  1046. package/dist/types/src/shared/result/types.d.ts.map +1 -0
  1047. package/dist/types/src/shared/seo-metadata/build-article-metadata.d.ts +8 -0
  1048. package/dist/types/src/shared/seo-metadata/build-article-metadata.d.ts.map +1 -0
  1049. package/dist/types/src/shared/seo-metadata/build-website-metadata.d.ts +7 -0
  1050. package/dist/types/src/shared/seo-metadata/build-website-metadata.d.ts.map +1 -0
  1051. package/dist/types/src/shared/seo-metadata/index.d.ts +5 -0
  1052. package/dist/types/src/shared/seo-metadata/index.d.ts.map +1 -0
  1053. package/dist/types/src/shared/seo-metadata/serialize-json-ld.d.ts +2 -0
  1054. package/dist/types/src/shared/seo-metadata/serialize-json-ld.d.ts.map +1 -0
  1055. package/dist/types/src/shared/seo-metadata/standards.d.ts +5 -0
  1056. package/dist/types/src/shared/seo-metadata/standards.d.ts.map +1 -0
  1057. package/dist/types/src/shared/seo-metadata/types.d.ts +11 -0
  1058. package/dist/types/src/shared/seo-metadata/types.d.ts.map +1 -0
  1059. package/dist/types/src/shared/seo-metadata/utils/build-alternate-map.d.ts +3 -0
  1060. package/dist/types/src/shared/seo-metadata/utils/build-alternate-map.d.ts.map +1 -0
  1061. package/dist/types/src/shared/seo-metadata/utils/build-og-image.d.ts +3 -0
  1062. package/dist/types/src/shared/seo-metadata/utils/build-og-image.d.ts.map +1 -0
  1063. package/dist/types/src/shared/seo-metadata/utils/ensure-og-type.d.ts +3 -0
  1064. package/dist/types/src/shared/seo-metadata/utils/ensure-og-type.d.ts.map +1 -0
  1065. package/dist/types/src/shared/seo-metadata/utils/ensure-twitter-card.d.ts +3 -0
  1066. package/dist/types/src/shared/seo-metadata/utils/ensure-twitter-card.d.ts.map +1 -0
  1067. package/dist/types/src/shared/seo-metadata/utils/sanitize-string-array.d.ts +2 -0
  1068. package/dist/types/src/shared/seo-metadata/utils/sanitize-string-array.d.ts.map +1 -0
  1069. package/dist/types/src/shared/seo-metadata/utils/to-iso-time.d.ts +2 -0
  1070. package/dist/types/src/shared/seo-metadata/utils/to-iso-time.d.ts.map +1 -0
  1071. package/dist/types/src/shared/translation/create-build-translations.d.ts +12 -0
  1072. package/dist/types/src/shared/translation/create-build-translations.d.ts.map +1 -0
  1073. package/dist/types/src/shared/translation/find-translation.d.ts +3 -0
  1074. package/dist/types/src/shared/translation/find-translation.d.ts.map +1 -0
  1075. package/dist/types/src/shared/translation/index.d.ts +3 -0
  1076. package/dist/types/src/shared/translation/index.d.ts.map +1 -0
  1077. package/dist/types/src/shared/units.d.ts +10 -0
  1078. package/dist/types/src/shared/units.d.ts.map +1 -0
  1079. package/dist/types/src/shared/utils/ensure-array.d.ts +2 -0
  1080. package/dist/types/src/shared/utils/ensure-array.d.ts.map +1 -0
  1081. package/dist/types/src/shared/utils/format-date-time.d.ts +2 -0
  1082. package/dist/types/src/shared/utils/format-date-time.d.ts.map +1 -0
  1083. package/dist/types/src/shared/utils/index.d.ts +4 -0
  1084. package/dist/types/src/shared/utils/index.d.ts.map +1 -0
  1085. package/dist/types/src/shared/utils/join-url.d.ts +2 -0
  1086. package/dist/types/src/shared/utils/join-url.d.ts.map +1 -0
  1087. package/dist/types/src/storage/r2/index.d.ts +2 -0
  1088. package/dist/types/src/storage/r2/index.d.ts.map +1 -0
  1089. package/dist/types/src/storage/r2/r2.service.d.ts +11 -0
  1090. package/dist/types/src/storage/r2/r2.service.d.ts.map +1 -0
  1091. package/dist/types/src/storage/sftp/index.d.ts +3 -0
  1092. package/dist/types/src/storage/sftp/index.d.ts.map +1 -0
  1093. package/dist/types/src/storage/sftp/sftp-pool.d.ts +10 -0
  1094. package/dist/types/src/storage/sftp/sftp-pool.d.ts.map +1 -0
  1095. package/dist/types/src/storage/sftp/sftp.service.d.ts +12 -0
  1096. package/dist/types/src/storage/sftp/sftp.service.d.ts.map +1 -0
  1097. package/dist/{types-J25u1G6t.d.ts → types/src/storage/types.d.ts} +3 -5
  1098. package/dist/types/src/storage/types.d.ts.map +1 -0
  1099. package/dist/types/src/storage/utils.d.ts +8 -0
  1100. package/dist/types/src/storage/utils.d.ts.map +1 -0
  1101. package/package.json +14 -6
  1102. package/dist/chunk-5LKI7KHR.js +0 -99
  1103. package/dist/chunk-PXWRSEQ7.js +0 -233
  1104. package/dist/chunk-YLFBYJTE.js +0 -1837
  1105. package/dist/chunk-YYDELEHA.js +0 -511
  1106. package/dist/client/index.d.ts +0 -650
  1107. package/dist/client/index.js +0 -2462
  1108. package/dist/client/shadcn/index.d.ts +0 -110
  1109. package/dist/client/shadcn/index.js +0 -1
  1110. package/dist/create-reset-password-action-yWaJxg8W.d.ts +0 -930
  1111. package/dist/index.d.ts +0 -428
  1112. package/dist/index.js +0 -3
  1113. package/dist/server/index.d.ts +0 -1601
  1114. package/dist/server/index.js +0 -4362
  1115. package/dist/sidebar-CBC8_O5A.d.ts +0 -94
  1116. package/dist/storage/r2/index.d.ts +0 -13
  1117. package/dist/storage/sftp/index.d.ts +0 -20
  1118. package/dist/types-BGsFazJr.d.ts +0 -360
@@ -1,2462 +0,0 @@
1
- import { PATHS } from '../chunk-PXWRSEQ7.js';
2
- import { cn, useSidebar, Sidebar, Skeleton, SidebarInset, SIDEBAR_WIDTH, SidebarGroup, SidebarMenu, Collapsible, SidebarMenuItem, SidebarMenuButton, Separator, CollapsibleTrigger, SidebarMenuAction, CollapsibleContent, SidebarMenuSub, SidebarMenuSubItem, SidebarMenuSubButton, Button, Spinner, useParentPathname, DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, PAGE_HEADER_HEIGHT, InputGroup, InputGroupAddon, Textarea, InputGroupInput, InputGroupButton, Select, SelectTrigger, SelectValue, SelectContent, SelectGroup, SelectLabel, SelectItem, Label, FORM_MIDDLE_GAP_WIDTH, FORM_SIDE_FIELDS_WIDTH, Card, useDeviceInfo, CardHeader, CardTitle, CardContent, useCountdown, CardDescription, NAVBAR_HEIGHT, isConfirm, Avatar, AvatarImage, AvatarFallback, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuGroup, Pagination, PaginationContent, PaginationItem, PaginationPrevious, PaginationLink, PaginationEllipsis, PaginationNext } from '../chunk-YLFBYJTE.js';
3
- export { NAVBAR_HEIGHT, PAGE_HEADER_HEIGHT, SIDEBAR_WIDTH, Sidebar, SidebarContent, SidebarInset, SidebarProvider, cn, getControlMeta, isConfirm, useDeviceInfo, usePickItems, useSidebar } from '../chunk-YLFBYJTE.js';
4
- import { ensureArray, findTranslation, joinUrl } from '../chunk-YYDELEHA.js';
5
- import { toast } from 'sonner';
6
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
- import { useMutation, useQuery } from '@tanstack/react-query';
8
- import { createContext, useState, useContext, useEffect, createElement, useRef } from 'react';
9
- import { ThemeProvider as ThemeProvider$1, useTheme } from 'next-themes';
10
- import { useTranslator } from 'intor/react';
11
- import { ChevronRight, Undo2, SidebarIcon, House, SquareArrowOutUpRight, Languages, LogOut, Files, CircleX, CirclePlus, Eye, EyeOff, Search, Asterisk, Mail, Sun, Moon, TvMinimal, UserCircle, ChevronsUpDown, PenLine, Trash2, CopyCheck, CopyX, FileSymlink, FileX, FilePlus, FilePen, File, FileStack, FolderSearch, Lock, FolderCog, FileSpreadsheet, Archive, Binary, MapPinCheckInside, Star, CircleMinus } from 'lucide-react';
12
- import Link from 'next/link';
13
- import { usePathname, useRouter, useSearchParams } from 'next/navigation';
14
- import { Link as Link$1 } from 'intor/next';
15
-
16
- // src/client/infrastructure/fetch/smart-fetch.ts
17
- function createSmartFetch({
18
- requestInterceptor,
19
- responseInterceptor,
20
- logger
21
- }) {
22
- const smartFetch = async (input, init = {}) => {
23
- try {
24
- let ctx = {
25
- input,
26
- init,
27
- meta: {}
28
- };
29
- ctx = await requestInterceptor(ctx);
30
- const response = await fetch(ctx.input, ctx.init);
31
- return await responseInterceptor(response, ctx);
32
- } catch (error) {
33
- logger.error("smartFetch error", { error });
34
- throw error instanceof Error ? error : new Error("Network Error");
35
- }
36
- };
37
- return smartFetch;
38
- }
39
-
40
- // src/client/infrastructure/fetch/request-interceptor.ts
41
- function createRequestInterceptor({ baseUrl }) {
42
- const requestInterceptor = (ctx) => {
43
- const normalizedBase = baseUrl.replace(/\/+$/, "");
44
- const normalizedPath = ctx.input.replace(/^\/+/, "");
45
- const isAbsolute = /^[a-zA-Z]+:\/\//.test(ctx.input);
46
- const input = isAbsolute ? ctx.input : `${normalizedBase}/${normalizedPath}`;
47
- return {
48
- ...ctx,
49
- input,
50
- meta: {
51
- ...ctx.meta,
52
- baseUrl,
53
- url: ctx.input,
54
- startTime: Date.now()
55
- }
56
- };
57
- };
58
- return requestInterceptor;
59
- }
60
-
61
- // src/client/infrastructure/fetch/response-interceptor.ts
62
- function createResponseInterceptor({ logger }) {
63
- const responseInterceptor = async (response, ctx) => {
64
- const duration = Date.now() - (ctx.meta.startTime ?? 0);
65
- if (!response.ok) {
66
- logger.warn("HTTP error", {
67
- url: ctx.meta.url,
68
- status: response.status,
69
- duration
70
- });
71
- throw new Error(`HTTP Error ${response.status}`);
72
- }
73
- const data = await response.json();
74
- logger.debug("Fetch success", {
75
- url: ctx.meta.url,
76
- duration
77
- });
78
- return data;
79
- };
80
- return responseInterceptor;
81
- }
82
- function ErrorDisplay({ errors }) {
83
- return /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-2", children: errors.map((error, index) => {
84
- let field = error.field ?? "";
85
- if (field.startsWith("translations")) field = field.slice(15);
86
- if (field.includes(".") && !Number.isNaN(Number(field.at(-1)))) {
87
- const [f, i] = field.split(".");
88
- field = `${f} ${Number(i) + 1}`;
89
- }
90
- return /* @__PURE__ */ jsxs("p", { children: [
91
- /* @__PURE__ */ jsxs("span", { className: "font-bold", children: [
92
- "(",
93
- index + 1,
94
- ")"
95
- ] }),
96
- "\xA0",
97
- /* @__PURE__ */ jsx("span", { className: "font-bold underline underline-offset-2", children: field }),
98
- "\xA0",
99
- /* @__PURE__ */ jsx("span", { children: error.message })
100
- ] }, index);
101
- }) });
102
- }
103
- var createErrorDisplay = (errors) => ErrorDisplay({ errors });
104
-
105
- // src/client/infrastructure/toast/should-show-toast.ts
106
- var shouldShowToast = (type, showToast) => {
107
- if (showToast === void 0) return false;
108
- if (typeof showToast === "boolean") return showToast;
109
- return !!showToast[type];
110
- };
111
-
112
- // src/client/infrastructure/toast/handle-toast.ts
113
- var handleToast = (result, showToast) => {
114
- const normalizedShowToast = typeof showToast === "object" ? {
115
- success: showToast.success ?? true,
116
- error: showToast.error ?? true
117
- } : showToast ?? true;
118
- if (result.success) {
119
- const { message } = result;
120
- if (shouldShowToast("success", normalizedShowToast) && message) {
121
- toast.success(message);
122
- }
123
- } else {
124
- const { message, errors } = result;
125
- if (shouldShowToast("error", normalizedShowToast)) {
126
- if (errors && errors.length > 0) {
127
- toast.error(createErrorDisplay(errors));
128
- } else if (message) {
129
- toast.error(message);
130
- } else {
131
- toast.error("Unknown Error");
132
- }
133
- }
134
- }
135
- };
136
-
137
- // src/client/constants.ts
138
- var VERIFY_CACHE_KEY = "auth|verify";
139
-
140
- // src/client/infrastructure/react-query/create-use-command.ts
141
- function createUseCommand(queryClient) {
142
- return function useCommand(fn, mutationOptions) {
143
- const [isRedirecting, setIsRedirecting] = useState(false);
144
- const [errors, setErrors] = useState([]);
145
- const { showToast, shouldTrigger, clearAll = true } = mutationOptions || {};
146
- const mutation = useMutation({
147
- ...mutationOptions,
148
- mutationFn: async (params) => {
149
- const response = await fn(params);
150
- handleToast(response, showToast);
151
- if (response.success) {
152
- setErrors([]);
153
- if (clearAll) {
154
- await queryClient.invalidateQueries({
155
- predicate: ({ queryKey }) => !(queryKey[0] === VERIFY_CACHE_KEY)
156
- });
157
- }
158
- return response.data;
159
- }
160
- setErrors(
161
- ensureArray(response.errors).map((e) => e.field).filter((f) => typeof f === "string")
162
- );
163
- throw new Error(response.message);
164
- }
165
- });
166
- const execute = (async (params) => {
167
- try {
168
- if (shouldTrigger) {
169
- const shouldProceed = await shouldTrigger(params);
170
- if (!shouldProceed) {
171
- setIsRedirecting(false);
172
- return void 0;
173
- }
174
- }
175
- setIsRedirecting(true);
176
- return await mutation.mutateAsync(params);
177
- } catch {
178
- setIsRedirecting(false);
179
- return void 0;
180
- }
181
- });
182
- return { ...mutation, execute, isRedirecting, errors };
183
- };
184
- }
185
- function createUseQuery() {
186
- return function useQuery$1(fn, queryKey, queryOptions) {
187
- const { params, ...rest } = queryOptions || {};
188
- const query = useQuery({
189
- queryKey: params ? [...queryKey, params] : queryKey,
190
- queryFn: async () => {
191
- const response = await fn(params);
192
- if (response.success) return response.data;
193
- throw new Error(response.message);
194
- },
195
- ...rest
196
- });
197
- const isNotFound = !query.isPending && !query.data;
198
- return { ...query, isNotFound };
199
- };
200
- }
201
- var AdminContext = createContext(null);
202
- function AdminProvider({ children }) {
203
- const [admin, setAdmin] = useState(null);
204
- const [isLoading, setIsLoading] = useState(true);
205
- return /* @__PURE__ */ jsx(
206
- AdminContext.Provider,
207
- {
208
- value: {
209
- admin,
210
- setAdmin,
211
- isLoading,
212
- setIsLoading
213
- },
214
- children
215
- }
216
- );
217
- }
218
- function useAdmin() {
219
- const ctx = useContext(AdminContext);
220
- if (!ctx) throw new Error("useAdmin must be used within AdminProvider");
221
- return ctx;
222
- }
223
- function ThemeProvider({
224
- children,
225
- ...props
226
- }) {
227
- return /* @__PURE__ */ jsx(
228
- ThemeProvider$1,
229
- {
230
- attribute: "class",
231
- defaultTheme: "system",
232
- enableSystem: true,
233
- disableTransitionOnChange: true,
234
- ...props,
235
- children
236
- }
237
- );
238
- }
239
- function createAdminInitializer({
240
- useAdmin: useAdmin2,
241
- useQuery,
242
- verifyAction
243
- }) {
244
- return function AdminInitializer() {
245
- const { admin: globalAdmin, setAdmin, setIsLoading } = useAdmin2();
246
- const { data: admin, isFetching } = useQuery(
247
- verifyAction,
248
- [VERIFY_CACHE_KEY],
249
- {
250
- select: (data) => data?.admin,
251
- enabled: !globalAdmin
252
- }
253
- );
254
- useEffect(() => {
255
- if (isFetching) return;
256
- if (admin) setAdmin(admin);
257
- setIsLoading(false);
258
- }, [isFetching, admin, setAdmin, setIsLoading]);
259
- return null;
260
- };
261
- }
262
- function ContentContainer({
263
- className = "",
264
- children,
265
- isNotFound = false,
266
- isFixHeight,
267
- ...props
268
- }) {
269
- const { t } = useTranslator();
270
- const ABOVE_HEIGHT = NAVBAR_HEIGHT + PAGE_HEADER_HEIGHT;
271
- return /* @__PURE__ */ jsx(
272
- "div",
273
- {
274
- style: {
275
- height: isFixHeight ? `calc(100vh - ${ABOVE_HEIGHT}px)` : "auto"
276
- },
277
- className: cn(
278
- className,
279
- "relative",
280
- "flex flex-col gap-4",
281
- "px-6 pt-6",
282
- isFixHeight ? "pb-6" : "flex-1 pb-64"
283
- ),
284
- ...props,
285
- children: isNotFound ? /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: t("ui.no-data.text") }) : children
286
- }
287
- );
288
- }
289
- function LayoutSkeleton() {
290
- const { open } = useSidebar();
291
- return /* @__PURE__ */ jsxs("div", { className: "flex flex-1", children: [
292
- /* @__PURE__ */ jsx(Sidebar, { className: "top-(--header-height) h-[calc(100svh-var(--header-height))]!", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2 p-3", children: [
293
- /* @__PURE__ */ jsx(Skeleton, { className: "h-10 w-full" }),
294
- /* @__PURE__ */ jsx(Skeleton, { className: "h-10 w-full" }),
295
- /* @__PURE__ */ jsx(Skeleton, { className: "h-10 w-full" }),
296
- /* @__PURE__ */ jsx(Skeleton, { className: "h-10 w-full" })
297
- ] }) }),
298
- /* @__PURE__ */ jsx(
299
- SidebarInset,
300
- {
301
- style: { width: open ? `calc(100% - ${SIDEBAR_WIDTH})` : "100%" },
302
- children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 p-6", children: [
303
- /* @__PURE__ */ jsx(Skeleton, { className: "h-6 w-96" }),
304
- /* @__PURE__ */ jsx(Skeleton, { className: "h-6 w-72" }),
305
- /* @__PURE__ */ jsx(Skeleton, { className: "h-6 w-64" })
306
- ] })
307
- }
308
- )
309
- ] });
310
- }
311
- var getMainPath = (path) => "/" + path.split("/").slice(3).filter(Boolean).join("/");
312
- var toSegments = (path) => path.split("/").filter(Boolean);
313
- var isSegmentMatch = (current, target) => {
314
- const currentSeg = toSegments(current);
315
- const targetSeg = toSegments(target);
316
- if (targetSeg.length > currentSeg.length) return false;
317
- return targetSeg.every((seg, i) => currentSeg[i] === seg);
318
- };
319
- function NavMain({ items }) {
320
- const pathname = usePathname();
321
- const [openItems, setOpenItems] = useState([]);
322
- const toggleItem = (title, open) => {
323
- setOpenItems(
324
- (prev) => open ? [...prev, title] : prev.filter((t) => t !== title)
325
- );
326
- };
327
- const parsedPathname = getMainPath(pathname);
328
- useEffect(() => {
329
- const matched = items.filter(
330
- (item) => item.url ? isSegmentMatch(parsedPathname, getMainPath(item.url)) : false
331
- ).map((item) => item.title || "");
332
- queueMicrotask(() => setOpenItems(matched));
333
- }, [parsedPathname, items]);
334
- return /* @__PURE__ */ jsx(SidebarGroup, { children: /* @__PURE__ */ jsx(SidebarMenu, { children: items.map((item, index) => {
335
- const isOpen = openItems.includes(item.title || "");
336
- const parsedUrl = getMainPath(item.url || "");
337
- const isCurrentPath = item.url ? isSegmentMatch(parsedPathname, parsedUrl) : false;
338
- return /* @__PURE__ */ jsx(
339
- Collapsible,
340
- {
341
- asChild: true,
342
- open: isOpen,
343
- onOpenChange: (open) => toggleItem(item.title || "", open),
344
- children: /* @__PURE__ */ jsxs(SidebarMenuItem, { className: "[&>button]:top-2 [&>button]:size-6", children: [
345
- !item.isSeparator ? /* @__PURE__ */ jsx(
346
- SidebarMenuButton,
347
- {
348
- asChild: true,
349
- size: "md",
350
- isActive: isCurrentPath,
351
- children: /* @__PURE__ */ jsxs(Link, { href: item.url || "", children: [
352
- item.icon && /* @__PURE__ */ jsx(item.icon, {}),
353
- /* @__PURE__ */ jsx("span", { children: item.title })
354
- ] })
355
- }
356
- ) : /* @__PURE__ */ jsx(Separator, {}),
357
- item.items?.length ? /* @__PURE__ */ jsxs(Fragment, { children: [
358
- /* @__PURE__ */ jsx(CollapsibleTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(SidebarMenuAction, { className: "data-[state=open]:rotate-90", children: [
359
- /* @__PURE__ */ jsx(ChevronRight, {}),
360
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle" })
361
- ] }) }),
362
- /* @__PURE__ */ jsx(CollapsibleContent, { children: /* @__PURE__ */ jsx(SidebarMenuSub, { children: item.items?.map((subItem, index2) => {
363
- const parsedPathname2 = getMainPath(pathname);
364
- const parsedUrl2 = getMainPath(subItem.url || "");
365
- const isCurrentPath2 = subItem.url ? isSegmentMatch(parsedPathname2, parsedUrl2) : false;
366
- return /* @__PURE__ */ jsx(SidebarMenuSubItem, { children: !subItem.isSeparator ? /* @__PURE__ */ jsx(
367
- SidebarMenuSubButton,
368
- {
369
- asChild: true,
370
- size: "lg",
371
- isActive: isCurrentPath2,
372
- children: /* @__PURE__ */ jsxs(Link, { href: subItem.url || "", children: [
373
- subItem.icon && /* @__PURE__ */ jsx(subItem.icon, {}),
374
- /* @__PURE__ */ jsx("span", { children: subItem.title })
375
- ] })
376
- }
377
- ) : /* @__PURE__ */ jsx(Separator, {}) }, index2);
378
- }) }) })
379
- ] }) : null
380
- ] })
381
- },
382
- index
383
- );
384
- }) }) });
385
- }
386
- function Button2({
387
- icon,
388
- href,
389
- openNewTab = false,
390
- // ui states
391
- isDisabled = false,
392
- isLoading = false,
393
- // base
394
- children,
395
- ...props
396
- }) {
397
- const router = useRouter();
398
- const handleClick = () => {
399
- if (!href) return;
400
- if (openNewTab) {
401
- window.open(href, "_blank");
402
- } else {
403
- router.push(href);
404
- }
405
- };
406
- return /* @__PURE__ */ jsx(
407
- Button,
408
- {
409
- type: props.type ?? "button",
410
- disabled: isDisabled || isLoading,
411
- onClick: props.onClick ?? handleClick,
412
- ...props,
413
- children: isLoading ? /* @__PURE__ */ jsx(Spinner, {}) : /* @__PURE__ */ jsxs(Fragment, { children: [
414
- icon && createElement(icon),
415
- children
416
- ] })
417
- }
418
- );
419
- }
420
- function ReturnButton({
421
- icon,
422
- useIcon = true,
423
- // use in create/edit page
424
- useConfirm = false,
425
- // navigation
426
- href,
427
- replace = false,
428
- pushToParent = false,
429
- replaceParent = false,
430
- // base
431
- className,
432
- children,
433
- ...props
434
- }) {
435
- const { t } = useTranslator();
436
- const router = useRouter();
437
- const parentPath = useParentPathname();
438
- const handelClick = () => {
439
- if (useConfirm) {
440
- if (!isConfirm(t)) return;
441
- }
442
- if (href) {
443
- return replace ? router.replace(href) : router.push(href);
444
- }
445
- if (replaceParent) {
446
- return router.replace(parentPath);
447
- }
448
- if (pushToParent) {
449
- return router.push(parentPath);
450
- }
451
- router.back();
452
- };
453
- return /* @__PURE__ */ jsx(
454
- Button2,
455
- {
456
- variant: "outline",
457
- size: "sm",
458
- icon: useIcon ? icon || Undo2 : void 0,
459
- onClick: handelClick,
460
- className,
461
- ...props,
462
- children: children ?? t("ui.button.return.text")
463
- }
464
- );
465
- }
466
- function NavUser({
467
- storageUrl,
468
- admin,
469
- isLoading = false,
470
- SignOutButton
471
- }) {
472
- const { t, locale } = useTranslator();
473
- const { name } = findTranslation(admin?.translations, locale);
474
- if (isLoading)
475
- return /* @__PURE__ */ jsx(Button2, { variant: "outline", size: "icon", disabled: true, className: "w-64", children: /* @__PURE__ */ jsx(Spinner, {}) });
476
- if (!admin)
477
- return /* @__PURE__ */ jsx(Button2, { variant: "outline", size: "icon", disabled: true, className: "w-64", children: /* @__PURE__ */ jsx(UserCircle, { className: "size-4" }) });
478
- return /* @__PURE__ */ jsx(SidebarMenu, { className: "w-64", children: /* @__PURE__ */ jsx(SidebarMenuItem, { children: /* @__PURE__ */ jsxs(DropdownMenu, { children: [
479
- /* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
480
- SidebarMenuButton,
481
- {
482
- size: "lg",
483
- className: "data-[state=open]:bg-sidebar-accent data-[state=open]:text-sidebar-accent-foreground",
484
- disabled: isLoading,
485
- children: [
486
- /* @__PURE__ */ jsxs(Avatar, { className: "h-8 w-8 rounded-lg", children: [
487
- admin.avatarImage?.key && /* @__PURE__ */ jsx(
488
- AvatarImage,
489
- {
490
- src: joinUrl(storageUrl, admin.avatarImage?.key),
491
- alt: name ?? ""
492
- }
493
- ),
494
- /* @__PURE__ */ jsx(AvatarFallback, { className: "rounded-lg" })
495
- ] }),
496
- /* @__PURE__ */ jsxs("div", { className: "grid flex-1 text-left text-sm leading-tight", children: [
497
- /* @__PURE__ */ jsx("span", { className: "truncate font-medium", children: name }),
498
- /* @__PURE__ */ jsx("span", { className: "truncate text-xs", children: admin.email })
499
- ] }),
500
- /* @__PURE__ */ jsx(ChevronsUpDown, { className: "ml-auto size-4" })
501
- ]
502
- }
503
- ) }),
504
- /* @__PURE__ */ jsxs(
505
- DropdownMenuContent,
506
- {
507
- className: "w-(--radix-dropdown-menu-trigger-width) min-w-56 rounded-lg",
508
- side: "bottom",
509
- align: "end",
510
- sideOffset: 4,
511
- children: [
512
- /* @__PURE__ */ jsx(DropdownMenuLabel, { className: "p-0 font-normal", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 px-1 py-1.5 text-left text-sm", children: [
513
- /* @__PURE__ */ jsxs(Avatar, { className: "h-8 w-8 rounded-lg", children: [
514
- admin.avatarImage?.key && /* @__PURE__ */ jsx(
515
- AvatarImage,
516
- {
517
- src: joinUrl(storageUrl, admin.avatarImage?.key),
518
- alt: name ?? ""
519
- }
520
- ),
521
- /* @__PURE__ */ jsx(AvatarFallback, { className: "rounded-lg" })
522
- ] }),
523
- /* @__PURE__ */ jsxs("div", { className: "grid flex-1 text-left text-sm leading-tight", children: [
524
- /* @__PURE__ */ jsx("span", { className: "truncate font-medium", children: name }),
525
- /* @__PURE__ */ jsx("span", { className: "truncate text-xs", children: admin.email })
526
- ] })
527
- ] }) }),
528
- /* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
529
- /* @__PURE__ */ jsx(DropdownMenuGroup, { children: /* @__PURE__ */ jsx(Link, { href: PATHS.auth.changePassword.path, children: /* @__PURE__ */ jsxs(DropdownMenuItem, { children: [
530
- /* @__PURE__ */ jsx(PenLine, {}),
531
- t("auth.change-password.text")
532
- ] }) }) }),
533
- /* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
534
- SignOutButton
535
- ]
536
- }
537
- )
538
- ] }) }) });
539
- }
540
- function ThemeSelector() {
541
- const { setTheme } = useTheme();
542
- const { t } = useTranslator();
543
- return /* @__PURE__ */ jsxs(DropdownMenu, { children: [
544
- /* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(Button2, { variant: "outline", size: "icon", children: [
545
- /* @__PURE__ */ jsx(Sun, { className: "h-[1.2rem] w-[1.2rem] scale-100 rotate-0 transition-all dark:scale-0 dark:-rotate-90" }),
546
- /* @__PURE__ */ jsx(Moon, { className: "absolute h-[1.2rem] w-[1.2rem] scale-0 rotate-90 transition-all dark:scale-100 dark:rotate-0" }),
547
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Select theme" })
548
- ] }) }),
549
- /* @__PURE__ */ jsxs(DropdownMenuContent, { align: "end", children: [
550
- /* @__PURE__ */ jsxs(DropdownMenuItem, { onClick: () => setTheme("light"), children: [
551
- /* @__PURE__ */ jsx(Sun, {}),
552
- t("ui.layout.navbar.theme.light.text")
553
- ] }),
554
- /* @__PURE__ */ jsxs(DropdownMenuItem, { onClick: () => setTheme("dark"), children: [
555
- /* @__PURE__ */ jsx(Moon, {}),
556
- t("ui.layout.navbar.theme.dark.text")
557
- ] }),
558
- /* @__PURE__ */ jsxs(DropdownMenuItem, { onClick: () => setTheme("system"), children: [
559
- /* @__PURE__ */ jsx(TvMinimal, {}),
560
- t("ui.layout.navbar.theme.system.text")
561
- ] })
562
- ] })
563
- ] });
564
- }
565
- function createNavbar({
566
- webUrl,
567
- storageUrl,
568
- I18nSelector,
569
- SignOutButton
570
- }) {
571
- return function Navbar() {
572
- const { toggleSidebar } = useSidebar();
573
- const { admin, isLoading } = useAdmin();
574
- const { t } = useTranslator();
575
- return /* @__PURE__ */ jsx("header", { className: "bg-background sticky top-0 z-50 flex w-full items-center border-b", children: /* @__PURE__ */ jsxs("div", { className: "flex h-(--header-height) w-full items-center gap-2 px-2", children: [
576
- /* @__PURE__ */ jsx(
577
- Button2,
578
- {
579
- className: "h-8 w-8",
580
- variant: "ghost",
581
- size: "icon",
582
- onClick: toggleSidebar,
583
- children: /* @__PURE__ */ jsx(SidebarIcon, {})
584
- }
585
- ),
586
- /* @__PURE__ */ jsx(Separator, { orientation: "vertical", className: "mr-1 h-4" }),
587
- /* @__PURE__ */ jsx(
588
- Button2,
589
- {
590
- variant: "outline",
591
- size: "icon",
592
- href: PATHS.main.dashboard.path,
593
- children: /* @__PURE__ */ jsx(House, {})
594
- }
595
- ),
596
- /* @__PURE__ */ jsxs(Button2, { variant: "outline", href: webUrl, openNewTab: true, children: [
597
- /* @__PURE__ */ jsx(SquareArrowOutUpRight, {}),
598
- t("ui.layout.navbar.website-homepage.text")
599
- ] }),
600
- /* @__PURE__ */ jsx("div", { className: "ml-auto" }),
601
- /* @__PURE__ */ jsx(I18nSelector, {}),
602
- /* @__PURE__ */ jsx(ThemeSelector, {}),
603
- /* @__PURE__ */ jsx(
604
- NavUser,
605
- {
606
- storageUrl,
607
- SignOutButton: /* @__PURE__ */ jsx(SignOutButton, {}),
608
- admin,
609
- isLoading
610
- }
611
- )
612
- ] }) });
613
- };
614
- }
615
- function createI18nSelector({
616
- enabled,
617
- locales,
618
- localeDisplay
619
- }) {
620
- return function I18nSelector() {
621
- if (!enabled) return null;
622
- return /* @__PURE__ */ jsxs(DropdownMenu, { children: [
623
- /* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(Button2, { variant: "outline", size: "icon", children: [
624
- /* @__PURE__ */ jsx(Languages, {}),
625
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Switch Languages" })
626
- ] }) }),
627
- /* @__PURE__ */ jsx(DropdownMenuContent, { align: "end", children: locales.map((locale) => /* @__PURE__ */ jsx(Link$1, { locale, children: /* @__PURE__ */ jsx(DropdownMenuItem, { children: localeDisplay[locale] }) }, locale)) })
628
- ] });
629
- };
630
- }
631
- function createSignOutButton({
632
- useCommand,
633
- signOutAction
634
- }) {
635
- return function SignOutButton() {
636
- const { t } = useTranslator();
637
- const router = useRouter();
638
- const { setAdmin } = useAdmin();
639
- const { execute, isRedirecting } = useCommand(signOutAction, {
640
- onSuccess: () => {
641
- setAdmin(null);
642
- router.push(PATHS.auth.signIn.path);
643
- }
644
- });
645
- const handleSignOut = () => {
646
- if (!isConfirm(t)) return;
647
- void execute();
648
- };
649
- const buttonText = isRedirecting ? /* @__PURE__ */ jsx(Spinner, {}) : t("auth.sign-out.text");
650
- return /* @__PURE__ */ jsx("button", { onClick: handleSignOut, className: "w-full", children: /* @__PURE__ */ jsxs(DropdownMenuItem, { variant: "destructive", children: [
651
- /* @__PURE__ */ jsx(LogOut, {}),
652
- buttonText
653
- ] }) });
654
- };
655
- }
656
- function PageHeaderTitle({
657
- icon,
658
- title,
659
- subtitle,
660
- children,
661
- leftChildren,
662
- className
663
- }) {
664
- return /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-3", className), children: [
665
- leftChildren,
666
- icon && createElement(icon),
667
- /* @__PURE__ */ jsxs("div", { className: "flex-center w-fit gap-3 whitespace-nowrap", children: [
668
- subtitle && /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: subtitle }),
669
- /* @__PURE__ */ jsx("p", { className: "scroll-m-20 text-xl font-semibold tracking-tight", children: title })
670
- ] }),
671
- children
672
- ] });
673
- }
674
- function createIndexPreset(ctx) {
675
- const { props, t } = ctx;
676
- return {
677
- left: /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(ReturnButton, { pushToParent: true, ...props.returnButtonProps }) }),
678
- titleProps: {
679
- icon: Files,
680
- children: /* @__PURE__ */ jsxs(Fragment, { children: [
681
- props.settingButtonProps && props.showTopicSettingButton && /* @__PURE__ */ jsx(
682
- Button2,
683
- {
684
- ...props.settingButtonProps,
685
- variant: "outline",
686
- icon: FolderCog,
687
- isDisabled: props.settingButtonProps.isDisabled ?? props.isDisabled,
688
- children: `${t("ui.button.setting.text")} ${t("resources.topic.text")}`
689
- }
690
- ),
691
- props.createCategoryButtonProps && /* @__PURE__ */ jsx(
692
- Button2,
693
- {
694
- ...props.createCategoryButtonProps,
695
- variant: "success",
696
- icon: FileSpreadsheet,
697
- isDisabled: props.createCategoryButtonProps.isDisabled ?? props.isDisabled,
698
- children: t("ui.button.create.text")
699
- }
700
- ),
701
- props.createButtonProps && /* @__PURE__ */ jsx(
702
- Button2,
703
- {
704
- variant: "success",
705
- icon: FilePlus,
706
- ...props.createButtonProps,
707
- children: t("ui.button.create.text")
708
- }
709
- )
710
- ] })
711
- },
712
- right: props.batchButtonProps && /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(Button2, { variant: "outline", icon: FileStack, ...props.batchButtonProps, children: /* @__PURE__ */ jsx("span", { className: "text-sm", children: t("ui.button.batch.text") }) }) })
713
- };
714
- }
715
- function createBatchPreset(ctx) {
716
- const { props, t } = ctx;
717
- return {
718
- left: /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(ReturnButton, { pushToParent: true, ...props.returnButtonProps, children: t("ui.button.exit-batch-mode.text") }) }),
719
- titleProps: {
720
- icon: FilePen,
721
- subtitle: t("ui.page-header.batch.subtitle.text"),
722
- children: /* @__PURE__ */ jsx(
723
- Button2,
724
- {
725
- variant: "success",
726
- href: props.batchCreateButtonHref,
727
- icon: FilePlus,
728
- children: t("ui.button.batch-create.text")
729
- }
730
- )
731
- },
732
- right: /* @__PURE__ */ jsxs(Fragment, { children: [
733
- /* @__PURE__ */ jsx(Button2, { size: "icon", variant: "outline", onClick: props.selectAllFn, children: /* @__PURE__ */ jsx(CopyCheck, {}) }),
734
- /* @__PURE__ */ jsx(Button2, { size: "icon", variant: "outline", onClick: props.cancelAllFn, children: /* @__PURE__ */ jsx(CopyX, {}) }),
735
- /* @__PURE__ */ jsx(
736
- Button2,
737
- {
738
- ...props.destroyButtonProps,
739
- variant: "destructive",
740
- icon: FileX,
741
- children: t("ui.button.destroy.text")
742
- }
743
- )
744
- ] })
745
- };
746
- }
747
- function createBatchCreatePreset(ctx) {
748
- const { props, t } = ctx;
749
- return {
750
- left: /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(ReturnButton, { useConfirm: true, replaceParent: true, ...props.returnButtonProps }) }),
751
- titleProps: {
752
- icon: FilePlus,
753
- subtitle: t("ui.page-header.batch-create.subtitle.text")
754
- }
755
- };
756
- }
757
- function createCreatePreset(ctx) {
758
- const { props, t } = ctx;
759
- return {
760
- left: /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(ReturnButton, { useConfirm: true, replaceParent: true, ...props.returnButtonProps }) }),
761
- titleProps: {
762
- icon: FilePlus,
763
- subtitle: t("ui.page-header.create.subtitle.text")
764
- }
765
- };
766
- }
767
- function createEditPreset(ctx) {
768
- const { props, t } = ctx;
769
- return {
770
- left: /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(ReturnButton, { useConfirm: true, replaceParent: true, ...props.returnButtonProps }) }),
771
- titleProps: {
772
- icon: FilePen,
773
- subtitle: t("ui.page-header.edit.subtitle.text")
774
- }
775
- };
776
- }
777
- function createShowPreset(ctx) {
778
- const { props, t } = ctx;
779
- return {
780
- left: /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(ReturnButton, { pushToParent: true, ...props.returnButtonProps }) }),
781
- titleProps: {
782
- icon: File,
783
- children: !props.isNotFound && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
784
- props.showButtonProps && /* @__PURE__ */ jsx(
785
- Button2,
786
- {
787
- ...props.showButtonProps,
788
- variant: "outline",
789
- icon: FolderSearch,
790
- isDisabled: props.showButtonProps.isDisabled || props.isDisabled,
791
- children: `${t("ui.button.show.text")} ${t("resources.related.text")}`
792
- }
793
- ),
794
- props.editButtonProps && /* @__PURE__ */ jsx(
795
- Button2,
796
- {
797
- ...props.editButtonProps,
798
- variant: "warning",
799
- icon: FilePen,
800
- isDisabled: props.editButtonProps.isDisabled || props.isDisabled,
801
- children: t("ui.button.edit.text")
802
- }
803
- ),
804
- props.destroyButtonProps && /* @__PURE__ */ jsx(
805
- Button2,
806
- {
807
- ...props.destroyButtonProps,
808
- variant: "destructive",
809
- icon: FileX,
810
- isDisabled: props.destroyButtonProps.isDisabled || props.isDisabled,
811
- children: t("ui.button.destroy.text")
812
- }
813
- ),
814
- /* @__PURE__ */ jsx(
815
- Lock,
816
- {
817
- className: cn(
818
- props.isLocked && !props.isDisabled ? "opacity-100" : "opacity-0"
819
- )
820
- }
821
- )
822
- ] })
823
- },
824
- right: props.batchButtonProps && /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(Button2, { variant: "outline", icon: FileStack, ...props.batchButtonProps, children: /* @__PURE__ */ jsx("span", { className: "text-sm", children: t("ui.button.batch.text") }) }) })
825
- };
826
- }
827
- function createTrashPreset(ctx) {
828
- const { props, t } = ctx;
829
- return {
830
- left: /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(ReturnButton, { pushToParent: true, ...props.returnButtonProps }) }),
831
- titleProps: {
832
- icon: Trash2,
833
- title: t("main.trash.text")
834
- },
835
- right: /* @__PURE__ */ jsxs(Fragment, { children: [
836
- /* @__PURE__ */ jsx(Button2, { size: "icon", variant: "outline", onClick: props.selectAllFn, children: /* @__PURE__ */ jsx(CopyCheck, {}) }),
837
- /* @__PURE__ */ jsx(Button2, { size: "icon", variant: "outline", onClick: props.cancelAllFn, children: /* @__PURE__ */ jsx(CopyX, {}) }),
838
- /* @__PURE__ */ jsx(
839
- Button2,
840
- {
841
- ...props.restoreButtonProps,
842
- variant: "success",
843
- icon: FileSymlink,
844
- children: t("ui.button.restore.text")
845
- }
846
- ),
847
- /* @__PURE__ */ jsx(
848
- Button2,
849
- {
850
- ...props.destroyButtonProps,
851
- variant: "destructive",
852
- icon: FileX,
853
- children: t("ui.button.destroy.text")
854
- }
855
- )
856
- ] })
857
- };
858
- }
859
- var PRESET_BUILDERS = {
860
- default: () => ({ titleProps: { icon: Files } }),
861
- index: createIndexPreset,
862
- create: createCreatePreset,
863
- show: createShowPreset,
864
- edit: createEditPreset,
865
- batch: createBatchPreset,
866
- "batch-create": createBatchCreatePreset,
867
- trash: createTrashPreset
868
- };
869
- function PageHeader(props) {
870
- const { t } = useTranslator();
871
- const variant = props.variant ?? "default";
872
- const isDefault = variant === "default";
873
- const preset = PRESET_BUILDERS[variant]({ props, t });
874
- const left = props.leftChildren ?? preset.left;
875
- const resolvedTitleProps = { ...preset.titleProps, ...props.titleProps };
876
- const right = props.rightChildren ?? preset.right;
877
- return /* @__PURE__ */ jsxs("div", { style: { height: PAGE_HEADER_HEIGHT }, children: [
878
- /* @__PURE__ */ jsxs(
879
- "div",
880
- {
881
- className: cn(
882
- "relative h-full px-6",
883
- "flex items-center justify-between gap-3"
884
- ),
885
- children: [
886
- !isDefault && left && /* @__PURE__ */ jsx("div", { className: "flex items-center gap-3", children: left }),
887
- /* @__PURE__ */ jsx(
888
- PageHeaderTitle,
889
- {
890
- className: cn(!isDefault && "absolute left-1/2 -translate-x-1/2"),
891
- ...resolvedTitleProps
892
- }
893
- ),
894
- right && /* @__PURE__ */ jsx("div", { className: "ml-auto flex items-center gap-3", children: right })
895
- ]
896
- }
897
- ),
898
- /* @__PURE__ */ jsx(Separator, {})
899
- ] });
900
- }
901
- function Textarea2({
902
- // form context
903
- fieldName,
904
- setFormData,
905
- // ui states
906
- isLoading = false,
907
- isDisabled = false,
908
- isError = false,
909
- // base
910
- ...props
911
- }) {
912
- isDisabled = isDisabled || isLoading;
913
- const textareaRef = useRef(null);
914
- const resetHeight = (element) => {
915
- element.style.height = "40px";
916
- element.style.height = `${element.scrollHeight + 2}px`;
917
- };
918
- useEffect(() => {
919
- if (!textareaRef.current) return;
920
- resetHeight(textareaRef.current);
921
- }, [props.value, isLoading]);
922
- return /* @__PURE__ */ jsx(Fragment, { children: isLoading ? /* @__PURE__ */ jsx(InputGroup, { "data-disabled": isDisabled, className: "h-10", children: /* @__PURE__ */ jsx(InputGroupAddon, { children: /* @__PURE__ */ jsx(Spinner, {}) }) }) : /* @__PURE__ */ jsx(
923
- Textarea,
924
- {
925
- ref: textareaRef,
926
- disabled: isDisabled,
927
- "aria-invalid": isError,
928
- value: isLoading ? "" : props.value,
929
- onChange: (e) => {
930
- resetHeight(e.target);
931
- if (!setFormData || !fieldName) return;
932
- setFormData((p) => ({ ...p, [fieldName]: e.target.value }));
933
- },
934
- ...props
935
- }
936
- ) });
937
- }
938
- function ArrayInput({
939
- // form context
940
- formData,
941
- fieldName,
942
- setFormData,
943
- // ui states
944
- isLoading = false,
945
- isDisabled = false,
946
- isResizable = false,
947
- errors,
948
- // base
949
- placeholder = "",
950
- ...props
951
- }) {
952
- isDisabled = isDisabled || isLoading;
953
- const rawValue = formData?.[fieldName ?? ""];
954
- const values = Array.isArray(rawValue) && rawValue.length > 0 ? rawValue.map(String) : [""];
955
- const errorIndexes = new Set(
956
- errors.filter((e) => e.startsWith(fieldName ?? "")).map((e) => e.split(".").pop()).map(Number)
957
- );
958
- return /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-1", children: values.map((value, index) => {
959
- const isError = errorIndexes.has(index);
960
- return /* @__PURE__ */ jsxs("div", { className: "relative", children: [
961
- /* @__PURE__ */ jsxs("div", { className: "flex-center absolute top-0 left-0 z-10 h-full", children: [
962
- /* @__PURE__ */ jsx("span", { className: "min-w-10 pl-0.5 text-center text-sm opacity-50", children: Array.isArray(rawValue) && rawValue.length === 0 ? "0" : index + 1 }),
963
- /* @__PURE__ */ jsx(Separator, { orientation: "vertical" })
964
- ] }),
965
- /* @__PURE__ */ jsx(
966
- Textarea2,
967
- {
968
- disabled: isDisabled,
969
- placeholder: isLoading ? "" : placeholder,
970
- value,
971
- onChange: (e) => {
972
- if (!setFormData || !fieldName) return;
973
- const copy = [...values];
974
- copy[index] = e.target.value;
975
- setFormData((p) => ({ ...p, [fieldName]: copy }));
976
- },
977
- onKeyDown: (e) => {
978
- if (e.key === "Enter" && !isResizable) {
979
- e.preventDefault();
980
- }
981
- },
982
- isError,
983
- className: cn("pr-20 pl-13", !isResizable && "resize-none"),
984
- ...props
985
- }
986
- ),
987
- /* @__PURE__ */ jsxs("div", { className: "flex-center absolute top-1 right-1 gap-1", children: [
988
- /* @__PURE__ */ jsx(
989
- Button2,
990
- {
991
- variant: "outline",
992
- type: "button",
993
- size: "icon-sm",
994
- className: "rounded-sm",
995
- onClick: () => {
996
- if (!setFormData || !fieldName) return;
997
- const copy = values.filter((_, i) => i !== index);
998
- setFormData((p) => ({ ...p, [fieldName]: copy }));
999
- },
1000
- children: /* @__PURE__ */ jsx(CircleX, { className: "text-destructive" })
1001
- }
1002
- ),
1003
- /* @__PURE__ */ jsx(
1004
- Button2,
1005
- {
1006
- variant: "outline",
1007
- type: "button",
1008
- size: "icon-sm",
1009
- className: "rounded-sm",
1010
- onClick: () => {
1011
- if (!setFormData || !fieldName) return;
1012
- const copy = [...values];
1013
- copy.splice(index + 1, 0, "");
1014
- setFormData((p) => ({ ...p, [fieldName]: copy }));
1015
- },
1016
- children: /* @__PURE__ */ jsx(CirclePlus, { className: "text-success" })
1017
- }
1018
- )
1019
- ] })
1020
- ] }, index);
1021
- }) });
1022
- }
1023
- function Checkbox({
1024
- // form context
1025
- fieldName,
1026
- formData,
1027
- setFormData,
1028
- // ui states
1029
- isLoading = false,
1030
- isDisabled = false,
1031
- // base
1032
- isDisplay = false,
1033
- className = "",
1034
- ...props
1035
- }) {
1036
- isDisabled = isDisabled || isLoading || isDisplay;
1037
- const isChecked = !!formData?.[fieldName ?? ""];
1038
- return /* @__PURE__ */ jsxs(
1039
- "div",
1040
- {
1041
- className: cn(
1042
- className,
1043
- "group relative",
1044
- "h-6 w-12 min-w-12",
1045
- "p-1",
1046
- "rounded-full",
1047
- "overflow-hidden",
1048
- "shadow-inner",
1049
- !isChecked || isLoading ? "bg-secondary" : "bg-success",
1050
- "transition"
1051
- ),
1052
- children: [
1053
- /* @__PURE__ */ jsx(
1054
- "div",
1055
- {
1056
- className: cn(
1057
- "size-4",
1058
- "rounded-full",
1059
- "bg-white",
1060
- "shadow",
1061
- isChecked && "translate-x-6",
1062
- isLoading && "opacity-0",
1063
- !isDisabled && "group-hover:scale-95 group-active:scale-90",
1064
- "duration-200"
1065
- )
1066
- }
1067
- ),
1068
- isLoading && /* @__PURE__ */ jsx("span", { className: "absolute top-1 left-1", children: /* @__PURE__ */ jsx(Spinner, {}) }),
1069
- /* @__PURE__ */ jsx(
1070
- "input",
1071
- {
1072
- type: "checkbox",
1073
- onChange: (e) => {
1074
- if (!setFormData || !fieldName) return;
1075
- setFormData((p) => ({ ...p, [fieldName]: e.target.checked }));
1076
- },
1077
- checked: isChecked,
1078
- disabled: isDisabled,
1079
- className: cn(
1080
- "absolute top-0 left-0",
1081
- "h-full w-full",
1082
- "rounded-full",
1083
- "opacity-0",
1084
- isDisabled ? "cursor-not-allowed" : "cursor-pointer"
1085
- ),
1086
- ...props
1087
- }
1088
- )
1089
- ]
1090
- }
1091
- );
1092
- }
1093
- function Input({
1094
- // form context
1095
- fieldName,
1096
- setFormData,
1097
- // ui states
1098
- isLoading = false,
1099
- isDisabled = false,
1100
- isError = false,
1101
- // base
1102
- className,
1103
- inputGroupClassName,
1104
- children,
1105
- ...props
1106
- }) {
1107
- return /* @__PURE__ */ jsxs(
1108
- InputGroup,
1109
- {
1110
- "data-disabled": isDisabled || isLoading,
1111
- className: cn("h-10", inputGroupClassName),
1112
- children: [
1113
- isLoading ? /* @__PURE__ */ jsx(InputGroupAddon, { children: /* @__PURE__ */ jsx(Spinner, {}) }) : /* @__PURE__ */ jsx(
1114
- InputGroupInput,
1115
- {
1116
- disabled: isDisabled || isLoading,
1117
- "aria-invalid": isError,
1118
- onChange: (e) => {
1119
- if (!setFormData || !fieldName) return;
1120
- setFormData((p) => ({ ...p, [fieldName]: e.target.value }));
1121
- },
1122
- className: cn("h-10", className),
1123
- ...props
1124
- }
1125
- ),
1126
- children
1127
- ]
1128
- }
1129
- );
1130
- }
1131
- function PasswordInput({
1132
- ...props
1133
- }) {
1134
- const [showPassword, setShowPassword] = useState(false);
1135
- return /* @__PURE__ */ jsx(Input, { type: showPassword ? "text" : "password", ...props, children: /* @__PURE__ */ jsx(InputGroupAddon, { align: "inline-end", children: /* @__PURE__ */ jsx(
1136
- InputGroupButton,
1137
- {
1138
- "aria-label": showPassword ? "Hide password" : "Show password",
1139
- title: showPassword ? "Hide password" : "Show password",
1140
- size: "icon-xs",
1141
- onClick: () => setShowPassword((prev) => !prev),
1142
- children: showPassword ? /* @__PURE__ */ jsx(Eye, {}) : /* @__PURE__ */ jsx(EyeOff, {})
1143
- }
1144
- ) }) });
1145
- }
1146
- function SearchInput({
1147
- searchString = "",
1148
- setSearchString,
1149
- isLoading = false,
1150
- isDisabled = false,
1151
- ...props
1152
- }) {
1153
- const { t } = useTranslator();
1154
- const isComposingRef = useRef(false);
1155
- const [inputValue, setInputValue] = useState(searchString);
1156
- const handleCompositionEnd = (e) => {
1157
- isComposingRef.current = false;
1158
- setInputValue(e.currentTarget.value);
1159
- setSearchString(e.currentTarget.value);
1160
- };
1161
- const handleChange = (e) => {
1162
- setInputValue(e.target.value);
1163
- if (!isComposingRef.current) setSearchString(e.target.value);
1164
- };
1165
- return /* @__PURE__ */ jsx("div", { className: "relative size-full", children: /* @__PURE__ */ jsx(
1166
- Input,
1167
- {
1168
- isDisabled,
1169
- placeholder: isLoading ? "" : t("ui.search.text"),
1170
- autoComplete: "off",
1171
- value: inputValue,
1172
- onChange: handleChange,
1173
- onCompositionStart: () => isComposingRef.current = true,
1174
- onCompositionEnd: handleCompositionEnd,
1175
- className: "w-full pr-9",
1176
- ...props,
1177
- children: /* @__PURE__ */ jsx(InputGroupAddon, { align: "inline-end", children: isLoading ? /* @__PURE__ */ jsx(Spinner, {}) : /* @__PURE__ */ jsx(Search, {}) })
1178
- }
1179
- ) });
1180
- }
1181
- function Select2({
1182
- // form context
1183
- fieldName,
1184
- setFormData,
1185
- // ui states
1186
- isDisabled = false,
1187
- isLoading = false,
1188
- // base
1189
- placeholder,
1190
- label,
1191
- className,
1192
- children,
1193
- ...props
1194
- }) {
1195
- return /* @__PURE__ */ jsxs(
1196
- Select,
1197
- {
1198
- onValueChange: (value) => {
1199
- if (!setFormData || !fieldName) return;
1200
- setFormData((p) => ({ ...p, [fieldName]: value }));
1201
- },
1202
- disabled: isDisabled || isLoading,
1203
- ...props,
1204
- children: [
1205
- /* @__PURE__ */ jsx(
1206
- SelectTrigger,
1207
- {
1208
- className: cn("w-full", className),
1209
- disabled: isDisabled || isLoading,
1210
- children: /* @__PURE__ */ jsx(SelectValue, { placeholder })
1211
- }
1212
- ),
1213
- /* @__PURE__ */ jsx(SelectContent, { children: /* @__PURE__ */ jsxs(SelectGroup, { children: [
1214
- label && /* @__PURE__ */ jsx(SelectLabel, { children: label }),
1215
- children
1216
- ] }) })
1217
- ]
1218
- }
1219
- );
1220
- }
1221
- function Option({
1222
- value,
1223
- isDisabled = false,
1224
- children
1225
- }) {
1226
- return /* @__PURE__ */ jsx(SelectItem, { value, disabled: isDisabled, children });
1227
- }
1228
- function PageSizeSelector({
1229
- pageSize,
1230
- setPageSize,
1231
- setPage
1232
- }) {
1233
- const { t } = useTranslator();
1234
- return /* @__PURE__ */ jsxs("div", { className: "flex w-52 items-center gap-4", children: [
1235
- /* @__PURE__ */ jsx("p", { className: "text-muted-foreground text-sm whitespace-nowrap", children: t("ui.layout.item-list-container.items-per-page.text") }),
1236
- /* @__PURE__ */ jsxs(
1237
- Select2,
1238
- {
1239
- value: String(pageSize),
1240
- onValueChange: (value) => {
1241
- setPageSize(Number(value ?? 20));
1242
- setPage(1);
1243
- },
1244
- className: "w-full",
1245
- children: [
1246
- /* @__PURE__ */ jsx(Option, { value: String(20), children: "20" }),
1247
- /* @__PURE__ */ jsx(Option, { value: String(40), children: "40" }),
1248
- /* @__PURE__ */ jsx(Option, { value: String(80), children: "80" })
1249
- ]
1250
- }
1251
- )
1252
- ] });
1253
- }
1254
- function Pagination2({
1255
- page,
1256
- setPage,
1257
- pageSize,
1258
- total = 0
1259
- }) {
1260
- const totalPages = Math.ceil(total / pageSize);
1261
- const isFirst = page === 1;
1262
- const isLastPage = page === totalPages;
1263
- const handlePrev = () => {
1264
- if (isFirst) return;
1265
- setPage((prev) => prev - 1);
1266
- };
1267
- const handleNext = () => {
1268
- if (isLastPage) return;
1269
- setPage((prev) => prev + 1);
1270
- };
1271
- const siblingsCount = 2;
1272
- let startPage = Math.max(2, page - siblingsCount);
1273
- let endPage = Math.min(totalPages - 1, page + siblingsCount);
1274
- if (page - siblingsCount < 2) {
1275
- endPage = Math.min(totalPages - 1, endPage + (2 - (page - siblingsCount)));
1276
- }
1277
- if (page + siblingsCount > totalPages - 1) {
1278
- startPage = Math.max(
1279
- 2,
1280
- startPage - (page + siblingsCount - (totalPages - 1))
1281
- );
1282
- }
1283
- const pages = [];
1284
- for (let i = startPage; i <= endPage; i++) {
1285
- pages.push(i);
1286
- }
1287
- const isAtFirstPage = page === 1;
1288
- const isAtLastPage = page === totalPages;
1289
- return /* @__PURE__ */ jsx(Pagination, { className: "flex-1", children: /* @__PURE__ */ jsxs(PaginationContent, { children: [
1290
- /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationPrevious, { disabled: isAtFirstPage, onClick: handlePrev }) }),
1291
- /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
1292
- PaginationLink,
1293
- {
1294
- isActive: page === 1,
1295
- disabled: isAtFirstPage,
1296
- onClick: () => setPage(1),
1297
- children: "1"
1298
- }
1299
- ) }),
1300
- startPage > 2 && /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationEllipsis, {}) }),
1301
- pages.map((p) => {
1302
- const isThisPage = page === p;
1303
- return /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationLink, { isActive: isThisPage, onClick: () => setPage(p), children: p }) }, p);
1304
- }),
1305
- endPage < totalPages - 1 && /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(PaginationEllipsis, {}) }),
1306
- totalPages > 1 && /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
1307
- PaginationLink,
1308
- {
1309
- isActive: page === totalPages,
1310
- disabled: isAtLastPage,
1311
- onClick: () => setPage(totalPages),
1312
- children: totalPages
1313
- }
1314
- ) }),
1315
- /* @__PURE__ */ jsx(PaginationItem, { children: /* @__PURE__ */ jsx(
1316
- PaginationNext,
1317
- {
1318
- disabled: isAtLastPage || totalPages <= 1,
1319
- onClick: handleNext
1320
- }
1321
- ) })
1322
- ] }) });
1323
- }
1324
- function ListCardsContainer({
1325
- // pagination
1326
- page,
1327
- setPage,
1328
- pageSize,
1329
- setPageSize,
1330
- total,
1331
- // search string
1332
- searchString,
1333
- setSearchString,
1334
- // ui states
1335
- isFetching,
1336
- // base
1337
- children,
1338
- headerChildren
1339
- }) {
1340
- const { t } = useTranslator();
1341
- const isNotFound = total === 0;
1342
- useEffect(() => {
1343
- setPage(1);
1344
- }, [searchString, setPage]);
1345
- return /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col gap-6", children: [
1346
- /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
1347
- headerChildren,
1348
- /* @__PURE__ */ jsx("div", { className: "ml-auto w-64", children: /* @__PURE__ */ jsx(
1349
- SearchInput,
1350
- {
1351
- searchString,
1352
- setSearchString,
1353
- isLoading: isFetching
1354
- }
1355
- ) })
1356
- ] }),
1357
- /* @__PURE__ */ jsx("div", { className: "max-h-[88%] flex-1 overflow-y-auto", children: isFetching ? /* @__PURE__ */ jsx(Spinner, {}) : isNotFound ? /* @__PURE__ */ jsx("p", { className: "text-sm opacity-50", children: t("ui.no-data.text") }) : /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-4", children }) }),
1358
- /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
1359
- /* @__PURE__ */ jsx("div", { className: "w-52" }),
1360
- /* @__PURE__ */ jsx(
1361
- Pagination2,
1362
- {
1363
- page,
1364
- setPage,
1365
- pageSize,
1366
- total
1367
- }
1368
- ),
1369
- /* @__PURE__ */ jsx(
1370
- PageSizeSelector,
1371
- {
1372
- pageSize,
1373
- setPageSize,
1374
- setPage
1375
- }
1376
- )
1377
- ] })
1378
- ] });
1379
- }
1380
- function Form({
1381
- onSubmit,
1382
- className,
1383
- ...props
1384
- }) {
1385
- const handleSubmit = (e) => {
1386
- if (!onSubmit) return;
1387
- e.preventDefault();
1388
- void onSubmit(e);
1389
- };
1390
- return /* @__PURE__ */ jsx("form", { className: cn(className), onSubmit: handleSubmit, ...props });
1391
- }
1392
- function Field({
1393
- label,
1394
- isRequired = false,
1395
- hint,
1396
- labelChildren,
1397
- children,
1398
- ...props
1399
- }) {
1400
- return /* @__PURE__ */ jsxs("div", { className: "grid w-full items-center gap-3", children: [
1401
- /* @__PURE__ */ jsxs("span", { className: "flex gap-2", children: [
1402
- /* @__PURE__ */ jsxs(Label, { className: "flex gap-1 truncate", ...props, children: [
1403
- label,
1404
- isRequired && /* @__PURE__ */ jsx(Asterisk, { className: "text-destructive size-3" }),
1405
- hint && /* @__PURE__ */ jsx("span", { className: "text-muted-foreground ml-2 text-xs", children: hint })
1406
- ] }),
1407
- /* @__PURE__ */ jsx("span", { children: labelChildren })
1408
- ] }),
1409
- children
1410
- ] });
1411
- }
1412
- function FieldBody({
1413
- // ui states
1414
- isLoading = false,
1415
- isDisabled = false,
1416
- isEmpty = false,
1417
- // base
1418
- className,
1419
- backgroundClassName,
1420
- childrenClassName,
1421
- children,
1422
- ...props
1423
- }) {
1424
- const { t } = useTranslator();
1425
- return /* @__PURE__ */ jsxs(
1426
- "div",
1427
- {
1428
- className: cn(
1429
- className,
1430
- "relative",
1431
- "min-h-9 w-full min-w-0",
1432
- "flex items-center",
1433
- "text-sm"
1434
- ),
1435
- ...props,
1436
- children: [
1437
- /* @__PURE__ */ jsx(
1438
- "div",
1439
- {
1440
- className: cn(
1441
- "absolute size-full",
1442
- "dark:bg-input/30 bg-foreground/2 rounded-md",
1443
- backgroundClassName
1444
- )
1445
- }
1446
- ),
1447
- isLoading && /* @__PURE__ */ jsx("div", { className: "px-3", children: /* @__PURE__ */ jsx(Spinner, {}) }),
1448
- !isLoading && (!children || isEmpty) && /* @__PURE__ */ jsx("div", { className: "flex-center h-9 px-3 opacity-50", children: /* @__PURE__ */ jsx("p", { className: "opacity-50", children: t("ui.no-data.text") }) }),
1449
- !isLoading && children && !isEmpty && /* @__PURE__ */ jsx(
1450
- "div",
1451
- {
1452
- className: cn(
1453
- "relative size-full",
1454
- "flex items-center gap-3",
1455
- "px-3 py-2",
1456
- "break-all",
1457
- (isDisabled || isLoading) && "opacity-50",
1458
- childrenClassName
1459
- ),
1460
- children
1461
- }
1462
- )
1463
- ]
1464
- }
1465
- );
1466
- }
1467
- function FieldsContainer({
1468
- className = "",
1469
- children,
1470
- ...props
1471
- }) {
1472
- return /* @__PURE__ */ jsx(
1473
- "div",
1474
- {
1475
- className: cn("relative flex w-full", className),
1476
- style: { gap: FORM_MIDDLE_GAP_WIDTH },
1477
- ...props,
1478
- children
1479
- }
1480
- );
1481
- }
1482
- function MainFields({
1483
- className,
1484
- children,
1485
- ...props
1486
- }) {
1487
- const sideWidth = FORM_SIDE_FIELDS_WIDTH + FORM_MIDDLE_GAP_WIDTH;
1488
- return /* @__PURE__ */ jsx(
1489
- "div",
1490
- {
1491
- className: cn("relative", "flex flex-1 flex-col gap-6", className),
1492
- style: { maxWidth: `calc(100% - ${sideWidth}px)` },
1493
- ...props,
1494
- children
1495
- }
1496
- );
1497
- }
1498
- function SideFields({
1499
- className,
1500
- children,
1501
- ...props
1502
- }) {
1503
- return /* @__PURE__ */ jsx(
1504
- "div",
1505
- {
1506
- className: cn("relative", "min-h-full", className),
1507
- style: { width: `${FORM_SIDE_FIELDS_WIDTH}px` },
1508
- ...props,
1509
- children: /* @__PURE__ */ jsx("div", { className: cn("sticky top-24", "flex flex-col gap-6"), children })
1510
- }
1511
- );
1512
- }
1513
- function ExpandBar({ isExpand }) {
1514
- return /* @__PURE__ */ jsxs(
1515
- "div",
1516
- {
1517
- className: cn(
1518
- "w-full",
1519
- "flex-center gap-1",
1520
- "opacity-50 group-hover:opacity-100",
1521
- "transition"
1522
- ),
1523
- children: [
1524
- /* @__PURE__ */ jsx(Separator, { className: "my-3 flex-1" }),
1525
- !isExpand ? /* @__PURE__ */ jsx(CirclePlus, { className: "text-base-content size-5 min-w-5" }) : /* @__PURE__ */ jsx(CircleMinus, { className: "text-base-content size-5 min-w-5" }),
1526
- /* @__PURE__ */ jsx(Separator, { className: "my-3 flex-1" })
1527
- ]
1528
- }
1529
- );
1530
- }
1531
- var COLLAPSED_HEIGHT = 48;
1532
- function ExpandableListContent({
1533
- item,
1534
- items,
1535
- isExpand,
1536
- isDisabled,
1537
- isUnique,
1538
- onOverflowChange,
1539
- children
1540
- }) {
1541
- const containerRef = useRef(null);
1542
- useEffect(() => {
1543
- const el = containerRef.current;
1544
- if (!el) return;
1545
- const height = el.scrollHeight;
1546
- onOverflowChange?.(height > COLLAPSED_HEIGHT);
1547
- if (isDisabled) {
1548
- el.style.maxHeight = "0px";
1549
- return;
1550
- }
1551
- el.style.maxHeight = isExpand ? `${height}px` : `${COLLAPSED_HEIGHT}px`;
1552
- }, [isExpand, isDisabled, items.length, children, onOverflowChange]);
1553
- return /* @__PURE__ */ jsxs(
1554
- "div",
1555
- {
1556
- ref: containerRef,
1557
- className: cn("overflow-hidden", "flex flex-wrap gap-1", "duration-150"),
1558
- children: [
1559
- children,
1560
- items.map((eachItem, idx) => {
1561
- const matched = isUnique && eachItem === item;
1562
- return /* @__PURE__ */ jsxs("span", { children: [
1563
- /* @__PURE__ */ jsx("span", { className: cn(matched && "text-error"), children: eachItem }),
1564
- idx !== items.length - 1 && ","
1565
- ] }, `${eachItem}-${idx}`);
1566
- })
1567
- ]
1568
- }
1569
- );
1570
- }
1571
- function ExpandableList({
1572
- item,
1573
- items = [],
1574
- isDisabled,
1575
- isUnique
1576
- }) {
1577
- const [isExpand, setIsExpand] = useState(false);
1578
- const [isListOverFlow, setIsListOverFlow] = useState(false);
1579
- return /* @__PURE__ */ jsxs(
1580
- "button",
1581
- {
1582
- type: "button",
1583
- onClick: () => {
1584
- if (!isListOverFlow) return;
1585
- setIsExpand((prev) => !prev);
1586
- },
1587
- className: cn(
1588
- "group flex w-full flex-col gap-1 text-xs text-gray-400",
1589
- !isListOverFlow && "pointer-events-none"
1590
- ),
1591
- children: [
1592
- /* @__PURE__ */ jsxs(
1593
- ExpandableListContent,
1594
- {
1595
- item,
1596
- items,
1597
- isExpand,
1598
- isDisabled,
1599
- isUnique,
1600
- onOverflowChange: setIsListOverFlow,
1601
- children: [
1602
- /* @__PURE__ */ jsx(Archive, { className: "size-4" }),
1603
- /* @__PURE__ */ jsx("span", { children: ":" })
1604
- ]
1605
- }
1606
- ),
1607
- isListOverFlow && /* @__PURE__ */ jsx(ExpandBar, { isExpand })
1608
- ]
1609
- }
1610
- );
1611
- }
1612
- function IndexField({
1613
- existingIndexes,
1614
- availableIndex = 1,
1615
- // Min available index
1616
- // form context
1617
- formData,
1618
- setFormData,
1619
- // ui states
1620
- isLoading = false,
1621
- isDisabled = false,
1622
- isError = false,
1623
- isDisplay = false,
1624
- // base
1625
- id
1626
- }) {
1627
- isDisabled = isDisabled || isLoading || isDisplay;
1628
- const index = formData?.["index"];
1629
- const isIndexActive = !!formData?.["isIndexActive"];
1630
- const toggleCheckbox = () => {
1631
- if (!setFormData) return;
1632
- setFormData((p) => ({ ...p, index: availableIndex }));
1633
- };
1634
- return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
1635
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
1636
- /* @__PURE__ */ jsx(
1637
- Checkbox,
1638
- {
1639
- id: isIndexActive ? void 0 : id,
1640
- fieldName: "isIndexActive",
1641
- formData,
1642
- setFormData,
1643
- isLoading,
1644
- isDisabled,
1645
- onClick: toggleCheckbox
1646
- }
1647
- ),
1648
- !isDisplay ? /* @__PURE__ */ jsx(
1649
- Input,
1650
- {
1651
- id: isIndexActive ? id : void 0,
1652
- fieldName: "index",
1653
- value: index || 1,
1654
- setFormData,
1655
- type: "number",
1656
- min: 1,
1657
- required: isIndexActive,
1658
- isDisabled: !isIndexActive || isDisabled,
1659
- className: cn(!isIndexActive && "text-transparent"),
1660
- inputGroupClassName: cn(
1661
- isIndexActive ? "opacity-100" : "opacity-50 cursor-not-allowed"
1662
- ),
1663
- isError
1664
- }
1665
- ) : /* @__PURE__ */ jsx(
1666
- FieldBody,
1667
- {
1668
- isEmpty: !isIndexActive,
1669
- backgroundClassName: "!bg-base-200",
1670
- children: index
1671
- }
1672
- )
1673
- ] }),
1674
- !isDisplay && /* @__PURE__ */ jsx("div", { className: "mx-2", children: /* @__PURE__ */ jsx(
1675
- ExpandableList,
1676
- {
1677
- isDisabled: !isIndexActive,
1678
- item: index,
1679
- items: ensureArray(existingIndexes)
1680
- }
1681
- ) })
1682
- ] });
1683
- }
1684
- function SlugField({
1685
- existingSlugs,
1686
- // form context
1687
- formData,
1688
- setFormData,
1689
- // ui states
1690
- isLoading = false,
1691
- isDisabled = false,
1692
- isError = false,
1693
- isDisplay = false,
1694
- // base
1695
- id
1696
- }) {
1697
- isDisabled = isDisabled || isLoading || isDisplay;
1698
- const slug = formData?.["slug"] || "";
1699
- const isSlugActive = !!formData?.["isSlugActive"];
1700
- const isUnavailable = !!existingSlugs?.includes(slug);
1701
- const toggleCheckbox = () => {
1702
- if (!setFormData) return;
1703
- setFormData((p) => ({ ...p, slug: null }));
1704
- };
1705
- return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
1706
- /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3", children: [
1707
- /* @__PURE__ */ jsx(
1708
- Checkbox,
1709
- {
1710
- id: isSlugActive ? void 0 : id,
1711
- fieldName: "isSlugActive",
1712
- formData,
1713
- setFormData,
1714
- isLoading,
1715
- isDisabled,
1716
- onClick: toggleCheckbox,
1717
- className: "mt-2"
1718
- }
1719
- ),
1720
- !isDisplay ? /* @__PURE__ */ jsx(
1721
- Textarea2,
1722
- {
1723
- id: isSlugActive ? id : void 0,
1724
- fieldName: "slug",
1725
- value: slug,
1726
- setFormData,
1727
- required: isSlugActive,
1728
- isDisabled: !isSlugActive || isDisabled,
1729
- onKeyDown: (e) => {
1730
- if (e.key === "Enter") return e.preventDefault();
1731
- },
1732
- className: cn(
1733
- "resize-none break-all",
1734
- !isSlugActive && "text-transparent"
1735
- ),
1736
- isError: isUnavailable || isError
1737
- }
1738
- ) : /* @__PURE__ */ jsx(FieldBody, { isEmpty: !isSlugActive, backgroundClassName: "!bg-base-200", children: slug })
1739
- ] }),
1740
- !isDisplay && /* @__PURE__ */ jsx("div", { className: "mx-2", children: /* @__PURE__ */ jsx(
1741
- ExpandableList,
1742
- {
1743
- isDisabled: !isSlugActive,
1744
- isUnique: true,
1745
- item: slug,
1746
- items: ensureArray(existingSlugs)
1747
- }
1748
- ) })
1749
- ] });
1750
- }
1751
- function ControlFieldsDisplay({
1752
- fields,
1753
- // form context
1754
- formData,
1755
- // ui states
1756
- isLoading = false
1757
- }) {
1758
- const { t } = useTranslator();
1759
- if (!formData) return null;
1760
- const notBuiltInFields = fields.filter(
1761
- ({ key }) => !BUILT_IN_FIELDS.some((b) => b.key == key)
1762
- );
1763
- return /* @__PURE__ */ jsxs(Fragment, { children: [
1764
- fields.find((f) => f.key === "isActive") && /* @__PURE__ */ jsx(
1765
- Field,
1766
- {
1767
- label: /* @__PURE__ */ jsxs("span", { className: "flex-center gap-2", children: [
1768
- /* @__PURE__ */ jsx(Eye, { className: "size-5" }),
1769
- t("ui.field.control-fields.is-active.text")
1770
- ] }),
1771
- children: /* @__PURE__ */ jsx(
1772
- Checkbox,
1773
- {
1774
- fieldName: "isActive",
1775
- formData,
1776
- isLoading,
1777
- isDisplay: true
1778
- }
1779
- )
1780
- }
1781
- ),
1782
- fields.find((f) => f.key === "index") && /* @__PURE__ */ jsx(
1783
- Field,
1784
- {
1785
- label: /* @__PURE__ */ jsxs("span", { className: "flex-center gap-2", children: [
1786
- /* @__PURE__ */ jsx(Binary, { className: "size-5" }),
1787
- t("ui.field.control-fields.index.text")
1788
- ] }),
1789
- children: /* @__PURE__ */ jsx(IndexField, { formData, isLoading, isDisplay: true })
1790
- }
1791
- ),
1792
- fields.find((f) => f.key === "slug") && /* @__PURE__ */ jsx(
1793
- Field,
1794
- {
1795
- label: /* @__PURE__ */ jsxs("span", { className: "flex-center gap-2", children: [
1796
- /* @__PURE__ */ jsx(MapPinCheckInside, { className: "size-5" }),
1797
- t("ui.field.control-fields.slug.text")
1798
- ] }),
1799
- children: /* @__PURE__ */ jsx(SlugField, { formData, isLoading, isDisplay: true })
1800
- }
1801
- ),
1802
- fields.find((f) => f.key === "isFeatured") && /* @__PURE__ */ jsx(
1803
- Field,
1804
- {
1805
- label: /* @__PURE__ */ jsxs("span", { className: "flex-center gap-2", children: [
1806
- /* @__PURE__ */ jsx(Star, { className: "size-5" }),
1807
- t("ui.field.control-fields.is-featured.text")
1808
- ] }),
1809
- children: /* @__PURE__ */ jsx(
1810
- Checkbox,
1811
- {
1812
- fieldName: "isFeatured",
1813
- formData,
1814
- isLoading,
1815
- isDisplay: true
1816
- }
1817
- )
1818
- }
1819
- ),
1820
- fields.find((f) => f.key === "isShownOnHome") && /* @__PURE__ */ jsx(
1821
- Field,
1822
- {
1823
- label: /* @__PURE__ */ jsxs("span", { className: "flex-center gap-2", children: [
1824
- /* @__PURE__ */ jsx(House, { className: "size-5" }),
1825
- t("ui.field.control-fields.is-shown-on-home.text")
1826
- ] }),
1827
- children: /* @__PURE__ */ jsx(
1828
- Checkbox,
1829
- {
1830
- fieldName: "isShownOnHome",
1831
- formData,
1832
- isLoading,
1833
- isDisplay: true
1834
- }
1835
- )
1836
- }
1837
- ),
1838
- notBuiltInFields.map(({ key, label }) => {
1839
- return /* @__PURE__ */ jsx(Field, { label, children: /* @__PURE__ */ jsx(
1840
- Checkbox,
1841
- {
1842
- fieldName: key,
1843
- formData,
1844
- isLoading,
1845
- isDisplay: true
1846
- }
1847
- ) }, key);
1848
- })
1849
- ] });
1850
- }
1851
- function ControlFieldsInput({
1852
- fields = [],
1853
- // meta
1854
- controlMeta = {},
1855
- // form context
1856
- formData,
1857
- setFormData,
1858
- // ui states
1859
- isLoading = false,
1860
- isDisabled = false,
1861
- errors
1862
- }) {
1863
- const { t } = useTranslator();
1864
- if (!(formData && setFormData)) return null;
1865
- const {
1866
- existingIndexes = [],
1867
- availableIndex = 1,
1868
- existingSlugs = []
1869
- } = controlMeta;
1870
- const notBuiltInFields = fields.filter(
1871
- ({ key }) => !BUILT_IN_FIELDS.some((b) => b.key == key)
1872
- );
1873
- return /* @__PURE__ */ jsxs(Fragment, { children: [
1874
- fields.find((f) => f.key === "isActive") && /* @__PURE__ */ jsx(
1875
- Field,
1876
- {
1877
- htmlFor: "isActive",
1878
- label: /* @__PURE__ */ jsxs("span", { className: "flex-center gap-2", children: [
1879
- formData["isActive"] ? /* @__PURE__ */ jsx(Eye, { className: "size-5" }) : /* @__PURE__ */ jsx(EyeOff, { className: "size-5" }),
1880
- t("ui.field.control-fields.is-active.text")
1881
- ] }),
1882
- children: /* @__PURE__ */ jsx(
1883
- Checkbox,
1884
- {
1885
- id: "isActive",
1886
- fieldName: "isActive",
1887
- formData,
1888
- setFormData,
1889
- isLoading,
1890
- isDisabled
1891
- }
1892
- )
1893
- }
1894
- ),
1895
- fields.find((f) => f.key === "index") && /* @__PURE__ */ jsx(
1896
- Field,
1897
- {
1898
- htmlFor: "index",
1899
- label: /* @__PURE__ */ jsxs("span", { className: "flex-center gap-2", children: [
1900
- /* @__PURE__ */ jsx(Binary, { className: "size-5" }),
1901
- t("ui.field.control-fields.index.text")
1902
- ] }),
1903
- children: /* @__PURE__ */ jsx(
1904
- IndexField,
1905
- {
1906
- id: "index",
1907
- formData,
1908
- setFormData,
1909
- isLoading,
1910
- isDisabled,
1911
- existingIndexes,
1912
- availableIndex,
1913
- isError: errors?.includes("index")
1914
- }
1915
- )
1916
- }
1917
- ),
1918
- fields.find((f) => f.key === "slug") && /* @__PURE__ */ jsx(
1919
- Field,
1920
- {
1921
- htmlFor: "slug",
1922
- label: /* @__PURE__ */ jsxs("span", { className: "flex-center gap-2", children: [
1923
- /* @__PURE__ */ jsx(MapPinCheckInside, { className: "size-5" }),
1924
- t("ui.field.control-fields.slug.text")
1925
- ] }),
1926
- children: /* @__PURE__ */ jsx(
1927
- SlugField,
1928
- {
1929
- id: "slug",
1930
- formData,
1931
- setFormData,
1932
- isLoading,
1933
- isDisabled,
1934
- existingSlugs,
1935
- isError: errors?.includes("slug")
1936
- }
1937
- )
1938
- }
1939
- ),
1940
- fields.find((f) => f.key === "isFeatured") && /* @__PURE__ */ jsx(
1941
- Field,
1942
- {
1943
- htmlFor: "isFeatured",
1944
- label: /* @__PURE__ */ jsxs("span", { className: "flex-center gap-2", children: [
1945
- /* @__PURE__ */ jsx(Star, { className: "size-5" }),
1946
- t("ui.field.control-fields.is-featured.text")
1947
- ] }),
1948
- children: /* @__PURE__ */ jsx(
1949
- Checkbox,
1950
- {
1951
- id: "isFeatured",
1952
- fieldName: "isFeatured",
1953
- formData,
1954
- setFormData,
1955
- isLoading,
1956
- isDisabled
1957
- }
1958
- )
1959
- }
1960
- ),
1961
- fields.find((f) => f.key === "isShownOnHome") && /* @__PURE__ */ jsx(
1962
- Field,
1963
- {
1964
- htmlFor: "isShownOnHome",
1965
- label: /* @__PURE__ */ jsxs("span", { className: "flex-center gap-2", children: [
1966
- /* @__PURE__ */ jsx(House, { className: "size-5" }),
1967
- t("ui.field.control-fields.is-shown-on-home.text")
1968
- ] }),
1969
- children: /* @__PURE__ */ jsx(
1970
- Checkbox,
1971
- {
1972
- id: "isShownOnHome",
1973
- fieldName: "isShownOnHome",
1974
- formData,
1975
- setFormData,
1976
- isLoading,
1977
- isDisabled
1978
- }
1979
- )
1980
- }
1981
- ),
1982
- notBuiltInFields.map(({ key, label }) => {
1983
- return /* @__PURE__ */ jsx(Field, { htmlFor: key, label, children: /* @__PURE__ */ jsx(
1984
- Checkbox,
1985
- {
1986
- id: key,
1987
- fieldName: key,
1988
- formData,
1989
- setFormData,
1990
- isLoading,
1991
- isDisabled
1992
- }
1993
- ) }, key);
1994
- })
1995
- ] });
1996
- }
1997
- var BUILT_IN_FIELDS = [
1998
- { key: "isActive" },
1999
- { key: "index" },
2000
- { key: "slug" },
2001
- { key: "isFeatured" },
2002
- { key: "isShownOnHome" }
2003
- ];
2004
- function ControlFields({
2005
- fields = [],
2006
- // meta
2007
- controlMeta,
2008
- // form context
2009
- formData,
2010
- setFormData,
2011
- // ui states
2012
- isLoading = false,
2013
- isDisabled = false,
2014
- isDisplay = false,
2015
- errors,
2016
- ...props
2017
- }) {
2018
- if (fields.length === 0) return null;
2019
- return /* @__PURE__ */ jsx(Card, { className: cn("flex flex-col gap-6", "bg-base-100 p-4"), ...props, children: !isDisplay ? /* @__PURE__ */ jsx(
2020
- ControlFieldsInput,
2021
- {
2022
- fields,
2023
- formData,
2024
- setFormData,
2025
- controlMeta,
2026
- isLoading,
2027
- isDisabled,
2028
- errors
2029
- }
2030
- ) : /* @__PURE__ */ jsx(
2031
- ControlFieldsDisplay,
2032
- {
2033
- fields,
2034
- formData,
2035
- isLoading
2036
- }
2037
- ) });
2038
- }
2039
- function createSignInPage({
2040
- useCommand,
2041
- signInAction
2042
- }) {
2043
- return function SignInPage() {
2044
- const { t } = useTranslator();
2045
- const { setAdmin } = useAdmin();
2046
- const deviceInfo = useDeviceInfo();
2047
- const [formData, setFormData] = useState({
2048
- email: "",
2049
- password: ""
2050
- });
2051
- const { execute, isRedirecting, errors } = useCommand(
2052
- () => signInAction({
2053
- formData,
2054
- deviceInfo: deviceInfo ?? {}
2055
- }),
2056
- { onSuccess: (data) => setAdmin(data?.admin || null) }
2057
- );
2058
- return /* @__PURE__ */ jsx(
2059
- Form,
2060
- {
2061
- className: "mx-auto w-96",
2062
- style: { marginTop: "56px" },
2063
- onSubmit: () => void execute(),
2064
- children: /* @__PURE__ */ jsxs(Card, { children: [
2065
- /* @__PURE__ */ jsx(CardHeader, { children: /* @__PURE__ */ jsx(CardTitle, { className: "mx-auto", children: t("auth.sign-in.text") }) }),
2066
- /* @__PURE__ */ jsxs(CardContent, { className: "relative flex flex-col gap-6", children: [
2067
- /* @__PURE__ */ jsx(Field, { htmlFor: "email", label: t("auth.sign-in.email.text"), children: /* @__PURE__ */ jsx(
2068
- Input,
2069
- {
2070
- id: "email",
2071
- type: "email",
2072
- placeholder: t("auth.sign-in.email.placeholder.text"),
2073
- autoComplete: "email",
2074
- fieldName: "email",
2075
- value: formData.email,
2076
- setFormData,
2077
- isDisabled: isRedirecting,
2078
- isError: errors.includes("email")
2079
- }
2080
- ) }),
2081
- /* @__PURE__ */ jsx(Field, { htmlFor: "password", label: t("auth.sign-in.password.text"), children: /* @__PURE__ */ jsx(
2082
- PasswordInput,
2083
- {
2084
- id: "password",
2085
- placeholder: t("auth.sign-in.password.placeholder.text"),
2086
- fieldName: "password",
2087
- value: formData.password,
2088
- setFormData,
2089
- isDisabled: isRedirecting,
2090
- isError: errors.includes("password")
2091
- }
2092
- ) }),
2093
- /* @__PURE__ */ jsx(
2094
- Button2,
2095
- {
2096
- size: "xs",
2097
- variant: "link",
2098
- className: "w-fit",
2099
- isDisabled: isRedirecting,
2100
- children: /* @__PURE__ */ jsx(Link, { href: PATHS.auth.forgotPassword.path, children: t("auth.sign-in.anchor.text") })
2101
- }
2102
- ),
2103
- /* @__PURE__ */ jsx(Button2, { type: "submit", isLoading: isRedirecting, children: t("auth.sign-in.button.text") })
2104
- ] })
2105
- ] })
2106
- }
2107
- );
2108
- };
2109
- }
2110
- function createVerifyEmailPage({
2111
- useCommand,
2112
- verifyEmailAction
2113
- }) {
2114
- return function VerifyEmailPage() {
2115
- const router = useRouter();
2116
- const searchParams = useSearchParams();
2117
- const email = searchParams.get("email") ?? "";
2118
- const emailVerificationToken = searchParams.get("emailVerificationToken") ?? "";
2119
- const { execute } = useCommand(
2120
- () => verifyEmailAction({ formData: { email, emailVerificationToken } }),
2121
- {
2122
- onSuccess: (data) => router.push(`${PATHS.resources.admin.path}/${data?.admin.id}`),
2123
- onError: () => router.push(PATHS.auth.signIn.path)
2124
- }
2125
- );
2126
- useEffect(() => {
2127
- void (async () => {
2128
- if (email && emailVerificationToken) {
2129
- await execute();
2130
- } else {
2131
- router.push(PATHS.auth.signIn.path);
2132
- }
2133
- })();
2134
- }, [email, emailVerificationToken]);
2135
- return /* @__PURE__ */ jsx("div", { className: "flex-center relative flex-1 flex-col", children: /* @__PURE__ */ jsx(Spinner, { className: "size-10" }) });
2136
- };
2137
- }
2138
- function createEmailUnverifiedPage({
2139
- useCommand,
2140
- emailUnverifiedAction
2141
- }) {
2142
- return function EmailUnverifiedPage() {
2143
- const { t } = useTranslator();
2144
- const router = useRouter();
2145
- const { admin, isLoading } = useAdmin();
2146
- const { timeLeft, isCounting, startCountdown } = useCountdown(30);
2147
- useEffect(() => {
2148
- if (!admin && !isLoading) {
2149
- router.replace(PATHS.auth.signIn.path);
2150
- }
2151
- if (admin?.emailVerifiedAt) {
2152
- router.replace(PATHS.main.dashboard.path);
2153
- }
2154
- }, [admin, isLoading, router]);
2155
- const { execute, isPending } = useCommand(
2156
- () => emailUnverifiedAction({ formData: { email: admin?.email ?? "" } }),
2157
- { onSuccess: () => startCountdown() }
2158
- );
2159
- const buttonText = !isCounting ? t("auth.email-unverified.button.send-email.text") : /* @__PURE__ */ jsxs("span", { children: [
2160
- t("auth.email-unverified.button.please-wait.text"),
2161
- /* @__PURE__ */ jsx("span", { className: "ml-1 inline-block w-5 text-end", children: timeLeft }),
2162
- "\xA0",
2163
- t("auth.email-unverified.button.second.text"),
2164
- "\xA0",
2165
- t("auth.email-unverified.button.send-again.text")
2166
- ] });
2167
- return /* @__PURE__ */ jsx(
2168
- Form,
2169
- {
2170
- className: "mx-auto w-96",
2171
- style: { marginTop: "56px" },
2172
- onSubmit: () => void execute(),
2173
- children: /* @__PURE__ */ jsxs(Card, { children: [
2174
- /* @__PURE__ */ jsx(CardHeader, { children: /* @__PURE__ */ jsx(CardTitle, { className: "mx-auto", children: t("auth.email-unverified.text") }) }),
2175
- /* @__PURE__ */ jsxs(CardContent, { className: "relative flex flex-col gap-6", children: [
2176
- /* @__PURE__ */ jsxs(InputGroup, { children: [
2177
- /* @__PURE__ */ jsx(InputGroupAddon, { children: /* @__PURE__ */ jsx(Label, { htmlFor: "email", className: "text-foreground", children: /* @__PURE__ */ jsx(Mail, { className: "size-4" }) }) }),
2178
- isLoading ? /* @__PURE__ */ jsx("div", { className: "px-2", children: /* @__PURE__ */ jsx(Spinner, {}) }) : /* @__PURE__ */ jsx(
2179
- InputGroupInput,
2180
- {
2181
- id: "email",
2182
- placeholder: "shadcn@vercel.com",
2183
- disabled: true,
2184
- value: admin?.email
2185
- }
2186
- )
2187
- ] }),
2188
- /* @__PURE__ */ jsx(CardDescription, { children: /* @__PURE__ */ jsx("p", { className: "text-sm whitespace-pre-line", children: t("auth.email-unverified.notice.text") }) }),
2189
- /* @__PURE__ */ jsx(
2190
- Button2,
2191
- {
2192
- type: "submit",
2193
- isLoading: isLoading || isPending,
2194
- isDisabled: isCounting,
2195
- children: buttonText
2196
- }
2197
- )
2198
- ] })
2199
- ] })
2200
- }
2201
- );
2202
- };
2203
- }
2204
- function createForgotPasswordPage({
2205
- useCommand,
2206
- forgotPasswordAction
2207
- }) {
2208
- return function ForgotPasswordPage() {
2209
- const { t } = useTranslator();
2210
- const { timeLeft, isCounting, startCountdown } = useCountdown(30);
2211
- const [formData, setFormData] = useState({
2212
- email: ""
2213
- });
2214
- const { execute, isPending, errors } = useCommand(
2215
- () => forgotPasswordAction({ formData: { email: formData.email } }),
2216
- { onSuccess: () => startCountdown() }
2217
- );
2218
- const buttonText = !isCounting ? t("auth.forgot-password.button.send-email.text") : /* @__PURE__ */ jsxs("span", { children: [
2219
- t("auth.forgot-password.button.please-wait.text"),
2220
- /* @__PURE__ */ jsx("span", { className: "ml-1 inline-block w-5 text-end", children: timeLeft }),
2221
- "\xA0",
2222
- t("auth.forgot-password.button.second.text"),
2223
- "\xA0",
2224
- t("auth.forgot-password.button.send-again.text")
2225
- ] });
2226
- return /* @__PURE__ */ jsx(
2227
- Form,
2228
- {
2229
- className: "mx-auto w-96",
2230
- style: { marginTop: "56px" },
2231
- onSubmit: () => void execute(),
2232
- children: /* @__PURE__ */ jsxs(Card, { children: [
2233
- /* @__PURE__ */ jsx(CardHeader, { children: /* @__PURE__ */ jsx(CardTitle, { className: "mx-auto", children: t("auth.forgot-password.text") }) }),
2234
- /* @__PURE__ */ jsxs(CardContent, { className: "relative flex flex-col gap-6", children: [
2235
- /* @__PURE__ */ jsx(Field, { htmlFor: "email", label: t("auth.forgot-password.email.text"), children: /* @__PURE__ */ jsx(
2236
- Input,
2237
- {
2238
- id: "email",
2239
- placeholder: t("auth.forgot-password.email.placeholder.text"),
2240
- autoComplete: "email",
2241
- fieldName: "email",
2242
- value: formData.email,
2243
- setFormData,
2244
- isDisabled: isPending || isCounting,
2245
- isError: errors.includes("email")
2246
- }
2247
- ) }),
2248
- /* @__PURE__ */ jsx(
2249
- Button2,
2250
- {
2251
- size: "xs",
2252
- variant: "link",
2253
- className: "w-fit",
2254
- isDisabled: isPending,
2255
- children: /* @__PURE__ */ jsx(Link, { href: PATHS.auth.signIn.path, children: t("auth.forgot-password.anchor.text") })
2256
- }
2257
- ),
2258
- /* @__PURE__ */ jsx(Button2, { type: "submit", isLoading: isPending, isDisabled: isCounting, children: buttonText })
2259
- ] })
2260
- ] })
2261
- }
2262
- );
2263
- };
2264
- }
2265
- function createResetPasswordPage({
2266
- useCommand,
2267
- resetPasswordAction
2268
- }) {
2269
- return function ResetPasswordPage() {
2270
- const { t } = useTranslator();
2271
- const router = useRouter();
2272
- const passwordResetToken = useSearchParams().get("passwordResetToken") ?? "";
2273
- const [formData, setFormData] = useState({
2274
- newPassword: "",
2275
- newPasswordConfirm: ""
2276
- });
2277
- const { execute, isRedirecting, errors } = useCommand(
2278
- () => resetPasswordAction({ formData: { passwordResetToken, ...formData } }),
2279
- { onSuccess: () => router.push(PATHS.auth.signIn.path) }
2280
- );
2281
- return /* @__PURE__ */ jsx(
2282
- Form,
2283
- {
2284
- className: "mx-auto w-96",
2285
- style: { marginTop: "56px" },
2286
- onSubmit: () => void execute(),
2287
- children: /* @__PURE__ */ jsxs(Card, { children: [
2288
- /* @__PURE__ */ jsx(CardHeader, { children: /* @__PURE__ */ jsx(CardTitle, { className: "mx-auto", children: t("auth.reset-password.text") }) }),
2289
- /* @__PURE__ */ jsxs(CardContent, { className: "relative flex flex-col gap-6", children: [
2290
- /* @__PURE__ */ jsx(
2291
- Field,
2292
- {
2293
- htmlFor: "newPassword",
2294
- label: t("auth.reset-password.new-password.text"),
2295
- children: /* @__PURE__ */ jsx(
2296
- PasswordInput,
2297
- {
2298
- id: "newPassword",
2299
- placeholder: t(
2300
- "auth.reset-password.new-password.placeholder.text"
2301
- ),
2302
- fieldName: "newPassword",
2303
- value: formData.newPassword,
2304
- setFormData,
2305
- isDisabled: isRedirecting,
2306
- isError: errors.includes("newPassword")
2307
- }
2308
- )
2309
- }
2310
- ),
2311
- /* @__PURE__ */ jsx(
2312
- Field,
2313
- {
2314
- htmlFor: "newPasswordConfirm",
2315
- label: t("auth.reset-password.new-password-confirm.text"),
2316
- children: /* @__PURE__ */ jsx(
2317
- PasswordInput,
2318
- {
2319
- id: "newPasswordConfirm",
2320
- placeholder: t(
2321
- `auth.reset-password.new-password-confirm.placeholder.text`
2322
- ),
2323
- fieldName: "newPasswordConfirm",
2324
- value: formData.newPasswordConfirm,
2325
- setFormData,
2326
- isDisabled: isRedirecting,
2327
- isError: errors.includes("newPasswordConfirm")
2328
- }
2329
- )
2330
- }
2331
- ),
2332
- /* @__PURE__ */ jsx(
2333
- Button2,
2334
- {
2335
- size: "xs",
2336
- variant: "link",
2337
- className: "w-fit",
2338
- isDisabled: isRedirecting,
2339
- children: /* @__PURE__ */ jsx(Link, { href: PATHS.auth.signIn.path, children: t("auth.reset-password.anchor.text") })
2340
- }
2341
- ),
2342
- /* @__PURE__ */ jsx(Button2, { type: "submit", isLoading: isRedirecting, children: t("auth.reset-password.button.text") })
2343
- ] })
2344
- ] })
2345
- }
2346
- );
2347
- };
2348
- }
2349
- function createChangePasswordPage({
2350
- useCommand,
2351
- changePasswordAction
2352
- }) {
2353
- return function ChangePasswordPage() {
2354
- const { t } = useTranslator();
2355
- const router = useRouter();
2356
- const [formData, setFormData] = useState({
2357
- password: "",
2358
- newPassword: "",
2359
- newPasswordConfirm: ""
2360
- });
2361
- const { execute, isRedirecting, errors } = useCommand(
2362
- () => changePasswordAction({
2363
- formData: {
2364
- password: formData.password,
2365
- newPassword: formData.newPassword,
2366
- newPasswordConfirm: formData.newPasswordConfirm
2367
- }
2368
- }),
2369
- { onSuccess: () => router.push(PATHS.main.dashboard.path) }
2370
- );
2371
- return /* @__PURE__ */ jsx(
2372
- Form,
2373
- {
2374
- className: "mx-auto w-96",
2375
- style: { marginTop: "56px" },
2376
- onSubmit: () => void execute(),
2377
- children: /* @__PURE__ */ jsxs(Card, { children: [
2378
- /* @__PURE__ */ jsx(CardHeader, { children: /* @__PURE__ */ jsx(CardTitle, { className: "mx-auto", children: t("auth.change-password.text") }) }),
2379
- /* @__PURE__ */ jsxs(CardContent, { className: "relative flex flex-col gap-6", children: [
2380
- /* @__PURE__ */ jsx(
2381
- Field,
2382
- {
2383
- htmlFor: "password",
2384
- label: t("auth.change-password.password.text"),
2385
- children: /* @__PURE__ */ jsx(
2386
- PasswordInput,
2387
- {
2388
- id: "password",
2389
- placeholder: t(
2390
- "auth.change-password.password.placeholder.text"
2391
- ),
2392
- fieldName: "password",
2393
- value: formData.password,
2394
- setFormData,
2395
- isDisabled: isRedirecting,
2396
- isError: errors.includes("password")
2397
- }
2398
- )
2399
- }
2400
- ),
2401
- /* @__PURE__ */ jsx(
2402
- Field,
2403
- {
2404
- htmlFor: "newPassword",
2405
- label: t("auth.change-password.new-password.text"),
2406
- children: /* @__PURE__ */ jsx(
2407
- PasswordInput,
2408
- {
2409
- id: "newPassword",
2410
- placeholder: t(
2411
- "auth.change-password.new-password.placeholder.text"
2412
- ),
2413
- fieldName: "newPassword",
2414
- value: formData.newPassword,
2415
- setFormData,
2416
- isDisabled: isRedirecting,
2417
- isError: errors.includes("newPassword")
2418
- }
2419
- )
2420
- }
2421
- ),
2422
- /* @__PURE__ */ jsx(
2423
- Field,
2424
- {
2425
- htmlFor: "newPasswordConfirm",
2426
- label: t("auth.change-password.new-password-confirm.text"),
2427
- children: /* @__PURE__ */ jsx(
2428
- PasswordInput,
2429
- {
2430
- id: "newPasswordConfirm",
2431
- placeholder: t(
2432
- "auth.change-password.new-password-confirm.placeholder.text"
2433
- ),
2434
- fieldName: "newPasswordConfirm",
2435
- value: formData.newPasswordConfirm,
2436
- setFormData,
2437
- isDisabled: isRedirecting,
2438
- isError: errors.includes("newPasswordConfirm")
2439
- }
2440
- )
2441
- }
2442
- ),
2443
- /* @__PURE__ */ jsx(
2444
- Button2,
2445
- {
2446
- size: "xs",
2447
- variant: "link",
2448
- className: "w-fit",
2449
- isDisabled: isRedirecting,
2450
- children: /* @__PURE__ */ jsx(Link, { href: PATHS.main.dashboard.path, children: t("auth.change-password.anchor.text") })
2451
- }
2452
- ),
2453
- /* @__PURE__ */ jsx(Button2, { type: "submit", isLoading: isRedirecting, children: t("auth.change-password.button.text") }),
2454
- " "
2455
- ] })
2456
- ] })
2457
- }
2458
- );
2459
- };
2460
- }
2461
-
2462
- export { AdminProvider, ArrayInput, Button2 as Button, Checkbox, ContentContainer, ControlFields, Field, FieldBody, FieldsContainer, Form, IndexField, Input, LayoutSkeleton, ListCardsContainer, MainFields, NavMain, Option, PageHeader, PasswordInput, ReturnButton, SearchInput, Select2 as Select, SideFields, SlugField, Textarea2 as Textarea, ThemeProvider, createAdminInitializer, createChangePasswordPage, createEmailUnverifiedPage, createForgotPasswordPage, createI18nSelector, createNavbar, createRequestInterceptor, createResetPasswordPage, createResponseInterceptor, createSignInPage, createSignOutButton, createSmartFetch, createUseCommand, createUseQuery, createVerifyEmailPage, handleToast, useAdmin };