@rakun-kit/manager-react 1.4.11 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1057) hide show
  1. package/README.md +274 -196
  2. package/dist/cjs/app/app-provider.js +2 -1
  3. package/dist/cjs/app/app-provider.js.map +1 -1
  4. package/dist/cjs/app/media-picker.js +3 -1
  5. package/dist/cjs/app/media-picker.js.map +1 -1
  6. package/dist/cjs/app/root-providers.js +1 -1
  7. package/dist/cjs/app/root-providers.js.map +1 -1
  8. package/dist/cjs/app/runtime-app.js +82 -1
  9. package/dist/cjs/app/runtime-app.js.map +1 -1
  10. package/dist/cjs/components/IDColumnt.js +7 -2
  11. package/dist/cjs/components/IDColumnt.js.map +1 -1
  12. package/dist/cjs/components/LanguageSelector.js +20 -10
  13. package/dist/cjs/components/LanguageSelector.js.map +1 -1
  14. package/dist/cjs/components/PaginationController.js +21 -6
  15. package/dist/cjs/components/PaginationController.js.map +1 -1
  16. package/dist/cjs/components/VariantSelector.js +46 -0
  17. package/dist/cjs/components/VariantSelector.js.map +1 -0
  18. package/dist/cjs/components/app-sidebar.js +79 -28
  19. package/dist/cjs/components/app-sidebar.js.map +1 -1
  20. package/dist/cjs/components/auth-language-selector.js +12 -0
  21. package/dist/cjs/components/auth-language-selector.js.map +1 -0
  22. package/dist/cjs/components/blocks/editor-00/editor.js +1 -12
  23. package/dist/cjs/components/blocks/editor-00/editor.js.map +1 -1
  24. package/dist/cjs/components/blocks/editor-00/nodes.js +2 -0
  25. package/dist/cjs/components/blocks/editor-00/nodes.js.map +1 -1
  26. package/dist/cjs/components/blocks/editor-00/plugins.js +37 -1
  27. package/dist/cjs/components/blocks/editor-00/plugins.js.map +1 -1
  28. package/dist/cjs/components/bread-crumb.js +50 -3
  29. package/dist/cjs/components/bread-crumb.js.map +1 -1
  30. package/dist/cjs/components/confirm/confirm.js +122 -0
  31. package/dist/cjs/components/confirm/confirm.js.map +1 -0
  32. package/dist/cjs/components/confirm/index.js +8 -0
  33. package/dist/cjs/components/confirm/index.js.map +1 -0
  34. package/dist/cjs/components/editor/nodes/ImageNode.js +105 -0
  35. package/dist/cjs/components/editor/nodes/ImageNode.js.map +1 -0
  36. package/dist/cjs/components/editor/plugins/actions/counter-character-plugin.js +6 -1
  37. package/dist/cjs/components/editor/plugins/actions/counter-character-plugin.js.map +1 -1
  38. package/dist/cjs/components/editor/plugins/toolbar/image-toolbar-plugin.js +85 -0
  39. package/dist/cjs/components/editor/plugins/toolbar/image-toolbar-plugin.js.map +1 -0
  40. package/dist/cjs/components/editor/themes/editor-theme.css +91 -91
  41. package/dist/cjs/components/loading-spinner.js +3 -1
  42. package/dist/cjs/components/loading-spinner.js.map +1 -1
  43. package/dist/cjs/components/login-form.js +58 -19
  44. package/dist/cjs/components/login-form.js.map +1 -1
  45. package/dist/cjs/components/manager-loading-fallback.js +10 -3
  46. package/dist/cjs/components/manager-loading-fallback.js.map +1 -1
  47. package/dist/cjs/components/media/MediaLibrary.js +11 -4
  48. package/dist/cjs/components/media/MediaLibrary.js.map +1 -1
  49. package/dist/cjs/components/media/folders/FoldersTree.js +31 -8
  50. package/dist/cjs/components/media/folders/FoldersTree.js.map +1 -1
  51. package/dist/cjs/components/media/previews/MediaContextMenuContent.js +5 -1
  52. package/dist/cjs/components/media/previews/MediaContextMenuContent.js.map +1 -1
  53. package/dist/cjs/components/media/previews/Previews.js +127 -61
  54. package/dist/cjs/components/media/previews/Previews.js.map +1 -1
  55. package/dist/cjs/components/media/previews/context/MediaPreviewContext.js.map +1 -1
  56. package/dist/cjs/components/media/previews/dialogs/ExpandedPreviewDialog.js +32 -20
  57. package/dist/cjs/components/media/previews/dialogs/ExpandedPreviewDialog.js.map +1 -1
  58. package/dist/cjs/components/media/previews/dialogs/MediaCreateFolderDialog.js +4 -2
  59. package/dist/cjs/components/media/previews/dialogs/MediaCreateFolderDialog.js.map +1 -1
  60. package/dist/cjs/components/media/previews/dialogs/MediaDeleteDialog.js +7 -3
  61. package/dist/cjs/components/media/previews/dialogs/MediaDeleteDialog.js.map +1 -1
  62. package/dist/cjs/components/media/previews/dialogs/MediaEditDialog.js +6 -2
  63. package/dist/cjs/components/media/previews/dialogs/MediaEditDialog.js.map +1 -1
  64. package/dist/cjs/components/media/previews/dialogs/MediaImageEditorDialog.js +8 -6
  65. package/dist/cjs/components/media/previews/dialogs/MediaImageEditorDialog.js.map +1 -1
  66. package/dist/cjs/components/media/previews/dialogs/MediaMoveDialog.js +6 -4
  67. package/dist/cjs/components/media/previews/dialogs/MediaMoveDialog.js.map +1 -1
  68. package/dist/cjs/components/media/previews/hooks/useMediaUpload.js +6 -3
  69. package/dist/cjs/components/media/previews/hooks/useMediaUpload.js.map +1 -1
  70. package/dist/cjs/components/media/previews/toolbar/PreviewsToolbar.js +11 -6
  71. package/dist/cjs/components/media/previews/toolbar/PreviewsToolbar.js.map +1 -1
  72. package/dist/cjs/components/media/previews/views/PreviewsGridLargeView.js +1 -1
  73. package/dist/cjs/components/media/previews/views/PreviewsGridLargeView.js.map +1 -1
  74. package/dist/cjs/components/media/previews/views/PreviewsGridSmallView.js +1 -1
  75. package/dist/cjs/components/media/previews/views/PreviewsGridSmallView.js.map +1 -1
  76. package/dist/cjs/components/media/previews/views/PreviewsListView.js +4 -2
  77. package/dist/cjs/components/media/previews/views/PreviewsListView.js.map +1 -1
  78. package/dist/cjs/components/nav-main.js +5 -2
  79. package/dist/cjs/components/nav-main.js.map +1 -1
  80. package/dist/cjs/components/nav-user.js +5 -2
  81. package/dist/cjs/components/nav-user.js.map +1 -1
  82. package/dist/cjs/components/rakun-logo.js +12 -0
  83. package/dist/cjs/components/rakun-logo.js.map +1 -0
  84. package/dist/cjs/components/search-input.js +7 -1
  85. package/dist/cjs/components/search-input.js.map +1 -1
  86. package/dist/cjs/components/ui/breadcrumb.js +4 -1
  87. package/dist/cjs/components/ui/breadcrumb.js.map +1 -1
  88. package/dist/cjs/components/ui/card.js +7 -7
  89. package/dist/cjs/components/ui/card.js.map +1 -1
  90. package/dist/cjs/components/ui/checkbox.js +1 -1
  91. package/dist/cjs/components/ui/checkbox.js.map +1 -1
  92. package/dist/cjs/components/ui/data-table.js +132 -20
  93. package/dist/cjs/components/ui/data-table.js.map +1 -1
  94. package/dist/cjs/components/ui/dialog.js +9 -7
  95. package/dist/cjs/components/ui/dialog.js.map +1 -1
  96. package/dist/cjs/components/ui/pagination.js +10 -5
  97. package/dist/cjs/components/ui/pagination.js.map +1 -1
  98. package/dist/cjs/components/ui/scroll-area.js +41 -9
  99. package/dist/cjs/components/ui/scroll-area.js.map +1 -1
  100. package/dist/cjs/components/ui/shadcn-io/combobox/index.js +3 -1
  101. package/dist/cjs/components/ui/shadcn-io/combobox/index.js.map +1 -1
  102. package/dist/cjs/components/ui/shadcn-io/tags/index.js +2 -2
  103. package/dist/cjs/components/ui/shadcn-io/tags/index.js.map +1 -1
  104. package/dist/cjs/components/ui/sheet.js +3 -1
  105. package/dist/cjs/components/ui/sheet.js.map +1 -1
  106. package/dist/cjs/components/ui/sidebar.js +14 -9
  107. package/dist/cjs/components/ui/sidebar.js.map +1 -1
  108. package/dist/cjs/components/ui/sortable.js +4 -4
  109. package/dist/cjs/components/ui/tour.js +7 -3
  110. package/dist/cjs/components/ui/tour.js.map +1 -1
  111. package/dist/cjs/components/unauthorized.js +9 -4
  112. package/dist/cjs/components/unauthorized.js.map +1 -1
  113. package/dist/cjs/components/update-password.js +12 -10
  114. package/dist/cjs/components/update-password.js.map +1 -1
  115. package/dist/cjs/help/manager-help.js +3 -1
  116. package/dist/cjs/help/manager-help.js.map +1 -1
  117. package/dist/cjs/help/registry.js +21 -19
  118. package/dist/cjs/help/registry.js.map +1 -1
  119. package/dist/cjs/helpers/get-action-error-message.js +11 -4
  120. package/dist/cjs/helpers/get-action-error-message.js.map +1 -1
  121. package/dist/cjs/hooks/use-mobile.js +2 -2
  122. package/dist/cjs/hooks/use-mobile.js.map +1 -1
  123. package/dist/cjs/i18n/catalog.js +1780 -0
  124. package/dist/cjs/i18n/catalog.js.map +1 -0
  125. package/dist/cjs/i18n/fieldLabel.js +19 -0
  126. package/dist/cjs/i18n/fieldLabel.js.map +1 -0
  127. package/dist/cjs/i18n/format.js +37 -0
  128. package/dist/cjs/i18n/format.js.map +1 -0
  129. package/dist/cjs/i18n/index.js +22 -0
  130. package/dist/cjs/i18n/index.js.map +1 -0
  131. package/dist/cjs/i18n/layoutModuleLabel.js +13 -0
  132. package/dist/cjs/i18n/layoutModuleLabel.js.map +1 -0
  133. package/dist/cjs/i18n/provider.js +81 -0
  134. package/dist/cjs/i18n/provider.js.map +1 -0
  135. package/dist/cjs/i18n/resolve.js +55 -0
  136. package/dist/cjs/i18n/resolve.js.map +1 -0
  137. package/dist/cjs/i18n/types.js +3 -0
  138. package/dist/cjs/i18n/types.js.map +1 -0
  139. package/dist/cjs/i18n/useTranslations.js +10 -0
  140. package/dist/cjs/i18n/useTranslations.js.map +1 -0
  141. package/dist/cjs/index.js +4 -0
  142. package/dist/cjs/index.js.map +1 -1
  143. package/dist/cjs/layouts.js +4 -2
  144. package/dist/cjs/layouts.js.map +1 -1
  145. package/dist/cjs/router/app.js +9 -3
  146. package/dist/cjs/router/app.js.map +1 -1
  147. package/dist/cjs/router/dashboard/[contentType]/(list)/columns.js +62 -15
  148. package/dist/cjs/router/dashboard/[contentType]/(list)/columns.js.map +1 -1
  149. package/dist/cjs/router/dashboard/[contentType]/(list)/delete.js +40 -33
  150. package/dist/cjs/router/dashboard/[contentType]/(list)/delete.js.map +1 -1
  151. package/dist/cjs/router/dashboard/[contentType]/(list)/list.js +176 -78
  152. package/dist/cjs/router/dashboard/[contentType]/(list)/list.js.map +1 -1
  153. package/dist/cjs/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js +28 -12
  154. package/dist/cjs/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js.map +1 -1
  155. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.js +213 -46
  156. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.js.map +1 -1
  157. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/ContentReviewPanel.js +187 -0
  158. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/ContentReviewPanel.js.map +1 -0
  159. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.js +7 -5
  160. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.js.map +1 -1
  161. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js +1 -1
  162. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js.map +1 -1
  163. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js +70 -8
  164. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js.map +1 -1
  165. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/LinkedIteratorControl.js +29 -28
  166. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/LinkedIteratorControl.js.map +1 -1
  167. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/LocaleVariants.js +238 -61
  168. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/LocaleVariants.js.map +1 -1
  169. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/ModuleNavigation.js +335 -21
  170. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/ModuleNavigation.js.map +1 -1
  171. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js +5 -3
  172. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js.map +1 -1
  173. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.js +17 -39
  174. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.js.map +1 -1
  175. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/VariantNameDialog.js +32 -0
  176. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/VariantNameDialog.js.map +1 -0
  177. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/Versions.js +12 -7
  178. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/Versions.js.map +1 -1
  179. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/module-navigation-reorder.js +9 -0
  180. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/module-navigation-reorder.js.map +1 -0
  181. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/module-reorder-animation.js +99 -0
  182. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/module-reorder-animation.js.map +1 -0
  183. package/dist/cjs/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js +188 -24
  184. package/dist/cjs/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js.map +1 -1
  185. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.js +34 -29
  186. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.js.map +1 -1
  187. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js +9 -6
  188. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js.map +1 -1
  189. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js +157 -77
  190. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js.map +1 -1
  191. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorModulePicker.js +34 -28
  192. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorModulePicker.js.map +1 -1
  193. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorVisibilityDialog.js +5 -1
  194. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorVisibilityDialog.js.map +1 -1
  195. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/ListUI.js +137 -45
  196. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/ListUI.js.map +1 -1
  197. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/SimpleListUI.js +7 -3
  198. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/SimpleListUI.js.map +1 -1
  199. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/moduleItemLabel.js +81 -0
  200. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/moduleItemLabel.js.map +1 -0
  201. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/RelationField/ContentTypeUI.js +6 -4
  202. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/RelationField/ContentTypeUI.js.map +1 -1
  203. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/Select/SelectUI.js +3 -1
  204. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/Select/SelectUI.js.map +1 -1
  205. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/FieldWrapper.js +17 -2
  206. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/FieldWrapper.js.map +1 -1
  207. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.js +12 -2
  208. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.js.map +1 -1
  209. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js +200 -25
  210. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js.map +1 -1
  211. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js +3 -1
  212. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js.map +1 -1
  213. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.js +20 -73
  214. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.js.map +1 -1
  215. package/dist/cjs/router/dashboard/[contentType]/[edit]/edit.js +1 -2
  216. package/dist/cjs/router/dashboard/[contentType]/[edit]/edit.js.map +1 -1
  217. package/dist/cjs/router/dashboard/[contentType]/create/screen.js +3 -1
  218. package/dist/cjs/router/dashboard/[contentType]/create/screen.js.map +1 -1
  219. package/dist/cjs/router/dashboard/account/mfa/Mfa.js +10 -3
  220. package/dist/cjs/router/dashboard/account/mfa/Mfa.js.map +1 -1
  221. package/dist/cjs/router/dashboard/account/mfa/MfaEnroller.js +19 -5
  222. package/dist/cjs/router/dashboard/account/mfa/MfaEnroller.js.map +1 -1
  223. package/dist/cjs/router/dashboard/account/mfa/RecoveryCodes.js +22 -0
  224. package/dist/cjs/router/dashboard/account/mfa/RecoveryCodes.js.map +1 -0
  225. package/dist/cjs/router/dashboard/account/mfa/RecoveryCodesRegenerator.js +52 -0
  226. package/dist/cjs/router/dashboard/account/mfa/RecoveryCodesRegenerator.js.map +1 -0
  227. package/dist/cjs/router/dashboard/account/mfa/TotpProcess.js +15 -6
  228. package/dist/cjs/router/dashboard/account/mfa/TotpProcess.js.map +1 -1
  229. package/dist/cjs/router/dashboard/account/mfa/WebauthnProcess.js +20 -7
  230. package/dist/cjs/router/dashboard/account/mfa/WebauthnProcess.js.map +1 -1
  231. package/dist/cjs/router/dashboard/account/screen.js +6 -4
  232. package/dist/cjs/router/dashboard/account/screen.js.map +1 -1
  233. package/dist/cjs/router/dashboard/account/sessions/Sessions.js +4 -1
  234. package/dist/cjs/router/dashboard/account/sessions/Sessions.js.map +1 -1
  235. package/dist/cjs/router/dashboard/account/sessions/columns.js +7 -7
  236. package/dist/cjs/router/dashboard/account/sessions/columns.js.map +1 -1
  237. package/dist/cjs/router/dashboard/account/sessions/delete.js +34 -27
  238. package/dist/cjs/router/dashboard/account/sessions/delete.js.map +1 -1
  239. package/dist/cjs/router/dashboard/{api-routes → debugging/api-routes}/ApiTest.js +13 -11
  240. package/dist/cjs/router/dashboard/debugging/api-routes/ApiTest.js.map +1 -0
  241. package/dist/cjs/router/dashboard/{api-routes → debugging/api-routes}/CodeBlock.js +1 -1
  242. package/dist/cjs/router/dashboard/debugging/api-routes/CodeBlock.js.map +1 -0
  243. package/dist/cjs/router/dashboard/{api-routes → debugging/api-routes}/EditableCodeBlock.js +1 -1
  244. package/dist/cjs/router/dashboard/debugging/api-routes/EditableCodeBlock.js.map +1 -0
  245. package/dist/cjs/router/dashboard/{api-routes → debugging/api-routes}/SchemaViewer.js +12 -6
  246. package/dist/cjs/router/dashboard/debugging/api-routes/SchemaViewer.js.map +1 -0
  247. package/dist/cjs/router/dashboard/debugging/api-routes/index.js.map +1 -0
  248. package/dist/cjs/router/dashboard/{api-routes → debugging/api-routes}/screen.js +2 -2
  249. package/dist/cjs/router/dashboard/debugging/api-routes/screen.js.map +1 -0
  250. package/dist/cjs/router/dashboard/debugging/api-routes/shared.js.map +1 -0
  251. package/dist/cjs/router/dashboard/{api-routes → debugging/api-routes}/test.js +3 -3
  252. package/dist/cjs/router/dashboard/debugging/api-routes/test.js.map +1 -0
  253. package/dist/cjs/router/dashboard/debugging/api-routes/tour.js.map +1 -0
  254. package/dist/cjs/router/dashboard/debugging/index.js +18 -0
  255. package/dist/cjs/router/dashboard/debugging/index.js.map +1 -0
  256. package/dist/cjs/router/dashboard/debugging/logs/index.js +18 -0
  257. package/dist/cjs/router/dashboard/debugging/logs/index.js.map +1 -0
  258. package/dist/cjs/router/dashboard/debugging/logs/screen.js +170 -0
  259. package/dist/cjs/router/dashboard/debugging/logs/screen.js.map +1 -0
  260. package/dist/cjs/router/dashboard/debugging/screen.js +41 -0
  261. package/dist/cjs/router/dashboard/debugging/screen.js.map +1 -0
  262. package/dist/cjs/router/dashboard/debugging/security/index.js +18 -0
  263. package/dist/cjs/router/dashboard/debugging/security/index.js.map +1 -0
  264. package/dist/cjs/router/dashboard/debugging/security/screen.js +61 -0
  265. package/dist/cjs/router/dashboard/debugging/security/screen.js.map +1 -0
  266. package/dist/cjs/router/dashboard/debugging/tour.js +33 -0
  267. package/dist/cjs/router/dashboard/debugging/tour.js.map +1 -0
  268. package/dist/cjs/router/dashboard/media/screen.js +1 -1
  269. package/dist/cjs/router/dashboard/media/screen.js.map +1 -1
  270. package/dist/cjs/router/dashboard/screen.js +88 -5
  271. package/dist/cjs/router/dashboard/screen.js.map +1 -1
  272. package/dist/cjs/router/dashboard/settings/languages/columns.js +13 -7
  273. package/dist/cjs/router/dashboard/settings/languages/columns.js.map +1 -1
  274. package/dist/cjs/router/dashboard/settings/languages/create.js +3 -1
  275. package/dist/cjs/router/dashboard/settings/languages/create.js.map +1 -1
  276. package/dist/cjs/router/dashboard/settings/languages/delete.js +36 -26
  277. package/dist/cjs/router/dashboard/settings/languages/delete.js.map +1 -1
  278. package/dist/cjs/router/dashboard/settings/languages/edit.js +3 -1
  279. package/dist/cjs/router/dashboard/settings/languages/edit.js.map +1 -1
  280. package/dist/cjs/router/dashboard/settings/languages/editForm.js +8 -6
  281. package/dist/cjs/router/dashboard/settings/languages/editForm.js.map +1 -1
  282. package/dist/cjs/router/dashboard/settings/languages/screen.js +5 -2
  283. package/dist/cjs/router/dashboard/settings/languages/screen.js.map +1 -1
  284. package/dist/cjs/router/dashboard/settings/literals/screen.js +23 -7
  285. package/dist/cjs/router/dashboard/settings/literals/screen.js.map +1 -1
  286. package/dist/cjs/router/dashboard/settings/redirects/columns.js +31 -16
  287. package/dist/cjs/router/dashboard/settings/redirects/columns.js.map +1 -1
  288. package/dist/cjs/router/dashboard/settings/redirects/screen.js +38 -24
  289. package/dist/cjs/router/dashboard/settings/redirects/screen.js.map +1 -1
  290. package/dist/cjs/router/dashboard/settings/review-policies/index.js +18 -0
  291. package/dist/cjs/router/dashboard/settings/review-policies/index.js.map +1 -0
  292. package/dist/cjs/router/dashboard/settings/review-policies/screen.js +117 -0
  293. package/dist/cjs/router/dashboard/settings/review-policies/screen.js.map +1 -0
  294. package/dist/cjs/router/dashboard/settings/robots/columns.js +8 -8
  295. package/dist/cjs/router/dashboard/settings/robots/columns.js.map +1 -1
  296. package/dist/cjs/router/dashboard/settings/robots/screen.js +34 -23
  297. package/dist/cjs/router/dashboard/settings/robots/screen.js.map +1 -1
  298. package/dist/cjs/router/dashboard/settings/routes/columns.js +10 -10
  299. package/dist/cjs/router/dashboard/settings/routes/columns.js.map +1 -1
  300. package/dist/cjs/router/dashboard/settings/routes/edit.js +4 -2
  301. package/dist/cjs/router/dashboard/settings/routes/edit.js.map +1 -1
  302. package/dist/cjs/router/dashboard/settings/routes/editForm.js +7 -5
  303. package/dist/cjs/router/dashboard/settings/routes/editForm.js.map +1 -1
  304. package/dist/cjs/router/dashboard/settings/routes/paths/columns.js +6 -6
  305. package/dist/cjs/router/dashboard/settings/routes/paths/columns.js.map +1 -1
  306. package/dist/cjs/router/dashboard/settings/routes/paths/screen.js +27 -17
  307. package/dist/cjs/router/dashboard/settings/routes/paths/screen.js.map +1 -1
  308. package/dist/cjs/router/dashboard/settings/routes/screen.js +12 -9
  309. package/dist/cjs/router/dashboard/settings/routes/screen.js.map +1 -1
  310. package/dist/cjs/router/dashboard/settings/screen.js +21 -9
  311. package/dist/cjs/router/dashboard/settings/screen.js.map +1 -1
  312. package/dist/cjs/router/dashboard/settings/seo/screen.js +6 -4
  313. package/dist/cjs/router/dashboard/settings/seo/screen.js.map +1 -1
  314. package/dist/cjs/router/dashboard/settings/system/screen.js +21 -6
  315. package/dist/cjs/router/dashboard/settings/system/screen.js.map +1 -1
  316. package/dist/cjs/router/dashboard/settings/user-roles/columns.js +4 -4
  317. package/dist/cjs/router/dashboard/settings/user-roles/columns.js.map +1 -1
  318. package/dist/cjs/router/dashboard/settings/user-roles/delete.js +33 -25
  319. package/dist/cjs/router/dashboard/settings/user-roles/delete.js.map +1 -1
  320. package/dist/cjs/router/dashboard/settings/user-roles/edit.js +9 -6
  321. package/dist/cjs/router/dashboard/settings/user-roles/edit.js.map +1 -1
  322. package/dist/cjs/router/dashboard/settings/user-roles/screen.js +20 -2
  323. package/dist/cjs/router/dashboard/settings/user-roles/screen.js.map +1 -1
  324. package/dist/cjs/router/dashboard/users/columns.js +8 -8
  325. package/dist/cjs/router/dashboard/users/columns.js.map +1 -1
  326. package/dist/cjs/router/dashboard/users/create.js +3 -1
  327. package/dist/cjs/router/dashboard/users/create.js.map +1 -1
  328. package/dist/cjs/router/dashboard/users/delete.js +33 -25
  329. package/dist/cjs/router/dashboard/users/delete.js.map +1 -1
  330. package/dist/cjs/router/dashboard/users/edit.js +3 -1
  331. package/dist/cjs/router/dashboard/users/edit.js.map +1 -1
  332. package/dist/cjs/router/dashboard/users/editForm.js +12 -10
  333. package/dist/cjs/router/dashboard/users/editForm.js.map +1 -1
  334. package/dist/cjs/router/dashboard/users/screen.js +25 -2
  335. package/dist/cjs/router/dashboard/users/screen.js.map +1 -1
  336. package/dist/cjs/router/login/callback.js +43 -0
  337. package/dist/cjs/router/login/callback.js.map +1 -0
  338. package/dist/cjs/router/login/index.js +1 -0
  339. package/dist/cjs/router/login/index.js.map +1 -1
  340. package/dist/cjs/router/login/screen.js +2 -2
  341. package/dist/cjs/router/login/screen.js.map +1 -1
  342. package/dist/cjs/router/mfa/recovery-code.js +45 -0
  343. package/dist/cjs/router/mfa/recovery-code.js.map +1 -0
  344. package/dist/cjs/router/mfa/screen.js +11 -2
  345. package/dist/cjs/router/mfa/screen.js.map +1 -1
  346. package/dist/cjs/router/mfa/totp.js +5 -3
  347. package/dist/cjs/router/mfa/totp.js.map +1 -1
  348. package/dist/cjs/router/mfa/webauthnn.js +6 -4
  349. package/dist/cjs/router/mfa/webauthnn.js.map +1 -1
  350. package/dist/cjs/router/password-recovery/index.js +18 -0
  351. package/dist/cjs/router/password-recovery/index.js.map +1 -0
  352. package/dist/cjs/router/password-recovery/screen.js +102 -0
  353. package/dist/cjs/router/password-recovery/screen.js.map +1 -0
  354. package/dist/cjs/router/shared/route-list.js +97 -5
  355. package/dist/cjs/router/shared/route-list.js.map +1 -1
  356. package/dist/cjs/router/shared/route-renderer.js +6 -3
  357. package/dist/cjs/router/shared/route-renderer.js.map +1 -1
  358. package/dist/cjs/seo/defaults.js +19 -0
  359. package/dist/cjs/seo/defaults.js.map +1 -0
  360. package/dist/cjs/seo/index.js +9 -0
  361. package/dist/cjs/seo/index.js.map +1 -0
  362. package/dist/cjs/state/language.js +8 -27
  363. package/dist/cjs/state/language.js.map +1 -1
  364. package/dist/cjs/state/theme-script.js +28 -0
  365. package/dist/cjs/state/theme-script.js.map +1 -0
  366. package/dist/cjs/state/theme.js +22 -35
  367. package/dist/cjs/state/theme.js.map +1 -1
  368. package/dist/cjs/state/users.js +46 -0
  369. package/dist/cjs/state/users.js.map +1 -0
  370. package/dist/docs/index.md +147 -0
  371. package/dist/esm/app/app-provider.d.ts.map +1 -1
  372. package/dist/esm/app/app-provider.js +2 -1
  373. package/dist/esm/app/app-provider.js.map +1 -1
  374. package/dist/esm/app/media-picker.d.ts.map +1 -1
  375. package/dist/esm/app/media-picker.js +3 -1
  376. package/dist/esm/app/media-picker.js.map +1 -1
  377. package/dist/esm/app/root-providers.d.ts.map +1 -1
  378. package/dist/esm/app/root-providers.js +2 -2
  379. package/dist/esm/app/root-providers.js.map +1 -1
  380. package/dist/esm/app/runtime-app.d.ts +1 -1
  381. package/dist/esm/app/runtime-app.d.ts.map +1 -1
  382. package/dist/esm/app/runtime-app.js +85 -4
  383. package/dist/esm/app/runtime-app.js.map +1 -1
  384. package/dist/esm/components/IDColumnt.d.ts.map +1 -1
  385. package/dist/esm/components/IDColumnt.js +8 -3
  386. package/dist/esm/components/IDColumnt.js.map +1 -1
  387. package/dist/esm/components/LanguageSelector.d.ts.map +1 -1
  388. package/dist/esm/components/LanguageSelector.js +20 -10
  389. package/dist/esm/components/LanguageSelector.js.map +1 -1
  390. package/dist/esm/components/PaginationController.d.ts.map +1 -1
  391. package/dist/esm/components/PaginationController.js +21 -6
  392. package/dist/esm/components/PaginationController.js.map +1 -1
  393. package/dist/esm/components/VariantSelector.d.ts +6 -0
  394. package/dist/esm/components/VariantSelector.d.ts.map +1 -0
  395. package/dist/esm/components/VariantSelector.js +42 -0
  396. package/dist/esm/components/VariantSelector.js.map +1 -0
  397. package/dist/esm/components/app-sidebar.d.ts +3 -1
  398. package/dist/esm/components/app-sidebar.d.ts.map +1 -1
  399. package/dist/esm/components/app-sidebar.js +80 -29
  400. package/dist/esm/components/app-sidebar.js.map +1 -1
  401. package/dist/esm/components/auth-language-selector.d.ts +2 -0
  402. package/dist/esm/components/auth-language-selector.d.ts.map +1 -0
  403. package/dist/esm/components/auth-language-selector.js +5 -0
  404. package/dist/esm/components/auth-language-selector.js.map +1 -0
  405. package/dist/esm/components/blocks/editor-00/editor.d.ts.map +1 -1
  406. package/dist/esm/components/blocks/editor-00/editor.js +1 -12
  407. package/dist/esm/components/blocks/editor-00/editor.js.map +1 -1
  408. package/dist/esm/components/blocks/editor-00/nodes.d.ts +2 -1
  409. package/dist/esm/components/blocks/editor-00/nodes.d.ts.map +1 -1
  410. package/dist/esm/components/blocks/editor-00/nodes.js +2 -0
  411. package/dist/esm/components/blocks/editor-00/nodes.js.map +1 -1
  412. package/dist/esm/components/blocks/editor-00/plugins.d.ts.map +1 -1
  413. package/dist/esm/components/blocks/editor-00/plugins.js +38 -2
  414. package/dist/esm/components/blocks/editor-00/plugins.js.map +1 -1
  415. package/dist/esm/components/bread-crumb.d.ts +3 -1
  416. package/dist/esm/components/bread-crumb.d.ts.map +1 -1
  417. package/dist/esm/components/bread-crumb.js +50 -3
  418. package/dist/esm/components/bread-crumb.js.map +1 -1
  419. package/dist/esm/components/confirm/confirm.d.ts +34 -0
  420. package/dist/esm/components/confirm/confirm.d.ts.map +1 -0
  421. package/dist/esm/components/confirm/confirm.js +117 -0
  422. package/dist/esm/components/confirm/confirm.js.map +1 -0
  423. package/dist/esm/components/confirm/index.d.ts +2 -0
  424. package/dist/esm/components/confirm/index.d.ts.map +1 -0
  425. package/dist/esm/components/confirm/index.js +2 -0
  426. package/dist/esm/components/confirm/index.js.map +1 -0
  427. package/dist/esm/components/editor/nodes/ImageNode.d.ts +37 -0
  428. package/dist/esm/components/editor/nodes/ImageNode.d.ts.map +1 -0
  429. package/dist/esm/components/editor/nodes/ImageNode.js +99 -0
  430. package/dist/esm/components/editor/nodes/ImageNode.js.map +1 -0
  431. package/dist/esm/components/editor/plugins/actions/counter-character-plugin.d.ts.map +1 -1
  432. package/dist/esm/components/editor/plugins/actions/counter-character-plugin.js +7 -2
  433. package/dist/esm/components/editor/plugins/actions/counter-character-plugin.js.map +1 -1
  434. package/dist/esm/components/editor/plugins/toolbar/image-toolbar-plugin.d.ts +7 -0
  435. package/dist/esm/components/editor/plugins/toolbar/image-toolbar-plugin.d.ts.map +1 -0
  436. package/dist/esm/components/editor/plugins/toolbar/image-toolbar-plugin.js +80 -0
  437. package/dist/esm/components/editor/plugins/toolbar/image-toolbar-plugin.js.map +1 -0
  438. package/dist/esm/components/editor/themes/editor-theme.css +91 -91
  439. package/dist/esm/components/loading-spinner.d.ts.map +1 -1
  440. package/dist/esm/components/loading-spinner.js +3 -1
  441. package/dist/esm/components/loading-spinner.js.map +1 -1
  442. package/dist/esm/components/login-form.d.ts +5 -1
  443. package/dist/esm/components/login-form.d.ts.map +1 -1
  444. package/dist/esm/components/login-form.js +69 -30
  445. package/dist/esm/components/login-form.js.map +1 -1
  446. package/dist/esm/components/manager-loading-fallback.d.ts +1 -0
  447. package/dist/esm/components/manager-loading-fallback.d.ts.map +1 -1
  448. package/dist/esm/components/manager-loading-fallback.js +8 -2
  449. package/dist/esm/components/manager-loading-fallback.js.map +1 -1
  450. package/dist/esm/components/media/MediaLibrary.d.ts.map +1 -1
  451. package/dist/esm/components/media/MediaLibrary.js +12 -5
  452. package/dist/esm/components/media/MediaLibrary.js.map +1 -1
  453. package/dist/esm/components/media/folders/FoldersTree.d.ts.map +1 -1
  454. package/dist/esm/components/media/folders/FoldersTree.js +32 -9
  455. package/dist/esm/components/media/folders/FoldersTree.js.map +1 -1
  456. package/dist/esm/components/media/previews/MediaContextMenuContent.d.ts.map +1 -1
  457. package/dist/esm/components/media/previews/MediaContextMenuContent.js +5 -1
  458. package/dist/esm/components/media/previews/MediaContextMenuContent.js.map +1 -1
  459. package/dist/esm/components/media/previews/Previews.d.ts.map +1 -1
  460. package/dist/esm/components/media/previews/Previews.js +129 -63
  461. package/dist/esm/components/media/previews/Previews.js.map +1 -1
  462. package/dist/esm/components/media/previews/context/MediaPreviewContext.d.ts +2 -0
  463. package/dist/esm/components/media/previews/context/MediaPreviewContext.d.ts.map +1 -1
  464. package/dist/esm/components/media/previews/context/MediaPreviewContext.js.map +1 -1
  465. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.d.ts +1 -1
  466. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.d.ts.map +1 -1
  467. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.js +41 -29
  468. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.js.map +1 -1
  469. package/dist/esm/components/media/previews/dialogs/MediaCreateFolderDialog.d.ts.map +1 -1
  470. package/dist/esm/components/media/previews/dialogs/MediaCreateFolderDialog.js +4 -2
  471. package/dist/esm/components/media/previews/dialogs/MediaCreateFolderDialog.js.map +1 -1
  472. package/dist/esm/components/media/previews/dialogs/MediaDeleteDialog.d.ts.map +1 -1
  473. package/dist/esm/components/media/previews/dialogs/MediaDeleteDialog.js +8 -4
  474. package/dist/esm/components/media/previews/dialogs/MediaDeleteDialog.js.map +1 -1
  475. package/dist/esm/components/media/previews/dialogs/MediaEditDialog.d.ts.map +1 -1
  476. package/dist/esm/components/media/previews/dialogs/MediaEditDialog.js +7 -3
  477. package/dist/esm/components/media/previews/dialogs/MediaEditDialog.js.map +1 -1
  478. package/dist/esm/components/media/previews/dialogs/MediaImageEditorDialog.d.ts.map +1 -1
  479. package/dist/esm/components/media/previews/dialogs/MediaImageEditorDialog.js +8 -6
  480. package/dist/esm/components/media/previews/dialogs/MediaImageEditorDialog.js.map +1 -1
  481. package/dist/esm/components/media/previews/dialogs/MediaMoveDialog.d.ts.map +1 -1
  482. package/dist/esm/components/media/previews/dialogs/MediaMoveDialog.js +7 -5
  483. package/dist/esm/components/media/previews/dialogs/MediaMoveDialog.js.map +1 -1
  484. package/dist/esm/components/media/previews/hooks/useMediaUpload.d.ts.map +1 -1
  485. package/dist/esm/components/media/previews/hooks/useMediaUpload.js +6 -3
  486. package/dist/esm/components/media/previews/hooks/useMediaUpload.js.map +1 -1
  487. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.d.ts.map +1 -1
  488. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.js +12 -7
  489. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.js.map +1 -1
  490. package/dist/esm/components/media/previews/views/PreviewsGridLargeView.js +1 -1
  491. package/dist/esm/components/media/previews/views/PreviewsGridLargeView.js.map +1 -1
  492. package/dist/esm/components/media/previews/views/PreviewsGridSmallView.js +1 -1
  493. package/dist/esm/components/media/previews/views/PreviewsGridSmallView.js.map +1 -1
  494. package/dist/esm/components/media/previews/views/PreviewsListView.d.ts.map +1 -1
  495. package/dist/esm/components/media/previews/views/PreviewsListView.js +4 -2
  496. package/dist/esm/components/media/previews/views/PreviewsListView.js.map +1 -1
  497. package/dist/esm/components/nav-main.d.ts.map +1 -1
  498. package/dist/esm/components/nav-main.js +6 -3
  499. package/dist/esm/components/nav-main.js.map +1 -1
  500. package/dist/esm/components/nav-user.d.ts.map +1 -1
  501. package/dist/esm/components/nav-user.js +5 -2
  502. package/dist/esm/components/nav-user.js.map +1 -1
  503. package/dist/esm/components/rakun-logo.d.ts +6 -0
  504. package/dist/esm/components/rakun-logo.d.ts.map +1 -0
  505. package/dist/esm/components/rakun-logo.js +7 -0
  506. package/dist/esm/components/rakun-logo.js.map +1 -0
  507. package/dist/esm/components/search-input.d.ts.map +1 -1
  508. package/dist/esm/components/search-input.js +7 -1
  509. package/dist/esm/components/search-input.js.map +1 -1
  510. package/dist/esm/components/ui/breadcrumb.d.ts.map +1 -1
  511. package/dist/esm/components/ui/breadcrumb.js +4 -1
  512. package/dist/esm/components/ui/breadcrumb.js.map +1 -1
  513. package/dist/esm/components/ui/card.js +7 -7
  514. package/dist/esm/components/ui/card.js.map +1 -1
  515. package/dist/esm/components/ui/checkbox.js +1 -1
  516. package/dist/esm/components/ui/checkbox.js.map +1 -1
  517. package/dist/esm/components/ui/data-table.d.ts +1 -1
  518. package/dist/esm/components/ui/data-table.d.ts.map +1 -1
  519. package/dist/esm/components/ui/data-table.js +132 -20
  520. package/dist/esm/components/ui/data-table.js.map +1 -1
  521. package/dist/esm/components/ui/dialog.d.ts +2 -1
  522. package/dist/esm/components/ui/dialog.d.ts.map +1 -1
  523. package/dist/esm/components/ui/dialog.js +9 -7
  524. package/dist/esm/components/ui/dialog.js.map +1 -1
  525. package/dist/esm/components/ui/pagination.d.ts.map +1 -1
  526. package/dist/esm/components/ui/pagination.js +10 -5
  527. package/dist/esm/components/ui/pagination.js.map +1 -1
  528. package/dist/esm/components/ui/scroll-area.d.ts +4 -4
  529. package/dist/esm/components/ui/scroll-area.d.ts.map +1 -1
  530. package/dist/esm/components/ui/scroll-area.js +9 -10
  531. package/dist/esm/components/ui/scroll-area.js.map +1 -1
  532. package/dist/esm/components/ui/shadcn-io/combobox/index.d.ts.map +1 -1
  533. package/dist/esm/components/ui/shadcn-io/combobox/index.js +3 -1
  534. package/dist/esm/components/ui/shadcn-io/combobox/index.js.map +1 -1
  535. package/dist/esm/components/ui/shadcn-io/tags/index.d.ts +4 -2
  536. package/dist/esm/components/ui/shadcn-io/tags/index.d.ts.map +1 -1
  537. package/dist/esm/components/ui/shadcn-io/tags/index.js +2 -2
  538. package/dist/esm/components/ui/shadcn-io/tags/index.js.map +1 -1
  539. package/dist/esm/components/ui/sheet.d.ts.map +1 -1
  540. package/dist/esm/components/ui/sheet.js +3 -1
  541. package/dist/esm/components/ui/sheet.js.map +1 -1
  542. package/dist/esm/components/ui/sidebar.d.ts.map +1 -1
  543. package/dist/esm/components/ui/sidebar.js +14 -9
  544. package/dist/esm/components/ui/sidebar.js.map +1 -1
  545. package/dist/esm/components/ui/sortable.js +4 -4
  546. package/dist/esm/components/ui/tour.d.ts.map +1 -1
  547. package/dist/esm/components/ui/tour.js +7 -3
  548. package/dist/esm/components/ui/tour.js.map +1 -1
  549. package/dist/esm/components/unauthorized.d.ts +1 -1
  550. package/dist/esm/components/unauthorized.d.ts.map +1 -1
  551. package/dist/esm/components/unauthorized.js +10 -5
  552. package/dist/esm/components/unauthorized.js.map +1 -1
  553. package/dist/esm/components/update-password.d.ts.map +1 -1
  554. package/dist/esm/components/update-password.js +23 -21
  555. package/dist/esm/components/update-password.js.map +1 -1
  556. package/dist/esm/help/manager-help.d.ts.map +1 -1
  557. package/dist/esm/help/manager-help.js +3 -1
  558. package/dist/esm/help/manager-help.js.map +1 -1
  559. package/dist/esm/help/registry.d.ts.map +1 -1
  560. package/dist/esm/help/registry.js +3 -1
  561. package/dist/esm/help/registry.js.map +1 -1
  562. package/dist/esm/helpers/get-action-error-message.d.ts.map +1 -1
  563. package/dist/esm/helpers/get-action-error-message.js +11 -4
  564. package/dist/esm/helpers/get-action-error-message.js.map +1 -1
  565. package/dist/esm/hooks/use-mobile.js +2 -2
  566. package/dist/esm/hooks/use-mobile.js.map +1 -1
  567. package/dist/esm/i18n/catalog.d.ts +3299 -0
  568. package/dist/esm/i18n/catalog.d.ts.map +1 -0
  569. package/dist/esm/i18n/catalog.js +1777 -0
  570. package/dist/esm/i18n/catalog.js.map +1 -0
  571. package/dist/esm/i18n/fieldLabel.d.ts +2 -0
  572. package/dist/esm/i18n/fieldLabel.d.ts.map +1 -0
  573. package/dist/esm/i18n/fieldLabel.js +15 -0
  574. package/dist/esm/i18n/fieldLabel.js.map +1 -0
  575. package/dist/esm/i18n/format.d.ts +7 -0
  576. package/dist/esm/i18n/format.d.ts.map +1 -0
  577. package/dist/esm/i18n/format.js +33 -0
  578. package/dist/esm/i18n/format.js.map +1 -0
  579. package/dist/esm/i18n/index.d.ts +9 -0
  580. package/dist/esm/i18n/index.d.ts.map +1 -0
  581. package/dist/esm/i18n/index.js +8 -0
  582. package/dist/esm/i18n/index.js.map +1 -0
  583. package/dist/esm/i18n/layoutModuleLabel.d.ts +2 -0
  584. package/dist/esm/i18n/layoutModuleLabel.d.ts.map +1 -0
  585. package/dist/esm/i18n/layoutModuleLabel.js +9 -0
  586. package/dist/esm/i18n/layoutModuleLabel.js.map +1 -0
  587. package/dist/esm/i18n/provider.d.ts +22 -0
  588. package/dist/esm/i18n/provider.d.ts.map +1 -0
  589. package/dist/esm/i18n/provider.js +76 -0
  590. package/dist/esm/i18n/provider.js.map +1 -0
  591. package/dist/esm/i18n/resolve.d.ts +10 -0
  592. package/dist/esm/i18n/resolve.d.ts.map +1 -0
  593. package/dist/esm/i18n/resolve.js +49 -0
  594. package/dist/esm/i18n/resolve.js.map +1 -0
  595. package/dist/esm/i18n/types.d.ts +30 -0
  596. package/dist/esm/i18n/types.d.ts.map +1 -0
  597. package/dist/esm/i18n/types.js +2 -0
  598. package/dist/esm/i18n/types.js.map +1 -0
  599. package/dist/esm/i18n/useTranslations.d.ts +5 -0
  600. package/dist/esm/i18n/useTranslations.d.ts.map +1 -0
  601. package/dist/esm/i18n/useTranslations.js +6 -0
  602. package/dist/esm/i18n/useTranslations.js.map +1 -0
  603. package/dist/esm/index.d.ts +4 -0
  604. package/dist/esm/index.d.ts.map +1 -1
  605. package/dist/esm/index.js +4 -0
  606. package/dist/esm/index.js.map +1 -1
  607. package/dist/esm/layouts.d.ts.map +1 -1
  608. package/dist/esm/layouts.js +4 -2
  609. package/dist/esm/layouts.js.map +1 -1
  610. package/dist/esm/router/app.d.ts.map +1 -1
  611. package/dist/esm/router/app.js +10 -4
  612. package/dist/esm/router/app.js.map +1 -1
  613. package/dist/esm/router/dashboard/[contentType]/(list)/columns.d.ts +9 -3
  614. package/dist/esm/router/dashboard/[contentType]/(list)/columns.d.ts.map +1 -1
  615. package/dist/esm/router/dashboard/[contentType]/(list)/columns.js +63 -16
  616. package/dist/esm/router/dashboard/[contentType]/(list)/columns.js.map +1 -1
  617. package/dist/esm/router/dashboard/[contentType]/(list)/delete.d.ts.map +1 -1
  618. package/dist/esm/router/dashboard/[contentType]/(list)/delete.js +41 -34
  619. package/dist/esm/router/dashboard/[contentType]/(list)/delete.js.map +1 -1
  620. package/dist/esm/router/dashboard/[contentType]/(list)/list.d.ts.map +1 -1
  621. package/dist/esm/router/dashboard/[contentType]/(list)/list.js +178 -80
  622. package/dist/esm/router/dashboard/[contentType]/(list)/list.js.map +1 -1
  623. package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.d.ts.map +1 -1
  624. package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js +29 -13
  625. package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js.map +1 -1
  626. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.d.ts.map +1 -1
  627. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.js +220 -53
  628. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.js.map +1 -1
  629. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentReviewPanel.d.ts +4 -0
  630. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentReviewPanel.d.ts.map +1 -0
  631. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentReviewPanel.js +183 -0
  632. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentReviewPanel.js.map +1 -0
  633. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.d.ts.map +1 -1
  634. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.js +7 -5
  635. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.js.map +1 -1
  636. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js +2 -2
  637. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js.map +1 -1
  638. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.d.ts.map +1 -1
  639. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js +72 -10
  640. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js.map +1 -1
  641. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/LinkedIteratorControl.d.ts.map +1 -1
  642. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/LinkedIteratorControl.js +30 -29
  643. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/LinkedIteratorControl.js.map +1 -1
  644. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/LocaleVariants.d.ts +1 -1
  645. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/LocaleVariants.d.ts.map +1 -1
  646. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/LocaleVariants.js +239 -62
  647. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/LocaleVariants.js.map +1 -1
  648. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ModuleNavigation.d.ts.map +1 -1
  649. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ModuleNavigation.js +338 -24
  650. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ModuleNavigation.js.map +1 -1
  651. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.d.ts.map +1 -1
  652. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js +5 -3
  653. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js.map +1 -1
  654. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.d.ts.map +1 -1
  655. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.js +17 -39
  656. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.js.map +1 -1
  657. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/VariantNameDialog.d.ts +7 -0
  658. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/VariantNameDialog.d.ts.map +1 -0
  659. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/VariantNameDialog.js +28 -0
  660. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/VariantNameDialog.js.map +1 -0
  661. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/Versions.d.ts.map +1 -1
  662. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/Versions.js +12 -7
  663. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/Versions.js.map +1 -1
  664. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/module-navigation-reorder.d.ts +7 -0
  665. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/module-navigation-reorder.d.ts.map +1 -0
  666. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/module-navigation-reorder.js +5 -0
  667. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/module-navigation-reorder.js.map +1 -0
  668. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/module-reorder-animation.d.ts +15 -0
  669. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/module-reorder-animation.d.ts.map +1 -0
  670. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/module-reorder-animation.js +88 -0
  671. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/module-reorder-animation.js.map +1 -0
  672. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.d.ts +0 -4
  673. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.d.ts.map +1 -1
  674. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js +190 -26
  675. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js.map +1 -1
  676. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.d.ts.map +1 -1
  677. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.js +34 -29
  678. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.js.map +1 -1
  679. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/FileField/index.d.ts.map +1 -1
  680. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js +9 -6
  681. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js.map +1 -1
  682. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.d.ts.map +1 -1
  683. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js +159 -76
  684. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js.map +1 -1
  685. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorModulePicker.d.ts.map +1 -1
  686. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorModulePicker.js +35 -29
  687. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorModulePicker.js.map +1 -1
  688. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorVisibilityDialog.d.ts.map +1 -1
  689. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorVisibilityDialog.js +6 -2
  690. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorVisibilityDialog.js.map +1 -1
  691. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/ListUI.d.ts.map +1 -1
  692. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/ListUI.js +137 -45
  693. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/ListUI.js.map +1 -1
  694. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/SimpleListUI.d.ts.map +1 -1
  695. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/SimpleListUI.js +7 -3
  696. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/SimpleListUI.js.map +1 -1
  697. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/moduleItemLabel.d.ts +9 -0
  698. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/moduleItemLabel.d.ts.map +1 -0
  699. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/moduleItemLabel.js +75 -0
  700. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/moduleItemLabel.js.map +1 -0
  701. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/ContentTypeUI.d.ts.map +1 -1
  702. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/ContentTypeUI.js +6 -4
  703. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/ContentTypeUI.js.map +1 -1
  704. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Select/SelectUI.d.ts.map +1 -1
  705. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Select/SelectUI.js +3 -1
  706. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Select/SelectUI.js.map +1 -1
  707. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/FieldWrapper.d.ts.map +1 -1
  708. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/FieldWrapper.js +19 -4
  709. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/FieldWrapper.js.map +1 -1
  710. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.d.ts +9 -1
  711. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.d.ts.map +1 -1
  712. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.js +10 -2
  713. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.js.map +1 -1
  714. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.d.ts +13 -5
  715. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.d.ts.map +1 -1
  716. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js +194 -19
  717. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js.map +1 -1
  718. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.d.ts.map +1 -1
  719. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js +3 -1
  720. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js.map +1 -1
  721. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.d.ts +24 -3
  722. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.d.ts.map +1 -1
  723. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.js +21 -74
  724. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.js.map +1 -1
  725. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.d.ts.map +1 -1
  726. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.js +1 -2
  727. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.js.map +1 -1
  728. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.types.d.ts +1 -1
  729. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.types.d.ts.map +1 -1
  730. package/dist/esm/router/dashboard/[contentType]/create/screen.d.ts.map +1 -1
  731. package/dist/esm/router/dashboard/[contentType]/create/screen.js +3 -1
  732. package/dist/esm/router/dashboard/[contentType]/create/screen.js.map +1 -1
  733. package/dist/esm/router/dashboard/account/mfa/Mfa.d.ts.map +1 -1
  734. package/dist/esm/router/dashboard/account/mfa/Mfa.js +10 -3
  735. package/dist/esm/router/dashboard/account/mfa/Mfa.js.map +1 -1
  736. package/dist/esm/router/dashboard/account/mfa/MfaEnroller.d.ts.map +1 -1
  737. package/dist/esm/router/dashboard/account/mfa/MfaEnroller.js +19 -5
  738. package/dist/esm/router/dashboard/account/mfa/MfaEnroller.js.map +1 -1
  739. package/dist/esm/router/dashboard/account/mfa/RecoveryCodes.d.ts +5 -0
  740. package/dist/esm/router/dashboard/account/mfa/RecoveryCodes.d.ts.map +1 -0
  741. package/dist/esm/router/dashboard/account/mfa/RecoveryCodes.js +18 -0
  742. package/dist/esm/router/dashboard/account/mfa/RecoveryCodes.js.map +1 -0
  743. package/dist/esm/router/dashboard/account/mfa/RecoveryCodesRegenerator.d.ts +2 -0
  744. package/dist/esm/router/dashboard/account/mfa/RecoveryCodesRegenerator.d.ts.map +1 -0
  745. package/dist/esm/router/dashboard/account/mfa/RecoveryCodesRegenerator.js +48 -0
  746. package/dist/esm/router/dashboard/account/mfa/RecoveryCodesRegenerator.js.map +1 -0
  747. package/dist/esm/router/dashboard/account/mfa/TotpProcess.d.ts +2 -1
  748. package/dist/esm/router/dashboard/account/mfa/TotpProcess.d.ts.map +1 -1
  749. package/dist/esm/router/dashboard/account/mfa/TotpProcess.js +15 -6
  750. package/dist/esm/router/dashboard/account/mfa/TotpProcess.js.map +1 -1
  751. package/dist/esm/router/dashboard/account/mfa/WebauthnProcess.d.ts +2 -1
  752. package/dist/esm/router/dashboard/account/mfa/WebauthnProcess.d.ts.map +1 -1
  753. package/dist/esm/router/dashboard/account/mfa/WebauthnProcess.js +20 -7
  754. package/dist/esm/router/dashboard/account/mfa/WebauthnProcess.js.map +1 -1
  755. package/dist/esm/router/dashboard/account/screen.d.ts.map +1 -1
  756. package/dist/esm/router/dashboard/account/screen.js +6 -4
  757. package/dist/esm/router/dashboard/account/screen.js.map +1 -1
  758. package/dist/esm/router/dashboard/account/sessions/Sessions.d.ts.map +1 -1
  759. package/dist/esm/router/dashboard/account/sessions/Sessions.js +4 -1
  760. package/dist/esm/router/dashboard/account/sessions/Sessions.js.map +1 -1
  761. package/dist/esm/router/dashboard/account/sessions/columns.d.ts +5 -1
  762. package/dist/esm/router/dashboard/account/sessions/columns.d.ts.map +1 -1
  763. package/dist/esm/router/dashboard/account/sessions/columns.js +7 -7
  764. package/dist/esm/router/dashboard/account/sessions/columns.js.map +1 -1
  765. package/dist/esm/router/dashboard/account/sessions/delete.d.ts +1 -1
  766. package/dist/esm/router/dashboard/account/sessions/delete.d.ts.map +1 -1
  767. package/dist/esm/router/dashboard/account/sessions/delete.js +35 -28
  768. package/dist/esm/router/dashboard/account/sessions/delete.js.map +1 -1
  769. package/dist/esm/router/dashboard/debugging/api-routes/ApiTest.d.ts.map +1 -0
  770. package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/ApiTest.js +13 -11
  771. package/dist/esm/router/dashboard/debugging/api-routes/ApiTest.js.map +1 -0
  772. package/dist/esm/router/dashboard/debugging/api-routes/CodeBlock.d.ts.map +1 -0
  773. package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/CodeBlock.js +1 -1
  774. package/dist/esm/router/dashboard/debugging/api-routes/CodeBlock.js.map +1 -0
  775. package/dist/esm/router/dashboard/debugging/api-routes/EditableCodeBlock.d.ts.map +1 -0
  776. package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/EditableCodeBlock.js +1 -1
  777. package/dist/esm/router/dashboard/debugging/api-routes/EditableCodeBlock.js.map +1 -0
  778. package/dist/esm/router/dashboard/debugging/api-routes/SchemaViewer.d.ts +4 -0
  779. package/dist/esm/router/dashboard/debugging/api-routes/SchemaViewer.d.ts.map +1 -0
  780. package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/SchemaViewer.js +12 -6
  781. package/dist/esm/router/dashboard/debugging/api-routes/SchemaViewer.js.map +1 -0
  782. package/dist/esm/router/dashboard/debugging/api-routes/index.d.ts.map +1 -0
  783. package/dist/esm/router/dashboard/debugging/api-routes/index.js.map +1 -0
  784. package/dist/esm/router/dashboard/debugging/api-routes/screen.d.ts.map +1 -0
  785. package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/screen.js +2 -2
  786. package/dist/esm/router/dashboard/debugging/api-routes/screen.js.map +1 -0
  787. package/dist/esm/router/dashboard/debugging/api-routes/shared.d.ts.map +1 -0
  788. package/dist/esm/router/dashboard/debugging/api-routes/shared.js.map +1 -0
  789. package/dist/esm/router/dashboard/debugging/api-routes/test.d.ts.map +1 -0
  790. package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/test.js +3 -3
  791. package/dist/esm/router/dashboard/debugging/api-routes/test.js.map +1 -0
  792. package/dist/esm/router/dashboard/debugging/api-routes/tour.d.ts +3 -0
  793. package/dist/esm/router/dashboard/debugging/api-routes/tour.d.ts.map +1 -0
  794. package/dist/esm/router/dashboard/debugging/api-routes/tour.js.map +1 -0
  795. package/dist/esm/router/dashboard/debugging/index.d.ts +2 -0
  796. package/dist/esm/router/dashboard/debugging/index.d.ts.map +1 -0
  797. package/dist/esm/router/dashboard/debugging/index.js +2 -0
  798. package/dist/esm/router/dashboard/debugging/index.js.map +1 -0
  799. package/dist/esm/router/dashboard/debugging/logs/index.d.ts +2 -0
  800. package/dist/esm/router/dashboard/debugging/logs/index.d.ts.map +1 -0
  801. package/dist/esm/router/dashboard/debugging/logs/index.js +2 -0
  802. package/dist/esm/router/dashboard/debugging/logs/index.js.map +1 -0
  803. package/dist/esm/router/dashboard/debugging/logs/screen.d.ts +2 -0
  804. package/dist/esm/router/dashboard/debugging/logs/screen.d.ts.map +1 -0
  805. package/dist/esm/router/dashboard/debugging/logs/screen.js +163 -0
  806. package/dist/esm/router/dashboard/debugging/logs/screen.js.map +1 -0
  807. package/dist/esm/router/dashboard/debugging/screen.d.ts +2 -0
  808. package/dist/esm/router/dashboard/debugging/screen.d.ts.map +1 -0
  809. package/dist/esm/router/dashboard/debugging/screen.js +37 -0
  810. package/dist/esm/router/dashboard/debugging/screen.js.map +1 -0
  811. package/dist/esm/router/dashboard/debugging/security/index.d.ts +2 -0
  812. package/dist/esm/router/dashboard/debugging/security/index.d.ts.map +1 -0
  813. package/dist/esm/router/dashboard/debugging/security/index.js +2 -0
  814. package/dist/esm/router/dashboard/debugging/security/index.js.map +1 -0
  815. package/dist/esm/router/dashboard/debugging/security/screen.d.ts +2 -0
  816. package/dist/esm/router/dashboard/debugging/security/screen.d.ts.map +1 -0
  817. package/dist/esm/router/dashboard/debugging/security/screen.js +54 -0
  818. package/dist/esm/router/dashboard/debugging/security/screen.js.map +1 -0
  819. package/dist/esm/router/dashboard/debugging/tour.d.ts +14 -0
  820. package/dist/esm/router/dashboard/debugging/tour.d.ts.map +1 -0
  821. package/dist/esm/router/dashboard/debugging/tour.js +30 -0
  822. package/dist/esm/router/dashboard/debugging/tour.js.map +1 -0
  823. package/dist/esm/router/dashboard/media/screen.d.ts.map +1 -1
  824. package/dist/esm/router/dashboard/media/screen.js +1 -1
  825. package/dist/esm/router/dashboard/media/screen.js.map +1 -1
  826. package/dist/esm/router/dashboard/screen.d.ts.map +1 -1
  827. package/dist/esm/router/dashboard/screen.js +90 -7
  828. package/dist/esm/router/dashboard/screen.js.map +1 -1
  829. package/dist/esm/router/dashboard/settings/languages/columns.d.ts +5 -1
  830. package/dist/esm/router/dashboard/settings/languages/columns.d.ts.map +1 -1
  831. package/dist/esm/router/dashboard/settings/languages/columns.js +13 -7
  832. package/dist/esm/router/dashboard/settings/languages/columns.js.map +1 -1
  833. package/dist/esm/router/dashboard/settings/languages/create.d.ts.map +1 -1
  834. package/dist/esm/router/dashboard/settings/languages/create.js +3 -1
  835. package/dist/esm/router/dashboard/settings/languages/create.js.map +1 -1
  836. package/dist/esm/router/dashboard/settings/languages/delete.d.ts +1 -1
  837. package/dist/esm/router/dashboard/settings/languages/delete.d.ts.map +1 -1
  838. package/dist/esm/router/dashboard/settings/languages/delete.js +37 -27
  839. package/dist/esm/router/dashboard/settings/languages/delete.js.map +1 -1
  840. package/dist/esm/router/dashboard/settings/languages/edit.d.ts.map +1 -1
  841. package/dist/esm/router/dashboard/settings/languages/edit.js +3 -1
  842. package/dist/esm/router/dashboard/settings/languages/edit.js.map +1 -1
  843. package/dist/esm/router/dashboard/settings/languages/editForm.d.ts.map +1 -1
  844. package/dist/esm/router/dashboard/settings/languages/editForm.js +8 -6
  845. package/dist/esm/router/dashboard/settings/languages/editForm.js.map +1 -1
  846. package/dist/esm/router/dashboard/settings/languages/screen.d.ts.map +1 -1
  847. package/dist/esm/router/dashboard/settings/languages/screen.js +5 -2
  848. package/dist/esm/router/dashboard/settings/languages/screen.js.map +1 -1
  849. package/dist/esm/router/dashboard/settings/literals/screen.d.ts.map +1 -1
  850. package/dist/esm/router/dashboard/settings/literals/screen.js +24 -8
  851. package/dist/esm/router/dashboard/settings/literals/screen.js.map +1 -1
  852. package/dist/esm/router/dashboard/settings/redirects/columns.d.ts +5 -1
  853. package/dist/esm/router/dashboard/settings/redirects/columns.d.ts.map +1 -1
  854. package/dist/esm/router/dashboard/settings/redirects/columns.js +31 -16
  855. package/dist/esm/router/dashboard/settings/redirects/columns.js.map +1 -1
  856. package/dist/esm/router/dashboard/settings/redirects/screen.d.ts.map +1 -1
  857. package/dist/esm/router/dashboard/settings/redirects/screen.js +38 -24
  858. package/dist/esm/router/dashboard/settings/redirects/screen.js.map +1 -1
  859. package/dist/esm/router/dashboard/settings/review-policies/index.d.ts +2 -0
  860. package/dist/esm/router/dashboard/settings/review-policies/index.d.ts.map +1 -0
  861. package/dist/esm/router/dashboard/settings/review-policies/index.js +2 -0
  862. package/dist/esm/router/dashboard/settings/review-policies/index.js.map +1 -0
  863. package/dist/esm/router/dashboard/settings/review-policies/screen.d.ts +2 -0
  864. package/dist/esm/router/dashboard/settings/review-policies/screen.d.ts.map +1 -0
  865. package/dist/esm/router/dashboard/settings/review-policies/screen.js +110 -0
  866. package/dist/esm/router/dashboard/settings/review-policies/screen.js.map +1 -0
  867. package/dist/esm/router/dashboard/settings/robots/columns.d.ts +5 -1
  868. package/dist/esm/router/dashboard/settings/robots/columns.d.ts.map +1 -1
  869. package/dist/esm/router/dashboard/settings/robots/columns.js +8 -8
  870. package/dist/esm/router/dashboard/settings/robots/columns.js.map +1 -1
  871. package/dist/esm/router/dashboard/settings/robots/screen.d.ts.map +1 -1
  872. package/dist/esm/router/dashboard/settings/robots/screen.js +34 -23
  873. package/dist/esm/router/dashboard/settings/robots/screen.js.map +1 -1
  874. package/dist/esm/router/dashboard/settings/routes/columns.d.ts +5 -1
  875. package/dist/esm/router/dashboard/settings/routes/columns.d.ts.map +1 -1
  876. package/dist/esm/router/dashboard/settings/routes/columns.js +10 -10
  877. package/dist/esm/router/dashboard/settings/routes/columns.js.map +1 -1
  878. package/dist/esm/router/dashboard/settings/routes/edit.d.ts.map +1 -1
  879. package/dist/esm/router/dashboard/settings/routes/edit.js +4 -2
  880. package/dist/esm/router/dashboard/settings/routes/edit.js.map +1 -1
  881. package/dist/esm/router/dashboard/settings/routes/editForm.d.ts.map +1 -1
  882. package/dist/esm/router/dashboard/settings/routes/editForm.js +7 -5
  883. package/dist/esm/router/dashboard/settings/routes/editForm.js.map +1 -1
  884. package/dist/esm/router/dashboard/settings/routes/paths/columns.d.ts +6 -1
  885. package/dist/esm/router/dashboard/settings/routes/paths/columns.d.ts.map +1 -1
  886. package/dist/esm/router/dashboard/settings/routes/paths/columns.js +6 -6
  887. package/dist/esm/router/dashboard/settings/routes/paths/columns.js.map +1 -1
  888. package/dist/esm/router/dashboard/settings/routes/paths/screen.d.ts.map +1 -1
  889. package/dist/esm/router/dashboard/settings/routes/paths/screen.js +27 -17
  890. package/dist/esm/router/dashboard/settings/routes/paths/screen.js.map +1 -1
  891. package/dist/esm/router/dashboard/settings/routes/screen.d.ts.map +1 -1
  892. package/dist/esm/router/dashboard/settings/routes/screen.js +12 -9
  893. package/dist/esm/router/dashboard/settings/routes/screen.js.map +1 -1
  894. package/dist/esm/router/dashboard/settings/screen.d.ts.map +1 -1
  895. package/dist/esm/router/dashboard/settings/screen.js +22 -10
  896. package/dist/esm/router/dashboard/settings/screen.js.map +1 -1
  897. package/dist/esm/router/dashboard/settings/seo/screen.d.ts.map +1 -1
  898. package/dist/esm/router/dashboard/settings/seo/screen.js +6 -4
  899. package/dist/esm/router/dashboard/settings/seo/screen.js.map +1 -1
  900. package/dist/esm/router/dashboard/settings/system/screen.d.ts.map +1 -1
  901. package/dist/esm/router/dashboard/settings/system/screen.js +21 -6
  902. package/dist/esm/router/dashboard/settings/system/screen.js.map +1 -1
  903. package/dist/esm/router/dashboard/settings/user-roles/columns.d.ts +5 -1
  904. package/dist/esm/router/dashboard/settings/user-roles/columns.d.ts.map +1 -1
  905. package/dist/esm/router/dashboard/settings/user-roles/columns.js +4 -4
  906. package/dist/esm/router/dashboard/settings/user-roles/columns.js.map +1 -1
  907. package/dist/esm/router/dashboard/settings/user-roles/delete.d.ts +1 -1
  908. package/dist/esm/router/dashboard/settings/user-roles/delete.d.ts.map +1 -1
  909. package/dist/esm/router/dashboard/settings/user-roles/delete.js +34 -26
  910. package/dist/esm/router/dashboard/settings/user-roles/delete.js.map +1 -1
  911. package/dist/esm/router/dashboard/settings/user-roles/edit.d.ts.map +1 -1
  912. package/dist/esm/router/dashboard/settings/user-roles/edit.js +9 -6
  913. package/dist/esm/router/dashboard/settings/user-roles/edit.js.map +1 -1
  914. package/dist/esm/router/dashboard/settings/user-roles/screen.d.ts.map +1 -1
  915. package/dist/esm/router/dashboard/settings/user-roles/screen.js +21 -3
  916. package/dist/esm/router/dashboard/settings/user-roles/screen.js.map +1 -1
  917. package/dist/esm/router/dashboard/users/columns.d.ts +5 -1
  918. package/dist/esm/router/dashboard/users/columns.d.ts.map +1 -1
  919. package/dist/esm/router/dashboard/users/columns.js +8 -8
  920. package/dist/esm/router/dashboard/users/columns.js.map +1 -1
  921. package/dist/esm/router/dashboard/users/create.d.ts.map +1 -1
  922. package/dist/esm/router/dashboard/users/create.js +3 -1
  923. package/dist/esm/router/dashboard/users/create.js.map +1 -1
  924. package/dist/esm/router/dashboard/users/delete.d.ts +1 -1
  925. package/dist/esm/router/dashboard/users/delete.d.ts.map +1 -1
  926. package/dist/esm/router/dashboard/users/delete.js +34 -26
  927. package/dist/esm/router/dashboard/users/delete.js.map +1 -1
  928. package/dist/esm/router/dashboard/users/edit.d.ts.map +1 -1
  929. package/dist/esm/router/dashboard/users/edit.js +3 -1
  930. package/dist/esm/router/dashboard/users/edit.js.map +1 -1
  931. package/dist/esm/router/dashboard/users/editForm.d.ts +1 -1
  932. package/dist/esm/router/dashboard/users/editForm.d.ts.map +1 -1
  933. package/dist/esm/router/dashboard/users/editForm.js +12 -10
  934. package/dist/esm/router/dashboard/users/editForm.js.map +1 -1
  935. package/dist/esm/router/dashboard/users/screen.d.ts.map +1 -1
  936. package/dist/esm/router/dashboard/users/screen.js +26 -3
  937. package/dist/esm/router/dashboard/users/screen.js.map +1 -1
  938. package/dist/esm/router/login/callback.d.ts +7 -0
  939. package/dist/esm/router/login/callback.d.ts.map +1 -0
  940. package/dist/esm/router/login/callback.js +39 -0
  941. package/dist/esm/router/login/callback.js.map +1 -0
  942. package/dist/esm/router/login/index.d.ts +1 -0
  943. package/dist/esm/router/login/index.d.ts.map +1 -1
  944. package/dist/esm/router/login/index.js +1 -0
  945. package/dist/esm/router/login/index.js.map +1 -1
  946. package/dist/esm/router/login/screen.d.ts +5 -1
  947. package/dist/esm/router/login/screen.d.ts.map +1 -1
  948. package/dist/esm/router/login/screen.js +2 -2
  949. package/dist/esm/router/login/screen.js.map +1 -1
  950. package/dist/esm/router/mfa/recovery-code.d.ts +6 -0
  951. package/dist/esm/router/mfa/recovery-code.d.ts.map +1 -0
  952. package/dist/esm/router/mfa/recovery-code.js +42 -0
  953. package/dist/esm/router/mfa/recovery-code.js.map +1 -0
  954. package/dist/esm/router/mfa/screen.d.ts.map +1 -1
  955. package/dist/esm/router/mfa/screen.js +11 -2
  956. package/dist/esm/router/mfa/screen.js.map +1 -1
  957. package/dist/esm/router/mfa/totp.d.ts.map +1 -1
  958. package/dist/esm/router/mfa/totp.js +5 -3
  959. package/dist/esm/router/mfa/totp.js.map +1 -1
  960. package/dist/esm/router/mfa/webauthnn.d.ts.map +1 -1
  961. package/dist/esm/router/mfa/webauthnn.js +6 -4
  962. package/dist/esm/router/mfa/webauthnn.js.map +1 -1
  963. package/dist/esm/router/password-recovery/index.d.ts +2 -0
  964. package/dist/esm/router/password-recovery/index.d.ts.map +1 -0
  965. package/dist/esm/router/password-recovery/index.js +2 -0
  966. package/dist/esm/router/password-recovery/index.js.map +1 -0
  967. package/dist/esm/router/password-recovery/screen.d.ts +5 -0
  968. package/dist/esm/router/password-recovery/screen.d.ts.map +1 -0
  969. package/dist/esm/router/password-recovery/screen.js +98 -0
  970. package/dist/esm/router/password-recovery/screen.js.map +1 -0
  971. package/dist/esm/router/shared/route-definitions.d.ts +21 -2
  972. package/dist/esm/router/shared/route-definitions.d.ts.map +1 -1
  973. package/dist/esm/router/shared/route-list.d.ts +1 -1
  974. package/dist/esm/router/shared/route-list.d.ts.map +1 -1
  975. package/dist/esm/router/shared/route-list.js +98 -6
  976. package/dist/esm/router/shared/route-list.js.map +1 -1
  977. package/dist/esm/router/shared/route-renderer.d.ts.map +1 -1
  978. package/dist/esm/router/shared/route-renderer.js +6 -3
  979. package/dist/esm/router/shared/route-renderer.js.map +1 -1
  980. package/dist/esm/router/shared/types.d.ts +37 -5
  981. package/dist/esm/router/shared/types.d.ts.map +1 -1
  982. package/dist/esm/seo/defaults.d.ts +19 -0
  983. package/dist/esm/seo/defaults.d.ts.map +1 -0
  984. package/dist/esm/seo/defaults.js +15 -0
  985. package/dist/esm/seo/defaults.js.map +1 -0
  986. package/dist/esm/seo/index.d.ts +2 -0
  987. package/dist/esm/seo/index.d.ts.map +1 -0
  988. package/dist/esm/seo/index.js +2 -0
  989. package/dist/esm/seo/index.js.map +1 -0
  990. package/dist/esm/state/language.d.ts +0 -2
  991. package/dist/esm/state/language.d.ts.map +1 -1
  992. package/dist/esm/state/language.js +8 -27
  993. package/dist/esm/state/language.js.map +1 -1
  994. package/dist/esm/state/theme-script.d.ts +9 -0
  995. package/dist/esm/state/theme-script.d.ts.map +1 -0
  996. package/dist/esm/state/theme-script.js +24 -0
  997. package/dist/esm/state/theme-script.js.map +1 -0
  998. package/dist/esm/state/theme.d.ts +4 -7
  999. package/dist/esm/state/theme.d.ts.map +1 -1
  1000. package/dist/esm/state/theme.js +17 -32
  1001. package/dist/esm/state/theme.js.map +1 -1
  1002. package/dist/esm/state/users.d.ts +15 -0
  1003. package/dist/esm/state/users.d.ts.map +1 -0
  1004. package/dist/esm/state/users.js +42 -0
  1005. package/dist/esm/state/users.js.map +1 -0
  1006. package/dist/styles.css +416 -128
  1007. package/dist/styles.css.d.ts +3 -3
  1008. package/dist/tsconfig.build.tsbuildinfo +1 -1
  1009. package/package.json +216 -192
  1010. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.js +0 -14
  1011. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.js.map +0 -1
  1012. package/dist/cjs/router/dashboard/api-routes/ApiTest.js.map +0 -1
  1013. package/dist/cjs/router/dashboard/api-routes/CodeBlock.js.map +0 -1
  1014. package/dist/cjs/router/dashboard/api-routes/EditableCodeBlock.js.map +0 -1
  1015. package/dist/cjs/router/dashboard/api-routes/SchemaViewer.js.map +0 -1
  1016. package/dist/cjs/router/dashboard/api-routes/index.js.map +0 -1
  1017. package/dist/cjs/router/dashboard/api-routes/screen.js.map +0 -1
  1018. package/dist/cjs/router/dashboard/api-routes/shared.js.map +0 -1
  1019. package/dist/cjs/router/dashboard/api-routes/test.js.map +0 -1
  1020. package/dist/cjs/router/dashboard/api-routes/tour.js.map +0 -1
  1021. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.d.ts +0 -2
  1022. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.d.ts.map +0 -1
  1023. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.js +0 -10
  1024. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.js.map +0 -1
  1025. package/dist/esm/router/dashboard/api-routes/ApiTest.d.ts.map +0 -1
  1026. package/dist/esm/router/dashboard/api-routes/ApiTest.js.map +0 -1
  1027. package/dist/esm/router/dashboard/api-routes/CodeBlock.d.ts.map +0 -1
  1028. package/dist/esm/router/dashboard/api-routes/CodeBlock.js.map +0 -1
  1029. package/dist/esm/router/dashboard/api-routes/EditableCodeBlock.d.ts.map +0 -1
  1030. package/dist/esm/router/dashboard/api-routes/EditableCodeBlock.js.map +0 -1
  1031. package/dist/esm/router/dashboard/api-routes/SchemaViewer.d.ts +0 -4
  1032. package/dist/esm/router/dashboard/api-routes/SchemaViewer.d.ts.map +0 -1
  1033. package/dist/esm/router/dashboard/api-routes/SchemaViewer.js.map +0 -1
  1034. package/dist/esm/router/dashboard/api-routes/index.d.ts.map +0 -1
  1035. package/dist/esm/router/dashboard/api-routes/index.js.map +0 -1
  1036. package/dist/esm/router/dashboard/api-routes/screen.d.ts.map +0 -1
  1037. package/dist/esm/router/dashboard/api-routes/screen.js.map +0 -1
  1038. package/dist/esm/router/dashboard/api-routes/shared.d.ts.map +0 -1
  1039. package/dist/esm/router/dashboard/api-routes/shared.js.map +0 -1
  1040. package/dist/esm/router/dashboard/api-routes/test.d.ts.map +0 -1
  1041. package/dist/esm/router/dashboard/api-routes/test.js.map +0 -1
  1042. package/dist/esm/router/dashboard/api-routes/tour.d.ts +0 -3
  1043. package/dist/esm/router/dashboard/api-routes/tour.d.ts.map +0 -1
  1044. package/dist/esm/router/dashboard/api-routes/tour.js.map +0 -1
  1045. /package/dist/cjs/router/dashboard/{api-routes → debugging/api-routes}/index.js +0 -0
  1046. /package/dist/cjs/router/dashboard/{api-routes → debugging/api-routes}/shared.js +0 -0
  1047. /package/dist/cjs/router/dashboard/{api-routes → debugging/api-routes}/tour.js +0 -0
  1048. /package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/ApiTest.d.ts +0 -0
  1049. /package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/CodeBlock.d.ts +0 -0
  1050. /package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/EditableCodeBlock.d.ts +0 -0
  1051. /package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/index.d.ts +0 -0
  1052. /package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/index.js +0 -0
  1053. /package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/screen.d.ts +0 -0
  1054. /package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/shared.d.ts +0 -0
  1055. /package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/shared.js +0 -0
  1056. /package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/test.d.ts +0 -0
  1057. /package/dist/esm/router/dashboard/{api-routes → debugging/api-routes}/tour.js +0 -0
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { ChevronsUpDown, Languages, Shield } from 'lucide-react';
3
+ import { ChevronsUpDown, Languages } from 'lucide-react';
4
4
  import { useQuery } from '@tanstack/react-query';
