@rakun-kit/manager-react 1.5.9 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (318) hide show
  1. package/README.md +366 -297
  2. package/dist/cjs/app/runtime-app.js +4 -1
  3. package/dist/cjs/app/runtime-app.js.map +1 -1
  4. package/dist/cjs/components/app-sidebar.js +13 -2
  5. package/dist/cjs/components/app-sidebar.js.map +1 -1
  6. package/dist/cjs/components/media/MediaLibrary.js +10 -1
  7. package/dist/cjs/components/media/MediaLibrary.js.map +1 -1
  8. package/dist/cjs/components/media/contexts/MediaLibraryContext.js +1 -1
  9. package/dist/cjs/components/media/contexts/MediaLibraryContext.js.map +1 -1
  10. package/dist/cjs/components/media/previews/MediaContextMenuContent.js +68 -15
  11. package/dist/cjs/components/media/previews/MediaContextMenuContent.js.map +1 -1
  12. package/dist/cjs/components/media/previews/Previews.js +89 -35
  13. package/dist/cjs/components/media/previews/Previews.js.map +1 -1
  14. package/dist/cjs/components/media/previews/context/MediaPreviewContext.js.map +1 -1
  15. package/dist/cjs/components/media/previews/dialogs/ExpandedPreviewDialog.js +7 -10
  16. package/dist/cjs/components/media/previews/dialogs/ExpandedPreviewDialog.js.map +1 -1
  17. package/dist/cjs/components/media/previews/hooks/useMediaPreviewRenderer.js +3 -1
  18. package/dist/cjs/components/media/previews/hooks/useMediaPreviewRenderer.js.map +1 -1
  19. package/dist/cjs/components/media/previews/toolbar/PreviewsToolbar.js +16 -9
  20. package/dist/cjs/components/media/previews/toolbar/PreviewsToolbar.js.map +1 -1
  21. package/dist/cjs/components/media/previews/utils/mediaDownload.js +54 -0
  22. package/dist/cjs/components/media/previews/utils/mediaDownload.js.map +1 -0
  23. package/dist/cjs/components/media/previews/views/PreviewsListView.js +1 -1
  24. package/dist/cjs/components/media/previews/views/PreviewsListView.js.map +1 -1
  25. package/dist/cjs/components/rakun-logo.js +4 -9
  26. package/dist/cjs/components/rakun-logo.js.map +1 -1
  27. package/dist/cjs/components/ui/context-menu.js +1 -1
  28. package/dist/cjs/components/ui/context-menu.js.map +1 -1
  29. package/dist/cjs/i18n/catalog.js +366 -6
  30. package/dist/cjs/i18n/catalog.js.map +1 -1
  31. package/dist/cjs/layouts.js +2 -2
  32. package/dist/cjs/layouts.js.map +1 -1
  33. package/dist/cjs/lib/media.js +1 -0
  34. package/dist/cjs/lib/media.js.map +1 -1
  35. package/dist/cjs/media.js +45 -0
  36. package/dist/cjs/media.js.map +1 -1
  37. package/dist/cjs/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js +15 -4
  38. package/dist/cjs/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js.map +1 -1
  39. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.js +11 -6
  40. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.js.map +1 -1
  41. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js +2 -1
  42. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js.map +1 -1
  43. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js +3 -2
  44. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js.map +1 -1
  45. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js +1 -1
  46. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js.map +1 -1
  47. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/SeoTabContent.js +290 -0
  48. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/SeoTabContent.js.map +1 -0
  49. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/seo-analysis.js +88 -0
  50. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/seo-analysis.js.map +1 -0
  51. package/dist/cjs/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js +9 -1
  52. package/dist/cjs/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js.map +1 -1
  53. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ContentReferenceField/ContentReferenceMultiSelectUI.js +15 -2
  54. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ContentReferenceField/ContentReferenceMultiSelectUI.js.map +1 -1
  55. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.js +222 -232
  56. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.js.map +1 -1
  57. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js +20 -1
  58. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js.map +1 -1
  59. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js +27 -21
  60. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js.map +1 -1
  61. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/LinkField/index.js.map +1 -1
  62. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/LinkField/linkValue.js +25 -0
  63. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/LinkField/linkValue.js.map +1 -0
  64. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorModulePicker.js +10 -1
  65. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorModulePicker.js.map +1 -1
  66. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/SimpleListUI.js +38 -11
  67. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/SimpleListUI.js.map +1 -1
  68. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/MenuField/MenuUI.js +135 -0
  69. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/MenuField/MenuUI.js.map +1 -0
  70. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/MenuField/index.js +10 -0
  71. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/MenuField/index.js.map +1 -0
  72. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/MenuField/menuTree.js +113 -0
  73. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/MenuField/menuTree.js.map +1 -0
  74. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/Select/MultiSelectUI.js +15 -2
  75. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/Select/MultiSelectUI.js.map +1 -1
  76. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/ItemLimitStatus.js +22 -0
  77. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/ItemLimitStatus.js.map +1 -0
  78. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/index.js.map +1 -1
  79. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js +2 -0
  80. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js.map +1 -1
  81. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js +198 -0
  82. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js.map +1 -1
  83. package/dist/cjs/router/dashboard/[contentType]/[edit]/edit.js +10 -1
  84. package/dist/cjs/router/dashboard/[contentType]/[edit]/edit.js.map +1 -1
  85. package/dist/cjs/router/dashboard/[contentType]/[edit]/screen.js +2 -2
  86. package/dist/cjs/router/dashboard/[contentType]/[edit]/screen.js.map +1 -1
  87. package/dist/cjs/router/dashboard/debugging/api-routes/ApiTest.js +2 -2
  88. package/dist/cjs/router/dashboard/debugging/api-routes/ApiTest.js.map +1 -1
  89. package/dist/cjs/router/dashboard/debugging/api-routes/JsonViewer.js +17 -0
  90. package/dist/cjs/router/dashboard/debugging/api-routes/JsonViewer.js.map +1 -0
  91. package/dist/cjs/router/dashboard/debugging/api-routes/SchemaViewer.js +40 -26
  92. package/dist/cjs/router/dashboard/debugging/api-routes/SchemaViewer.js.map +1 -1
  93. package/dist/cjs/router/dashboard/debugging/api-routes/test.js +6 -5
  94. package/dist/cjs/router/dashboard/debugging/api-routes/test.js.map +1 -1
  95. package/dist/cjs/router/dashboard/seo/index.js +6 -0
  96. package/dist/cjs/router/dashboard/seo/index.js.map +1 -0
  97. package/dist/cjs/router/dashboard/seo/screen.js +219 -0
  98. package/dist/cjs/router/dashboard/seo/screen.js.map +1 -0
  99. package/dist/cjs/router/dashboard/seo/site-analysis.js +153 -0
  100. package/dist/cjs/router/dashboard/seo/site-analysis.js.map +1 -0
  101. package/dist/cjs/router/dashboard/settings/llms/index.js +6 -0
  102. package/dist/cjs/router/dashboard/settings/llms/index.js.map +1 -0
  103. package/dist/cjs/router/dashboard/settings/llms/screen.js +122 -0
  104. package/dist/cjs/router/dashboard/settings/llms/screen.js.map +1 -0
  105. package/dist/cjs/router/dashboard/settings/screen.js +7 -0
  106. package/dist/cjs/router/dashboard/settings/screen.js.map +1 -1
  107. package/dist/cjs/router/shared/route-definitions.js +3 -2
  108. package/dist/cjs/router/shared/route-definitions.js.map +1 -1
  109. package/dist/cjs/router/shared/route-list.js +19 -3
  110. package/dist/cjs/router/shared/route-list.js.map +1 -1
  111. package/dist/cjs/router/shared/route-renderer.js +2 -1
  112. package/dist/cjs/router/shared/route-renderer.js.map +1 -1
  113. package/dist/docs/index.md +294 -192
  114. package/dist/esm/app/runtime-app.d.ts.map +1 -1
  115. package/dist/esm/app/runtime-app.js +4 -1
  116. package/dist/esm/app/runtime-app.js.map +1 -1
  117. package/dist/esm/components/app-sidebar.d.ts +2 -1
  118. package/dist/esm/components/app-sidebar.d.ts.map +1 -1
  119. package/dist/esm/components/app-sidebar.js +15 -4
  120. package/dist/esm/components/app-sidebar.js.map +1 -1
  121. package/dist/esm/components/media/MediaLibrary.d.ts.map +1 -1
  122. package/dist/esm/components/media/MediaLibrary.js +11 -2
  123. package/dist/esm/components/media/MediaLibrary.js.map +1 -1
  124. package/dist/esm/components/media/contexts/MediaLibraryContext.d.ts +2 -0
  125. package/dist/esm/components/media/contexts/MediaLibraryContext.d.ts.map +1 -1
  126. package/dist/esm/components/media/contexts/MediaLibraryContext.js +1 -1
  127. package/dist/esm/components/media/contexts/MediaLibraryContext.js.map +1 -1
  128. package/dist/esm/components/media/previews/MediaContextMenuContent.d.ts.map +1 -1
  129. package/dist/esm/components/media/previews/MediaContextMenuContent.js +70 -17
  130. package/dist/esm/components/media/previews/MediaContextMenuContent.js.map +1 -1
  131. package/dist/esm/components/media/previews/Previews.d.ts.map +1 -1
  132. package/dist/esm/components/media/previews/Previews.js +90 -36
  133. package/dist/esm/components/media/previews/Previews.js.map +1 -1
  134. package/dist/esm/components/media/previews/context/MediaPreviewContext.d.ts +2 -0
  135. package/dist/esm/components/media/previews/context/MediaPreviewContext.d.ts.map +1 -1
  136. package/dist/esm/components/media/previews/context/MediaPreviewContext.js.map +1 -1
  137. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.d.ts.map +1 -1
  138. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.js +7 -10
  139. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.js.map +1 -1
  140. package/dist/esm/components/media/previews/hooks/useMediaPreviewRenderer.d.ts.map +1 -1
  141. package/dist/esm/components/media/previews/hooks/useMediaPreviewRenderer.js +3 -1
  142. package/dist/esm/components/media/previews/hooks/useMediaPreviewRenderer.js.map +1 -1
  143. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.d.ts +4 -1
  144. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.d.ts.map +1 -1
  145. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.js +17 -10
  146. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.js.map +1 -1
  147. package/dist/esm/components/media/previews/utils/mediaDownload.d.ts +13 -0
  148. package/dist/esm/components/media/previews/utils/mediaDownload.d.ts.map +1 -0
  149. package/dist/esm/components/media/previews/utils/mediaDownload.js +49 -0
  150. package/dist/esm/components/media/previews/utils/mediaDownload.js.map +1 -0
  151. package/dist/esm/components/media/previews/views/PreviewsListView.js +1 -1
  152. package/dist/esm/components/media/previews/views/PreviewsListView.js.map +1 -1
  153. package/dist/esm/components/rakun-logo.d.ts +1 -5
  154. package/dist/esm/components/rakun-logo.d.ts.map +1 -1
  155. package/dist/esm/components/rakun-logo.js +1 -6
  156. package/dist/esm/components/rakun-logo.js.map +1 -1
  157. package/dist/esm/components/ui/context-menu.js +1 -1
  158. package/dist/esm/components/ui/context-menu.js.map +1 -1
  159. package/dist/esm/i18n/catalog.d.ts +645 -6
  160. package/dist/esm/i18n/catalog.d.ts.map +1 -1
  161. package/dist/esm/i18n/catalog.js +366 -6
  162. package/dist/esm/i18n/catalog.js.map +1 -1
  163. package/dist/esm/layouts.d.ts +3 -1
  164. package/dist/esm/layouts.d.ts.map +1 -1
  165. package/dist/esm/layouts.js +2 -2
  166. package/dist/esm/layouts.js.map +1 -1
  167. package/dist/esm/lib/media.d.ts +8 -0
  168. package/dist/esm/lib/media.d.ts.map +1 -1
  169. package/dist/esm/lib/media.js +1 -0
  170. package/dist/esm/lib/media.js.map +1 -1
  171. package/dist/esm/media.d.ts +19 -1
  172. package/dist/esm/media.d.ts.map +1 -1
  173. package/dist/esm/media.js +44 -0
  174. package/dist/esm/media.js.map +1 -1
  175. package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.d.ts.map +1 -1
  176. package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js +18 -7
  177. package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js.map +1 -1
  178. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.d.ts.map +1 -1
  179. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.js +11 -6
  180. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.js.map +1 -1
  181. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.d.ts.map +1 -1
  182. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js +2 -1
  183. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js.map +1 -1
  184. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.d.ts.map +1 -1
  185. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js +4 -3
  186. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js.map +1 -1
  187. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.d.ts.map +1 -1
  188. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js +1 -1
  189. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js.map +1 -1
  190. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/SeoTabContent.d.ts +2 -0
  191. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/SeoTabContent.d.ts.map +1 -0
  192. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/SeoTabContent.js +283 -0
  193. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/SeoTabContent.js.map +1 -0
  194. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/seo-analysis.d.ts +10 -0
  195. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/seo-analysis.d.ts.map +1 -0
  196. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/seo-analysis.js +83 -0
  197. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/seo-analysis.js.map +1 -0
  198. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.d.ts +2 -1
  199. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.d.ts.map +1 -1
  200. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js +9 -1
  201. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js.map +1 -1
  202. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ContentReferenceField/ContentReferenceMultiSelectUI.d.ts.map +1 -1
  203. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ContentReferenceField/ContentReferenceMultiSelectUI.js +15 -2
  204. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ContentReferenceField/ContentReferenceMultiSelectUI.js.map +1 -1
  205. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.d.ts +6 -2
  206. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.d.ts.map +1 -1
  207. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.js +221 -234
  208. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/DynamicDataControl.js.map +1 -1
  209. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/FileField/index.d.ts.map +1 -1
  210. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js +20 -1
  211. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js.map +1 -1
  212. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.d.ts.map +1 -1
  213. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js +27 -21
  214. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js.map +1 -1
  215. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/index.d.ts +4 -1
  216. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/index.d.ts.map +1 -1
  217. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/index.js.map +1 -1
  218. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/linkValue.d.ts +4 -0
  219. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/linkValue.d.ts.map +1 -0
  220. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/linkValue.js +21 -0
  221. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/linkValue.js.map +1 -0
  222. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorModulePicker.d.ts.map +1 -1
  223. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorModulePicker.js +11 -2
  224. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/IteratorModulePicker.js.map +1 -1
  225. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/SimpleListUI.d.ts.map +1 -1
  226. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/SimpleListUI.js +38 -11
  227. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/SimpleListUI.js.map +1 -1
  228. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/MenuUI.d.ts +4 -0
  229. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/MenuUI.d.ts.map +1 -0
  230. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/MenuUI.js +130 -0
  231. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/MenuUI.js.map +1 -0
  232. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/index.d.ts +14 -0
  233. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/index.d.ts.map +1 -0
  234. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/index.js +5 -0
  235. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/index.js.map +1 -0
  236. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/menuTree.d.ts +23 -0
  237. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/menuTree.d.ts.map +1 -0
  238. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/menuTree.js +103 -0
  239. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/MenuField/menuTree.js.map +1 -0
  240. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Select/MultiSelectUI.d.ts.map +1 -1
  241. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Select/MultiSelectUI.js +15 -2
  242. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Select/MultiSelectUI.js.map +1 -1
  243. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/ItemLimitStatus.d.ts +6 -0
  244. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/ItemLimitStatus.d.ts.map +1 -0
  245. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/ItemLimitStatus.js +18 -0
  246. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/ItemLimitStatus.js.map +1 -0
  247. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/index.d.ts +2 -1
  248. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/index.d.ts.map +1 -1
  249. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/index.js.map +1 -1
  250. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.d.ts.map +1 -1
  251. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js +2 -0
  252. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js.map +1 -1
  253. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.d.ts +43 -0
  254. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.d.ts.map +1 -1
  255. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js +198 -0
  256. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js.map +1 -1
  257. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.d.ts.map +1 -1
  258. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.d.ts.map +1 -1
  259. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.js +10 -1
  260. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.js.map +1 -1
  261. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.types.d.ts +1 -0
  262. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.types.d.ts.map +1 -1
  263. package/dist/esm/router/dashboard/[contentType]/[edit]/screen.d.ts +2 -1
  264. package/dist/esm/router/dashboard/[contentType]/[edit]/screen.d.ts.map +1 -1
  265. package/dist/esm/router/dashboard/[contentType]/[edit]/screen.js +2 -2
  266. package/dist/esm/router/dashboard/[contentType]/[edit]/screen.js.map +1 -1
  267. package/dist/esm/router/dashboard/debugging/api-routes/ApiTest.d.ts.map +1 -1
  268. package/dist/esm/router/dashboard/debugging/api-routes/ApiTest.js +2 -2
  269. package/dist/esm/router/dashboard/debugging/api-routes/ApiTest.js.map +1 -1
  270. package/dist/esm/router/dashboard/debugging/api-routes/JsonViewer.d.ts +5 -0
  271. package/dist/esm/router/dashboard/debugging/api-routes/JsonViewer.d.ts.map +1 -0
  272. package/dist/esm/router/dashboard/debugging/api-routes/JsonViewer.js +14 -0
  273. package/dist/esm/router/dashboard/debugging/api-routes/JsonViewer.js.map +1 -0
  274. package/dist/esm/router/dashboard/debugging/api-routes/SchemaViewer.d.ts.map +1 -1
  275. package/dist/esm/router/dashboard/debugging/api-routes/SchemaViewer.js +42 -28
  276. package/dist/esm/router/dashboard/debugging/api-routes/SchemaViewer.js.map +1 -1
  277. package/dist/esm/router/dashboard/debugging/api-routes/test.d.ts.map +1 -1
  278. package/dist/esm/router/dashboard/debugging/api-routes/test.js +6 -5
  279. package/dist/esm/router/dashboard/debugging/api-routes/test.js.map +1 -1
  280. package/dist/esm/router/dashboard/seo/index.d.ts +2 -0
  281. package/dist/esm/router/dashboard/seo/index.d.ts.map +1 -0
  282. package/dist/esm/router/dashboard/seo/index.js +2 -0
  283. package/dist/esm/router/dashboard/seo/index.js.map +1 -0
  284. package/dist/esm/router/dashboard/seo/screen.d.ts +6 -0
  285. package/dist/esm/router/dashboard/seo/screen.d.ts.map +1 -0
  286. package/dist/esm/router/dashboard/seo/screen.js +212 -0
  287. package/dist/esm/router/dashboard/seo/screen.js.map +1 -0
  288. package/dist/esm/router/dashboard/seo/site-analysis.d.ts +40 -0
  289. package/dist/esm/router/dashboard/seo/site-analysis.d.ts.map +1 -0
  290. package/dist/esm/router/dashboard/seo/site-analysis.js +148 -0
  291. package/dist/esm/router/dashboard/seo/site-analysis.js.map +1 -0
  292. package/dist/esm/router/dashboard/settings/llms/index.d.ts +2 -0
  293. package/dist/esm/router/dashboard/settings/llms/index.d.ts.map +1 -0
  294. package/dist/esm/router/dashboard/settings/llms/index.js +2 -0
  295. package/dist/esm/router/dashboard/settings/llms/index.js.map +1 -0
  296. package/dist/esm/router/dashboard/settings/llms/screen.d.ts +2 -0
  297. package/dist/esm/router/dashboard/settings/llms/screen.d.ts.map +1 -0
  298. package/dist/esm/router/dashboard/settings/llms/screen.js +115 -0
  299. package/dist/esm/router/dashboard/settings/llms/screen.js.map +1 -0
  300. package/dist/esm/router/dashboard/settings/screen.d.ts.map +1 -1
  301. package/dist/esm/router/dashboard/settings/screen.js +8 -1
  302. package/dist/esm/router/dashboard/settings/screen.js.map +1 -1
  303. package/dist/esm/router/shared/route-definitions.d.ts +6 -2
  304. package/dist/esm/router/shared/route-definitions.d.ts.map +1 -1
  305. package/dist/esm/router/shared/route-definitions.js +3 -2
  306. package/dist/esm/router/shared/route-definitions.js.map +1 -1
  307. package/dist/esm/router/shared/route-list.d.ts +1 -1
  308. package/dist/esm/router/shared/route-list.d.ts.map +1 -1
  309. package/dist/esm/router/shared/route-list.js +17 -1
  310. package/dist/esm/router/shared/route-list.js.map +1 -1
  311. package/dist/esm/router/shared/route-renderer.d.ts.map +1 -1
  312. package/dist/esm/router/shared/route-renderer.js +2 -1
  313. package/dist/esm/router/shared/route-renderer.js.map +1 -1
  314. package/dist/esm/router/shared/types.d.ts +5 -0
  315. package/dist/esm/router/shared/types.d.ts.map +1 -1
  316. package/dist/styles.css +237 -6
  317. package/dist/tsconfig.build.tsbuildinfo +1 -1
  318. package/package.json +3 -3
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Bug, HelpCircle, Images, Settings, User } from 'lucide-react';
2
+ import { Bug, ExternalLink, HelpCircle, Images, SearchCheck, Settings, User, } from 'lucide-react';
3
3
  import { useTranslations } from '../i18n/index.js';