5
5
  import { forwardRef, useCallback, useImperativeHandle, useMemo, useRef, useState } from 'react';
6
6
  import BooleanField from './_fields/BooleanField/index.js';
@@ -17,7 +17,8 @@ import { evaluateFieldCondition } from './_fields/shared/condition.js';
17
17
  import { ConditionFieldStateProvider, mergeConditionFieldState, } from './_fields/shared/condition-state.js';
18
18
  import { errorStyle } from './edit.styles.js';
19
19
  import { Card, CardContent, CardHeader, CardTitle } from '../../../../components/ui/card.js';
20
- import { decodeCamelCase } from '../../../../helpers/decodeCamelCase.js';
20
+ import { translateFieldLabel, useTranslations } from '../../../../i18n/index.js';
21
+ import { cn } from '../../../../lib/utils.js';
21
22
  import { useEditErrorStore } from '../../../../hooks/app-store.js';
22
23
  import { Collapsible, CollapsibleContent, CollapsibleTrigger } from '../../../../components/ui/collapsible.js';
23
24
  import { Button } from '../../../../components/ui/button.js';
@@ -27,6 +28,7 @@ import { Tooltip, TooltipContent, TooltipTrigger } from '../../../../components/
27
28
  import { DynamicDataControl, isDynamicFallbackRequired, isDynamicFieldEnabled, } from './_fields/DynamicDataControl.js';
28
29
  import { useManagerPlugins, } from '../../../../plugins.js';
29
30
  import MissingUI from './_fields/Missing.js';
31
+ const REQUIRED_MARK = '*';
30
32
  const defaultDataExtractor = (fieldName, defaultData) => {
31
33
  if (!defaultData) {
32
34
  return undefined;
@@ -34,6 +36,15 @@ const defaultDataExtractor = (fieldName, defaultData) => {
34
36
  return defaultData[fieldName];
35
37
  };
36
38
  const FieldMetaIcon = ({ label, children }) => (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { "aria-label": label, className: "inline-flex size-4 shrink-0 items-center justify-center rounded-sm text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", tabIndex: 0, children: children }) }), _jsx(TooltipContent, { side: "top", sideOffset: 6, children: label })] }));
39
+ const FieldLabel = ({ fieldName, isRequired, className, }) => {
40
+ const t = useTranslations();
41
+ const label = translateFieldLabel(t, fieldName);
42
+ return (_jsxs("span", { className: cn('flex min-w-0 items-center gap-1', className), children: [_jsx("span", { className: "truncate", children: label }), isRequired ? (_jsx("span", { "aria-label": t('contentEdit.requiredField'), className: "shrink-0 text-2xl font-bold leading-none text-destructive", title: t('contentEdit.requiredField'), children: REQUIRED_MARK })) : null] }));
43
+ };
44
+ const FieldTags = ({ isTranslatable, children, }) => {
45
+ const t = useTranslations();
46
+ return (_jsxs("div", { className: "flex min-w-0 shrink-0 items-center gap-2", children: [children, isTranslatable ? (_jsx(FieldMetaIcon, { label: t('contentEdit.translatableField'), children: _jsx(Languages, { "aria-hidden": "true", size: 16 }) })) : null] }));
47
+ };
37
48
  export const fieldsMap = {
38
49
  String: StringField,
39
50
  Relation: RelationField,
@@ -48,8 +59,16 @@ export const fieldsMap = {
48
59
  };
49
60
  export function useArrayRefs() {
50
61
  const refs = useRef([]);
51
- const setRef = (index) => (el) => {
52
- refs.current[index] = el;
62
+ const setters = useRef([]);
63
+ const setRef = (index) => {
64
+ const cached = setters.current[index];
65
+ if (cached)
66
+ return cached;
67
+ const setter = (el) => {
68
+ refs.current[index] = el;
69
+ };
70
+ setters.current[index] = setter;
71
+ return setter;
53
72
  };
54
73
  return { refs, setRef };
55
74
  }
@@ -82,6 +101,7 @@ const cleanBindings = (bindings) => {
82
101
  return fields || lists ? { fields, lists } : undefined;
83
102
  };
84
103
  const ContentTypeEdit = forwardRef((props, ref) => {
104
+ const t = useTranslations();
85
105
  const { contentType, id, collapsible, hideTitle } = props;
86
106
  const dynamicSourceContentType = props.parentContentType ?? contentType;
87
107
  const trpc = useTRPC();
@@ -127,7 +147,7 @@ const ContentTypeEdit = forwardRef((props, ref) => {
127
147
  return [fieldName, refs.current[i]?.getValue()];
128
148
  }));
129
149
  if (Object.values(values).some(hasNestedError)) {
130
- const _error = 'Please fix the errors above';
150
+ const _error = t('contentEdit.formFixErrors');
131
151
  addError(id, _error);
132
152
  return { _error };
133
153
  }
@@ -149,10 +169,7 @@ const ContentTypeEdit = forwardRef((props, ref) => {
149
169
  return bindings ? { ...states, _bindings: bindings } : states;
150
170
  },
151
171
  }), [addError, allItems, contentType.name, dynamicBindings, formState, id, visibleFieldNames]);
152
- return (_jsx(ConditionFieldStateProvider, { value: {
153
- fieldState: conditionFieldState,
154
- onFieldStateChange: handleFieldStateChange,
155
- }, children: _jsx("div", { className: "flex flex-1 flex-col gap-8 mx-auto w-full h-full", children: allItems.map(([fieldName, fieldValue], i) => {
172
+ return (_jsx(ConditionFieldStateProvider, { fieldState: conditionFieldState, onFieldStateChange: handleFieldStateChange, children: _jsx("div", { className: "flex flex-1 flex-col gap-8 mx-auto w-full h-full", children: allItems.map(([fieldName, fieldValue], i) => {
156
173
  const isVisible = visibleFieldNames.has(fieldName);
157
174
  const description = getFieldDescription(fieldValue);
158
175
  if (!isVisible) {
@@ -167,7 +184,7 @@ const ContentTypeEdit = forwardRef((props, ref) => {
167
184
  const dynamicBinding = fieldValue.config.ui === 'List' || fieldValue.config.ui === 'Iterator'
168
185
  ? dynamicBindings?.lists?.[fieldName]
169
186
  : dynamicBindings?.fields?.[fieldName];
170
- const dynamicFallbackPlaceholder = showDynamicData && dynamicBinding ? 'Fallback value' : undefined;
187
+ const dynamicFallbackPlaceholder = showDynamicData && dynamicBinding ? t('contentEdit.fallbackValue') : undefined;
171
188
  const field = FieldComponent ? (_jsx(FieldComponent, { id: id + '.' + fieldName, ref: setRef(i), ...fieldValue, isRequired: isDynamicFallbackRequired(fieldValue, dynamicBinding), defaultData: defaultDataExtractor(fieldName, props.defaultData), dynamicFallbackPlaceholder: dynamicFallbackPlaceholder, parentContentType: dynamicSourceContentType })) : (_jsx(MissingUI, { field: fieldValue.config }));
172
189
  const dynamicOpen = dynamicEditorOpen === fieldName;
173
190
  const setDynamicOpen = (open) => setDynamicEditorOpen(open ? fieldName : null);
@@ -179,14 +196,13 @@ const ContentTypeEdit = forwardRef((props, ref) => {
179
196
  setDynamicBindings(bindings);
180
197
  removeRelatedErrors(`${id}.${fieldName}`);
181
198
  }, open: dynamicOpen, onOpenChange: setDynamicOpen, mode: "dialog" })) : null;
182
- const Tags = ({ children }) => (_jsxs("div", { className: "flex min-w-0 shrink-0 items-center gap-2", children: [children, fieldValue.isTranslatable ? (_jsx(FieldMetaIcon, { label: "Translatable field", children: _jsx(Languages, { "aria-hidden": "true", size: 16 }) })) : null, fieldValue.isRequired ? (_jsx(FieldMetaIcon, { label: "Required field", children: _jsx(Shield, { "aria-hidden": "true", size: 16 }) })) : null] }));
183
199
  const canCollapse = fieldValue.config.ui === 'ContentType' &&
184
200
  fieldValue.only === 'new' &&
185
201
  collapsible;
186
202
  if (canCollapse) {
187
- return (_jsx(Collapsible, { defaultOpen: true, children: _jsxs(Card, { className: errorStyle({ error: !!error }), children: [_jsxs(CardHeader, { className: "gap-0", children: [_jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsx(CollapsibleTrigger, { asChild: true, children: _jsx("button", { type: "button", className: "min-w-0 flex-1 cursor-pointer text-left", children: _jsxs(CardTitle, { className: "flex min-w-0 items-center gap-2", children: [_jsx(Button, { variant: "ghost", size: "icon", className: "size-8", asChild: true, children: _jsxs("span", { children: [_jsx(ChevronsUpDown, {}), _jsx("span", { className: "sr-only", children: "Toggle" })] }) }), _jsx("span", { className: "truncate", children: decodeCamelCase(fieldName) })] }) }) }), _jsx(Tags, { children: dynamicTrigger })] }), dynamicDialog] }), _jsx(CollapsibleContent, { forceMount: true, className: "data-[state=closed]:hidden", children: _jsx(CardContent, { children: field }) })] }) }, fieldName));
203
+ return (_jsx(Collapsible, { defaultOpen: true, children: _jsxs(Card, { className: errorStyle({ error: !!error }), children: [_jsxs(CardHeader, { className: "gap-0", children: [_jsxs("div", { className: "flex items-center justify-between gap-3", children: [_jsx(CollapsibleTrigger, { asChild: true, children: _jsx("button", { type: "button", className: "min-w-0 flex-1 cursor-pointer text-left", children: _jsxs(CardTitle, { className: "flex min-w-0 items-center gap-2", children: [_jsx(Button, { variant: "ghost", size: "icon", className: "size-8", asChild: true, children: _jsxs("span", { children: [_jsx(ChevronsUpDown, {}), _jsx("span", { className: "sr-only", children: t('common.toggle') })] }) }), _jsx(FieldLabel, { fieldName: fieldName, isRequired: fieldValue.isRequired })] }) }) }), _jsx(FieldTags, { isTranslatable: fieldValue.isTranslatable, children: dynamicTrigger })] }), dynamicDialog] }), _jsx(CollapsibleContent, { forceMount: true, className: "data-[state=closed]:hidden", children: _jsx(CardContent, { children: field }) })] }) }, fieldName));
188
204
  }
189
- return (_jsxs("div", { className: `${canCollapse ? 'bg-red-600' : ''}`, children: [hideTitle ? null : (_jsxs("div", { className: "mb-4 space-y-1", children: [_jsxs(CardTitle, { className: "flex items-center justify-between gap-3", children: [_jsx("span", { className: "min-w-0 truncate", children: decodeCamelCase(fieldName) }), _jsx(Tags, { children: dynamicTrigger })] }), description ? (_jsx("p", { className: "text-sm text-muted-foreground", children: description })) : null, dynamicDialog] })), field] }, fieldName));
205
+ return (_jsxs("div", { className: `${canCollapse ? 'bg-red-600' : ''}`, children: [hideTitle ? null : (_jsxs("div", { className: "mb-4 space-y-1", children: [_jsxs(CardTitle, { className: "flex items-center justify-between gap-3", children: [_jsx(FieldLabel, { fieldName: fieldName, isRequired: fieldValue.isRequired }), _jsx(FieldTags, { isTranslatable: fieldValue.isTranslatable, children: dynamicTrigger })] }), description ? (_jsx("p", { className: "text-sm text-muted-foreground", children: description })) : null, dynamicDialog] })), field] }, fieldName));
190
206
  }) }) }));
191
207
  });
192
208
  export default ContentTypeEdit;
@@ -1 +1 @@
1
- {"version":3,"file":"ContentTypeEdit.js","sourceRoot":"","sources":["../../../../../../src/router/dashboard/[contentType]/[edit]/ContentTypeEdit.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContentTypeEdit.js","sourceRoot":"","sources":["../../../../../../src/router/dashboard/[contentType]/[edit]/ContentTypeEdit.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAM/F,OAAO,YAAY,MAAM,wBAAwB,CAAA;AACjD,OAAO,qBAAqB,MAAM,iCAAiC,CAAA;AACnE,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,SAAS,MAAM,qBAAqB,CAAA;AAC3C,OAAO,SAAS,MAAM,qBAAqB,CAAA;AAC3C,OAAO,SAAS,MAAM,qBAAqB,CAAA;AAC3C,OAAO,WAAW,MAAM,uBAAuB,CAAA;AAC/C,OAAO,aAAa,MAAM,yBAAyB,CAAA;AACnD,OAAO,WAAW,MAAM,uBAAuB,CAAA;AAC/C,OAAO,WAAW,MAAM,kBAAkB,CAAA;AAE1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AACnE,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AACjG,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACjF,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACL,iBAAiB,GAElB,MAAM,WAAW,CAAA;AAClB,OAAO,SAAS,MAAM,mBAAmB,CAAA;AAEzC,MAAM,aAAa,GAAG,GAAG,CAAA;AAEzB,MAAM,oBAAoB,GAAG,CAAC,SAAiB,EAAE,WAAwC,EAAE,EAAE;IAC3F,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,OAAO,WAAW,CAAC,SAAS,CAAC,CAAA;AAC/B,CAAC,CAAA;AAaD,MAAM,aAAa,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAA0C,EAAE,EAAE,CAAC,CACrF,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBACrB,6BACc,KAAK,EACjB,SAAS,EAAC,kKAAkK,EAC5K,QAAQ,EAAE,CAAC,YAEV,QAAQ,GACJ,GACQ,EACjB,KAAC,cAAc,IAAC,IAAI,EAAC,KAAK,EAAC,UAAU,EAAE,CAAC,YACrC,KAAK,GACS,IACT,CACX,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,EAClB,SAAS,EACT,UAAU,EACV,SAAS,GAKV,EAAE,EAAE;IACH,MAAM,CAAC,GAAG,eAAe,EAAE,CAAA;IAC3B,MAAM,KAAK,GAAG,mBAAmB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;IAC/C,OAAO,CACL,gBAAM,SAAS,EAAE,EAAE,CAAC,iCAAiC,EAAE,SAAS,CAAC,aAC/D,eAAM,SAAS,EAAC,UAAU,YAAE,KAAK,GAAQ,EACxC,UAAU,CAAC,CAAC,CAAC,CACZ,6BACc,CAAC,CAAC,2BAA2B,CAAC,EAC1C,SAAS,EAAC,2DAA2D,EACrE,KAAK,EAAE,CAAC,CAAC,2BAA2B,CAAC,YAEpC,aAAa,GACT,CACR,CAAC,CAAC,CAAC,IAAI,IACH,CACR,CAAA;AACH,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,CAAC,EACjB,cAAc,EACd,QAAQ,GAIT,EAAE,EAAE;IACH,MAAM,CAAC,GAAG,eAAe,EAAE,CAAA;IAC3B,OAAO,CACL,eAAK,SAAS,EAAC,0CAA0C,aACtD,QAAQ,EACR,cAAc,CAAC,CAAC,CAAC,CAChB,KAAC,aAAa,IAAC,KAAK,EAAE,CAAC,CAAC,+BAA+B,CAAC,YACtD,KAAC,SAAS,mBAAa,MAAM,EAAC,IAAI,EAAE,EAAE,GAAI,GAC5B,CACjB,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,MAAM,EAAE,WAAW;IACnB,QAAQ,EAAE,aAAa;IACvB,MAAM,EAAE,WAAW;IACnB,OAAO,EAAE,YAAY;IACrB,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,WAAW;IACnB,IAAI,EAAE,SAAS;IACf,gBAAgB,EAAE,qBAAqB;CAGxC,CAAA;AAED,MAAM,UAAU,YAAY;IAC1B,MAAM,IAAI,GAAG,MAAM,CAAkB,EAAE,CAAC,CAAA;IACxC,MAAM,OAAO,GAAG,MAAM,CAA8C,EAAE,CAAC,CAAA;IAEvE,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrC,IAAI,MAAM;YAAE,OAAO,MAAM,CAAA;QAEzB,MAAM,MAAM,GAAG,CAAC,EAAY,EAAE,EAAE;YAC9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QAC1B,CAAC,CAAA;QACD,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,CAAA;QAC/B,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;AACzB,CAAC;AAID,MAAM,cAAc,GAAG,CAAC,KAAc,EAAW,EAAE;IACjD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IACrD,IAAI,QAAQ,IAAI,KAAK;QAAE,OAAO,IAAI,CAAA;IAClC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IAC3D,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;AAClD,CAAC,CAAA;AAED,MAAM,mBAAmB,GAAG,CAAC,UAA+B,EAAE,EAAE,CAC9D,OAAO,UAAU,CAAC,WAAW,KAAK,QAAQ,IAAI,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;IACpF,CAAC,CAAC,UAAU,CAAC,WAAW;IACxB,CAAC,CAAC,SAAS,CAAA;AAEf,MAAM,kBAAkB,GAAG,CACzB,WAAwC,EACH,EAAE,CACvC,WAAW,IAAI,WAAW,IAAI,WAAW;IACvC,CAAC,CAAE,WAAW,CAAC,SAAqC;IACpD,CAAC,CAAC,SAAS,CAAA;AAEf,MAAM,aAAa,GAAG,CACpB,QAA6C,EACR,EAAE;IACvC,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAA;IAE/B,MAAM,MAAM,GACV,QAAQ,CAAC,MAAM;QACf,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ;QACnC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC;QACrC,CAAC,CAAC,QAAQ,CAAC,MAAM;QACjB,CAAC,CAAC,SAAS,CAAA;IACf,MAAM,KAAK,GACT,QAAQ,CAAC,KAAK,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;QAC5F,CAAC,CAAC,QAAQ,CAAC,KAAK;QAChB,CAAC,CAAC,SAAS,CAAA;IAEf,OAAO,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;AACxD,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,UAAU,CAUhC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACf,MAAM,CAAC,GAAG,eAAe,EAAE,CAAA;IAC3B,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;IACzD,MAAM,wBAAwB,GAAG,KAAK,CAAC,iBAAiB,IAAI,WAAW,CAAA;IACvE,MAAM,IAAI,GAAG,OAAO,EAAE,CAAA;IACtB,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAA;IAC1C,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAA;IAErF,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,YAAY,EAAY,CAAA;IACjD,MAAM,MAAM,GAAG,iBAAiB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACzD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC7D,MAAM,mBAAmB,GAAG,iBAAiB,CAC3C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,mBAAmB,CACrC,CAAA;IACD,MAAM,qBAAqB,GAAG,OAAO,CACnC,GAAG,EAAE,CACH,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;QACjD,SAAS;QACT,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC;KACnD,CAAC,CACwB,EAC9B,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,CACxC,CAAA;IACD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAA;IACjE,MAAM,mBAAmB,GAAG,OAAO,CACjC,GAAG,EAAE,CACH,wBAAwB,CACtB,KAAK,CAAC,WAAkD,EACxD,SAAS,CACV,EACH,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,CAC/B,CAAA;IACD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CACpD,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC,CACtC,CAAA;IACD,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IAC/E,MAAM,QAAQ,GAAG,OAAO,CACtB,GAAG,EAAE,CACH,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM,CACvC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,KAAK,KAAK,CAAC,CACxD,EACH,CAAC,WAAW,CAAC,MAAM,CAAC,CACrB,CAAA;IACD,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CACH,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,sBAAsB,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,EAC9F,CAAC,QAAQ,EAAE,SAAS,CAAC,CACtB,CAAA;IACD,MAAM,iBAAiB,GAAG,OAAO,CAC/B,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAC3D,CAAC,YAAY,CAAC,CACf,CAAA;IACD,MAAM,sBAAsB,GAAG,WAAW,CACxC,CAAC,OAAe,EAAE,KAAc,EAAE,EAAE;QAClC,MAAM,MAAM,GAAG,GAAG,EAAE,GAAG,CAAA;QACvB,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;QAErF,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAM;QACR,CAAC;QAED,YAAY,CAAC,CAAC,QAAQ,EAAE,EAAE;YACxB,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;gBAC1C,OAAO,QAAQ,CAAA;YACjB,CAAC;YAED,OAAO;gBACL,GAAG,QAAQ;gBACX,CAAC,SAAS,CAAC,EAAE,KAAK;aACnB,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,EAAE,CAAC,CACL,CAAA;IAED,mBAAmB,CACjB,GAAG,EACH,GAAa,EAAE,CAAC,CAAC;QACf,QAAQ,EAAE,GAAG,EAAE;YACb,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAC/B,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC9B,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACtC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;gBAC1B,CAAC;gBAED,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;YACjD,CAAC,CAAC,CACH,CAAA;YAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC/C,MAAM,MAAM,GAAG,CAAC,CAAC,2BAA2B,CAAC,CAAA;gBAC7C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;gBACpB,OAAO,EAAE,MAAM,EAAE,CAAA;YACnB,CAAC;YAED,MAAM,QAAQ,GAAG,aAAa,CAAC,eAAe,CAAC,CAAA;YAE/C,OAAO;gBACL,GAAG,MAAM;gBACT,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5C,KAAK,EAAE,WAAW,CAAC,IAAI;aACxB,CAAA;QACH,CAAC;QACD,QAAQ,EAAE,GAAG,EAAE;YACb,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAC/B,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC9B,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACtC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAA;gBAC1C,CAAC;gBAED,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;YACjD,CAAC,CAAC,CACH,CAAA;YACD,MAAM,QAAQ,GAAG,aAAa,CAAC,eAAe,CAAC,CAAA;YAC/C,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;QAC/D,CAAC;KACF,CAAC,EACF,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAC1F,CAAA;IAED,OAAO,CACL,KAAC,2BAA2B,IAC1B,UAAU,EAAE,mBAAmB,EAC/B,kBAAkB,EAAE,sBAAsB,YAE1C,cAAK,SAAS,EAAC,kDAAkD,YAC9D,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC3C,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;gBAClD,MAAM,WAAW,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAA;gBAEnD,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,OAAO,IAAI,CAAA;gBACb,CAAC;gBAED,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,SAAS,CAAC,EAAE,KAAK,CAAA;gBACtE,MAAM,eAAe,GAAG,qBAAqB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;gBACtE,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAA;gBAC7C,MAAM,cAAc,GAAG,YAAY;oBACjC,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,YAAY,CAAC;oBAC3C,CAAC,CAAE,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAgC,CAAA;gBACrE,MAAM,cAAc,GAClB,UAAU,CAAC,MAAM,CAAC,EAAE,KAAK,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,KAAK,UAAU;oBACpE,CAAC,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC,SAAS,CAAC;oBACrC,CAAC,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,CAAA;gBAC1C,MAAM,0BAA0B,GAC9B,eAAe,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;gBAChF,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,CAC7B,KAAC,cAAc,IACb,EAAE,EAAE,EAAE,GAAG,GAAG,GAAG,SAAS,EACxB,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,KACV,UAAU,EACd,UAAU,EAAE,yBAAyB,CAAC,UAAU,EAAE,cAAc,CAAC,EACjE,WAAW,EAAE,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,EAC/D,0BAA0B,EAAE,0BAA0B,EACtD,iBAAiB,EAAE,wBAAwB,GAC3C,CACH,CAAC,CAAC,CAAC,CACF,KAAC,SAAS,IAAC,KAAK,EAAE,UAAU,CAAC,MAAM,GAAI,CACxC,CAAA;gBACD,MAAM,WAAW,GAAG,iBAAiB,KAAK,SAAS,CAAA;gBACnD,MAAM,cAAc,GAAG,CAAC,IAAa,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;gBACvF,MAAM,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CACvC,KAAC,kBAAkB,IACjB,WAAW,EAAE,WAAW,EACxB,mBAAmB,EAAE,wBAAwB,EAC7C,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,UAAU,EACjB,YAAY,EAAE,CAAC,gBAAgB,IAAI,EAAE,CAAyB,EAC9D,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;wBACrB,kBAAkB,CAAC,QAAQ,CAAC,CAAA;wBAC5B,mBAAmB,CAAC,GAAG,EAAE,IAAI,SAAS,EAAE,CAAC,CAAA;oBAC3C,CAAC,EACD,IAAI,EAAE,WAAW,EACjB,YAAY,EAAE,cAAc,EAC5B,IAAI,EAAC,SAAS,GACd,CACH,CAAC,CAAC,CAAC,IAAI,CAAA;gBACR,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC,CACtC,KAAC,kBAAkB,IACjB,WAAW,EAAE,WAAW,EACxB,mBAAmB,EAAE,wBAAwB,EAC7C,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,UAAU,EACjB,YAAY,EAAE,CAAC,gBAAgB,IAAI,EAAE,CAAyB,EAC9D,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE;wBACrB,kBAAkB,CAAC,QAAQ,CAAC,CAAA;wBAC5B,mBAAmB,CAAC,GAAG,EAAE,IAAI,SAAS,EAAE,CAAC,CAAA;oBAC3C,CAAC,EACD,IAAI,EAAE,WAAW,EACjB,YAAY,EAAE,cAAc,EAC5B,IAAI,EAAC,QAAQ,GACb,CACH,CAAC,CAAC,CAAC,IAAI,CAAA;gBAER,MAAM,WAAW,GACf,UAAU,CAAC,MAAM,CAAC,EAAE,KAAK,aAAa;oBACrC,UAAmC,CAAC,IAAI,KAAK,KAAK;oBACnD,WAAW,CAAA;gBAEb,IAAI,WAAW,EAAE,CAAC;oBAChB,OAAO,CACL,KAAC,WAAW,IAAC,WAAW,kBACtB,MAAC,IAAI,IAAC,SAAS,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,aAC7C,MAAC,UAAU,IAAC,SAAS,EAAC,OAAO,aAC3B,eAAK,SAAS,EAAC,yCAAyC,aACtD,KAAC,kBAAkB,IAAC,OAAO,kBACzB,iBAAQ,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,yCAAyC,YACvE,MAAC,SAAS,IAAC,SAAS,EAAC,iCAAiC,aACpD,KAAC,MAAM,IAAC,OAAO,EAAC,OAAO,EAAC,IAAI,EAAC,MAAM,EAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,kBAC5D,2BACE,KAAC,cAAc,KAAG,EAClB,eAAM,SAAS,EAAC,SAAS,YAAE,CAAC,CAAC,eAAe,CAAC,GAAQ,IAChD,GACA,EACT,KAAC,UAAU,IACT,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,CAAC,UAAU,GACjC,IACQ,GACL,GACU,EACrB,KAAC,SAAS,IAAC,cAAc,EAAE,UAAU,CAAC,cAAc,YACjD,cAAc,GACL,IACR,EACL,aAAa,IACH,EACb,KAAC,kBAAkB,IAAC,UAAU,QAAC,SAAS,EAAC,4BAA4B,YACnE,KAAC,WAAW,cAAE,KAAK,GAAe,GACf,IAChB,IA7BqB,SAAS,CA8BzB,CACf,CAAA;gBACH,CAAC;gBAED,OAAO,CACL,eAAqB,SAAS,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,aACjE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAClB,eAAK,SAAS,EAAC,gBAAgB,aAC7B,MAAC,SAAS,IAAC,SAAS,EAAC,yCAAyC,aAC5D,KAAC,UAAU,IAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,GAAI,EACvE,KAAC,SAAS,IAAC,cAAc,EAAE,UAAU,CAAC,cAAc,YACjD,cAAc,GACL,IACF,EACX,WAAW,CAAC,CAAC,CAAC,CACb,YAAG,SAAS,EAAC,+BAA+B,YAAE,WAAW,GAAK,CAC/D,CAAC,CAAC,CAAC,IAAI,EACP,aAAa,IACV,CACP,EACA,KAAK,KAfE,SAAS,CAgBb,CACP,CAAA;YACH,CAAC,CAAC,GACE,GACsB,CAC/B,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,eAAe,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ContentCommentsDrawer.d.ts","sourceRoot":"","sources":["../../../../../../../src/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.tsx"],"names":[],"mappings":"AAwiBA,eAAO,MAAM,qBAAqB,GAAI,mDAInC;IACD,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,OAAO,CAAC,EAAE,OAAO,CAAA;CACb,mDAoVL,CAAA"}
1
+ {"version":3,"file":"ContentCommentsDrawer.d.ts","sourceRoot":"","sources":["../../../../../../../src/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.tsx"],"names":[],"mappings":"AA+hBA,eAAO,MAAM,qBAAqB,GAAI,mDAInC;IACD,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,OAAO,CAAC,EAAE,OAAO,CAAA;CACb,mDAmlBL,CAAA"}
@@ -1,27 +1,33 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { useTranslations } from '../../../../../i18n/index.js';
4
+ const AT = '@';
3
5
  import { EmojiPicker } from '@ferrucc-io/emoji-picker';
4
- import { MessageCircle, Plus, Send } from 'lucide-react';
5
- import { Fragment, useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState, } from 'react';
6
+ import { BellRing, MessageCircle, Plus, Send, XIcon } from 'lucide-react';
7
+ import { Fragment, useCallback, useEffect, useLayoutEffect, useRef, useState, } from 'react';
6
8
  import { useQueryClient } from '@tanstack/react-query';
7
9
  import { toast } from 'sonner';
8
10
  import { isTranslatableObject } from '@rakun-kit/core/client';
9
11
  import { useEditPageContext } from '../_context/EditPageContext.js';
12
+ import { ContentReviewPanel } from './ContentReviewPanel.js';
10
13
  import { createManagerQueryKey, useManagerMutation, useManagerQuery } from '../../../../../client/react.js';
11
14
  import { UserAvatar } from '../../../../../components/user-avatar.js';
12
- import { Bubble, BubbleContent, BubbleGroup, BubbleReactions, } from '../../../../../components/ui/bubble.js';
15
+ import { Bubble, BubbleContent, BubbleGroup, BubbleReactions } from '../../../../../components/ui/bubble.js';
16
+ import { Badge } from '../../../../../components/ui/badge.js';
13
17
  import { Button } from '../../../../../components/ui/button.js';
14
- import { Drawer, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, } from '../../../../../components/ui/drawer.js';
15
- import { Mention, MentionContent, MentionInput, MentionItem, } from '../../../../../components/ui/mention.js';
18
+ import { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, } from '../../../../../components/ui/drawer.js';
19
+ import { Mention, MentionContent, MentionInput, MentionItem } from '../../../../../components/ui/mention.js';
16
20
  import { Popover, PopoverContent, PopoverTrigger } from '../../../../../components/ui/popover.js';
17
- import { HoverCard, HoverCardContent, HoverCardTrigger, } from '../../../../../components/ui/hover-card.js';
18
- import { Message, MessageAvatar, MessageContent, MessageHeader, } from '../../../../../components/ui/message.js';
21
+ import { HoverCard, HoverCardContent, HoverCardTrigger } from '../../../../../components/ui/hover-card.js';
22
+ import { Message, MessageAvatar, MessageContent, MessageHeader } from '../../../../../components/ui/message.js';
19
23
  import { ScrollArea } from '../../../../../components/ui/scroll-area.js';
24
+ import { Tabs, TabsContent, TabsList, TabsTrigger } from '../../../../../components/ui/tabs.js';
20
25
  import { Textarea } from '../../../../../components/ui/textarea.js';
21
26
  import { Tooltip, TooltipContent, TooltipTrigger } from '../../../../../components/ui/tooltip.js';
22
27
  import { getActionErrorMessage } from '../../../../../helpers/get-action-error-message.js';
23
28
  import { cn } from '../../../../../lib/utils.js';
24
29
  import { useSession } from '../../../../../state/session.js';
30
+ import { useManagerUsers } from '../../../../../state/users.js';
25
31
  const displayUserName = (user) => user.name?.trim() || user.user;
26
32
  const mentionLabel = (user) => user.user;
27
33
  const getDocumentTitleValue = ({ data, field, languageCode, }) => {
@@ -127,7 +133,11 @@ const formatMessageTime = (value) => {
127
133
  });
128
134
  };
129
135
  const DaySeparator = ({ date }) => (_jsxs("div", { className: "flex items-center gap-3 py-2", children: [_jsx("div", { className: "h-px flex-1 bg-border" }), _jsx("span", { className: "rounded-full bg-background px-3 py-1 text-[11px] font-medium text-muted-foreground shadow-sm ring-1 ring-border", children: formatMessageDayLabel(date) }), _jsx("div", { className: "h-px flex-1 bg-border" })] }));
130
- const UserHoverCard = ({ children, user, }) => (_jsxs(HoverCard, { openDelay: 150, children: [_jsx(HoverCardTrigger, { asChild: true, children: children }), _jsx(HoverCardContent, { align: "start", className: "w-64", children: _jsxs("div", { className: "flex min-w-0 items-center gap-3", children: [_jsx(UserAvatar, { name: displayUserName(user), avatar: user.avatar, className: "size-10" }), _jsxs("div", { className: "min-w-0", children: [_jsx("p", { className: "truncate text-sm font-medium", children: displayUserName(user) }), _jsxs("p", { className: "truncate text-xs text-muted-foreground", children: ["@", user.user] })] })] }) })] }));
136
+ const UnreadSeparator = ({ separatorRef }) => {
137
+ const t = useTranslations();
138
+ return (_jsxs("div", { ref: separatorRef, className: "flex items-center gap-3 py-2", role: "separator", children: [_jsx("div", { className: "h-px flex-1 bg-primary" }), _jsx("span", { className: "rounded-full bg-primary px-3 py-1 text-[11px] font-semibold text-primary-foreground shadow-sm", children: t('comments.unread') }), _jsx("div", { className: "h-px flex-1 bg-primary" })] }));
139
+ };
140
+ const UserHoverCard = ({ children, user }) => (_jsxs(HoverCard, { openDelay: 150, children: [_jsx(HoverCardTrigger, { asChild: true, children: children }), _jsx(HoverCardContent, { align: "start", className: "w-64", children: _jsxs("div", { className: "flex min-w-0 items-center gap-3", children: [_jsx(UserAvatar, { name: displayUserName(user), avatar: user.avatar, className: "size-10" }), _jsxs("div", { className: "min-w-0", children: [_jsx("p", { className: "truncate text-sm font-medium", children: displayUserName(user) }), _jsxs("p", { className: "truncate text-xs text-muted-foreground", children: [AT, user.user] })] })] }) })] }));
131
141
  const CommentText = ({ currentUser, mentions, text, }) => {
132
142
  const mentionsByUsername = new Map(mentions.map((mentionUser) => [mentionUser.user.toLowerCase(), mentionUser]));
133
143
  const usernames = Array.from(mentionsByUsername.keys())
@@ -152,7 +162,7 @@ const CommentText = ({ currentUser, mentions, text, }) => {
152
162
  mentionUser,
153
163
  });
154
164
  parts.push(_jsx(UserHoverCard, { user: mentionUser, children: _jsxs("span", { tabIndex: 0, className: cn('inline-flex cursor-default rounded-sm bg-primary/10 px-1 py-0.5 font-medium text-primary outline-none ring-offset-background hover:bg-primary/15 focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2', currentUserMention &&
155
- 'bg-amber-500/15 text-amber-700 ring-1 ring-amber-500/30 hover:bg-amber-500/20 dark:text-amber-300'), children: ["@", mentionUser.user] }) }, `${match.index}:${rawMention}`));
165
+ 'bg-amber-500/15 text-amber-700 ring-1 ring-amber-500/30 hover:bg-amber-500/20 dark:text-amber-300'), children: [AT, mentionUser.user] }) }, `${match.index}:${rawMention}`));
156
166
  lastIndex = pattern.lastIndex;