4
4
  import { ManagerLink } from '../link.js';
5
5
  import { getManagerPathHref, getManagerRelativePathname, getManagerRouteHref, } from '../state/navigation.js';
@@ -12,7 +12,7 @@ import { useManagerPlugins } from '../plugins.js';
12
12
  import { getEncodedContentPermissions } from '../state/permissions.js';
13
13
  import { useSession } from '../state/session.js';
14
14
  import { RakunLogoMark } from './rakun-logo.js';
15
- import { Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarMenu, SidebarMenuButton, SidebarMenuItem, } from './ui/sidebar.js';
15
+ import { Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarMenu, SidebarMenuAction, SidebarMenuButton, SidebarMenuItem, } from './ui/sidebar.js';
16
16
  const cleanPathname = (path) => {
17
17
  const [pathname = ''] = path.split(/[?#]/);
18
18
  return pathname.replace(/\/+$/, '') || '/';
@@ -28,6 +28,16 @@ const isActiveHref = (href, pathname, basePath) => {
28
28
  return currentPath === itemPath || currentPath.startsWith(`${itemPath}/`);
29
29
  };
30
30
  const getDefaultSecondaryNavItems = (basePath, t) => [
31
+ {
32
+ title: t('sidebar.seo'),
33
+ url: getManagerPathHref('/seo', { basePath }),
34
+ icon: SearchCheck,
35
+ permissions: [
36
+ 'content.SeoSettings.readAny',
37
+ 'content.SeoSettings.own',
38
+ ],
39
+ permissionMode: 'any',
40
+ },
31
41
  {
32
42
  title: t('sidebar.mediaLibrary'),
33
43
  url: getManagerPathHref('/media', { basePath }),
@@ -70,6 +80,7 @@ const getDefaultSecondaryNavItems = (basePath, t) => [
70
80
  'content.Redirect.readAny',
71
81
  'content.RobotsRule.readAny',
72
82
  'content.SeoSettings.readAny',
83
+ 'content.LlmsSettings.readAny',
73
84
  ],
74
85
  permissionMode: 'any',
75
86
  },
@@ -125,7 +136,7 @@ const filterSidebarItems = (items, hasPermissions, hasAnyPermission) => items.fl
125
136
  const visibleItems = filterSidebarItems(item.items, hasPermissions, hasAnyPermission);
126
137
  return visibleItems.length > 0 ? [{ ...item, items: visibleItems }] : [];
127
138
  });
128
- export function AppSidebar({ contentTypes, pathname, basePath = '', secondaryItems, ...props }) {
139
+ export function AppSidebar({ contentTypes, pathname, basePath = '', siteUrl, secondaryItems, ...props }) {
129
140
  const t = useTranslations();
130
141
  const { hasCurrentTour, startCurrentTour } = useManagerHelp();
131
142
  const pluginRegistry = useManagerPlugins();
@@ -180,7 +191,7 @@ export function AppSidebar({ contentTypes, pathname, basePath = '', secondaryIte
180
191
  return groups;
181
192
  }, new Map());
182
193
  const secondaryPluginItems = pluginItems.filter((item) => (item.position ?? 'secondary') === 'secondary');
183
- return (_jsxs(Sidebar, { variant: "inset", "data-tour": "manager-sidebar", ...props, children: [_jsx(SidebarHeader, { children: _jsx(SidebarMenu, { children: _jsx(SidebarMenuItem, { children: _jsx(SidebarMenuButton, { size: "lg", asChild: true, children: _jsxs(ManagerLink, { href: basePath, children: [_jsx("div", { className: "flex aspect-square size-8 items-center justify-center rounded-lg", children: _jsx(RakunLogoMark, { className: "size-8 text-sidebar-foreground" }) }), _jsxs("div", { className: "grid flex-1 text-left text-sm leading-tight", children: [_jsx("span", { className: "truncate font-medium", children: t('brand.name') }), _jsx("span", { className: "truncate text-xs", children: t('brand.tagline') })] })] }) }) }) }) }), _jsxs(SidebarContent, { children: [contentTypeItems.length > 0 ? _jsx(NavMain, { items: contentTypeItems }) : null, Array.from(primaryPluginGroups, ([label, items]) => (_jsx(NavMain, { label: label, items: items }, label))), _jsx(NavSecondary, { items: filterSidebarItems([...resolvedSecondaryItems, ...secondaryPluginItems, helpItem], hasPermissions, hasAnyPermission).map((item) => ({
194
+ return (_jsxs(Sidebar, { variant: "inset", "data-tour": "manager-sidebar", ...props, children: [_jsx(SidebarHeader, { children: _jsx(SidebarMenu, { children: _jsxs(SidebarMenuItem, { children: [_jsx(SidebarMenuButton, { size: "lg", asChild: true, children: _jsxs(ManagerLink, { href: basePath, children: [_jsx("div", { className: "flex aspect-square size-8 items-center justify-center rounded-lg", children: _jsx(RakunLogoMark, { className: "size-8 text-sidebar-foreground" }) }), _jsxs("div", { className: "grid flex-1 text-left text-sm leading-tight", children: [_jsx("span", { className: "truncate font-medium", children: t('brand.name') }), _jsx("span", { className: "truncate text-xs", children: t('brand.tagline') })] })] }) }), _jsx(SidebarMenuAction, { asChild: true, children: _jsxs("a", { "aria-label": t('sidebar.visitSite'), href: siteUrl || '/', rel: "noreferrer", target: "_blank", title: t('sidebar.visitSite'), children: [_jsx(ExternalLink, {}), _jsx("span", { className: "sr-only", children: t('sidebar.visitSite') })] }) })] }) }) }), _jsxs(SidebarContent, { children: [contentTypeItems.length > 0 ? _jsx(NavMain, { items: contentTypeItems }) : null, Array.from(primaryPluginGroups, ([label, items]) => (_jsx(NavMain, { label: label, items: items }, label))), _jsx(NavSecondary, { items: filterSidebarItems([...resolvedSecondaryItems, ...secondaryPluginItems, helpItem], hasPermissions, hasAnyPermission).map((item) => ({
184
195
  ...item,
185
196
  isActive: 'onClick' in item && item.onClick
186
197
  ? false
@@ -1 +1 @@
1
- {"version":3,"file":"app-sidebar.js","sourceRoot":"","sources":["../../../src/components/app-sidebar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-sidebar.js","sourceRoot":"","sources":["../../../src/components/app-sidebar.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,GAAG,EACH,YAAY,EACZ,UAAU,EACV,MAAM,EACN,WAAW,EACX,QAAQ,EACR,IAAI,GAEL,MAAM,cAAc,CAAA;AAIrB,OAAO,EAAE,eAAe,EAA0B,MAAM,QAAQ,CAAA;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,mBAAmB,GACpB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EACL,OAAO,EACP,cAAc,EACd,aAAa,EACb,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GAChB,MAAM,cAAc,CAAA;AAcrB,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE;IACrC,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC1C,OAAO,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,GAAG,CAAA;AAC5C,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,QAA4B,EAAE,QAAgB,EAAE,EAAE;IACpF,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAEpC,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;IAC3C,MAAM,QAAQ,GAAG,aAAa,CAAC,0BAA0B,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;IAE9E,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;QACrB,OAAO,WAAW,KAAK,GAAG,CAAA;IAC5B,CAAC;IAED,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAA;AAC3E,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAClC,QAAgB,EAChB,CAAqC,EACf,EAAE,CAAC;IACzB;QACE,KAAK,EAAE,CAAC,CAAC,aAAa,CAAC;QACvB,GAAG,EAAE,kBAAkB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC;QAC7C,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE;YACX,6BAA6B;YAC7B,yBAAyB;SAC1B;QACD,cAAc,EAAE,KAAK;KACtB;IACD;QACE,KAAK,EAAE,CAAC,CAAC,sBAAsB,CAAC;QAChC,GAAG,EAAE,kBAAkB,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC;QAC/C,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,CAAC,uBAAuB,EAAE,mBAAmB,CAAC;QAC3D,cAAc,EAAE,KAAK;KACtB;IACD;QACE,KAAK,EAAE,CAAC,CAAC,eAAe,CAAC;QACzB,GAAG,EAAE,kBAAkB,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC;QAC/C,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,CAAC,6BAA6B,CAAC;KAC7C;IACD;QACE,KAAK,EAAE,CAAC,CAAC,mBAAmB,CAAC;QAC7B,GAAG,EAAE,kBAAkB,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,CAAC;QACnD,IAAI,EAAE,GAAG;QACT,WAAW,EAAE;YACX,8BAA8B;YAC9B,sBAAsB;YACtB,sBAAsB;SACvB;QACD,cAAc,EAAE,KAAK;KACtB;IACD;QACE,KAAK,EAAE,CAAC,CAAC,kBAAkB,CAAC;QAC5B,GAAG,EAAE,kBAAkB,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC;QAClD,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE;YACX,yBAAyB;YACzB,sBAAsB;YACtB,0BAA0B;YAC1B,mBAAmB;YACnB,uBAAuB;YACvB,wBAAwB;YACxB,2BAA2B;YAC3B,yBAAyB;YACzB,6BAA6B;YAC7B,oCAAoC;YACpC,0BAA0B;YAC1B,4BAA4B;YAC5B,6BAA6B;YAC7B,8BAA8B;SAC/B;QACD,cAAc,EAAE,KAAK;KACtB;CACF,CAAA;AAED,MAAM,sBAAsB,GAAG,CAC7B,YAAkC,EAClC,QAAgB,EAChB,gBAAwD,EACxD,CAA0B,EAC1B,QAAiB,EACK,EAAE;IACxB,MAAM,KAAK,GAAyB,EAAE,CAAA;IACtC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA8B,CAAA;IAExD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,SAAQ;QAExB,MAAM,eAAe,GAAG,4BAA4B,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAA;QAC9E,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAAE,CAAC;YACrE,SAAQ;QACV,CAAC;QAED,MAAM,IAAI,GAAG;YACX,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACzB,GAAG,EAAE,mBAAmB,CACtB;gBACE,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE,IAAI,CAAC,IAAI;aACvB,EACD,EAAE,QAAQ,EAAE,CACb;YACD,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACvC,QAAQ,EAAE,KAAK;SAChB,CAAA;QAED,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAE1D,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAChB,SAAQ;QACV,CAAC;QAED,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3C,IAAI,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAE5C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG;gBACT,KAAK,EAAE,aAAa;gBACpB,GAAG,EAAE,EAAE;gBACP,KAAK,EAAE,EAAE;aACV,CAAA;YACD,UAAU,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAA;YACvC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACtB,CAAC;QAED,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1B,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,CAAA;IACrC,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,CACzB,KAA2B,EAC3B,cAAsD,EACtD,gBAAwD,EAClC,EAAE,CACxB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;IACrB,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAA;IACjD,MAAM,OAAO,GACX,WAAW,CAAC,MAAM,KAAK,CAAC;QACxB,CAAC,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAA;IAE/F,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAA;IAEvB,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IAE9B,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAA;IAErF,OAAO,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AAC1E,CAAC,CAAC,CAAA;AAEJ,MAAM,UAAU,UAAU,CAAC,EACzB,YAAY,EACZ,QAAQ,EACR,QAAQ,GAAG,EAAE,EACb,OAAO,EACP,cAAc,EACd,GAAG,KAAK,EAOT;IACC,MAAM,CAAC,GAAG,eAAe,EAAE,CAAA;IAC3B,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,cAAc,EAAE,CAAA;IAC7D,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAA;IAC1C,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAAE,CAAA;IACzD,MAAM,sBAAsB,GAAG,cAAc,IAAI,2BAA2B,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;IACzF,MAAM,gBAAgB,GAAG,sBAAsB,CAC7C,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,CAAC,EACD,QAAQ,CACT,CAAA;IACD,MAAM,QAAQ,GAAuB;QACnC,KAAK,EAAE,CAAC,CAAC,cAAc,CAAC;QACxB,GAAG,EAAE,GAAG;QACR,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,CAAC,cAAc;QACzB,OAAO,EAAE,gBAAgB;KAC1B,CAAA;IACD,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO;SACvC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO;YACxB,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACnE,CAAC,CAAC,SAAS,CAAA;QACb,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,+BAA+B,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,+BAA+B,IAAI,CAAC,OAAO,IAAI,CACvG,CAAA;QACH,CAAC;QACD,IAAI,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,+BAA+B,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,wCAAwC,KAAK,CAAC,IAAI,IAAI,CAC9G,CAAA;QACH,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAA;QACxC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACb,+BAA+B,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,EAAE,gCAAgC,CACxF,CAAA;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAChD,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC1E,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAA;QAEhF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3D,OAAO,EAAE,CAAA;QACX,CAAC;QAED,OAAO;YACL;gBACE,GAAG,IAAI;gBACP,GAAG;gBACH,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC;aACnE;SACF,CAAA;IACH,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAA;IAClD,MAAM,iBAAiB,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAA;IAC9C,MAAM,mBAAmB,GAAG,WAAW;SACpC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,KAAK,SAAS,CAAC;SAC9D,MAAM,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,iBAAiB,CAAA;QAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;QACrC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QACxB,OAAO,MAAM,CAAA;IACf,CAAC,EAAE,IAAI,GAAG,EAA8B,CAAC,CAAA;IAC3C,MAAM,oBAAoB,GAAG,WAAW,CAAC,MAAM,CAC7C,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,KAAK,WAAW,CACzD,CAAA;IAED,OAAO,CACL,MAAC,OAAO,IAAC,OAAO,EAAC,OAAO,eAAW,iBAAiB,KAAK,KAAK,aAC5D,KAAC,aAAa,cACZ,KAAC,WAAW,cACV,MAAC,eAAe,eACd,KAAC,iBAAiB,IAAC,IAAI,EAAC,IAAI,EAAC,OAAO,kBAClC,MAAC,WAAW,IAAC,IAAI,EAAE,QAAQ,aACzB,cAAK,SAAS,EAAC,kEAAkE,YAC/E,KAAC,aAAa,IAAC,SAAS,EAAC,gCAAgC,GAAG,GACxD,EACN,eAAK,SAAS,EAAC,6CAA6C,aAC1D,eAAM,SAAS,EAAC,sBAAsB,YAAE,CAAC,CAAC,YAAY,CAAC,GAAQ,EAC/D,eAAM,SAAS,EAAC,kBAAkB,YAAE,CAAC,CAAC,eAAe,CAAC,GAAQ,IAC1D,IACM,GACI,EACpB,KAAC,iBAAiB,IAAC,OAAO,kBACxB,2BACc,CAAC,CAAC,mBAAmB,CAAC,EAClC,IAAI,EAAE,OAAO,IAAI,GAAG,EACpB,GAAG,EAAC,YAAY,EAChB,MAAM,EAAC,QAAQ,EACf,KAAK,EAAE,CAAC,CAAC,mBAAmB,CAAC,aAE7B,KAAC,YAAY,KAAG,EAChB,eAAM,SAAS,EAAC,SAAS,YAAE,CAAC,CAAC,mBAAmB,CAAC,GAAQ,IACvD,GACc,IACJ,GACN,GACA,EAEhB,MAAC,cAAc,eACZ,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAC,OAAO,IAAC,KAAK,EAAE,gBAAgB,GAAI,CAAC,CAAC,CAAC,IAAI,EACzE,KAAK,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CACnD,KAAC,OAAO,IAAa,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,IAAjC,KAAK,CAAgC,CACpD,CAAC,EACF,KAAC,YAAY,IACX,KAAK,EAAE,kBAAkB,CACvB,CAAC,GAAG,sBAAsB,EAAE,GAAG,oBAAoB,EAAE,QAAQ,CAAC,EAC9D,cAAc,EACd,gBAAgB,CACjB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4BACf,GAAG,IAAI;4BACP,QAAQ,EACN,SAAS,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO;gCAC/B,CAAC,CAAC,KAAK;gCACP,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC;yBACjD,CAAC,CAAC,EACH,SAAS,EAAC,SAAS,GACnB,IACa,EACjB,KAAC,aAAa,iBAAW,cAAc,YACrC,KAAC,OAAO,KAAG,GACG,IACR,CACX,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MediaLibrary.d.ts","sourceRoot":"","sources":["../../../../src/components/media/MediaLibrary.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAmC,KAAK,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAQlG,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAI9C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAA;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC9B,qBAAqB,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAA;IAC9D,eAAe,CAAC,EAAE,mBAAmB,CAAA;CACtC,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,SAAS,EACT,UAAkB,EAClB,QAAQ,EACR,OAAe,EACf,cAAsB,EACtB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,GAChB,EAAE,iBAAiB,2CAkNnB"}
1
+ {"version":3,"file":"MediaLibrary.d.ts","sourceRoot":"","sources":["../../../../src/components/media/MediaLibrary.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAmC,KAAK,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAQlG,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAI9C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAA;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC9B,qBAAqB,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAA;IAC9D,eAAe,CAAC,EAAE,mBAAmB,CAAA;CACtC,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,SAAS,EACT,UAAkB,EAClB,QAAQ,EACR,OAAe,EACf,cAAsB,EACtB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,GAChB,EAAE,iBAAiB,2CA0NnB"}
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { startTransition, useCallback, useState } from 'react';
3
+ import { startTransition, useCallback, useEffect, useState } from 'react';
4
4
  import { useManagerClient } from '../../client/react.js';
5
5
  import { useQuery } from '@tanstack/react-query';
6
6
  import { toast } from 'sonner';
@@ -25,7 +25,14 @@ export default function MediaLibrary({ className, selectable = false, onSelect,
25
25
  responsiveSizes: [...DEFAULT_RESPONSIVE_IMAGE_WIDTHS],
26
26
  minBytesToOptimize: 350 * 1024,
27
27
  previewMaxWidth: 32,
28
+ video: { quality: 80 },
28
29
  });
30
+ const [optimizationMediaType, setOptimizationMediaType] = useState(forcedMediaTypeFilter === 'video' ? 'video' : 'image');
31
+ useEffect(() => {
32
+ if (forcedMediaTypeFilter === 'image' || forcedMediaTypeFilter === 'video') {
33
+ setOptimizationMediaType(forcedMediaTypeFilter);
34
+ }
35
+ }, [forcedMediaTypeFilter]);
29
36
  const [externalEditFolderRequest, setExternalEditFolderRequest] = useState(null);
30
37
  const [externalDeleteFolderRequest, setExternalDeleteFolderRequest] = useState(null);
31
38
  const [, setFolderRequestSeq] = useState(0);
@@ -151,9 +158,11 @@ export default function MediaLibrary({ className, selectable = false, onSelect,
151
158
  setOptimizeOptions: (patch) => {
152
159
  setLibraryOptimizeOptions((prev) => ({ ...prev, ...patch }));
153
160
  },
161
+ optimizationMediaType,
162
+ setOptimizationMediaType,
154
163
  };
155
164
  return (_jsx(MediaLibraryProvider, { value: mediaLibraryContext, children: _jsxs("div", { className: cn('relative grid grid-cols-1 overflow-hidden rounded-xl border lg:grid-cols-[minmax(0,18rem)_minmax(0,1fr)]', isModal
156
165
  ? 'h-full min-h-0 grid-rows-[auto_minmax(0,1fr)]'
157
- : 'grid-rows-[auto_auto] lg:h-full lg:min-h-0 lg:grid-rows-[minmax(0,1fr)]', className), children: [_jsx(FoldersTree, { isModal: isModal }), _jsxs("div", { className: cn('flex min-h-0 min-w-0 flex-col overflow-hidden p-4', isModal ? 'h-full' : 'lg:h-full'), children: [_jsxs("p", { className: "mb-4 shrink-0 text-muted-foreground text-sm", children: [t('media.currentFolder'), ' ', _jsx("span", { className: "font-medium text-foreground", children: currentFolder?.path || '/' })] }), _jsx("div", { className: "min-h-0 flex-1", children: _jsx(Previews, {}) })] })] }) }));
166
+ : 'grid-rows-[auto_auto] lg:h-full lg:min-h-0 lg:grid-rows-[minmax(0,1fr)]', className), children: [_jsx(FoldersTree, { isModal: isModal }), _jsx("div", { className: cn('flex min-h-0 min-w-0 flex-col overflow-hidden p-4', isModal ? 'h-full' : 'lg:h-full'), children: _jsx("div", { className: "min-h-0 flex-1", children: _jsx(Previews, {}) }) })] }) }));
158
167
  }
159
168
  //# sourceMappingURL=MediaLibrary.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MediaLibrary.js","sourceRoot":"","sources":["../../../../src/components/media/MediaLibrary.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MediaLibrary.js","sourceRoot":"","sources":["../../../../src/components/media/MediaLibrary.tsx"],"names":[],"mappings":"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"}
@@ -41,6 +41,8 @@ type MediaLibraryContextValue = {
41
41
  optimizeOptions: FileOptimizeOptions;
42
42
  setOptimizeEnabled: (value: boolean) => void;
43
43
  setOptimizeOptions: (patch: Partial<FileOptimizeOptions>) => void;
44
+ optimizationMediaType: 'image' | 'video';
45
+ setOptimizationMediaType: (value: 'image' | 'video') => void;
44
46
  };
45
47
  export declare function MediaLibraryProvider({ value, children, }: {
46
48
  value: MediaLibraryContextValue;
@@ -1 +1 @@
1
- {"version":3,"file":"MediaLibraryContext.d.ts","sourceRoot":"","sources":["../../../../../src/components/media/contexts/MediaLibraryContext.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAA;AAEpE,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,KAAK,mBAAmB,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,KAAK,wBAAwB,GAAG;IAC9B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,iBAAiB,EAAE,MAAM,CAAA;IACzB,kBAAkB,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IACrD,OAAO,CAAC,EAAE,UAAU,EAAE,CAAA;IACtB,gBAAgB,EAAE,OAAO,CAAA;IACzB,kBAAkB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1C,iBAAiB,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;IAC/C,mBAAmB,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;IACjD,yBAAyB,EAAE,mBAAmB,GAAG,IAAI,CAAA;IACrD,2BAA2B,EAAE,mBAAmB,GAAG,IAAI,CAAA;IACvD,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,OAAO,CAAA;IACvB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC9B,qBAAqB,CAAC,EAAE,eAAe,CAAA;IACvC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAA;IACvC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxE,QAAQ,EAAE,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAA;IAClD,eAAe,EAAE,OAAO,CAAA;IACxB,cAAc,EAAE,OAAO,CAAA;IACvB,eAAe,EAAE,mBAAmB,CAAA;IACpC,kBAAkB,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAC5C,kBAAkB,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;CAClE,CAAA;AAMD,wBAAgB,oBAAoB,CAAC,EACnC,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,wBAAwB,CAAA;IAC/B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,2CAMA;AAED,wBAAgB,eAAe,6BAM9B"}
1
+ {"version":3,"file":"MediaLibraryContext.d.ts","sourceRoot":"","sources":["../../../../../src/components/media/contexts/MediaLibraryContext.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAA;AAEpE,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,KAAK,mBAAmB,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,KAAK,wBAAwB,GAAG;IAC9B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,iBAAiB,EAAE,MAAM,CAAA;IACzB,kBAAkB,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IACrD,OAAO,CAAC,EAAE,UAAU,EAAE,CAAA;IACtB,gBAAgB,EAAE,OAAO,CAAA;IACzB,kBAAkB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1C,iBAAiB,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;IAC/C,mBAAmB,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;IACjD,yBAAyB,EAAE,mBAAmB,GAAG,IAAI,CAAA;IACrD,2BAA2B,EAAE,mBAAmB,GAAG,IAAI,CAAA;IACvD,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,OAAO,CAAA;IACvB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC9B,qBAAqB,CAAC,EAAE,eAAe,CAAA;IACvC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAA;IACvC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxE,QAAQ,EAAE,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAA;IAClD,eAAe,EAAE,OAAO,CAAA;IACxB,cAAc,EAAE,OAAO,CAAA;IACvB,eAAe,EAAE,mBAAmB,CAAA;IACpC,kBAAkB,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAC5C,kBAAkB,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;IACjE,qBAAqB,EAAE,OAAO,GAAG,OAAO,CAAA;IACxC,wBAAwB,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,KAAK,IAAI,CAAA;CAC7D,CAAA;AAID,wBAAgB,oBAAoB,CAAC,EACnC,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,wBAAwB,CAAA;IAC/B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,2CAEA;AAED,wBAAgB,eAAe,6BAM9B"}
@@ -3,7 +3,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { createContext, useContext } from 'react';
4
4
  const MediaLibraryContext = createContext(null);
5
5
  export function MediaLibraryProvider({ value, children, }) {
6
- return (_jsx(MediaLibraryContext.Provider, { value: value, children: children }));
6
+ return _jsx(MediaLibraryContext.Provider, { value: value, children: children });
7
7
  }
8
8
  export function useMediaLibrary() {
9
9
  const context = useContext(MediaLibraryContext);
@@ -1 +1 @@
1
- {"version":3,"file":"MediaLibraryContext.js","sourceRoot":"","sources":["../../../../../src/components/media/contexts/MediaLibraryContext.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAoDjD,MAAM,mBAAmB,GAAG,aAAa,CACvC,IAAI,CACL,CAAA;AAED,MAAM,UAAU,oBAAoB,CAAC,EACnC,KAAK,EACL,QAAQ,GAIT;IACC,OAAO,CACL,KAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YACvC,QAAQ,GACoB,CAChC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAA;IAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;IAC/E,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
1
+ {"version":3,"file":"MediaLibraryContext.js","sourceRoot":"","sources":["../../../../../src/components/media/contexts/MediaLibraryContext.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAsDjD,MAAM,mBAAmB,GAAG,aAAa,CAAkC,IAAI,CAAC,CAAA;AAEhF,MAAM,UAAU,oBAAoB,CAAC,EACnC,KAAK,EACL,QAAQ,GAIT;IACC,OAAO,KAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAAgC,CAAA;AAC9F,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAA;IAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;IAC/E,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MediaContextMenuContent.d.ts","sourceRoot":"","sources":["../../../../../src/components/media/previews/MediaContextMenuContent.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iDAAiD,CAAA;AAEjF,KAAK,4BAA4B,GAAG;IAClC,IAAI,EAAE,WAAW,GAAG,UAAU,CAAA;CAC/B,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,EAC9C,IAAI,GACL,EAAE,4BAA4B,2CA4F9B"}
1
+ {"version":3,"file":"MediaContextMenuContent.d.ts","sourceRoot":"","sources":["../../../../../src/components/media/previews/MediaContextMenuContent.tsx"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iDAAiD,CAAA;AAEjF,KAAK,4BAA4B,GAAG;IAClC,IAAI,EAAE,WAAW,GAAG,UAAU,CAAA;CAC/B,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,EAC9C,IAAI,GACL,EAAE,4BAA4B,2CA8L9B"}
@@ -1,31 +1,84 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
- import { Check, Crop, FolderInput, LoaderCircle, Pencil, RefreshCw, Trash2, } from 'lucide-react';
4
- import { ContextMenuContent, ContextMenuItem, ContextMenuSeparator, } from '../../ui/context-menu.js';
3
+ import { Check, Crop, Download, FolderInput, ImageUp, LoaderCircle, Pencil, RefreshCw, Trash2, } from 'lucide-react';
4
+ import { toast } from 'sonner';
5
+ import { ContextMenuContent, ContextMenuItem, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, } from '../../ui/context-menu.js';
5
6
  import { useMediaPreview } from './context/MediaPreviewContext.js';
7
+ import { getMediaDownloadAssets, getMediaDownloadFileName, } from './utils/mediaDownload.js';
8
+ import { useManagerClient } from '../../../client/react.js';
6
9
  import { useTranslations } from '../../../i18n/index.js';
7
10
  export default function MediaContextMenuContent({ item, }) {
8
11
  const t = useTranslations();
9
- const { canBulkSelect, bulkSelectedIds, bulkSelectedCount, onRequestSelect, onRequestEdit, onRequestImageEdit, canReimportWithOptimization, isReimporting, onRequestReimport, onRequestBulkReimport, onRequestMove, onRequestDelete, } = useMediaPreview();
12
+ const managerClient = useManagerClient();
13
+ const { canBulkSelect, bulkSelectedIds, bulkSelectedCount, onRequestSelect, onRequestEdit, onRequestImageEdit, isReplacing, onRequestReplace, canReimportWithOptimization, isReimporting, onRequestReimport, onRequestBulkReimport, onRequestMove, onRequestDelete, formatFileSize, } = useMediaPreview();
10
14
  const isMediaItem = '_type' in item && item._type === 'Media';
11
15
  const isImageItem = isMediaItem && item.mime.startsWith('image/');
12
- const selectedImageCount = isMediaItem && bulkSelectedIds.has(item._id)
16
+ const isOptimizableItem = isMediaItem &&
17
+ (item.mime.startsWith('image/') || item.mime.startsWith('video/'));
18
+ const selectedOptimizableCount = isMediaItem && bulkSelectedIds.has(item._id)
13
19
  ? Math.max(bulkSelectedCount, 1)
14
20
  : 1;
15
- const reimportSelected = isImageItem && selectedImageCount > 1 && bulkSelectedIds.has(item._id);
21
+ const reimportSelected = isOptimizableItem &&
22
+ selectedOptimizableCount > 1 &&
23
+ bulkSelectedIds.has(item._id);
24
+ const downloadAssets = isMediaItem ? getMediaDownloadAssets(item) : [];
25
+ const startDownload = (url, fileName, openInNewTab = false) => {
26
+ const anchor = document.createElement('a');
27
+ anchor.href = url;
28
+ anchor.download = fileName;
29
+ anchor.rel = 'noopener';
30
+ if (openInNewTab)
31
+ anchor.target = '_blank';
32
+ anchor.style.display = 'none';
33
+ document.body.append(anchor);
34
+ anchor.click();
35
+ anchor.remove();
36
+ };
37
+ const downloadAsset = async (asset) => {
38
+ if (!isMediaItem)
39
+ return;
40
+ try {
41
+ const resolvedUrl = item.access === 'public' && asset.url
42
+ ? asset.url
43
+ : (await managerClient.request('manager.media.getUrl', {
44
+ key: asset.key,
45
+ access: item.access,
46
+ })).url;
47
+ const fileName = getMediaDownloadFileName(item, asset);
48
+ let response;
49
+ try {
50
+ response = await fetch(resolvedUrl);
51
+ }
52
+ catch (_) {
53
+ startDownload(resolvedUrl, fileName, true);
54
+ return;
55
+ }
56
+ if (!response.ok)
57
+ throw new Error(`Download failed with status ${response.status}`);
58
+ const objectUrl = URL.createObjectURL(await response.blob());
59
+ startDownload(objectUrl, fileName);
60
+ window.setTimeout(() => URL.revokeObjectURL(objectUrl), 1000);
61
+ }
62
+ catch (_) {
63
+ toast.error(t('media.downloadError'));
64
+ }
65
+ };
66
+ const formatDownloadAsset = (asset) => {
67
+ const format = asset.mime.split('/').pop()?.toUpperCase() || asset.mime;
68
+ const dimensions = asset.width && asset.height ? `${asset.width}×${asset.height}` : undefined;
69
+ return [format, dimensions, formatFileSize(asset.size)].filter(Boolean).join(' · ');
70
+ };
16
71
  return (_jsxs(ContextMenuContent, { children: [isMediaItem && canBulkSelect ? (_jsxs(_Fragment, { children: [_jsxs(ContextMenuItem, { onSelect: () => onRequestSelect(item), children: [_jsx(Check, { className: 'size-4' }), bulkSelectedIds.has(item._id)
17
72
  ? t('common.deselect')
18
- : t('common.select')] }), _jsx(ContextMenuSeparator, {})] })) : null, _jsxs(ContextMenuItem, { onSelect: () => onRequestEdit?.(item), children: [_jsx(Pencil, { className: 'size-4' }), t('common.edit')] }), isImageItem ? (_jsxs(_Fragment, { children: [_jsxs(ContextMenuItem, { onSelect: () => onRequestImageEdit(item), children: [_jsx(Crop, { className: 'size-4' }), t('media.cropAndRotate')] }), _jsxs(ContextMenuItem, { disabled: !canReimportWithOptimization ||
19
- (reimportSelected
20
- ? false
21
- : isReimporting(item._id)), onSelect: () => {
22
- if (reimportSelected) {
23
- onRequestBulkReimport();
24
- return;
25
- }
26
- onRequestReimport(item);
27
- }, children: [isReimporting(item._id) ? (_jsx(LoaderCircle, { className: 'size-4 animate-spin' })) : (_jsx(RefreshCw, { className: 'size-4' })), !canReimportWithOptimization
28
- ? t('media.enableOptimizationToReimport')
29
- : t('media.reimportConfirm')] })] })) : null, isMediaItem ? (_jsxs(_Fragment, { children: [_jsxs(ContextMenuItem, { onSelect: () => onRequestMove(item), children: [_jsx(FolderInput, { className: 'size-4' }), t('media.moveToFolder')] }), _jsx(ContextMenuSeparator, {})] })) : null, _jsxs(ContextMenuItem, { variant: 'destructive', onSelect: () => onRequestDelete?.(item), children: [_jsx(Trash2, { className: 'size-4' }), t('common.delete')] })] }));
73
+ : t('common.select')] }), _jsx(ContextMenuSeparator, {})] })) : null, _jsxs(ContextMenuItem, { onSelect: () => onRequestEdit?.(item), children: [_jsx(Pencil, { className: 'size-4' }), t('common.edit')] }), isImageItem ? (_jsxs(_Fragment, { children: [_jsxs(ContextMenuItem, { onSelect: () => onRequestImageEdit(item), children: [_jsx(Crop, { className: 'size-4' }), t('media.cropAndRotate')] }), _jsxs(ContextMenuItem, { disabled: isReplacing(item._id), onSelect: () => onRequestReplace(item), children: [isReplacing(item._id) ? (_jsx(LoaderCircle, { className: 'size-4 animate-spin' })) : (_jsx(ImageUp, { className: 'size-4' })), t('media.replaceImage')] })] })) : null, downloadAssets.length > 1 ? (_jsxs(ContextMenuSub, { children: [_jsxs(ContextMenuSubTrigger, { children: [_jsx(Download, { className: 'size-4' }), t('common.download')] }), _jsx(ContextMenuSubContent, { children: downloadAssets.map((asset) => (_jsxs(ContextMenuItem, { onSelect: () => void downloadAsset(asset), children: [_jsx(Download, { className: 'size-4' }), formatDownloadAsset(asset)] }, asset.key || asset.url))) })] })) : downloadAssets[0] ? (_jsxs(ContextMenuItem, { onSelect: () => void downloadAsset(downloadAssets[0]), children: [_jsx(Download, { className: 'size-4' }), t('common.download')] })) : null, isOptimizableItem ? (_jsxs(ContextMenuItem, { disabled: !canReimportWithOptimization ||
74
+ (reimportSelected ? false : isReimporting(item._id)), onSelect: () => {
75
+ if (reimportSelected) {
76
+ onRequestBulkReimport();
77
+ return;
78
+ }
79
+ onRequestReimport(item);
80
+ }, children: [isReimporting(item._id) ? (_jsx(LoaderCircle, { className: 'size-4 animate-spin' })) : (_jsx(RefreshCw, { className: 'size-4' })), !canReimportWithOptimization
81
+ ? t('media.enableOptimizationToReimport')
82
+ : t('media.reimportConfirm')] })) : null, isMediaItem ? (_jsxs(_Fragment, { children: [_jsxs(ContextMenuItem, { onSelect: () => onRequestMove(item), children: [_jsx(FolderInput, { className: 'size-4' }), t('media.moveToFolder')] }), _jsx(ContextMenuSeparator, {})] })) : null, _jsxs(ContextMenuItem, { variant: 'destructive', onSelect: () => onRequestDelete?.(item), children: [_jsx(Trash2, { className: 'size-4' }), t('common.delete')] })] }));
30
83
  }
31
84
  //# sourceMappingURL=MediaContextMenuContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MediaContextMenuContent.js","sourceRoot":"","sources":["../../../../../src/components/media/previews/MediaContextMenuContent.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MediaContextMenuContent.js","sourceRoot":"","sources":["../../../../../src/components/media/previews/MediaContextMenuContent.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Previews.d.ts","sourceRoot":"","sources":["../../../../../src/components/media/previews/Previews.tsx"],"names":[],"mappings":"AAkFA,MAAM,CAAC,OAAO,UAAU,QAAQ,4CAyiC/B"}
1
+ {"version":3,"file":"Previews.d.ts","sourceRoot":"","sources":["../../../../../src/components/media/previews/Previews.tsx"],"names":[],"mappings":"AAoFA,MAAM,CAAC,OAAO,UAAU,QAAQ,4CAwlC/B"}
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { Folder, FolderPlus, Upload, X } from 'lucide-react';
4
- import { startTransition, useCallback, useDeferredValue, useEffect, useMemo, useState, } from 'react';
4
+ import { startTransition, useCallback, useDeferredValue, useEffect, useMemo, useRef, useState, } from 'react';
5
5
  import { keepPreviousData, useQueryClient } from '@tanstack/react-query';
6
6
  import { createManagerQueryKey, useManagerClient, useManagerMutation, useManagerQuery, } from '../../../client/react.js';
7
7
  import { toast } from 'sonner';
@@ -39,7 +39,7 @@ export default function Previews() {
39
39
  const t = useTranslations();
40
40
  const managerClient = useManagerClient();
41
41
  const queryClient = useQueryClient();
42
- const { uploadMedia } = useMedia();
42
+ const { uploadMedia, replaceMedia } = useMedia();
43
43
  const { currentFolderId, currentFolderPath, setCurrentFolderId, folders, onCreateFolder, refetchFoldersTree, forcedMediaTypeFilter, externalEditFolderRequest, externalDeleteFolderRequest, selectable, selectedMediaIds, onSelect, onUpload, optimizeEnabled, optimizeOptions, isModal, } = useMediaLibrary();
44
44
  const [viewMode, setViewMode] = useState('grid-sm');
45
45
  const [mediaTypeFilter, setMediaTypeFilter] = useState('all');
@@ -64,6 +64,9 @@ export default function Previews() {
64
64
  const [isBulkDeleting, setIsBulkDeleting] = useState(false);
65
65
  const [isMoving, setIsMoving] = useState(false);
66
66
  const [reimportingIds, setReimportingIds] = useState(() => new Set());
67
+ const [replacingId, setReplacingId] = useState(null);
68
+ const replaceInputRef = useRef(null);
69
+ const replaceTargetRef = useRef(null);
67
70
  const getMediaQueryFilter = (folderId, mediaType, search) => {
68
71
  const folderFilter = folderId ? { 'folder._id': folderId } : { folder: { $exists: false } };
69
72
  let typeAndFolderFilter;
@@ -449,6 +452,54 @@ export default function Previews() {
449
452
  toast.error(error instanceof Error ? error.message : t('media.openImageEditorError'));
450
453
  }
451
454
  };
455
+ const onRequestReplace = (item) => {
456
+ if (!item.mime.startsWith('image/') || replacingId)
457
+ return;
458
+ replaceTargetRef.current = item;
459
+ replaceInputRef.current?.click();
460
+ };
461
+ const handleReplacementFileChange = (event) => {
462
+ const file = event.target.files?.[0];
463
+ const target = replaceTargetRef.current;
464
+ event.target.value = '';
465
+ if (!file || !target)
466
+ return;
467
+ if (!file.type.startsWith('image/')) {
468
+ toast.error(t('media.replaceImageInvalidFile'));
469
+ return;
470
+ }
471
+ void confirm({
472
+ title: t('media.replaceImageTitle'),
473
+ description: t('media.replaceImageDescription', {
474
+ name: target.name,
475
+ fileName: file.name,
476
+ }),
477
+ confirmLabel: t('media.replaceImageConfirm'),
478
+ onConfirm: async () => {
479
+ try {
480
+ setReplacingId(target._id);
481
+ await replaceMedia({
482
+ id: target._id,
483
+ file,
484
+ access: target.access,
485
+ optimizeOptions: optimizeEnabled ? optimizeOptions : undefined,
486
+ });
487
+ await refetch();
488
+ toast.success(t('media.imageReplaced'));
489
+ }
490
+ catch (error) {
491
+ toast.error(t('media.replaceImageError', {
492
+ reason: getActionErrorMessage(error),
493
+ }));
494
+ throw error;
495
+ }
496
+ finally {
497
+ setReplacingId(null);
498
+ replaceTargetRef.current = null;
499
+ }
500
+ },
501
+ });
502
+ };
452
503
  const handleSaveImageEdit = async (file) => {
453
504
  if (!imageEditTarget)
454
505
  return;
@@ -496,9 +547,7 @@ export default function Previews() {
496
547
  toast.success(t('media.imageDetailsSaved'));
497
548
  }
498
549
  catch (error) {
499
- toast.error(error instanceof Error
500
- ? error.message
501
- : t('media.saveImageDetailsError'));
550
+ toast.error(error instanceof Error ? error.message : t('media.saveImageDetailsError'));
502
551
  }
503
552
  };
504
553
  const onRequestMove = (item) => {
@@ -510,14 +559,15 @@ export default function Previews() {
510
559
  setDestinationFolderId(item.folder?._id ?? ROOT_FOLDER_VALUE);
511
560
  };
512
561
  const onRequestReimport = (item) => {
513
- if (!optimizeEnabled || !item.mime.startsWith('image/'))
562
+ if (!optimizeEnabled || (!item.mime.startsWith('image/') && !item.mime.startsWith('video/')))
514
563
  return;
515
- const selectedImages = media.filter((mediaItem) => bulkSelectedIds.has(mediaItem._id) && mediaItem.mime.startsWith('image/'));
516
- if (selectedImages.length > 1 && bulkSelectedIds.has(item._id)) {
517
- void reimportImages(selectedImages);
564
+ const selectedMedia = media.filter((mediaItem) => bulkSelectedIds.has(mediaItem._id) &&
565
+ (mediaItem.mime.startsWith('image/') || mediaItem.mime.startsWith('video/')));
566
+ if (selectedMedia.length > 1 && bulkSelectedIds.has(item._id)) {
567
+ void reimportMedia(selectedMedia);
518
568
  return;
519
569
  }
520
- void reimportImages([item]);
570
+ void reimportMedia([item]);
521
571
  };
522
572
  const onRequestSelect = (item) => {
523
573
  if (!canBulkSelect)
@@ -538,24 +588,23 @@ export default function Previews() {
538
588
  const onRequestBulkReimport = () => {
539
589
  if (!optimizeEnabled)
540
590
  return;
541
- const selectedImages = media.filter((item) => bulkSelectedIds.has(item._id) && item.mime.startsWith('image/'));
542
- if (selectedImages.length === 0) {
543
- toast.error(t('media.bulkReimportNoImages'));
591
+ const selectedMedia = media.filter((item) => bulkSelectedIds.has(item._id) &&
592
+ (item.mime.startsWith('image/') || item.mime.startsWith('video/')));
593
+ if (selectedMedia.length === 0) {
594
+ toast.error(t('media.bulkReimportNoMedia'));
544
595
  return;
545
596
  }
546
- void reimportImages(selectedImages);
597
+ void reimportMedia(selectedMedia);
547
598
  };
548
- const reimportImages = (images) => {
599
+ const reimportMedia = (items) => {
549
600
  void confirm({
550
- title: images.length === 1
551
- ? t('media.reimportTitle')
552
- : t('media.bulkReimportTitle'),
553
- description: images.length === 1
554
- ? t('media.reimportDescription', { name: images[0]?.name ?? '' })
555
- : t('media.bulkReimportDescription', { count: images.length }),
601
+ title: items.length === 1 ? t('media.reimportTitle') : t('media.bulkReimportTitle'),
602
+ description: items.length === 1
603
+ ? t('media.reimportDescription', { name: items[0]?.name ?? '' })
604
+ : t('media.bulkReimportDescription', { count: items.length }),
556
605
  confirmLabel: t('media.reimportConfirm'),
557
606
  onConfirm: async () => {
558
- const ids = images.map((item) => item._id);
607
+ const ids = items.map((item) => item._id);
559
608
  setReimportingIds((current) => {
560
609
  const next = new Set(current);
561
610
  for (const id of ids)
@@ -566,11 +615,14 @@ export default function Previews() {
566
615
  let failedCount = 0;
567
616
  let lastError;
568
617
  try {
569
- for (const item of images) {
618
+ for (const item of items) {
570
619
  try {
571
620
  await managerClient.request('manager.media.reimport', {
572
621
  id: item._id,
573
- optimizeOptions,
622
+ optimizeOptions: {
623
+ ...optimizeOptions,
624
+ video: optimizeOptions.video ?? { quality: 80 },
625
+ },
574
626
  });
575
627
  successCount += 1;
576
628
  }
@@ -582,7 +634,7 @@ export default function Previews() {
582
634
  if (successCount > 0) {
583
635
  await refetch();
584
636
  clearBulkSelection();
585
- toast.success(images.length === 1
637
+ toast.success(items.length === 1
586
638
  ? t('media.reimported')
587
639
  : t('media.bulkReimported', { count: successCount }));
588
640
  }
@@ -698,6 +750,8 @@ export default function Previews() {
698
750
  onClearSelection: clearBulkSelection,
699
751
  onRequestEdit,
700
752
  onRequestImageEdit,
753
+ isReplacing: (id) => replacingId === id,
754
+ onRequestReplace,
701
755
  canReimportWithOptimization: optimizeEnabled,
702
756
  isReimporting: (id) => reimportingIds.has(id),
703
757
  onRequestReimport,
@@ -730,6 +784,8 @@ export default function Previews() {
730
784
  clearBulkSelection,
731
785
  onRequestEdit,
732
786
  onRequestImageEdit,
787
+ replacingId,
788
+ onRequestReplace,
733
789
  optimizeEnabled,
734
790
  reimportingIds,
735
791
  onRequestReimport,
@@ -737,21 +793,19 @@ export default function Previews() {
737
793
  onRequestDelete,
738
794
  renderPreview,
739
795
  ]);
740
- return (_jsx("div", { className: cn('flex min-h-0 w-full flex-col', isModal ? 'h-full overflow-hidden' : 'h-auto max-lg:h-auto lg:h-full'), children: _jsxs(MediaPreviewProvider, { value: mediaPreviewContextValue, children: [_jsxs("div", { className: "mb-2 flex w-full shrink-0 flex-wrap gap-2 p-1", "data-tour": "media-folders", children: [_jsxs(Button, { variant: "outline", disabled: isCreatingFolder, size: "lg", className: "justify-start", onClick: () => {
741
- setIsCreateFolderDialogOpen(true);
742
- }, children: [_jsx(FolderPlus, { className: "size-4" }), _jsx("span", { className: "truncate", children: t('media.createFolder') })] }), showChildFoldersSkeleton
743
- ? Array.from({ length: 4 }).map((_, index) => (_jsxs("div", { className: "flex items-center gap-2 rounded-lg border bg-card p-2", children: [_jsx(Skeleton, { className: "h-7 w-7 rounded-md" }), _jsx(Skeleton, { className: "h-4 flex-1" })] }, `child-folder-skeleton-${index}`)))
744
- : childFoldersData?.items?.length
745
- ? childFoldersData.items.map((folder) => (_jsxs(ContextMenu, { children: [_jsx(ContextMenuTrigger, { asChild: true, children: _jsxs(Button, { type: "button", variant: "outline", size: "lg", className: "justify-start data-[state=open]:bg-accent/60 data-[state=open]:ring-1 data-[state=open]:ring-primary/30", onClick: () => setCurrentFolderId(folder._id), children: [_jsx(Folder, { className: "size-4" }), _jsx("span", { className: "truncate", children: folder.name })] }) }), _jsx(MediaContextMenuContent, { item: folder })] }, folder._id)))
746
- : null] }), _jsxs(FileUpload, { value: files, onValueChange: setFiles, onUpload: handleUpload, onFileReject: onFileReject, maxFiles: 20, className: cn('relative flex min-h-0 w-full flex-1 flex-col p-1', isModal
796
+ return (_jsx("div", { className: cn('flex min-h-0 w-full flex-col', isModal ? 'h-full overflow-hidden' : 'h-auto max-lg:h-auto lg:h-full'), children: _jsxs(MediaPreviewProvider, { value: mediaPreviewContextValue, children: [_jsx("input", { ref: replaceInputRef, type: "file", accept: "image/*", className: "hidden", tabIndex: -1, onChange: handleReplacementFileChange }), _jsxs(FileUpload, { value: files, onValueChange: setFiles, onUpload: handleUpload, onFileReject: onFileReject, maxFiles: 20, className: cn('relative flex min-h-0 w-full flex-1 flex-col p-1', isModal
747
797
  ? 'overflow-hidden'
748
- : 'max-lg:h-auto max-lg:overflow-visible lg:overflow-hidden'), multiple: true, disabled: isUploading, children: [_jsxs("div", { className: "shrink-0 space-y-3", children: [_jsx(PreviewsToolbar, {}), _jsx(FileUploadList, { children: files.map((file) => (_jsxs(FileUploadItem, { value: file, children: [_jsx(FileUploadItemPreview, {}), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx(FileUploadItemMetadata, {}), _jsx(FileUploadItemProgress, { className: "mt-2" })] }), _jsx(FileUploadItemDelete, { className: "rounded-md p-1 hover:bg-accent/40", children: _jsx(X, { className: "size-4" }) })] }, file.name + file.lastModified))) })] }), _jsx(FileUploadDropzone, { asChild: true, tabIndex: -1, onClick: (event) => event.preventDefault(), className: cn('group/dropzone relative min-h-0 w-full flex-1 items-stretch justify-start gap-0 rounded-xl border border-transparent p-0 hover:bg-transparent! focus-visible:bg-transparent! data-dragging:border-primary/40 data-dragging:bg-transparent!', isModal
798
+ : 'max-lg:h-auto max-lg:overflow-visible lg:overflow-hidden'), multiple: true, disabled: isUploading, children: [_jsxs("div", { className: "shrink-0 space-y-3", children: [_jsx(PreviewsToolbar, { children: _jsxs("div", { className: "flex w-full flex-wrap gap-2 p-1", "data-tour": "media-folders", children: [_jsxs(Button, { variant: "outline", disabled: isCreatingFolder, size: "lg", className: "justify-start", onClick: () => {
799
+ setIsCreateFolderDialogOpen(true);
800
+ }, children: [_jsx(FolderPlus, { className: "size-4" }), _jsx("span", { className: "truncate", children: t('media.createFolder') })] }), showChildFoldersSkeleton
801
+ ? Array.from({ length: 4 }).map((_, index) => (_jsxs("div", { className: "flex items-center gap-2 rounded-lg border bg-card p-2", children: [_jsx(Skeleton, { className: "h-7 w-7 rounded-md" }), _jsx(Skeleton, { className: "h-4 flex-1" })] }, `child-folder-skeleton-${index}`)))
802
+ : childFoldersData?.items?.length
803
+ ? childFoldersData.items.map((folder) => (_jsxs(ContextMenu, { children: [_jsx(ContextMenuTrigger, { asChild: true, children: _jsxs(Button, { type: "button", variant: "outline", size: "lg", className: "justify-start data-[state=open]:bg-accent/60 data-[state=open]:ring-1 data-[state=open]:ring-primary/30", onClick: () => setCurrentFolderId(folder._id), children: [_jsx(Folder, { className: "size-4" }), _jsx("span", { className: "truncate", children: folder.name })] }) }), _jsx(MediaContextMenuContent, { item: folder })] }, folder._id)))
804
+ : null] }) }), _jsx(FileUploadList, { children: files.map((file) => (_jsxs(FileUploadItem, { value: file, children: [_jsx(FileUploadItemPreview, {}), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx(FileUploadItemMetadata, {}), _jsx(FileUploadItemProgress, { className: "mt-2" })] }), _jsx(FileUploadItemDelete, { className: "rounded-md p-1 hover:bg-accent/40", children: _jsx(X, { className: "size-4" }) })] }, file.name + file.lastModified))) })] }), _jsx(FileUploadDropzone, { asChild: true, tabIndex: -1, onClick: (event) => event.preventDefault(), className: cn('group/dropzone relative min-h-0 w-full flex-1 items-stretch justify-start gap-0 rounded-xl border border-transparent p-0 hover:bg-transparent! focus-visible:bg-transparent! data-dragging:border-primary/40 data-dragging:bg-transparent!', isModal
749
805
  ? 'overflow-hidden'
750
806
  : 'max-lg:flex-none max-lg:overflow-visible lg:overflow-hidden'), children: _jsxs("div", { className: cn('relative min-h-0 w-full items-stretch justify-start overflow-x-hidden p-1', isModal
751
807
  ? 'overflow-y-auto overscroll-contain scrollbar-thin'
752
- : 'max-lg:overflow-y-visible lg:overflow-y-auto lg:overscroll-contain lg:scrollbar-thin'), "data-tour": "media-grid", children: [_jsx("div", { className: "pointer-events-none absolute inset-0 z-20 flex items-center justify-center rounded-xl bg-background/50 opacity-0 backdrop-blur transition-opacity duration-200 ease-out group-data-dragging/dropzone:opacity-100", children: _jsxs("div", { className: "flex flex-col items-center gap-1 text-center", children: [_jsx("div", { className: "flex items-center justify-center rounded-full border p-2.5", children: _jsx(Upload, { className: "size-6 text-muted-foreground" }) }), _jsx("p", { className: "font-medium text-sm", children: t('media.dragDropFiles') }), _jsx("p", { className: "text-muted-foreground text-xs", children: t('media.uploadLimits') })] }) }), showMediaSkeleton ? _jsx(PreviewsViewLoader, { viewMode: viewMode }) : null, !showMediaSkeleton && media.length === 0 ? (_jsx(Card, { className: "w-full p-8 text-center text-muted-foreground text-sm", children: trimmedSearch
753
- ? t('media.noSearchResults')
754
- : t('media.emptyFolder') })) : null, !showMediaSkeleton && media.length > 0 ? _jsx(ViewComponent, { media: media }) : null, _jsx(PreviewsSelectionToolbar, {})] }) })] }), _jsx(MediaDeleteDialog, { target: deleteTarget, isLoading: deleteMutation.isPending || deleteFolderMutation.isPending, onClose: () => setDeleteTarget(null), onConfirm: handleConfirmDelete }), _jsx(MediaEditDialog, { target: editTarget, value: editName, isLoading: updateMutation.isPending, onValueChange: setEditName, onClose: () => setEditTarget(null), onConfirm: handleConfirmEdit }), _jsx(MediaMoveDialog, { target: moveTarget, folders: folderOptions, value: destinationFolderId, isLoading: isMoving || updateMutation.isPending, onValueChange: setDestinationFolderId, onClose: () => {
808
+ : 'max-lg:overflow-y-visible lg:overflow-y-auto lg:overscroll-contain lg:scrollbar-thin'), "data-tour": "media-grid", children: [_jsx("div", { className: "pointer-events-none absolute inset-0 z-20 flex items-center justify-center rounded-xl bg-background/50 opacity-0 backdrop-blur transition-opacity duration-200 ease-out group-data-dragging/dropzone:opacity-100", children: _jsxs("div", { className: "flex flex-col items-center gap-1 text-center", children: [_jsx("div", { className: "flex items-center justify-center rounded-full border p-2.5", children: _jsx(Upload, { className: "size-6 text-muted-foreground" }) }), _jsx("p", { className: "font-medium text-sm", children: t('media.dragDropFiles') }), _jsx("p", { className: "text-muted-foreground text-xs", children: t('media.uploadLimits') })] }) }), showMediaSkeleton ? _jsx(PreviewsViewLoader, { viewMode: viewMode }) : null, !showMediaSkeleton && media.length === 0 ? (_jsx(Card, { className: "w-full p-8 text-center text-muted-foreground text-sm", children: trimmedSearch ? t('media.noSearchResults') : t('media.emptyFolder') })) : null, !showMediaSkeleton && media.length > 0 ? _jsx(ViewComponent, { media: media }) : null, _jsx(PreviewsSelectionToolbar, {})] }) })] }), _jsx(MediaDeleteDialog, { target: deleteTarget, isLoading: deleteMutation.isPending || deleteFolderMutation.isPending, onClose: () => setDeleteTarget(null), onConfirm: handleConfirmDelete }), _jsx(MediaEditDialog, { target: editTarget, value: editName, isLoading: updateMutation.isPending, onValueChange: setEditName, onClose: () => setEditTarget(null), onConfirm: handleConfirmEdit }), _jsx(MediaMoveDialog, { target: moveTarget, folders: folderOptions, value: destinationFolderId, isLoading: isMoving || updateMutation.isPending, onValueChange: setDestinationFolderId, onClose: () => {
755
809
  setMoveTarget(null);
756
810
  setDestinationFolderId('');
757
811
  }, onConfirm: () => void handleConfirmMove() }), _jsx(MediaImageEditorDialog, { target: imageEditTarget, imageUrl: imageEditUrl, isSaving: isSavingImageEdit, onClose: () => {