157
167
  }
158
168
  if (lastIndex < text.length) {
@@ -161,6 +171,7 @@ const CommentText = ({ currentUser, mentions, text, }) => {
161
171
  return _jsx(_Fragment, { children: parts });
162
172
  };
163
173
  const CommentReactionPicker = ({ anchorIsNarrow, currentUser, disabled, onToggle, ownComment, reactions, }) => {
174
+ const t = useTranslations();
164
175
  const [emojiPickerOpen, setEmojiPickerOpen] = useState(false);
165
176
  const handlePickerEmojiSelect = (emoji) => {
166
177
  setEmojiPickerOpen(false);
@@ -177,7 +188,7 @@ const CommentReactionPicker = ({ anchorIsNarrow, currentUser, disabled, onToggle
177
188
  reaction,
178
189
  });
179
190
  return (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("button", { type: "button", "aria-label": option.label, disabled: disabled, onClick: () => onToggle(option.emoji), className: cn('grid size-7 place-items-center rounded-full text-base leading-none transition hover:bg-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50', reacted && 'bg-primary/10 ring-1 ring-primary/30'), children: _jsx("span", { "aria-hidden": "true", children: option.symbol }) }) }), _jsx(TooltipContent, { children: option.label })] }, option.emoji));
180
- }), _jsxs(Popover, { open: emojiPickerOpen, onOpenChange: setEmojiPickerOpen, children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(PopoverTrigger, { asChild: true, children: _jsx("button", { type: "button", "aria-label": "More reactions", disabled: disabled, className: "grid size-7 place-items-center rounded-full transition hover:bg-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50", children: _jsx(Plus, { className: "size-3.5" }) }) }) }), _jsx(TooltipContent, { children: "More reactions" })] }), _jsx(PopoverContent, { align: ownComment ? 'start' : 'end', collisionPadding: 16, side: "top", sideOffset: 12, className: "w-[min(320px,calc(100vw-2rem))] max-h-[min(420px,calc(100vh-2rem))] overflow-hidden p-0 outline-none focus:outline-none focus-visible:outline-none focus-visible:ring-0", onWheelCapture: scrollEmojiPickerViewport, children: _jsxs(EmojiPicker, { className: "flex h-full max-h-[min(420px,calc(100vh-2rem))] w-full flex-col border-0 shadow-none ring-0 focus:ring-0 focus-visible:ring-0", emojiSize: 28, emojisPerRow: 8, frequentlyUsedEmojis: FREQUENTLY_USED_REACTIONS, onEmojiSelect: handlePickerEmojiSelect, children: [_jsx(EmojiPicker.Header, { className: "border-b p-2", children: _jsx(EmojiPicker.Input, { autoFocus: true, placeholder: "Search emoji", className: "h-9 w-full rounded-md border bg-background pl-9 pr-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring" }) }), _jsx(EmojiPicker.Group, { className: "min-h-0 flex-1 overflow-hidden", children: _jsx(EmojiPicker.List, { containerHeight: 260 }) })] }) })] })] }));
191
+ }), _jsxs(Popover, { open: emojiPickerOpen, onOpenChange: setEmojiPickerOpen, children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(PopoverTrigger, { asChild: true, children: _jsx("button", { type: "button", "aria-label": t('comments.moreReactions'), disabled: disabled, className: "grid size-7 place-items-center rounded-full transition hover:bg-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50", children: _jsx(Plus, { className: "size-3.5" }) }) }) }), _jsx(TooltipContent, { children: t('comments.moreReactions') })] }), _jsx(PopoverContent, { align: ownComment ? 'start' : 'end', collisionPadding: 16, side: "top", sideOffset: 12, className: "w-[min(320px,calc(100vw-2rem))] max-h-[min(420px,calc(100vh-2rem))] overflow-hidden p-0 outline-none focus:outline-none focus-visible:outline-none focus-visible:ring-0", onWheelCapture: scrollEmojiPickerViewport, children: _jsxs(EmojiPicker, { className: "flex h-full max-h-[min(420px,calc(100vh-2rem))] w-full flex-col border-0 shadow-none ring-0 focus:ring-0 focus-visible:ring-0", emojiSize: 28, emojisPerRow: 8, frequentlyUsedEmojis: FREQUENTLY_USED_REACTIONS, onEmojiSelect: handlePickerEmojiSelect, children: [_jsx(EmojiPicker.Header, { className: "border-b p-2", children: _jsx(EmojiPicker.Input, { autoFocus: true, placeholder: t('comments.searchEmoji'), className: "h-9 w-full rounded-md border bg-background pl-9 pr-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring" }) }), _jsx(EmojiPicker.Group, { className: "min-h-0 flex-1 overflow-hidden", children: _jsx(EmojiPicker.List, { containerHeight: 260 }) })] }) })] })] }));
181
192
  };
182
193
  const CommentBubbleContent = ({ children, currentUser, disabled, onToggleReaction, ownComment, reactions, }) => {
183
194
  const anchorRef = useRef(null);
@@ -211,11 +222,17 @@ const CommentReactionSummary = ({ currentUser, disabled, onToggle, ownComment, r
211
222
  }) }));
212
223
  };
213
224
  export const ContentCommentsDrawer = ({ open: controlledOpen, onOpenChange, trigger = true, } = {}) => {
225
+ const t = useTranslations();
214
226
  const { contentType, contentTypeId, contentTypeName, form, languageCode } = useEditPageContext();
215
227
  const { user } = useSession();
216
228
  const queryClient = useQueryClient();
217
229
  const textareaRef = useRef(null);
218
230
  const messagesEndRef = useRef(null);
231
+ const unreadMarkerRef = useRef(null);
232
+ const unreadSessionIdRef = useRef(0);
233
+ const lastMarkedCommentRef = useRef(null);
234
+ const markReadPromiseRef = useRef(null);
235
+ const markedOpenRef = useRef(null);
219
236
  const [internalOpen, setInternalOpen] = useState(false);
220
237
  const open = controlledOpen ?? internalOpen;
221
238
  const setOpen = (nextOpen) => {
@@ -225,33 +242,65 @@ export const ContentCommentsDrawer = ({ open: controlledOpen, onOpenChange, trig
225
242
  onOpenChange?.(nextOpen);
226
243
  };
227
244
  const [text, setText] = useState('');
245
+ const [activePanel, setActivePanel] = useState('messages');
228
246
  const [mentions, setMentions] = useState([]);
229
247
  const [composerKey, setComposerKey] = useState(0);
248
+ const [unreadMarkerCommentId, setUnreadMarkerCommentId] = useState(null);
249
+ const [unreadSessionReady, setUnreadSessionReady] = useState(false);
250
+ useEffect(() => {
251
+ if (!open || typeof window === 'undefined')
252
+ return;
253
+ const searchParams = new URLSearchParams(window.location.search);
254
+ setActivePanel(searchParams.has('review') ? 'review' : 'messages');
255
+ }, [open]);
256
+ const messagesOpen = open && activePanel === 'messages';
230
257
  const commentsInput = contentTypeId
231
258
  ? {
232
259
  contentType: contentTypeName,
233
260
  documentId: contentTypeId,
234
261
  }
235
262
  : undefined;
263
+ const notificationsInput = commentsInput
264
+ ? {
265
+ ...commentsInput,
266
+ unreadOnly: true,
267
+ limit: 1,
268
+ }
269
+ : undefined;
236
270
  const commentsQuery = useManagerQuery({
237
271
  name: 'manager.comments.list',
238
- input: commentsInput ?? {
239
- contentType: '',
240
- documentId: '',
241
- },
242
- enabled: Boolean(open && commentsInput),
243
- refetchInterval: open ? 5000 : false,
272
+ input: commentsInput ??
273
+ {
274
+ contentType: '',
275
+ documentId: '',
276
+ },
277
+ enabled: Boolean(messagesOpen && commentsInput),
278
+ refetchInterval: messagesOpen ? 5000 : false,
244
279
  });
245
- const usersQuery = useManagerQuery({
246
- name: 'manager.users.mentions',
247
- input: undefined,
248
- enabled: open,
280
+ const notificationsQuery = useManagerQuery({
281
+ name: 'manager.notifications.list',
282
+ input: notificationsInput,
283
+ enabled: Boolean(notificationsInput),
284
+ refetchInterval: open ? false : 15000,
249
285
  });
286
+ const unreadCommentsQuery = useManagerQuery({
287
+ name: 'manager.comments.unreadCount',
288
+ input: commentsInput ??
289
+ {
290
+ contentType: '',
291
+ documentId: '',
292
+ },
293
+ enabled: Boolean(commentsInput),
294
+ refetchInterval: open ? false : 15000,
295
+ });
296
+ const { users: mentionUsers, usersById: mentionUsersById, isLoading: usersLoading, } = useManagerUsers();
250
297
  const createCommentMutation = useManagerMutation('manager.comments.create');
251
298
  const toggleReactionMutation = useManagerMutation('manager.comments.toggleReaction');
252
- const mentionUsers = usersQuery.data ?? [];
253
- const mentionUsersById = useMemo(() => new Map(mentionUsers.map((mentionUser) => [mentionUser._id, mentionUser])), [mentionUsers]);
299
+ const markCommentsReadMutation = useManagerMutation('manager.comments.markRead');
300
+ const markNotificationsReadMutation = useManagerMutation('manager.notifications.markRead');
254
301
  const comments = commentsQuery.data?.comments ?? [];
302
+ const unreadCommentsCount = unreadCommentsQuery.data?.count ?? 0;
303
+ const unreadNotifications = notificationsQuery.data?.totalUnread ?? 0;
255
304
  const documentTitle = getDocumentTitleValue({
256
305
  data: form.draft.current,
257
306
  field: contentType.listFields?.[0],
@@ -270,10 +319,122 @@ export const ContentCommentsDrawer = ({ open: controlledOpen, onOpenChange, trig
270
319
  });
271
320
  }, []);
272
321
  useEffect(() => {
273
- if (!open)
322
+ if (!messagesOpen) {
323
+ unreadSessionIdRef.current += 1;
324
+ lastMarkedCommentRef.current = null;
325
+ setUnreadMarkerCommentId(null);
326
+ setUnreadSessionReady(false);
327
+ return;
328
+ }
329
+ if (!commentsInput)
330
+ return;
331
+ const sessionId = unreadSessionIdRef.current + 1;
332
+ unreadSessionIdRef.current = sessionId;
333
+ lastMarkedCommentRef.current = null;
334
+ setUnreadMarkerCommentId(null);
335
+ setUnreadSessionReady(false);
336
+ void (async () => {
337
+ try {
338
+ await markReadPromiseRef.current;
339
+ const result = await commentsQuery.refetch();
340
+ if (unreadSessionIdRef.current !== sessionId || result.isError || !result.data) {
341
+ return;
342
+ }
343
+ const freshComments = result.data.comments;
344
+ const lastReadCommentId = result.data.lastReadCommentId;
345
+ const lastReadIndex = lastReadCommentId
346
+ ? freshComments.findIndex((comment) => comment._id === lastReadCommentId)
347
+ : -1;
348
+ const unreadComments = lastReadIndex >= 0 ? freshComments.slice(lastReadIndex + 1) : freshComments;
349
+ const firstUnreadComment = unreadComments.find((comment) => !isOwnCommentAuthor({
350
+ author: comment.author,
351
+ currentUser: user,
352
+ }));
353
+ setUnreadMarkerCommentId(firstUnreadComment?._id ?? null);
354
+ setUnreadSessionReady(true);
355
+ }
356
+ catch (error) {
357
+ if (unreadSessionIdRef.current === sessionId) {
358
+ toast.error(getActionErrorMessage(error, t('comments.couldNotLoadReadState')));
359
+ }
360
+ }
361
+ })();
362
+ }, [contentTypeId, contentTypeName, messagesOpen]);
363
+ useEffect(() => {
364
+ if (!messagesOpen || !commentsInput || !unreadSessionReady)
365
+ return;
366
+ const latestComment = comments[comments.length - 1];
367
+ if (!latestComment)
368
+ return;
369
+ const readKey = `${commentsInput.contentType}:${commentsInput.documentId}:${latestComment._id}`;
370
+ if (lastMarkedCommentRef.current === readKey)
371
+ return;
372
+ lastMarkedCommentRef.current = readKey;
373
+ const previousMarkRead = markReadPromiseRef.current;
374
+ const markReadPromise = (previousMarkRead ? previousMarkRead.catch(() => undefined) : Promise.resolve()).then(() => markCommentsReadMutation.mutateAsync({
375
+ ...commentsInput,
376
+ commentId: latestComment._id,
377
+ }));
378
+ markReadPromiseRef.current = markReadPromise;
379
+ void markReadPromise
380
+ .then(async (result) => {
381
+ await queryClient.invalidateQueries({
382
+ predicate: (query) => query.queryKey[0] === 'rakun-manager' &&
383
+ query.queryKey[1] === 'manager.comments.unreadCount',
384
+ });
385
+ return result;
386
+ })
387
+ .catch((error) => {
388
+ toast.error(getActionErrorMessage(error, t('comments.couldNotSaveReadState')));
389
+ })
390
+ .finally(() => {
391
+ if (markReadPromiseRef.current === markReadPromise) {
392
+ markReadPromiseRef.current = null;
393
+ }
394
+ });
395
+ }, [comments, commentsInput, markCommentsReadMutation, messagesOpen, unreadSessionReady]);
396
+ useEffect(() => {
397
+ if (!messagesOpen || !unreadSessionReady || unreadMarkerCommentId)
274
398
  return;
275
399
  scrollMessagesToEnd('auto');
276
- }, [comments.length, open, scrollMessagesToEnd]);
400
+ }, [
401
+ comments.length,
402
+ messagesOpen,
403
+ scrollMessagesToEnd,
404
+ unreadMarkerCommentId,
405
+ unreadSessionReady,
406
+ ]);
407
+ useLayoutEffect(() => {
408
+ if (!messagesOpen || !unreadMarkerCommentId)
409
+ return;
410
+ requestAnimationFrame(() => {
411
+ unreadMarkerRef.current?.scrollIntoView({
412
+ block: 'center',
413
+ behavior: 'auto',
414
+ });
415
+ });
416
+ }, [messagesOpen, unreadMarkerCommentId]);
417
+ useEffect(() => {
418
+ if (!open) {
419
+ markedOpenRef.current = null;
420
+ return;
421
+ }
422
+ if (!commentsInput || unreadNotifications === 0)
423
+ return;
424
+ const documentKey = `${commentsInput.contentType}:${commentsInput.documentId}`;
425
+ if (markedOpenRef.current === documentKey)
426
+ return;
427
+ markedOpenRef.current = documentKey;
428
+ void markNotificationsReadMutation
429
+ .mutateAsync(commentsInput)
430
+ .then(() => queryClient.invalidateQueries({
431
+ predicate: (query) => query.queryKey[0] === 'rakun-manager' &&
432
+ query.queryKey[1] === 'manager.notifications.list',
433
+ }))
434
+ .catch((error) => {
435
+ toast.error(getActionErrorMessage(error, t('comments.couldNotMarkNotifications')));
436
+ });
437
+ }, [commentsInput, markNotificationsReadMutation, open, queryClient, unreadNotifications]);
277
438
  if (!contentTypeId || !commentsInput)
278
439
  return null;
279
440
  const invalidateComments = async () => {
@@ -300,7 +461,7 @@ export const ContentCommentsDrawer = ({ open: controlledOpen, onOpenChange, trig
300
461
  scrollMessagesToEnd();
301
462
  }
302
463
  catch (error) {
303
- toast.error(getActionErrorMessage(error, 'Could not add comment'));
464
+ toast.error(getActionErrorMessage(error, t('comments.couldNotAdd')));
304
465
  }
305
466
  };
306
467
  const handleToggleReaction = async ({ commentId, emoji, }) => {
@@ -313,7 +474,7 @@ export const ContentCommentsDrawer = ({ open: controlledOpen, onOpenChange, trig
313
474
  await invalidateComments();
314
475
  }
315
476
  catch (error) {
316
- toast.error(getActionErrorMessage(error, 'Could not update reaction'));
477
+ toast.error(getActionErrorMessage(error, t('comments.couldNotUpdateReaction')));
317
478
  }
318
479
  };
319
480
  const filterMentionUsers = (options, term) => {
@@ -329,32 +490,38 @@ export const ContentCommentsDrawer = ({ open: controlledOpen, onOpenChange, trig
329
490
  .some((value) => value.toLowerCase().includes(normalizedTerm));
330
491
  });
331
492
  };
332
- return (_jsxs(Drawer, { direction: "right", open: open, onOpenChange: setOpen, children: [trigger ? (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(DrawerTrigger, { asChild: true, children: _jsx(Button, { "aria-label": "Comments", variant: "outline", size: "icon", children: _jsx(MessageCircle, {}) }) }) }), _jsx(TooltipContent, { children: "Comments" })] })) : null, _jsxs(DrawerContent, { className: "w-[min(92vw,520px)] sm:max-w-[520px]", children: [_jsxs(DrawerHeader, { className: "border-b", children: [_jsx(DrawerTitle, { children: "Comments" }), _jsx(DrawerDescription, { children: drawerDescription })] }), _jsx(ScrollArea, { className: "min-h-0 flex-1", children: _jsxs("div", { className: "flex min-h-[320px] flex-col gap-4 p-4", children: [commentsQuery.isLoading ? (_jsx("p", { className: "text-sm text-muted-foreground", children: "Loading comments..." })) : commentsQuery.isError ? (_jsxs("div", { className: "flex flex-col items-start gap-3", children: [_jsx("p", { className: "text-sm text-destructive", children: "Could not load comments." }), _jsx(Button, { type: "button", variant: "outline", size: "sm", onClick: () => void commentsQuery.refetch(), children: "Retry" })] })) : comments.length ? (_jsx(BubbleGroup, { children: comments.map((comment, index) => {
333
- const previousComment = comments[index - 1];
334
- const showDaySeparator = !previousComment ||
335
- getMessageDayKey(previousComment.createdAt) !==
336
- getMessageDayKey(comment.createdAt);
337
- const showAuthor = !previousComment ||
338
- showDaySeparator ||
339
- !isSameCommentAuthor(previousComment.author, comment.author);
340
- const ownComment = isOwnCommentAuthor({
341
- author: comment.author,
342
- currentUser: user,
343
- });
344
- const createdAt = getCommentDate(comment.createdAt);
345
- const messageTime = formatMessageTime(createdAt);
346
- return (_jsxs(Fragment, { children: [showDaySeparator ? _jsx(DaySeparator, { date: comment.createdAt }) : null, _jsxs(Message, { align: ownComment ? 'end' : 'start', children: [_jsx(MessageAvatar, { className: cn(!showAuthor && 'invisible'), children: _jsx(UserHoverCard, { user: comment.author, children: _jsx("span", { className: "inline-flex cursor-default rounded-full outline-none ring-offset-background focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2", children: _jsx(UserAvatar, { name: displayUserName(comment.author), avatar: comment.author.avatar, className: "size-8" }) }) }) }), _jsxs(MessageContent, { className: cn(ownComment && 'items-end'), children: [showAuthor ? (_jsx(MessageHeader, { className: cn(ownComment && 'justify-end'), children: _jsx(UserHoverCard, { user: comment.author, children: _jsx("span", { className: "cursor-default rounded-sm outline-none ring-offset-background focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2", children: displayUserName(comment.author) }) }) })) : null, _jsxs(Bubble, { align: ownComment ? 'end' : 'start', variant: "muted", className: cn('max-w-[82%]', comment.reactions.length && 'mb-3'), children: [_jsx(CommentBubbleContent, { currentUser: user, disabled: toggleReactionMutation.isPending, ownComment: ownComment, reactions: comment.reactions, onToggleReaction: (emoji) => void handleToggleReaction({
347
- commentId: comment._id,
348
- emoji,
349
- }), children: _jsxs(BubbleContent, { className: "bg-muted whitespace-pre-wrap text-left", children: [_jsx(CommentText, { currentUser: user, mentions: comment.mentions, text: comment.text }), createdAt && messageTime ? (_jsx("time", { dateTime: createdAt.toISOString(), className: "mt-1 block text-right text-[10px] font-medium leading-none text-muted-foreground", children: messageTime })) : null] }) }), _jsx(CommentReactionSummary, { currentUser: user, disabled: toggleReactionMutation.isPending, ownComment: ownComment, reactions: comment.reactions, onToggle: (emoji) => void handleToggleReaction({
350
- commentId: comment._id,
351
- emoji,
352
- }) })] })] })] })] }, comment._id));
353
- }) })) : (_jsx("p", { className: "text-sm text-muted-foreground", children: "No comments yet." })), _jsx("div", { ref: messagesEndRef, "aria-hidden": "true" })] }) }), _jsxs(DrawerFooter, { className: "border-t", children: [_jsxs(Mention, { value: mentions, onValueChange: setMentions, inputValue: text, onInputValueChange: setText, trigger: "@", onFilter: filterMentionUsers, children: [_jsx(MentionInput, { asChild: true, children: _jsx(Textarea, { ref: textareaRef, placeholder: "Write a comment...", className: "max-h-40 min-h-24 resize-none", onKeyDown: (event) => {
354
- if ((event.metaKey || event.ctrlKey) && event.key === 'Enter') {
355
- event.preventDefault();
356
- void handleSubmit();
357
- }
358
- } }) }), _jsx(MentionContent, { className: "max-h-64 min-w-64 overflow-y-auto", children: usersQuery.isLoading ? (_jsx("div", { className: "px-2 py-1.5 text-sm text-muted-foreground", children: "Loading users..." })) : mentionUsers.length ? (mentionUsers.map((mentionUser) => (_jsxs(MentionItem, { value: mentionUser._id, label: mentionLabel(mentionUser), children: [_jsx(UserAvatar, { name: displayUserName(mentionUser), avatar: mentionUser.avatar, className: "size-6" }), _jsxs("span", { className: "min-w-0", children: [_jsx("span", { className: "block truncate", children: displayUserName(mentionUser) }), _jsxs("span", { className: "block truncate text-xs text-muted-foreground", children: ["@", mentionUser.user] })] })] }, mentionUser._id)))) : (_jsx("div", { className: "px-2 py-1.5 text-sm text-muted-foreground", children: "No users found" })) })] }, composerKey), _jsxs(Button, { type: "button", loading: createCommentMutation.isPending, disabled: !trimmedText, onClick: () => void handleSubmit(), children: [_jsx(Send, {}), "Send"] })] })] })] }));
493
+ return (_jsxs(Drawer, { direction: "right", open: open, onOpenChange: setOpen, children: [trigger ? (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(DrawerTrigger, { asChild: true, children: _jsxs(Button, { "aria-label": unreadCommentsCount || unreadNotifications
494
+ ? `Comments, ${unreadCommentsCount} unread messages${unreadNotifications ? `, ${unreadNotifications} unread mentions` : ''}`
495
+ : 'Comments', className: "relative", variant: "outline", size: "icon", children: [_jsx(MessageCircle, {}), unreadCommentsCount || unreadNotifications ? (_jsxs("span", { className: cn('absolute -right-2 -top-2 flex h-4 min-w-4 items-center justify-center gap-0.5 rounded-full px-1 text-[9px] font-bold leading-none shadow-sm', unreadNotifications
496
+ ? 'bg-destructive text-destructive-foreground'
497
+ : 'bg-primary text-primary-foreground'), children: [unreadNotifications ? _jsx(BellRing, { className: "size-2.5" }) : null, unreadCommentsCount ? (_jsx("span", { children: unreadCommentsCount > 99 ? '99+' : unreadCommentsCount })) : null] })) : null] }) }) }), _jsx(TooltipContent, { children: unreadCommentsCount || unreadNotifications
498
+ ? `${unreadCommentsCount} unread messages${unreadNotifications ? ` · ${unreadNotifications} unread mentions` : ''}`
499
+ : 'Comments' })] })) : null, _jsxs(DrawerContent, { className: "h-full data-[vaul-drawer-direction=right]:w-full data-[vaul-drawer-direction=right]:max-w-none md:data-[vaul-drawer-direction=right]:w-[min(92vw,520px)] md:data-[vaul-drawer-direction=right]:max-w-[520px]", children: [_jsx(DrawerHeader, { className: "shrink-0 border-b text-start", children: _jsxs("div", { className: "flex items-start justify-between gap-3", children: [_jsxs("div", { className: "min-w-0 space-y-1", children: [_jsx(DrawerTitle, { children: t('comments.title') }), _jsx(DrawerDescription, { children: drawerDescription })] }), _jsx(DrawerClose, { asChild: true, children: _jsxs(Button, { type: "button", variant: "ghost", size: "icon", className: "shrink-0", "aria-label": "Close comments", children: [_jsx(XIcon, { className: "size-4" }), _jsx("span", { className: "sr-only", children: t('common.close') })] }) })] }) }), _jsxs(Tabs, { value: activePanel, onValueChange: (value) => setActivePanel(value === 'review' ? 'review' : 'messages'), className: "min-h-0 flex-1 gap-0", children: [_jsx("div", { className: "border-b px-4", children: _jsxs(TabsList, { variant: "line", className: "w-full", children: [_jsxs(TabsTrigger, { value: "messages", children: [t('comments.messages'), unreadCommentsCount ? (_jsx(Badge, { variant: "secondary", children: unreadCommentsCount > 99 ? '99+' : unreadCommentsCount })) : null] }), _jsx(TabsTrigger, { value: "review", children: t('review.title') })] }) }), _jsx(TabsContent, { value: "review", className: "min-h-0", children: _jsx(ScrollArea, { className: "h-full", children: _jsx(ContentReviewPanel, { open: open && activePanel === 'review' }) }) }), _jsxs(TabsContent, { value: "messages", className: "flex min-h-0 flex-col data-[state=inactive]:hidden", children: [_jsx(ScrollArea, { className: "min-h-0 flex-1", children: _jsxs("div", { className: "flex min-h-[320px] flex-col gap-4 p-4", children: [commentsQuery.isLoading ? (_jsx("p", { className: "text-sm text-muted-foreground", children: t('comments.loading') })) : commentsQuery.isError ? (_jsxs("div", { className: "flex flex-col items-start gap-3", children: [_jsx("p", { className: "text-sm text-destructive", children: t('comments.loadError') }), _jsx(Button, { type: "button", variant: "outline", size: "sm", onClick: () => void commentsQuery.refetch(), children: t('common.retry') })] })) : comments.length ? (_jsx(BubbleGroup, { children: comments.map((comment, index) => {
500
+ const previousComment = comments[index - 1];
501
+ const showDaySeparator = !previousComment ||
502
+ getMessageDayKey(previousComment.createdAt) !==
503
+ getMessageDayKey(comment.createdAt);
504
+ const showAuthor = !previousComment ||
505
+ showDaySeparator ||
506
+ !isSameCommentAuthor(previousComment.author, comment.author);
507
+ const ownComment = isOwnCommentAuthor({
508
+ author: comment.author,
509
+ currentUser: user,
510
+ });
511
+ const createdAt = getCommentDate(comment.createdAt);
512
+ const messageTime = formatMessageTime(createdAt);
513
+ return (_jsxs(Fragment, { children: [showDaySeparator ? _jsx(DaySeparator, { date: comment.createdAt }) : null, comment._id === unreadMarkerCommentId ? (_jsx(UnreadSeparator, { separatorRef: unreadMarkerRef })) : null, _jsxs(Message, { align: ownComment ? 'end' : 'start', children: [_jsx(MessageAvatar, { className: cn(!showAuthor && 'invisible'), children: _jsx(UserHoverCard, { user: comment.author, children: _jsx("span", { className: "inline-flex cursor-default rounded-full outline-none ring-offset-background focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2", children: _jsx(UserAvatar, { name: displayUserName(comment.author), avatar: comment.author.avatar, className: "size-8" }) }) }) }), _jsxs(MessageContent, { className: cn(ownComment && 'items-end'), children: [showAuthor ? (_jsx(MessageHeader, { className: cn(ownComment && 'justify-end'), children: _jsx(UserHoverCard, { user: comment.author, children: _jsx("span", { className: "cursor-default rounded-sm outline-none ring-offset-background focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2", children: displayUserName(comment.author) }) }) })) : null, _jsxs(Bubble, { align: ownComment ? 'end' : 'start', variant: "muted", className: cn('max-w-[82%]', comment.reactions.length && 'mb-3'), children: [_jsx(CommentBubbleContent, { currentUser: user, disabled: toggleReactionMutation.isPending, ownComment: ownComment, reactions: comment.reactions, onToggleReaction: (emoji) => void handleToggleReaction({
514
+ commentId: comment._id,
515
+ emoji,
516
+ }), children: _jsxs(BubbleContent, { className: "bg-muted whitespace-pre-wrap text-left", children: [_jsx(CommentText, { currentUser: user, mentions: comment.mentions, text: comment.text }), createdAt && messageTime ? (_jsx("time", { dateTime: createdAt.toISOString(), className: "mt-1 block text-right text-[10px] font-medium leading-none text-muted-foreground", children: messageTime })) : null] }) }), _jsx(CommentReactionSummary, { currentUser: user, disabled: toggleReactionMutation.isPending, ownComment: ownComment, reactions: comment.reactions, onToggle: (emoji) => void handleToggleReaction({
517
+ commentId: comment._id,
518
+ emoji,
519
+ }) })] })] })] })] }, comment._id));
520
+ }) })) : (_jsx("p", { className: "text-sm text-muted-foreground", children: t('comments.empty') })), _jsx("div", { ref: messagesEndRef, "aria-hidden": "true" })] }) }), _jsxs(DrawerFooter, { className: "border-t", children: [_jsxs(Mention, { value: mentions, onValueChange: setMentions, inputValue: text, onInputValueChange: setText, trigger: "@", onFilter: filterMentionUsers, children: [_jsx(MentionInput, { asChild: true, children: _jsx(Textarea, { ref: textareaRef, placeholder: t('comments.writePlaceholder'), className: "max-h-40 min-h-24 resize-none", onKeyDown: (event) => {
521
+ if ((event.metaKey || event.ctrlKey) && event.key === 'Enter') {
522
+ event.preventDefault();
523
+ void handleSubmit();
524
+ }
525
+ } }) }), _jsx(MentionContent, { className: "max-h-64 min-w-64 overflow-y-auto", children: usersLoading ? (_jsx("div", { className: "px-2 py-1.5 text-sm text-muted-foreground", children: t('comments.loadingUsers') })) : mentionUsers.length ? (mentionUsers.map((mentionUser) => (_jsxs(MentionItem, { value: mentionUser._id, label: mentionLabel(mentionUser), children: [_jsx(UserAvatar, { name: displayUserName(mentionUser), avatar: mentionUser.avatar, className: "size-6" }), _jsxs("span", { className: "min-w-0", children: [_jsx("span", { className: "block truncate", children: displayUserName(mentionUser) }), _jsxs("span", { className: "block truncate text-xs text-muted-foreground", children: [AT, mentionUser.user] })] })] }, mentionUser._id)))) : (_jsx("div", { className: "px-2 py-1.5 text-sm text-muted-foreground", children: t('comments.noUsersFound') })) })] }, composerKey), _jsxs(Button, { type: "button", loading: createCommentMutation.isPending, disabled: !trimmedText, onClick: () => void handleSubmit(), children: [_jsx(Send, {}), t('common.send')] })] })] })] })] })] }));
359
526
  };
360
527
  //# sourceMappingURL=ContentCommentsDrawer.js.map